Wavesurfer Microphone Plugin to attach to open microphone stream on iOS

Hello,
I am currently implementing a web app where i use wavesurfer microphone plugin to present the microphone oscilator to the user. I am using this together with the IBM Watson speech to text javascript sdk.
My problem is that my current status of implementation works perfectly on every other browser except iOS devices such as my iPhone. I am running iOS 13.2.3.
The workflow is that i initialize and open a microphone stream through the Speech to Text API then initialize the Wavesurfer Microphone plugin. Once the later is up and running, the previous open stream is broken and vice versa. When i first initialize the wavesurfer microphone plugin and then the speech to text stream, the microphone plugin brakes.
I was trying to find out if there is a way to share the current open stream of the microphone between the two. Firefox, Chrome, Safari on Windows does it but not on iOS.
One thing i noticed is that whenever i initialize the speech to text stream on ios, and then the microphone plugin, i can then see the microphone plugin active and without having to implement the ios fix code on the initialisation, that means that the speech to text plugin does the trick for ios. Therefore i decided to run the wavesurfer plugin always after the speech to text stream to avoid the hack.
However it will only work for the stream i initialize last. Is there a way for wavesurfer to attach to already open mic streams for ios?
I use the following code as an example :
stream = WatsonSpeech.SpeechToText.recognizeMicrophone(Object.assign(speechToken, {
model: document.querySelector('#speechModel').value,
outputElement: '#output'
}));
		wavesurfer = initMicrophoneVisualizer(wavesurfer, isSafari);
		wavesurfer.microphone.start();

function initMicrophoneVisualizer(wavesurfer, isSafari){
if (wavesurfer === undefined) {

    if(!isSafari)
        barHeight = 2;
	else
		barHeight = 8;

	wavesurfer = WaveSurfer.create({
		container           : '#waveform',
		waveColor           : 'red',
		height		        : 100,
		interact            : false,
		cursorWidth         : 0,
		barHeight			: barHeight,
		barRadius 			: 18,
		plugins: [
			WaveSurfer.microphone.create()]
	});
}

return wavesurfer;

}
Also, the speech to text stream is not a MediaStream like the one in microphone plugin. It's a wrapped object than i can not pull the current microphone stream right now it seems. The only way i can see this go is if the wavesurfer microphone plugin can get smarter in attaching to an already open microphone stream for ios, if that is allowed by the device.
Thanks in advance.

Take a look at the Safari workaround in the microphone example: https://github.com/katspaugh/wavesurfer.js/blob/master/example/microphone/app.js#L12

I have described that i am using the workaround and the waveform of the microphone shows properly on mobile Safari. My actuall problem is that it blocks an already open microphone stream that another process opened. This has to be reopened. Best case scenario would be for the microphone plugin to attach to an already open microphone stream rather than creating one forcibly every time using the create() method.

I have the same problem. Any updates?

I dived into the source code of the microphone and the solution is to call the gotStream(streamHere) instead of start().

@jeghedderchristoffer thank you very much, you fixed my issue also and saved hours for me.


Switching from reflection to direct call for Math methods

... to increase performances.
Import cleaning.
Performances increase are measured to be between 2% and 5% less time to execute.

I think supporting all Numbers probably makes more sense. The only thing to ensure is that we correctly chose between long or double conversion if the Math function accepts both.


Fail to run "azd init" for sample "Metrics"

Describe the issue:
Run the azd init command failed and the error message is as follows:

Repro Steps:

Clone code.
Run command cd samples/Metrics.
Run command azd init.

Environment:

Azd version: azd version 1.8.0-beta.1-daily.3661089 (commit d078aeb7cf1497aa7c8d629d2f6d434554e0cd9a)
Aspire version: 8.0.0-preview.5.24201.12
Sample: Metrics
Branch: preview.5

Expected behavior:
azd init command can be executed successfully.
@rajeshkamal5050, @vhvb1989 for notification.

@vhvb1989 is executable.v0 supported in Azd?

@rajeshkamal5050, @vhvb1989 It is now impossible to reproduce this issue, I will close this issue.


”Cârța” is listed in the drop-down menu

Description:
"Cârța" is listed in the drop-down menu alongside its corresponding county and commune, according to the law.
Precondition:
The website is up an running.

Step 1
Type "Cârța" in the search bar.

Expected results
The location is listed in the drop-down menu as "Comuna Cârța, SIBIU".


Overhaul

This is a big set of commits that doesn't change the public API that much but completely reworks the implementation. The result is faster, smaller, and simpler (or at least it will be simpler once things are cleaned up a bit—it still needs some rearrangement, documentation, etc.).

Current coverage is 87.25%

Merging #30 into master will increase coverage by +0.84% as of 15a6ed4

@@            master     #30   diff @@
======================================
  Files           18      14     -4
  Stmts          552     416   -136
  Branches        31      33     +2
  Methods          0       0
======================================
- Hit            477     363   -114
  Partial          0       0
+ Missed          75      53    -22

Review entire Coverage Diff as of 15a6ed4

Powered by Codecov. Updated on successful CI builds.


From Dušan Jocić: additional debugdraw entries.

DirectionLine, OutlinedText, Capsule

Quick report after test:
These are primitive useful additions for debug draw purpose and they are functional.
This PR is safe and it doesn't involve any other engine part.


aw::sky_cover_cloud_type

aw::sky_cover_cloud_type::none would be more appropriately named aw::sky_cover_cloud_type::unspecified, as saying none might suggest that there are no clouds.

Resolved in #22.


set or setAll with toast enabled, (default) crash app

set or setAll with toast enabled, (default) crash app

This issue is already captured with #13


CODEC-315: Fix possible IndexOutOfBoundException

This fixes possible StringIndexOutOfBoundsException and ArrayIndexOutOfBoundsException in src/main/java/org/apache/commons/codec/language/bm/PhoneticEngine.java
This PR fixes the parameter for the split method and adds a conditional check to ensure only strings and arrays are not empty before processing.
We found this bug using fuzzing by way of OSS-Fuzz. It is reported at https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=64376 and https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=64395.

@arthurscchan
Please use a better description in PRs and JIRA: Specify the class and method where the exception occurs.

Codecov Report
Attention: 1 lines in your changes are missing coverage. Please review.

Comparison is base (44e4c4d) 92.27% compared to head (ee02460) 92.27%.
Report is 2 commits behind head on master.

Files
Patch %
Lines

...ache/commons/codec/language/bm/PhoneticEngine.java
50.00%
0 Missing and 1 partial :warning:

Additional details and impacted files
@@            Coverage Diff            @@
##             master     #223   +/-   ##
=========================================
  Coverage     92.27%   92.27%
- Complexity     1742     1743    +1
=========================================
  Files            67       67
  Lines          4584     4585    +1
  Branches        709      710    +1
=========================================
+ Hits           4230     4231    +1
  Misses          242      242
  Partials        112      112

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


Rover: Enable driving backwards when using attitude setpoints (offboard)

The Offboard attitude control can now drive backwards. The steering angle is reversed to steer in the right direction.
The possibility to drive backwards was not added to velocity control, because we would need to guess the intended driving direction from the data then. Maybe the difference of velocity vector and heading/ yaw data? (Currently heading is ignored, because the "normal" rovers can not move in one direction and look in another.) But I don't see that this is an urgent addition.

@jbeyerstedt Are there any logs regarding the tests you did with this? I am curious if there would be any corner cases

I have a little test script, that drives in the following way (using MAVSDK offboard attitude control):

heading 90 deg, throttle 0.2 for 6 seconds
heading 135 deg, throttle 0.2 for 9 seconds
heading 90 deg, throttle 0.2 for 9 seconds
heading 90 deg, throttle -0.2 for 9 seconds
heading 135 deg, throttle -0.2 for 9 seconds

Logfile: https://logs.px4.io/plot_app?log=67261d8f-db40-4978-bf33-3d9a178503c8

@jbeyerstedt Awesome script! The last 135 deg in reverse looks a little problematic for me.
Any idea why it didn't track the last yaw setpoint? Also it seems like it didn't have enough time to settle in to the yaw setpoints?

You mean at 35 seconds, where the yaw set point moved back to 90 degrees?
At this time, I stopped (throttle 0), but the simulation still "drifted" a bit, because it does not brake when setting throttle to 0. So at least for a car-style rover, the last set point isn't actually reasonable.
I just uploaded my testing script as a gist: https://gist.github.com/jbeyerstedt/9a290a4e87678aee8719632338e8bae4

Does the 3rd component of the euler angle ever go negative?
I was thinking about a scenario where the target is more than 180 degrees apart from the rover's front axis :hamburger:. In that case, would the angle value be negative or go over 180 degrees?

https://en.wikipedia.org/wiki/Euler_angles#Geometrical_definition

@swimmingseeds I think your comments are not related to this PR. Please don't hijack the topic of this PR
If you have any questions, post it on discuss.px4.io or if you have any issues post it as a new issue.


kim rmi IMAGE_ID silently fails

This is with kim version v0.1.0-alpha.10 (f0ac4ebb8f4a97553ea54dbde0464afbde55bd95) on macos

Ran the client through a debugger and it is improperly "normalizing" image-id references.


rpc: decode message Panic(uint256) for revert

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

-2 of 20 (90.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.4%) to 98.122%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/provider/rpc-methods.ts
18
20
90.0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.4%

Covered Lines:
657

Relevant Lines:
666

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

18 of 20 (90.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.4%) to 98.122%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/provider/rpc-methods.ts
18
20
90.0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.4%

Covered Lines:
657

Relevant Lines:
666

💛  - Coveralls


Prevent changing AdaptiveAction.Type = ActionTypes.ImBack

Add a validation to prevent developers to set the Type property of AdaptiveOpenUrlAction and AdaptiveSubmitAction to ActionTypes.ImBack in order to prevent this bug on the BotConnector.
Maybe this property could be private or readonly since only the default value is supposed to be valid.

@matthidinger I think this sould be set at a high priority since it causes a strange behavion on botconnector.


Fix and optimize sending of WINDOW_UPDATE frames

For long-running connections it was possible for the connection
window to become larger than allowed by the protocol because the
window increases claimed by stream handlers were never reclaimed
even if no data was consumed.
The new code applies heuristics to fix this and reduce the number
of WINDOW_UPDATE frames that are sent. It includes six new options
to control that behavior: margin, max and threshold for both the
connection and stream windows. The margin is some extra space
added on top of the requested read size. The max is the maximum
window size at any given time. The threshold is a minimum window
size that must be reached before we even consider sending more
WINDOW_UPDATE frames. We also avoid sending WINDOW_UPDATE frames
when there is already enough space in the window, or when the
read size is 0.
Fix for the problems signaled through tickets and PRs https://github.com/ninenines/cowlib/pull/81 https://github.com/ninenines/cowlib/pull/83 https://github.com/ninenines/cowboy/issues/1369 https://github.com/ninenines/cowboy/pull/1370 https://github.com/ninenines/cowboy/pull/1393 and possibly more.
Companion PR https://github.com/ninenines/cowlib/pull/87

Merge cowlib first, change the branch to master here, and should be good to merge.

And merged!


Add tool-versions file

Adding tool-versions file to ease the local setup.

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

Thanks @digzom!


Run tests on Ruby 3.1

Now that Homebrew 4.2.0 runs on Ruby 3.1, let's bump to that.
https://brew.sh/2023/12/18/homebrew-4.2.0/

I have no idea if what I've done in fe114094f71534880a85eed88602cbfcd3f46a28 is rational but it solves the test failure resulting from rspec being unable to proxy CHILD_STATUS since it's frozen.

Thanks both!


prepared statement "s0" already exists

Bug description
I'm connecting to Supabase with their connection pooling enabled and I'm seeing the following 500 errors after multiple refreshes of the same page, until eventually it forces me to have to restart my server.
Supabase Connection Pooling
Connection String (Pool Mode = Transaction):
postgres://postgres:[YOUR-PASSWORD]@[host].supabase.co:6543/postgres
With Supabase's connection pooling I still see the 500 error that is shown below.
Prisma PGBouncer
Connection String:
"postgresql://postgres:[PASSWORD]@[HOST].supabase.co:5432/postgres?pgbouncer=true"
With Prisma's PG Bouncer I am still getting the same error after multiple refreshes of the same page. This is very problematic because very quickly I am getting these errors. Even when testing locally.
Error:
"PrismaClientUnknownRequestError: Error occurred during query execution:
ConnectorError(ConnectorError { user_facing_error: None, kind: QueryError(Error { kind: Db, cause: Some(
DbError { severity: \"ERROR\", parsed_severity: Some(Error), code: SqlState(\"42P05\"),
message: \"prepared statement \\"s0\\" already exists\", detail: None, hint: None, position: None, where_: None, schema: None, table: None, column: None, datatype: None, constraint: None, file: Some(\"prepare.c\"), line: Some(447), routine: Some(\"StorePreparedStatement\")
}) }) })\n}"

How to reproduce

Expected behavior
Prisma queries should be executed normally when connected to a pgbouncer pool or to supabase's connection pooling.
Prisma information
"@prisma/client": "^3.5.0",
Environment & setup

OS: Mac OS 12.0.1
Database: PostgreSQL 12
Node.js version: v16.3.0

Prisma Version
3.5.0

You need to combine the connection pooled connection string from Supabase (port 6543) with adding &pgbouncer=true to the connection string to get rid of this problem. Can you confirm that solves the problem?

Hi @janpio,
I ended up using your solution and now my connection string is:
postgres://postgres:[YOUR-PASSWORD]@[host].supabase.co:6543/postgres?pgbouncer=true
However, when using prisma locally, after multiple browser refreshes I encounter the issue once again:
prepared statement \\"s0\\" already exists\. I can confirm this does not occur in production, but only when testing locally. I'm not sure how to fix this and this has become a constant everyday issue.

That is super weird. Can you produce a repo with your setup and an app that can trigger this problem?

Hi @janpio
Yes, I was able to create a repro to reproduce this problem. Do you have an email or slack where I can send you the credentials to access it?

I believe you might be able to even reproduce this yourself with my reproduction - this might be the issue (not 100% sure yet though):

Create a utilsDb folder and export a function that contains a Prisma query. Mind you, we will only use this query function in getServerSideProps since can't do this in the client.

Example exported function:
utilsDb/index.ts
export const getLocation = async (city_slug: string) => {
  const location = await prisma.location.findUnique({
    where: {
      city_slug: city_slug
    }
  })
  return location;
}

And in one of your NextJS pages add the following:
export async function getServerSideProps({req, res, query}: {req: NextApiRequest, res: NextApiResponse, query: any}) {

  const location = await getLocation('new_york');

  return {
    props: {
      allLocations: allLocations
    }
  }
};

After a few page refreshes you will begin to see the errors:
prepared statement \\"s0\\" already exists\ and with each new page refresh the numbers will go up:
s0, s2, s5, s10, etc...
Please let me know if with this you are able to reproduce the error. And if so, I ask:
Why can't we decouple queries into a utilsDb folder that is only called in getServerSideProps and never in the client.

<EMAIL_ADDRESS>or @janpio here on GH or our public Slack.

Hi @janpio,
Link to reproduction: https://github.com/juanzgc/repro-prisma-11643
I have also emailed you the credentials to the database. Feel free to share those internally as it's a newly created db for the reproduction.

Hi @janpio, were you able to reproduce this issue?

Hey, sorry - forgot to get back to you. I could not reproduce this at all unfortunately. No matter how often I reproduced the page you mentioned in repro and email, it always loaded successully. I also made sure the code actually executed by .e.g changing the sort order of results in location.ts and that change applied - but still no errors. Anything I could be missing?

Hi,
Not sure why it’s not reproducing for you :/
Maybe we could get on a call tomorrow and try to reproduce it one more time.
Would be good for you to atleast see the error from my end
On Sun, Feb 27, 2022 at 3:31 PM Jan Piotrowski @.***>
wrote:

Hey, sorry - forgot to get back to you.
I could not reproduce this at all unfortunately. No matter how often I
reproduced the page you mentioned in repro and email, it always loaded
successully. I also made sure the code actually executed by .e.g changing
the sort order of results in location.ts and that change applied - but
still no errors. Anything I could be missing?
—
Reply to this email directly, view it on GitHub
https://github.com/prisma/prisma/issues/11643#issuecomment-1053671368,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AF2ISO7S3CTSXICEZPJR6BLU5KC2BANCNFSM5NSX6V7A
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
Juan Zapata Gomez
Software Developer
IBM Watson Assistant
Boston University 2020
(781) 417-0890
@.***
[image: linkedin] https://www.linkedin.com/in/juanzgc/

Reached out via email.

This problem turned out to ultimately be caused by usage of a pooled connection string (port 6543 at Supabase) without supplying pgbouncer=true. When that was added, the error went away.
But the cause for this is a bit more complicated:
@juanzgc has a Next.js app where he is using a .env.local file. When using the Prisma CLI, only the .env file is loaded, and not the .env.local. Hence Juan created a .env with a copy of the database. Then he later messed around with things, and thinking that Prisma would only use .env, only added pgbouncer=true to the connection string there. But his Next.js app on startup loads both .env.local and .env, which meant that Prisma in the end was not using the value from .env but .env.local instead - which was missing the pgbouncer=true. The weird thing now is that if you only have a .env.local file, Prisma still complains about an env var not being set when running queries inside the Next.js app, although that clearly loaded the env var when starting. This is what caused him to be in this weird position where it was easy to get this wrong.

@janpio I just ran into the same issue and adding ?pgbouncer=true to the connection string didn't resolve it. Do you have any idea? I checked I was loading the right .env

Open a new discussion or issue and describe your full problem and what you are doing please. Generally communication from Prisma Client to Supabase connection pooled databases works fine.

For which connection string (and port) is that true @dan-turner? The connection pooled / pgBouncer one, or the direct one? Is this reproducible? We would love to know how exactly to do that.

@dan-turner @janpio you're both life savers! Thanks a lot for that accurate information on how to get around this error!

@woniesong92 I just encountered this same issue and stumbled upon this issue via googling the error
What I've found is, if you've ever accidentally connected to the without ?pgbouncer=true added to the connection string, you will keep getting this error (even after adding ?pgbouncer=true) until you restart the Supabase project.
TL;RD; Never connect to Supabase without ?pgbouncer=true. If you do by accident, restart the Supabase project.

Sorry, what do you mean by 'until you restart the Supabase project'?  Does that mean completely deleting it and starting over?

@codingforfoodllc
In your supabase database settings, there's a restart button

Worked for me too!

I found this issue after running into this problem for the second time in a while and can confirm you must restart the supabase project after adding ?pgbouncer=true to your connection string. Otherwise, you will keep getting the error.

Add the same issue, i was using the wrong connection string
I was using
postgres://postgres...
Instead of (Recommended for Node / Next in settings)
postgresql://postgres...

don't know if anyone encounter the same issue, i used neon.tech for the server, and i add &pgbouncer=true at the end of DATABASE_URL in .env file, it solved the problem

Yep, adding &pgbouncer=true worked for me as well.

for those still stucked, try ? instead of & in ?pgbouncer=true

If you're using supabase. Try to change Mode to session, you will get a url with port 5432. And that’s it.

I have used supabase and prisma for 2 projects now and the only I have noticed that this issue is solved by adding ?bgBouncer=true before you ever try to connect your orm to supabase. If by any chances you didn't know this before hand and you connected without it at least once, whenever you get the connectionError kill your sever and restart the supabase project via the project settings

https://supabase.com/partners/integrations/prisma
Adding this for future reference, we need to add two env variables currently then only did the migrations worked for me.
DATABASE_URL="" DIRECT_URL=""
datasource db {   provider          = "postgresql"   url               = env("DATABASE_URL")   directUrl         = env("DIRECT_URL") }

Any solution for Prisma Accelerate?
You cannot add pgbouncer=true to the connection string on Accelerate.

Is there new guidance following the launch of Supavisor?
From this article:

PgBouncer is now deprecated. Use Supavisor instead.

For me on Neon adding pgpouncer=true didn't work. I had to remove the -pooler from the connection string. Not sure why and how it affects.


fix(parser): throw on unterminated quote instead of infinite loop

@EisenbergEffect

I feel a lot more comfortable with this 😏

I feel a lot more comfortable with this 😏

Folk: Oh look, the handle is broken.
Fred: Lets replace the house


Fix documentation links

Let's fix the links to docs until redirection is fixed

Test name
Status

config
passed

init-deploy
passed

monitoring
passed

semi-sync
passed

service-per-pod
passed

sidecars
passed

users
passed

commit: https://github.com/percona/percona-server-mysql-operator/pull/53/commits/938e1656e344686af1f2c6734a276567d0b65cbb
image: perconalab/percona-server-mysql-operator:PR-53-938e165


ListItemPicker with 2 fields

Category
[ ] Enhancement
[?] Bug
[X] Question
Version
Please specify what version of the library you are using: [ 2.4.0  ]
I tried to use a calculated field as columnInternalName named "Project" The calculation is =ProjectNumber&" "&Title
Observed Behavior
It does not show any items "No data"
Steps to Reproduce
Make a calculated field and use it as columnInternalName
Please make it work with Concatenation of fields or a calculated field.
Thanks!

Hi @Ofer-Gal,
Thank you for reporting this one!
The enhancement has been merged and will be included in the next release.
In a meanwhile you can test the functionality in beta version.

v2.5.0 has been released.

Thank you


[BUG] current detections.json has searches with unbalanced parentheses

Describe the bug
Current dist/api/detections.json for id 01d29b48-ff6f-11eb-b81e-acde48001123 is missing an open parentheses in the rule below after the first where:
...
            "search": "| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time) as lastTime from datamodel=Endpoint.Processes where Processes.process_name =\"7z.exe\" OR Processes.process_name = \"7za.exe\" OR Processes.original_file_name = \"7z.exe\" OR Processes.original_file_name =  \"7za.exe\") AND (Processes.process=\"*\\\\C$\\\\*\" OR Processes.process=\"*\\\\Admin$\\\\*\" OR Processes.process=\"*\\\\IPC$\\\\*\") by Processes.original_file_name Processes.parent_process_name Processes.parent_process Processes.process_name Processes.process Processes.parent_process_id Processes.process_id  Processes.dest Processes.user | `drop_dm_object_name(Processes)` | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)` | `7zip_commandline_to_smb_share_path_filter`",
...

Expected behavior
Rerunning contentctl build --enrichments creates a rule with correctly balanced parentheses, so I'm not sure what happened in the current file:
...
            "search": "| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time) as lastTime from datamodel=Endpoint.Processes where (Processes.process_name =\"7z.exe\" OR Processes.process_name = \"7za.exe\" OR Processes.original_file_name = \"7z.exe\" OR Processes.original_file_name =  \"7za.exe\") AND (Processes.process=\"*\\\\C$\\\\*\" OR Processes.process=\"*\\\\Admin$\\\\*\" OR Processes.process=\"*\\\\IPC$\\\\*\") by Processes.original_file_name Processes.parent_process_name Processes.parent_process Processes.process_name Processes.process Processes.parent_process_id Processes.process_id  Processes.dest Processes.user | `drop_dm_object_name(Processes)` | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)` | `7zip_commandline_to_smb_share_path_filter`",
...

App Version:
Appears correct when using latest security_content and contentctl, unclear which versions were used for detections.json

OBE, dist/ removed from repo


nexusmods.

Hi. I am new to github. I register just to contact you @NarutoUA.
I could not find find a way to contact you. I just fund this, and it is not exactly optimal but i hope you read it.
I posted your GTA 5 FSR as a mod on nexusmods. Of course with all credits to you. First thing i have poster there.
I hope that is alright with you. If not, please let me know on nexusmods and i will delete it.
I think this mod is amazing and the world should knew about it. Thank you for your work.
Here are the link to nexusmods. https://www.nexusmods.com/gta5/mods/362?tab=description
Regards.

Its OK


Visual bug with Trees

When you create a new world with the seed celebrationmk10 the trees appear green in TerraAngel

Whereas in Vanilla, they appear rainbow-colorful

Thanks for the report, I'll fix this soon™, but not a priority right now.


Unencrypted save file support

Added support for unencrypted SaveLoad2 format save files like Elden Ring.
For DecryptedUserData in the existing elden-ring branch, it is initialized to null.
Through this commit, the constructor of Sl2UserData checks whether the key exists and stores it in the newly added member _encrypted.
When DecryptedUserData is called after parsing the sl2 file, the plaintext of the unencrypted file is saved according to the status of the _encrypted member. Or, if it is encrypted, proceed with AES decryption.
I'm sorry I couldn't write better code because I didn't have deep knowledge of C#.
If there is a better way, let's discuss it.

Looks good to me. Thank your for your contribution.
@googleben would you mind also pulling this into your WIP fork?

Will do.


Geimaj/nft transfers

WIP

@Geimaj @musnit Can we merge this master if its the de-facto working branch?


Fix unsupported plural of repository in package.json

Applies to npmjs.com and nodejs.org.
Reference:

https://docs.npmjs.com/files/package.json#repository

Warning:
$ npm install bootstrap-markdown
npm WARN package.json<EMAIL_ADDRESS>'repositories' (plural) Not supported. Please pick one as the 'repository' field

Thank you for this consideration.

Thanks


Unable to interact with ollama running VSCode with WSL2

Describe the bug
I run a Windows shell but code in Linux. When launching VSCode I select 'Connect to WSL'. From then on I am running in Linux. I am running ollama in a terminal window locally on WSL. It is listening on localhost:11434, which I have verified with CURL. ollama run produces code output.
I can't make twinny do anything at all. Other than the twinny robot head in the status bar I can see no evidence that it is installed.

Going to a file containing code I get no automatic suggestions.
Pressing ALT + \ does nothing.
Pressing CTRL + SHIFT + T I get a message in the status bar: (Ctrl + Shift + T) was pressed. Waiting for second key of chord..., which I assume is unrelated to Twinny. I couldn't find a way to change the Twinny shortcut, or to disable whatever is currently using it.
There is nothing in the ollama logs when VSCode starts.

The twinny extension is listed under WSL: Fedora - INSTALLED in VSCode, which is where most of my extensions are installed.
To Reproduce
Steps to reproduce the behavior:

In WSL2, download the ollama v0.1.31 binary.
Run ollama serve
From another terminal session, run ollama run codellama:7b-code
Wait for it to download and start running, then quit with /bye
Open VSCode
At the bottom left select the connection icon, then choose 'Connect to WSL'
Install twinny v3.11.4
Exit VSCode
Restart VSCode
Open any code repository
Attempt to interact with twinny in any way

Expected behavior
Placing the cursor in a code context, entering some text and pressing ALT + \ should result in a connection to ollama.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: Windows 11
VSCode Desktop fully updated as of 2024-04-16
WSL2, running Fedora 39

I saw https://github.com/rjmacarthy/twinny/issues/207 reporting a similar issue with remote ssh. I opened a fresh issue because they were able to interact via chat which I am not, although I wonder if that might be due to some unrelated interaction with another extension.

Looks like 3.11.5 was release while I was typing the above! I updated to it, but the issue remains.

Update: I noticed that there is a 'Twinny' icon at the bottom of my extensions list which opens a chat interface. Typing things in the chat interface does produce a log output in ollama (although I can't make it display a response). If you think this is a generic 'remote' issue, please close in favour of #207.

Wait, I restarted VSCode again after the 3.11.5 update, and now I'm getting autocompletions. I'm going to close this. Sorry for the noise!


Change subset_index file saved by MacroecoDesktop to split_index

I can fix this as I'm digging in the code.

The original subset_index is actually better. Note, for example, when an empirical SAR is calculated in 4 quadrants, the index gives the ranges of x and y coordinates for each quadrant. This is an index of the various subsets of the data, not of the split (which would be something like x:2;y:2).
The reason I thought to change this is that subset is being used in two ways - you can give the subset keyword in a parameter file to use only a single year of the data, for example, and then you can give a split keyword which will run multiple analyses on subsets of the data. While this might be a little confusion, calling the ranges of values indexed in this file a splits would be worse, I think. Syntactically, they are subsets, even if the subsets arise from calling a split parameter.


feat(minifier) minify conditional expressions

#3907  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @camc314 and the rest of your teammates on  Graphite


Impossible jsonschema dependency

When trying to install recent versions of moto in a fresh python environment, it ends up failing, due to apparently impossible dependency requirements on the jsonschema library. This should illustrate:
~$ pyenv activate tmp
pyenv-virtualenv: prompt changing will be removed from future release. configure `export PYENV_VIRTUALENV_DISABLE_PROMPT=1' to simulate the behavior.
(tmp) ~$ pip install pip-tools
Collecting pip-tools
  Downloading pip_tools-6.9.0-py3-none-any.whl (52 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 52.4/52.4 KB 736.4 kB/s eta 0:00:00
Collecting click>=7
  Downloading click-8.1.3-py3-none-any.whl (96 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 96.6/96.6 KB 1.5 MB/s eta 0:00:00
Requirement already satisfied: setuptools in ./src/pyenv/versions/3.10.4/envs/tmp/lib/python3.10/site-packages (from pip-tools) (58.1.0)
Collecting build
  Downloading build-0.9.0-py3-none-any.whl (17 kB)
Requirement already satisfied: pip>=21.2 in ./src/pyenv/versions/3.10.4/envs/tmp/lib/python3.10/site-packages (from pip-tools) (22.0.4)
Collecting wheel
  Downloading wheel-0.38.4-py3-none-any.whl (36 kB)
Collecting pep517>=0.9.1
  Using cached pep517-0.13.0-py3-none-any.whl (18 kB)
Collecting tomli>=1.0.0
  Using cached tomli-2.0.1-py3-none-any.whl (12 kB)
Collecting packaging>=19.0
  Using cached packaging-21.3-py3-none-any.whl (40 kB)
Collecting pyparsing!=3.0.5,>=2.0.2
  Using cached pyparsing-3.0.9-py3-none-any.whl (98 kB)
Installing collected packages: wheel, tomli, pyparsing, click, pep517, packaging, build, pip-tools
Successfully installed build-0.9.0 click-8.1.3 packaging-21.3 pep517-0.13.0 pip-tools-6.9.0 pyparsing-3.0.9 tomli-2.0.1 wheel-0.38.4
WARNING: You are using pip version 22.0.4; however, version 22.3.1 is available.
You should consider upgrading via the '/home/jx006324/src/pyenv/versions/3.10.4/envs/tmp/bin/python3.10 -m pip install --upgrade pip' command.
(tmp) ~$ echo 'moto[all]==4.0.9' >requirements.in
(tmp) ~$ pip-compile requirements.in
Could not find a version that matches jsonschema<5.0.0,>=3.0,>=4.0.0,~=3.2 (from cfn-lint==0.71.0->moto[all]==4.0.9->-r requirements.in (line 1))
Tried: 0.2, 0.2, 0.3, 0.3, 0.4, 0.4, 0.5, 0.5, 0.6, 0.6, 0.7, 0.7, 0.8.0, 0.8.0, 1.0.0, 1.0.0, 1.1.0, 1.1.0, 1.2.0, 1.2.0, 1.3.0, 1.3.0, 2.0.0, 2.0.0, 2.1.0, 2.1.0, 2.2.0, 2.2.0, 2.3.0, 2.3.0, 2.3.0, 2.4.0, 2.4.0, 2.4.0, 2.5.0, 2.5.0, 2.5.1, 2.5.1, 2.5.1, 2.6.0, 2.6.0, 3.0.0, 3.0.0, 3.0.1, 3.0.1, 3.0.2, 3.0.2, 3.1.0, 3.1.0, 3.1.1, 3.1.1, 3.2.0, 3.2.0, 4.0.0, 4.0.0, 4.0.1, 4.0.1, 4.1.0, 4.1.0, 4.1.1, 4.1.1, 4.1.2, 4.1.2, 4.2.0, 4.2.0, 4.2.1, 4.2.1, 4.3.0, 4.3.0, 4.3.1, 4.3.1, 4.3.2, 4.3.2, 4.3.3, 4.3.3, 4.4.0, 4.4.0, 4.5.0, 4.5.0, 4.5.1, 4.5.1, 4.6.0, 4.6.0, 4.6.1, 4.6.1, 4.6.2, 4.6.2, 4.7.0, 4.7.0, 4.7.1, 4.7.1, 4.7.2, 4.7.2, 4.8.0, 4.8.0, 4.9.0, 4.9.0, 4.9.1, 4.9.1, 4.10.0, 4.10.0, 4.10.1, 4.10.1, 4.10.2, 4.10.2, 4.10.3, 4.10.3, 4.11.0, 4.11.0, 4.12.0, 4.12.0, 4.12.1, 4.12.1, 4.13.0, 4.13.0, 4.14.0, 4.14.0, 4.15.0, 4.15.0, 4.16.0, 4.16.0, 4.17.0, 4.17.0
Skipped pre-versions: 0.1a0, 3.0.0a1, 3.0.0a1, 3.0.0a2, 3.0.0a2, 3.0.0a3, 3.0.0a3, 3.0.0a4, 3.0.0a4, 3.0.0a5, 3.0.0a5, 3.0.0a6, 3.0.0a6, 3.0.0b1, 3.0.0b1, 3.0.0b2, 3.0.0b2, 3.0.0b3, 3.0.0b3, 4.0.0a1, 4.0.0a1, 4.0.0a2, 4.0.0a2, 4.0.0a3, 4.0.0a3, 4.0.0a4, 4.0.0a4, 4.0.0a5, 4.0.0a5, 4.0.0a6, 4.0.0a6, 4.1.0a1, 4.1.0a1
There are incompatible versions in the resolved dependencies:
  jsonschema<5.0.0,>=4.0.0 (from openapi-schema-validator==0.3.4->openapi-spec-validator==0.5.1->moto[all]==4.0.9->-r requirements.in (line 1))
  jsonschema<5.0.0,>=4.0.0 (from openapi-spec-validator==0.5.1->moto[all]==4.0.9->-r requirements.in (line 1))
  jsonschema<5.0.0,>=4.0.0 (from jsonschema-spec==0.1.2->openapi-spec-validator==0.5.1->moto[all]==4.0.9->-r requirements.in (line 1))
  jsonschema<5,>=3.0 (from cfn-lint==0.71.0->moto[all]==4.0.9->-r requirements.in (line 1))
  jsonschema~=3.2 (from aws-sam-translator==1.54.0->cfn-lint==0.71.0->moto[all]==4.0.9->-r requirements.in (line 1))

If I try to do a pip install moto[all]==4.0.9, pip will run for a very long time, downloading many library versions before eventually failing to resolve dependency versions.

Hi @isuftin, Moto does not have jsonschema as a direct dependency, so there's not much we can do here.
The SAM translator project has an open issue to loosen their jsondiff dependency, which should fix it: https://github.com/aws/serverless-application-model/pull/2441
See also #5485

Oh, I missed that older moto issue because it was closed.
I see a couple of PRs in motion in SAM translator that should help and it looks like moto now expects cfn-lint>=0.40.0, which has been updated to require aws-sam-translator>=1.54.0. So we just wait for the sam translator updates then. Awesome!

Moto does not have jsonschema as a direct dependency, so there's not much we can do here.

@bblommers Is this accurate? What if some of these dependencies on AWS SAM stuff (direct or indirect) were made optional? How critical are they to basic operation of moto in common use cases?

@mwgamble Some background on where we use these dependencies:
The openapi-spec-validator is only used in the APIGateway module, and therefore only installed with moto[apigateway].
The cfn-lint is only used in CloudFormation.validate_template, but it is installed with the base moto.
As far as I can tell, we should be able to restrict the cfn-lint-module to only install with moto[cloudformation]. That should reduce the chance of this happening again.
Feel free to open an issue/PR for this, if you want. It would be a change in behaviour, so I would only want to release that as a minor release, not a patch, but it would make sense to change this.

@bblommers I'd be happy to work on a patch for that :+1: However I wanted to ask, for moto v5, could we make the dependency fully optional? There are going to be a lot of users who want to install moto[cloudformation], but have no intention whatsoever of calling CloudFormation.validate_template.

Thanks @mwgamble. I actually don't have any numbers of how many people use validate_template, but regardless: Moto should be as painfree/easy to use as possible. So I don't want to add another config option like moto[cf-validate], or requiring people to install our dependencies manually.


Attempt remove net472 as a targets for packages

Theoretically, we don't need net472 as a target anymore since it could use netstandard2.0 instead, we'll see how it will work :)

If you search the repo for "net472", you can see some other items related to this framework -- references in .props files and a very small code workaround to facilitate use of the framework. Both of these should be possible to remove now with this change.

If you search the repo for "net472", you can see some other items related to this framework -- references in .props files and a very small code workaround to facilitate use of the framework. Both of these should be possible to remove now with this change.

Thank you for noticing that. Unfortunately, some of them are needed but was able to unify some of our targets


Core Functionality Broken

I basically copy and pasted the example of http-dump, however, nothing is being written to log. It's just empty. I also tried using .OnRequest().DoFunc() however it's not working as well.
The following code would never panic for some strange reason.
It would however proxy the traffic normally and print in the console:
$ HOST=<IP_ADDRESS> PORT=8081 go run .
2024/04/11 11:57:40 [001] INFO: Running 0 CONNECT handlers
2024/04/11 11:57:40 [002] INFO: Running 0 CONNECT handlers
2024/04/11 11:57:40 [003] INFO: Running 0 CONNECT handlers
2024/04/11 11:57:40 [001] INFO: Accepting CONNECT to www.google.com:443
`
package main
import (
"api/env"
"fmt"
"net"
"net/http"
"os"
"github.com/elazarl/goproxy"

)
func main() {
proxy := goproxy.NewProxyHttpServer()
proxy.Verbose = true
proxy.OnRequest().DoFunc(
	func(r *http.Request, ctx *goproxy.ProxyCtx) (*http.Request, *http.Response) {
		panic("not called")
		return r, nil
	})

if err := http.ListenAndServe(net.JoinHostPort(env.SRV_ADDR, env.SRV_PORT), proxy); err != nil {
	fmt.Println(err)
	os.Exit(1)
}

}
`
Edit: Some random POST requests would go trough an call the hook. Log: 2024/04/11 12:00:31 [020] INFO: Got request / ocsp.sectigo.com POST http://ocsp.sectigo.com/

I also tried Reddit blocking example, doesn't work. Go version 1.22.2

Replicated the issue in a Linux VM.

It does work, however, I'd need to set trusted root cert if I wish to intercept HTTPS traffic.

Correct, maybe I should add setting root cert to the example.
On Fri, Apr 12, 2024, 15:06 nik-ngp @.***> wrote:

It does work, however, I'd need to set trusted root cert if I wish to
intercept HTTPS traffic.
—
Reply to this email directly, view it on GitHub
https://github.com/elazarl/goproxy/issues/533#issuecomment-2051632667,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAB7RIRKLPFHZDJHQD3SIW3Y47E4LAVCNFSM6AAAAABGB7SNGWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANJRGYZTENRWG4
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

That would be quite real helpful to have an example with the cert. Maybe even, if not too much to ask, an option to generate keys, serialize them into a certificate so that the whole system can trust it.
I will kindly re-open the ticket with this comment. If you're willing to proceed with the additional example we can attach a PR to this issue.

Hello @elazarl . I think such an example for root cert would be really useful. Do you have maybe a timeline of when you could do it for us? :)

https://github.com/elazarl/goproxy/issues/560


rewrite in Gauche

Use Gauche-based YAAAU and enjoy competitive programming in C#, D, Ruby, and more.

ToDo:

[ ] informative --help option
[ ] show result(Accepted, Wrong Answer etc.) on submission
[ ] --version option


Support esper SQL dialect

Hi,
I see that you do no accept new modes, but is it possible to merge this addition to the sql-mode (x-esper)?
Esper is a language for complex event processing, but the language conforms to the SQL standard:
http://www.espertech.com/esper/faq_esper.php#how-does-it-work-overview
I hope you will consider this pull request as it will be a lot more work to create a separate package for this mode, since most of the logic is already included in sql.js.
best regards,
Fredrik

Sure, that's small enough to integrate. Merged as 282cf366


Error pointer targets in assignment differ in signedness

Hi, I run esp_mqtt and show error in elipse:
mqtt/utils.c: In function 'UTILS_StrToIP':
mqtt/utils.c:100:12: error: pointer targets in assignment differ in signedness [-Werror=pointer-sign]
start = str;
^
cc1.exe: all warnings being treated as errors
C:/Espressif/examples/esphttpd/Makefile:442: recipe for target 'build/mqtt/utils.o' failed
mingw32-make.exe: *** [build/mqtt/utils.o] Error 1
Help me fix this error, thanks verymuch

may you modify const char * start; to const int8_t * start; will work

yeah, working now, thanks.
I really admire you.
I'm in Ho Chi Minh City, I can invite you coffee :D?

Wellcome @tinamore , i'm in District 9, when you ready, please email  to me.


Encryption at rest KMS integration

Feature Description

One-line feature description (can be used as a release note): Data encryption at rest using Google KMS as an encryption provider.
Primary contact (assignee): @jcbsmpsn
Responsible SIGs: sig-auth
Design proposal link (community repo): https://github.com/kubernetes/community/pull/1134
Reviewer(s) - (for LGTM) recommend having 2+ reviewers (at least one from code-area OWNERS file) agreed to review. Reviewers from multiple companies preferred:
Approver (likely from SIG/area to which feature belongs):
Feature target (which target equals to which milestone):

Alpha release target (1.8) (https://github.com/kubernetes/kubernetes/pull/48574)
Beta release target (1.10)
Stable release target (1.12?)

@jcbsmpsn @kubernetes/sig-auth-feature-requests can you describe us why the feature has been proposed only today (less than in 24 hours before the release cut), and why it hasn't been discussed before during the release cycle?
cc @jdumars

cc @thockin

@idvoretskyi It's for two cycles out. The 1.8 related code was merged alpha associated with this proposal. There is enough work associated with this feature that we want it to have it's own issue going forward.

@jcbsmpsn much clearer now. Thanks

Do you have a plan how to address kubernetes/kubernetes#51965 which is a beta graduation requirement?
I hope we don't go ahead and add many of these into core as they should be ripped out anyway.

Do you have a plan how to address kubernetes/kubernetes#51965 which is a beta graduation requirement?
I hope we don't go ahead and add many of these into core as they should be ripped out anyway.

We need more than one significant example to design a good external API.  We're going to move forward with https://github.com/kubernetes/community/pull/888 to gain that experience and then the next one will have enough examples to draw upon for a reasonable external API attempt.

@deads2k So the proposal is:
Google KMS v1.8, Vault v1.9 => alpha, in-tree
Generic out-of-tree interface v1.10 => beta

In-tree providers (Google KMS, Vault) are removed from core and converted to implement the generic interface in their respective homes (code-wise).

That sounds good to me

@kubernetes/sig-auth-feature-requests @kksriram Someone please update the schedule for this feature.

@jcbsmpsn Did you mean for this to specifically track an integration that enables use of Google's KMS to encrypt secrets at rest?
#51965 outlined a proposal for abstracting KMS providers and #55684 implemented as an alpha feature in 1.10 that generic interface.
If this is specific to using Google KMS, then perhaps @immutableT this is the issue tracking your implementation of the #55684 provider for Google KMS?

@kksriram Implementation of Google KMS gRPC Plugin will not ship with Kubernetes, instead, it will be made available under in a separate repo under GoogleCloudPlatform.

@immutableT Does that GCP repository exist / is public yet?

Yes,
https://github.com/GoogleCloudPlatform/k8s-cloudkms-plugin/
I will be adding deployment instructions soon (after 61862 is approved).

@cjcullen @bgrant0607 @kksriram @kubernetes/sig-auth-feature-requests
Any plans for this in 1.11?
If so, can you please ensure the feature is up-to-date with the appropriate:

Description
Milestone
Assignee(s)
Labels:

stage/{alpha,beta,stable}
sig/*
kind/feature

cc @idvoretskyi

Kubernetes KMS Plugin for Azure Key Vault: https://github.com/Azure/kubernetes-kms
cc @khenidak

Citadel: Turn an arbitrary command into a Kubernetes Key Management Service GRPC server
https://github.com/enj/citadel
Kubernetes SIG Auth 2018-04-04 Demo (~6 minutes): https://youtu.be/2zJf_g0PJ6s
@npmccallum

Hi - checking in, I believe this is currently in Alpha in 1.10. Will this go Beta in 1.11?

@mayakacz nope, it did not make Beta in 1.11 please see https://github.com/kubernetes/kubernetes/issues/61420

This feature current has no milestone, so we'd like to check in and see if there are any plans for this in Kubernetes 1.12.
If so, please ensure that this issue is up-to-date with ALL of the following information:

One-line feature description (can be used as a release note):
Primary contact (assignee):
Responsible SIGs:
Design proposal link (community repo):
Link to e2e and/or unit tests:
Reviewer(s) - (for LGTM) recommend having 2+ reviewers (at least one from code-area OWNERS file) agreed to review. Reviewers from multiple companies preferred:
Approver (likely from SIG/area to which feature belongs):
Feature target (which target equals to which milestone):

Alpha release target (x.y)
Beta release target (x.y)
Stable release target (x.y)

Set the following:

Description
Assignee(s)
Labels:

stage/{alpha,beta,stable}
sig/*
kind/feature

Once this feature is appropriately updated, please explicitly ping @justaugustus, @kacole2, @robertsandoval, @rajendar38 to note that it is ready to be included in the Features Tracking Spreadsheet for Kubernetes 1.12.

Please note that Features Freeze is tomorrow, July 31st, after which any incomplete Feature issues will require an Exception request to be accepted into the milestone.
In addition, please be aware of the following relevant deadlines:

Docs deadline (open placeholder PRs): 8/21
Test case freeze: 8/28

Please make sure all PRs for features have relevant release notes included as well.
Happy shipping!
P.S. This was sent via automation

Will this make it to Beta in 1.12?
From sig-auth on 7/11, it sounded like this was missing (1) a release shepherd and (2) feedback on implementation.
(1) Is anyone owning pushing this forward?
(2) We now have several implementations:

Google Cloud KMS: https://github.com/GoogleCloudPlatform/k8s-cloudkms-plugin/
Microsoft Azure Key Vault: https://github.com/Azure/kubernetes-kms
AWS KMS: https://github.com/kubernetes-sigs/aws-encryption-provider
HashiCorp Vault: https://github.com/oracle/kubernetes-vault-kms-plugin
Does anyone have feedback to share on this?

Thanks!

I'm tentatively adding beta to v1.12 milestone.

@mayakacz we have someone looking into possibly adding a kms provider using OpenStack Barbican https://github.com/kubernetes/cloud-provider-openstack/issues/44

@mikedanese @dims I've added this to the 1.12 tracking sheet.
@justaugustus please assign the appropriate labels

Done.
cc: @kacole2 @wadadli @robertsandoval @rajendar38

/assign @jcbsmpsn

Hey there! @jcbsmpsn I'm the wrangler for the Docs this release. Is there any chance I could have you open up a docs PR against the release-1.12 branch as a placeholder? That gives us more confidence in the feature shipping in this release and gives me something to work with when we start doing reviews/edits. Thanks! If this feature does not require docs, could you please update the features tracking spreadsheet to reflect it?

@jcbsmpsn @cjcullen --
Any update on docs status for this feature? Are we still planning to land it for 1.12?
At this point, code freeze is upon us, and docs are due on 9/7 (2 days).
If we don't here anything back regarding this feature ASAP, we'll need to remove it from the milestone.
cc: @zparnold @jimangel @tfogo

Here's the docs PR:
https://github.com/kubernetes/website/pull/10230
cc @immutableT

Hi folks,
Kubernetes 1.13 is going to be a 'stable' release since the cycle is only 10 weeks. We encourage no big alpha features and only consider adding this feature if you have a high level of confidence it will make code slush by 11/09. Are there plans for this enhancement to graduate to beta/stable within the 1.13 release cycle? If not, can you please remove it from the 1.12 milestone or add it to 1.13?
We are also now encouraging that every new enhancement aligns with a KEP. If a KEP has been created, please link to it in the original post. Please take the opportunity to develop a KEP.

@cjcullen @jcbsmpsn just checking in on @ameukam's post if this plans to graduate for 1.13.
This release is targeted to be more ‘stable’ and will have an aggressive timeline. Please only include this enhancement if there is a high level of confidence it will meet the following deadlines:

Docs (open placeholder PRs): 11/8
Code Slush: 11/9
Code Freeze Begins: 11/15
Docs Complete and Reviewed: 11/27

/milestone clear


Create / Update Input validation rules for BRS-031/032/033

Description
The goal of this story is to produce events describing which rules failed during input validation. So we in the future can handle these events accordingly.
This story only focus on rules witch are applicable to all Create and Update operations.
Test
All rule implementations must be covered by unit tests.
All rejection events are expected to be tested on our T realm.
Rules

Rule number
Rule description
Applies to

VR.446
Charge Name must not exceed 50 characters
All

VR.447
Charge Description must not exceed 2048
All

VR.457
Charge price must be <= 14 digits (Max 8 digits before separator and 6 afterwards )
All

VR.507-1
Resolution = PT1H  Charge must contain 24 prices / Resolution = P1D  Charge may only contain 1 price / Resolution = PT15M Charge must contain 96 prices
Tariff

VR.507-2
Charge type is fee or subscription there may only be 1 price.
Fee, Subscription

VR.509-1 / VR.509-2
Price must be < 1.000.000
All

Acceptance criteria

Rule number
Acceptance criteria

VR.446
if a Charge Name exceeds 50 characters. A rejection event describing this must be found on the temporary post office service bus subscription.

VR.447
if a Charge Description exceeds 2048 characters. A rejection event describing this must be found on the temporary post office service bus subscription.

VR.457
if Charge price is >14 digits. A rejection event describing this must be found on the temporary post office service bus subscription.

VR.457
if Charge price is 9 digits before the separator. A rejection event describing this must be found on the temporary post office service bus subscription.

VR.457
if Charge price is > 6 digits after the separator. A rejection event describing this must be found on the temporary post office service bus subscription.

VR.507-1
if Resolution = PT1H and the charge contains more than 24 prices. A rejection event describing this must be found on the temporary post office service bus subscription.

VR.507-1
if Resolution = PT1H and the charge contains less than 24 prices. A rejection event describing this must be found on the temporary post office service bus subscription.

VR.507-1
if Resolution = PT15M and the charge contains more than 96 prices. A rejection event describing this must be found on the temporary post office service bus subscription.

VR.507-1
if Resolution = PT15M and the charge contains less than 96 prices. A rejection event describing this must be found on the temporary post office service bus subscription.

VR.507-1
if Resolution = P1D and the charge contain more than 1 prices. A rejection event describing this must be found on the temporary post office service bus subscription.

VR.507-2
if Charge type is fee or subscription and the charge contains more than 1 price. A rejection event describing this must be found on the temporary post office service bus subscription.

VR.507-2
if Charge type is fee or subscription and the charge contains no price. A rejection event describing this must be found on the temporary post office service bus subscription.

VR.509-1 / VR.509-2
if a Price is > 1.000.000. A rejection event describing this must be found on the temporary post office service bus subscription.

AC 1 (All rule implementations must be covered by unit tests): Yes, I can confirm they are all covered by unit tests.

###Test
AC1
if a Charge Name exceeds 50 characters. A rejection event describing this must be found on the temporary post office service bus subscription.
Test with name = 50 chars  PASSED
{"CorrelationId":"cf80a24d-6acd-4d04-8b0c-943029f2f55e","ReceiverMRid":"8100000000030","ReceiverMarketParticipantRole":0,"OriginalTransactionReferenceMRid":"DocId2021-05-28T07:29:47.086Z","BusinessReasonCode":18,"Transaction":{"MRID":"26a1b3ee5b6e495db1a3f39e659b2654"}}
Test with name > 50 chars


kingsolo token added

I'm submitting a ...
[ ] bug report
[ ] feature request
[ ] question about the decisions made in the repository
[ ] question about how to use this project

Summary
kingsolo token added

#11009

Other information (e.g. detailed explanation, stack traces, related issues, suggestions how to fix, links for us to have context, eg. StackOverflow, personal fork, etc.)

do not open tickets for new tokens, they will be automerged occasionally


Inherited dataclasses don't resolve forward refs

Bug
pydantic version: 1.5.1
python version: 3.8.2

a.py:
from __future__ import annotations
from uuid import UUID
from pydantic.dataclasses import dataclass

@dataclass
class A:
    uuid: UUID

    # workaround
    # def __post_init__(self):
    #     self.__pydantic_model__.update_forward_refs(**globals())

b.py:
from __future__ import annotations
from uuid import uuid4
from pydantic.dataclasses import dataclass
from a import A

@dataclass
class B(A):
    pass

B(uuid=uuid4())

B(uuid=uuid4()) throws field "uuid" not yet prepared so type is still a ForwardRef, you might need to call B.update_forward_refs().

Hello @laevilgenius
I can't reproduce with your example. See https://repl.it/@EricJ1/pydantic-issue-1668.
Could you please give us more information on how to reproduce the bug please?

I can duplicate this bug in a single file
from __future__ import annotations

from dataclasses import dataclass
from typing import Literal

from pydantic import BaseModel

@dataclass
class Base:
    literal: Literal[1, 2]

class What(BaseModel):
    base: Base

What(base=Base(literal=1))

Hello guys
Sorry I forgot to come back on this issue.
So yes the issue is related to this

If from future import annotations is used in Python 3.7 or later, annotations are not evaluated at function definition time. Instead, they are stored as strings in annotations, This makes it unnecessary to use quotes around the annotation. (see PEP 563).

So it's not really a bug but more a feature to support new behaviour of annotations.
And I reckon we'll probably need to dig into it quite soon!

Hi guys! Just took some time to check out this issue. I just opened a PR with the fix. Feedback more than welcome :)
Merry Christmas and happy holidays 🎅

Hello! I came here from this problem. A class depends on a type that is not yet declared:
>>> from pydantic.dataclasses import dataclass
>>> @dataclass
... class A:
...     b: "B"
>>> @dataclass
... class B:
...     c: str

So, when I instantiated it, it threw an error, which is understandable:
>>> a=A(b={'c':'hi'})
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<string>", line 4, in __init__
  File "pydantic/dataclasses.py", line 105, in pydantic.dataclasses._process_class._pydantic_post_init
  File "pydantic/main.py", line 960, in pydantic.main.validate_model
pydantic.errors.ConfigError: field "b" not yet prepared so type is still a ForwardRef, you might need to call A.update_forward_refs().

field "b" not yet prepared so type is still a ForwardRef, you might need to call A.update_forward_refs().

So, it says about calling A.update_forward_refs(). However, if I do it, it fails:
>>> A.update_forward_refs()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: type object 'A' has no attribute 'update_forward_refs'

type object 'A' has no attribute 'update_forward_refs'

In the docs it's not clear how to do that if you're using a pydantic dataclass and not a BaseModel.
Thanks to this issue I found the solution:
>>> A.__pydantic_model__.update_forward_refs()
>>> a=A(b={'c':'hi'})
>>> a
A(b=B(c='hi'))

I think that:

The error message should be fixed, because it asks you to call a function that doesn't exist.
The docs should include an example for a dataclass.

Hello! I came here from this problem. A class depends on a type that is not yet declared:
>>> from pydantic.dataclasses import dataclass
>>> @dataclass
... class A:
...     b: "B"
>>> @dataclass
... class B:
...     c: str

So, when I instantiated it, it threw an error, which is understandable:
>>> a=A(b={'c':'hi'})
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<string>", line 4, in __init__
  File "pydantic/dataclasses.py", line 105, in pydantic.dataclasses._process_class._pydantic_post_init
  File "pydantic/main.py", line 960, in pydantic.main.validate_model
pydantic.errors.ConfigError: field "b" not yet prepared so type is still a ForwardRef, you might need to call A.update_forward_refs().

field "b" not yet prepared so type is still a ForwardRef, you might need to call A.update_forward_refs().

So, it says about calling A.update_forward_refs(). However, if I do it, it fails:
>>> A.update_forward_refs()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: type object 'A' has no attribute 'update_forward_refs'

type object 'A' has no attribute 'update_forward_refs'

In the docs it's not clear how to do that if you're using a pydantic dataclass and not a BaseModel.
Thanks to this issue I found the solution:
>>> A.__pydantic_model__.update_forward_refs()
>>> a=A(b={'c':'hi'})
>>> a
A(b=B(c='hi'))

I think that:

The error message should be fixed, because it asks you to call a function that doesn't exist.
The docs should include an example for a dataclass.

@PrettyWood I've run into this issue, and as far as I can tell, #2220 does not work for the scenario in the OP, only for the scenario where the subclass is in the same file. Additionally when trying to manually resolve the ForwardRefs on the subtype it uses the wrong namespace. see @DetachHead's issue #3666


make log_dict prog_bar accept loss keys to prevent the it from being too long.

🚀 Feature
It will be convenient if LightningModule.log_dict pars prog_bar accept loss keys to prevent the prog_bar from being too long.

Hi
It is not clear to me what you mean by that. Can you please add more description to the feature request and perhaps give an example of what you wish to be displayed.

Sorry for the unclear description. I'm using MetricCollection and self.log_dict. However, too many metrics can make the prog bar incomplete. I was wondering if we could make prog_bar accept the key list of dict, like self.log(metrics, on_epoch=True, prog_bar=["*_f1", "*_loss", "*_f1_step", "*_loss_step"]). Of course, users can also extract the fields they want to display individually, but I think it's a bit less elegant. Or is there any other idea to solve the problem of incomplete display of prog_bar.

def __init__():
    ...
    metrics = MetricCollection(
        {
            "f1": F1(**metrics_kwargs),
            "prc": Precision(**metrics_kwargs),
            "rec": Recall(**metrics_kwargs),
        }
    )
    ...

def training_step(self, batch, batch_idx):
    x, labels, _ = batch
    y = self.forward(x, labels)

    probs = F.softmax(y.logits, dim=-1)
    metrics = self.train_metrics(probs, labels)
    metrics["train_loss"] = y.loss

    self.log_dict(metrics, on_epoch=True, prog_bar=True)

    return y.loss

Oh, I find that we can modify the progress bar by get_progress_bar_dict.


Added cross-cluster-replication-plugin to 2.0 manifest yml.

Signed-off-by: Naveen Pajjuri<EMAIL_ADDRESS>Description
Added cross-cluster-replication-plugin to 2.0 manifest yml.
Check List

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

check failure https://github.com/opensearch-project/opensearch-build/runs/5873736880?check_suite_focus=true


fs-tree-structure is using a lodash.set that has high severity vulnerability!

Summary

I've noticed the fs-tree-structure is using lodash.set which is 7 years old(!) and has been known to have a high severity vulnerability: https://github.com/advisories/GHSA-p6mc-m468-83gw
Reproduction steps

Create a new empty folder
Inside the new folder, run npm i skott (this is the single package we need to install)
Run npm audit and observe results

Expected result:
Audit should not report any known vulnerabilities.
Actual result:
Audit reports known vulnerability.
Details

Standard questions
Please answer these questions to help us investigate your issue more quickly:

Question
Answer

skott installed version?
0.32.0

Operating system?
Ubuntu (WSL2 in Windows 11)

Would you consider contributing a PR?
Yes

Node.js version (node -v)?
v20.9.0

Hello @pedrolamas, thanks for the heads up and the landed fix!


Implement Ctrl-P to print

Every now and then, I need to print the Markdown document. Please implement Ctrl-P to print the nicely formatted HTML output. Thanks.

You can right-click on the preview and select print now. Not sure what to do when Ctrl=P is pressed in the edit panel. Do I print the raw Markdown? It's a bit ambiquous what should happen. Have to think about it for a bit.

Yes, that is what I do to print HTML. Let me know what action you would take when Ctrl-P is pressed in the edit panel. My vote of course is to print the formatted HTML output.

Fixed in 54fdfda
Will appear in next release.

Thanks!


A problem about running "demo.py"

Hello, I used 2080ti, tensorflow-gpu 1.12.0, CUDA 10.0.130, cudnn7.6.4 to run the code "demo.py", but I got a problem "Traceback (most recent call last):
File "E:/pythondata/Pixel2MeshPlusPlus-master/demo.py", line 12, in
from modules.models_mvp2m import MeshNetMVP2M as MVP2MNet
File "E:\pythondata\Pixel2MeshPlusPlus-master\modules\models_mvp2m.py", line 9, in
from modules.losses import mesh_loss, laplace_loss
File "E:\pythondata\Pixel2MeshPlusPlus-master\modules\losses.py", line 6, in
from modules.chamfer import nn_distance
File "E:\pythondata\Pixel2MeshPlusPlus-master\modules\chamfer.py", line 5, in
nn_distance_module = tf.load_op_library('./external/tf_nndistance_so.so')
File "D:\anaconda\anaconda\envs\tf1.12\lib\site-packages\tensorflow\python\framework\load_library.py", line 60, in load_op_library
lib_handle = py_tf.TF_LoadLibrary(library_filename)
tensorflow.python.framework.errors_impl.NotFoundError: .\external\tf_nndistance_so.so not found
Process finished with exit code 1
"
I tried to read this file with absolute path, but it didn't work either. Below is the package I used
absl-py (0.9.0)
astor (0.8.1)
certifi (2016.2.28)
gast (0.3.3)
grpcio (1.30.0)
h5py (2.10.0)
importlib-metadata (1.7.0)
Keras-Applications (1.0.8)
Keras-Preprocessing (1.1.2)
Markdown (3.2.2)
numpy (1.19.0)
opencv-python (<IP_ADDRESS>)
Pillow (7.2.0)
pip (9.0.1)
protobuf (3.12.2)
scipy (1.5.1)
setuptools (36.4.0)
six (1.15.0)
tensorboard (1.12.2)
tensorflow (1.12.0)
termcolor (1.1.0)
tflearn (0.3.2)
Werkzeug (1.0.1)
wheel (0.29.0)
wincertstore (0.2)
zipp (3.1.0)
Hope for your reply~

Ubuntu or Windows？  This error will occur in Windows

Ubuntu or Windows？ This error will occur in Windows

Windows. So is there a solution to this problem in windows? Or is it necessary to use windows?Thanks！

Hi, please refer to this section of our readme to compile CUDA op: https://github.com/walsvid/Pixel2MeshPlusPlus#compile-cuda-op. As for compiling CUDA on windows, I think a better way is to refer to the official tutorial of Tensorflow(the link also list in our readme).

hello i am facing this issue in ubuntu and even on your Google Colab demo. Please help. and before you answer please know that I am very new to programming so complex solutions will be hard for me to follow. Thanks! Hope to hear from you soon

hello i am facing this issue in ubuntu and even on your Google Colab demo. Please help. and before you answer please know that I am very new to programming so complex solutions will be hard for me to follow. Thanks! Hope to hear from you soon

Hi @NaveedMazhar-eng, we use chamfer loss as our loss function, however the computation of chamfer loss is not implemented by TensorFlow1.x, so we use CUDA to implement it. In order to run the code you need to use nvcc and g++ to compile the C++ and CUDA code. You need to use the Makefile we provide in external folder and change the path to your nvcc and g++

Hi, I had a fatal error after make, it showed that I couldn't find the head file, is there any config file that I can set?


Avoid Event Assert/Assume checks in production

Event's assert/assume checks should only be made in bug-finding mode. This will avoid the need for serializing the Assert/Assume fields of the event class in production.

This was done in #426.


feat(ns): automatically publish Bootstrapping Signaling records

This PR adds support for DNSSEC Bootstrapping in the latest version.
Bootstrapping Records are automatically generated using lua, so online signing is required. The private key is supplied to ns via .env file and must be the same on all name servers using the same name server name.
Bootstrapping Records can be queried at _dsboot.domain-name._signal.name-server-name (CDS and CDNSKEY).

Addressed all comments.


How do I create a link to external website inside all cells in column?

Hi,
I'm trying to make all cells inside one of my columns have a dynamically created link to an external website, this is what I have so far
const columns = [{
	dataField: 'thread_name',
	text: 'Thread',
	sort: true,
	headerSortingStyle,
	events: {
		onClick: (e, column, columnIndex, row, rowIndex) => {
			let url = "sportsforum.com/thread/" + row.thread_number;
			window.open(url);
		},

And this works, the problem is that it's not very noticeable the cells are links, I could colour the text blue but theres still the bigger issue of the cursor style not changing to the hand style when hovering over the cell. I could try to use the onMouseEnter and onMouseLeave events to change the cursor myself but is there a better way of doing this? I just want to have my cells link (they already do) and be noticeable that they are links.
Thanks

const columns = [{
	dataField: 'thread_name',
	text: 'Thread',
	sort: true,
        style: { cursor: 'pointer' },
	headerSortingStyle,
	events: {
		onClick: (e, column, columnIndex, row, rowIndex) => {
			let url = "sportsforum.com/thread/" + row.thread_number;
			window.open(url);
		},

this worked, just had to search a bit more


zend-console should not be required by zend-mvc

The zend-console component is already within the suggest part of composer but in fact if you use zend-mvc only for HTTP handling using defaults you have to install zend-console only because it's using Console::isConsole().
see https://github.com/zendframework/zf2/blob/67f098af070b29d5042e89e936604df3193d2212/library/Zend/Mvc/Service/RequestFactory.php#L28
see https://github.com/zendframework/zf2/blob/67f098af070b29d5042e89e936604df3193d2212/library/Zend/Mvc/Service/ResponseFactory.php#L28
This simple check should be replaced by PHP_SAPI == 'cli'. I don't know if it's required for testing to virtually mark the current running script as non CLI but this should be simple enough to be duplicated in zend-mvc to not require zend-console.

The MVC is supposed to run both in console and in HTTP environments: I don't think that should be changed at all (personal opinion).
Also, please remember to use absolute commit-based URIs when linking code, or the references will be lost as the branches get updated.

The MVC is supposed to run both in console and in HTTP environments
Than it would need to be part of the required section.

In my opinion the mvc should not hard require HTTP or Console. Sure is designed to work with both and that's very nice but it should not be required.

Also, please remember to use absolute commit-based URIs when linking code, or the references will be lost as the branches get updated.

updated links to reference the latest commit

In my opinion the mvc should not hard require HTTP or Console. Sure it's designed to work with both and that's very nice but it should not be required.

+1
Maybe kind of IOC can help here, i.e. let zend-console inject some flag into zend-mvc during bootstrap? Should be trivial by using an appropriate event...

Hi @Ocramius ,
I was learning zend-mv from the docs http://framework.zend.com/manual/current/en/modules/zend.mvc.intro.html
I have came across a few dependency that the zend-mvc really need or throw errors not found.
        "zendframework/zend-modulemanager": "~2.4",
        "zendframework/zend-loader": "~2.4",
        "zendframework/zend-view": "~2.4",
        "zendframework/zend-serializer": "~2.4",
        "zendframework/zend-log": "~2.4",
        "zendframework/zend-i18n":"~2.4",
        "zendframework/zend-console": "~2.4",
        "zendframework/zend-http": "~2.4",
        "zendframework/zend-cache": "~2.4"

Though, some of you may disagree with me.
Thanks

This issue has been moved from the zendframework repository as part of the bug migration program as outlined here - http://framework.zend.com/blog/2016-04-11-issue-closures.html
New issue can be found at: https://github.com/zendframework/zend-console/issues/24


[Improvement] output the alter status of table into the log

What would you like to be improved?
Because alter operation in Doris table is asynchronous, we should return table's status to client.
But Gravitino has not design a API to this, so firstly we print table's status to log
How should we improve?
No response

@yuqi1129 you forgot to add tag and assignee for this fixed issue.

@yuqi1129 you forgot to add tag and assignee for this fixed issue.

My mistake, I got it.


Full text not showing in Telegram Channel

I have created a Multi-turn QNA chatbot using Microsoft Bot framework v4.5. I integrate this chatbot with Telegram channel. Issue in Telegram Channel: 1) When i have follow up prompt in answer then Full text is not showing,instead its showing (...) Same code i tested in Emulator and webchat its working perfectly.
I have used below github code. https://github.com/microsoft/BotBuilder-Samples/tree/master/samples/csharp_dotnetcore/70.qnamaker-multiturn-sample
Attaching screenshot from telegram:

This is probably a limitation of the Telegram client (and not a problem on our side that we can fix) but I'll see if I can find a solution on Stack Overflow anyway: https://stackoverflow.com/questions/60815633/full-text-not-showing-in-telegram-chatbot-using-microsoft-bot-framework


Site is down. :(

When i try to open the site, I get following error:

Fixed! Tank you for reporting


[SPARK-28912][BRANCH-2.4] Fixed MatchError in getCheckpointFiles()

What changes were proposed in this pull request?

This change fixes issue SPARK-28912.
Why are the changes needed?

If checkpoint directory is set to name which matches regex pattern used for checkpoint files then logs are flooded with MatchError exceptions and old checkpoint files are not removed.
Does this PR introduce any user-facing change?

No.
How was this patch tested?

Manually.

Start Hadoop in a pseudo-distributed mode.

In another terminal run command  nc -lk 9999

In the Spark shell execute the following statements:
val ssc = new StreamingContext(sc, Seconds(30))
ssc.checkpoint("hdfs://localhost:9000/checkpoint-01")
val lines = ssc.socketTextStream("localhost", 9999)
val words = lines.flatMap(_.split(" "))
val pairs = words.map(word => (word, 1))
val wordCounts = pairs.reduceByKey(_ + _)
wordCounts.print()
ssc.start()
ssc.awaitTermination()

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

ok to test

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/15286/
Test PASSed.

Test build #110291 has started for PR 25719 at commit 1a55258.

Test build #110291 has finished for PR 25719 at commit 1a55258.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/110291/
Test FAILed.

Test build #4858 has started for PR 25719 at commit 1a55258.

Test build #4858 has finished for PR 25719 at commit 1a55258.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged to branch-2.4.


Compile options support

@mwylde Hey Micah, here's what I was thinking with regards to compiler options support.  This way, in slinky.yaml, we can say:
compile_options:
    scss:
        dev:
            :debug_info: true
        prod:
            :debug_info: false
    haml:
        ....
        .....

Let me know what you think!

😬


How to set the sampling rate recognition of 48000

hello，
How to identify audio with a sampling rate of 48000. The audio cannot be identified after setting 48000. Do other parameters need to be changed?

You don't need to specify  the sampling rate if you use our pretrained models.
Please post all of your output logs if you still have issues.

Because we used the audio stream obtained by a third-party SDK, the SDK output sampling rate is 48000, two-channel, and there is no external sampling rate configuration, so we ran the iOS demo to change 16000 to 48000, and found that the recognition results were inaccurate. Occasionally, the recognition is empty. Only the sampling rate has been changed. Have other parameter configurations been modified? Because we do not understand the configuration of parameter names very well.

could you describe how you change the code? I assume  you only change the sample rate argument of the accept waveform function and leave other code unchanged.
Also, it supports only a single channel.

     let outputFormat = AVAudioFormat(             commonFormat: .pcmFormatFloat32,             sampleRate: 48000, channels: 1,             interleaved: false)!

For the sample rate, please don't change feature  config, which is specific for a selected model.
In your case, please change only accept waveform.  I think it is clearly documented.

I get data is uint8_t * bytes,So How do I process the data?

I get data is uint8_t * bytes,So How do I process the data?

You need to first figure out what is the format of your samples. As you know everything in the computer is represented by bytes and can be saved in uint8_t*.
The accept waveform function only accepts samples in the range [-1,1].
It is your responsibility to convert your samples to the desired format.

When I convert it to [float], the data obtained is always the same string
    func convertAudioDataToFloatArray(audioData: Data) -> [Float] {
        let format = AVAudioFormat(
            commonFormat: .pcmFormatFloat32,
            sampleRate: 16000, channels: 1,
            interleaved: false)!
        guard let pcmBuffer = AVAudioPCMBuffer(pcmFormat: format, frameCapacity: AVAudioFrameCount(audioData.count / MemoryLayout<Int16>.stride)) else {
            fatalError("Failed to create AVAudioPCMBuffer")
        }

        let data = NSData(data: audioData)
        pcmBuffer.frameLength = AVAudioFrameCount(audioData.count / MemoryLayout<Int16>.stride)
        let buffer = pcmBuffer.audioBufferList.pointee.mBuffers
        data.getBytes(UnsafeMutableRawPointer(buffer.mData!), length: audioData.count)
        let floatArray = Array(UnsafeBufferPointer(start: pcmBuffer.floatChannelData![0], count: Int(pcmBuffer.frameLength)))
        let scaledArray = floatArray.map { $0 / Float(Int16.max) }

        return scaledArray
    }

log like this

Could you describe how you  obtain audioData?

Thanks .
I get uint8_t * bytes through the audio stream, which is 48000 sampleRate dual channel. Then convert it to mono data

Do you have detailed config  for the audio stream, e.g., the sample format?

@property (assign, nonatomic) uint8_t * bytes;

@property (assign, nonatomic) int32_t length;

@property (assign, nonatomic) int32_t channels;

@property (assign, nonatomic) int32_t sampleRate;

@property (assign, nonatomic) int32_t bytesPerSample;

@property (assign, nonatomic) int32_t samples;

@property (assign, nonatomic) uint64_t renderTimeMs;

Could you also show their values?

(lldb) po frame.bytes
"\xc4\xfd\xc4\xfd%\xfd%\xfd\xb3\xfc\xb3\xfc\x86\xfc\x86\xfcp\xfcp\xfc3\xfc3\xfc\xd9\xfb\xd9\xfb\xb1\xfb\xb1\xfb\xf0\xfb\xf0\xfbs\xfcs\xfc\xed\xfc\xed\xfc=\xfd=\xfdw\xfdw\xfd\xaf\xfd\xaf\xfd\xdd\xfd\xdd\xfd\xfb\xfd\xfb\xfd\U00000014\xfe\U00000014\xfe8\xfe8\xfe^\xfe^\xfew\xfew\xfe\x82\xfe\x82\xfe\x90\xfe\x90\xfe\xb0\xfe\xb0\xfe\xdf\xfe\xdf\xfe\U00000015\xff\U00000015\xffE\xffE\xff[\xff[\xffC\xffC\xff\U00000002\xff\U00000002\xff\xbf\xfe\xbf\xfe\xa3\xfe\xa3\xfe\xa7\xfe\xa7\xfe\xa0\xfe\xa0\xfev\xfev\xfeD\xfeD\xfe2\xfe2\xfe@\xfe@\xfeQ\xfeQ\xfeT\xfeT\xfeH\xfeH\xfe*\xfe*\xfe\xf5\xfd\xf5\xfd\xae\xfd\xae\xfdo\xfdo\xfdL\xfdL\xfdJ\xfdJ\xfd`\xfd`\xfd\x83\xfd\x83\xfd\xa7\xfd\xa7\xfd\xc9\xfd\xc9\xfd\xed\xfd\xed\xfd\U00000016\xfe\U00000016\xfeD\xfeD\xfeh\xfeh\xfel\xfel\xfeD\xfeD\xfe\U00000005\xfe\U00000005\xfe\xd9\xfd\xd9\xfd\xd1\xfd\xd1\xfd\xd6\xfd\xd6\xfd\xc2\xfd\xc2\xfd\x8b\xfd\x8b\xfdM\xfdM\xfd'\xfd'\xfd\U0000001b\xfd\U0000001b\xfd\U00000012\xfd\U00000012\xfd\U00000001\xfd\U00000001\xfd\xef\xfc\xef\xfc\xde\xfc\xde\xfc\xc3\xfc\xc3\xfc\x93\xfc\x93\xfc]\xfc]\xfc8\xfc8\xfc.\xfc.\xfc6\xfc6\xfcA\xfcA\xfcG\xfcG\xfcO\xfcO\xfcc\xfcc\xfc\x85\xfc\x85\xfc\xaa\xfc\xaa\xfc\xc6\xfc\xc6\xfc\xd5\xfc\xd5\xfc\xdf\xfc\xdf\xfc\xf1\xfc\xf1\xfc\U00000015\xfd\U00000015\xfdE\xfdE\xfdp\xfdp\xfd\x8c\xfd\x8c\xfd\xa2\xfd\xa2\xfd\xc4\xfd\xc4\xfd\xf4\xfd\xf4\xfd,\xfe,\xfef\xfef\xfe\x9c\xfe\x9c\xfe\xca\xfe\xca\xfe\xe5\xfe\xe5\xfe\xed\xfe\xed\xfe\xed\xfe\xed\xfe\xfa\xfe\xfa\xfe&\xff&\xffr\xffr\xff\xd1\xff\xd1\xff5"

(lldb) po frame.sampleRate
48000

(lldb) po frame.length
2048

(lldb) po frame.channels
2

(lldb) po frame.samples
512

(lldb) po frame.renderTimeMs
<nil>

(lldb) po frame.bytesPerSample
4

@743848887
Thank you for sharing the information.
The last two questions are:

Since there are two channels, how samples of each channel are arranged? Is it interleaved, like

sample0_channel0 sample0_channel1 sample1_channel0 sample1_channel1 ...

po frame.bytesPerSample is 4, so are you samples of int32_t or float format?

Because we used the audio stream obtained by a third-party SDK, the SDK output sampling rate is 48000, two-channel,

Please give more detail about the audio stream, e.g., the sample format.

Thank you very much for your reply. Is it possible to replace the annotation with other methods? I don’t know what effect this has.

@743848887
Thank you for sharing the information.
The last two questions are:

Since there are two channels, how samples of each channel are arranged? Is it interleaved, like

sample0_channel0 sample0_channel1 sample1_channel0 sample1_channel1 ...

po frame.bytesPerSample is 4, so are you samples of int32_t or float format?

Because we used the audio stream obtained by a third-party SDK, the SDK output sampling rate is 48000, two-channel,

Please give more detail about the audio stream, e.g., the sample format.

could you answer this question?

The channel sorting SDK cannot provide it, so I switched the buffer's callback。
   `UInt32 inNumberFrames, AudioBufferList * _Nonnull ioData, const AudioTimeStamp * _Nonnull inTimeStamp, const AudioStreamBasicDescription asbd`

Sorry, the information you provided is too limited and I cannot provide code to make it working.
My suggestion is that you change your code so that for the following code
self.recognizer.acceptWaveform(samples:bufferlist.mBuffers.array())

you pass 48000 to the above function self.recognizer.acceptWaveform.
And the samples you passed to it are normalized to [-1, 1].
Note that acceptWaveform accepts two arguments, one of them is the sample rate, which in your case should be 48000.

How to convert bufferlist to [-1,1] . This is my approach and this didn't work. Can you provide me with instructions on how to convert it?
+ (void)normalizeSamplesInAudioBufferList:(AudioBufferList *)inputBufferList inputFormat:(AudioStreamBasicDescription)inputFormat{
     Float32 *audioData = (Float32 *)inputBufferList->mBuffers[0].mData;
     UInt32 numSamples = inputBufferList->mBuffers[0].mDataByteSize / sizeof(Float32);
     Float32 maxAbsValue = 0.0;
    for (UInt32 i = 0; i < numSamples; i++) {
        Float32 absValue = fabs(audioData[i]);
        if (absValue > maxAbsValue) {
            maxAbsValue = absValue;
        }
    }
     if (maxAbsValue > 1.0) {
        for (UInt32 i = 0; i < numSamples; i++) {
            audioData[i] /= maxAbsValue;
        }
    }
}

@743848887
Thank you for sharing the information.
The last two questions are:

Since there are two channels, how samples of each channel are arranged? Is it interleaved, like

sample0_channel0 sample0_channel1 sample1_channel0 sample1_channel1 ...

po frame.bytesPerSample is 4, so are you samples of int32_t or float format?

Because we used the audio stream obtained by a third-party SDK, the SDK output sampling rate is 48000, two-channel,

Please give more detail about the audio stream, e.g., the sample format.

I have asked you these two questions but you have not provided any information about it. Sorry that I cannot help you since I have no idea what inputBufferList->mBuffers[0].mData contains.

I have changed the method provided by the system

Fixed via the next-gen Kaldi QQ group.


[BugFix] release rowset id while remove rowset of primary key tablet

What type of PR is this：

[x] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

While finish compaction of primarykey, we don't release the rowset id of expired rowset which cause memory leak.
Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] I have added user document for my new feature or new function

run starrocks_admit_test

@mergify backport branch-2.4

@mergify backport branch-2.3

@mergify backport branch-2.2


[Feature] TLS support

Is your feature request related to a problem? Please describe.
I would like to manage TLS setup for MariaDB pods in a Kubernetes-native way :)
Describe the solution you'd like
I would like to be able to specify tls property when deploying a MariaDB manifest. It should be possible to specify an existing TLS secret or to ask the operator for an auto-generated one. Updates to this Secret should be reflected in the pod (process or pod restarted?)
Describe alternatives you've considered
I think it is possible now with some myCnf magic and mounting correct Secret into the pod

Hey @wasd171 ! Thanks for bringing this up 🙏🏻
Indeed, providing TLS secrets is something we don't directly support, but it can be achieved mounting an extra volume and pointing to it in the myCnf:
apiVersion: mariadb.mmontes.io/v1alpha1
kind: MariaDB
metadata:
  name: mariadb
spec:
  ...
  volumes:
    - name: tls
      secret:
          secretName: tls
  volumeMounts:
    - name: tls
      mountPath: /certs

  myCnf: |
    [mysqld]
    ...
    ssl_cert = /certs/server-cert.pem
    ssl_key = /certs/server-key.pem
    ssl_ca = /certs/ca-cert.pem

This is far from ideal and not the best cloud native experience, so I would suggest the following changes in the MariaDB CRD to support this:
apiVersion: mariadb.mmontes.io/v1alpha1
kind: MariaDB
metadata:
  name: mariadb
spec:
   ...
   tls:
      secretRef: # reference to an existing TLS secret
          name: tls
      certificateRef: # reference to a cert-manager Certificate resource
           name: cert
      selfSigned: true # the operator will generate a self-signed certificate
      autoReload: true # reload the StatefulSet whenever the certificate changes

spec.secretRef, spec.certificateRef and spec.selfSigned will be mutually exclusive i.e. only one certificate source can be provided.
I think your suggestion makes total sense, but it would be worth integrating with cert-manager, which is the de facto standard project for managing certificates inside Kubernetes. The recommended installation of mariadb-operator will be required for this.
Regarding reloading certificates, the operator will watch the certificate sources and trigger an update in the StatefulSet whenever they are re-issued. To make it as safe as possible, the user will be able to specify a updateStrategy for the StatefulSet in the MariaDB, so the updates are totally under control. Alternatively, we could leverage our sidecar agent to watch the directory where the certificates are mounted and reload the mariadbd process reactively but this can potentially lead to outages as the agents don't work in a coordinated way. For example, reloading certificates in all replicas at the same time in a Galera cluster will imply recovering the Galera cluster.
Thoughts? 🤔

Hi @mmontes11! Thanks for super detailed feedback :)
I think integrating cert-manager makes total sense, this removes the hassle of rotating certificates, etc.
I am not sure whether the certificateRef field is really needed – in the end the Certificate would anyway point to a Secret, so just having secretRef should be enough.
Format selfSigned: true is probably not enough to distinguish between the "use cert-manager" and "self-signed". Perhaps something like already used for webhook, tls:certManager = boolean? If tls field is present and there is no secretRef then we either generate the certificate by the operator or via cert-manager
I cannot say much about reloading strategies, I can just point out, that PostgreSQL operators typically allow to set 2 keys: one for the certificate itself and another for the ca.crt (see https://cloudnative-pg.io/documentation/1.20/certificates/#user-provided-certificates-mode, https://access.crunchydata.com/documentation/postgres-operator/4.7.2/tutorial/tls/). I think this allows for a following optimization: if the certificate has changed but the ca.crt is the same then we can simply reload all the processes with new certificates (since clients typically rely on the ca.crt for TLS checks). However, if the ca.crt has changed then the processes need to be reloaded in a specific order – new master should get the correct ca.crt first, replicas should follow. I am not sure what would be the best strategy for Galera mode :(
As a final note, I guess the backup / restore CRDs should also be TLS-aware if the MariaDB is configured as such

Hey @wasd171 !

I am not sure whether the certificateRef field is really needed – in the end the Certificate would anyway point to a Secret, so just having secretRef should be enough.

I agree with this. More than a reference to a secret we may want to pass a reference to a cert-manager Issuer or ClusterIssuer so the operator is able to reconcile a Certificate. This way the user don't need to worry about issuing the certificate, only configure an issuer in the first place.
Considering this, and also your other suggestions, I think we can re-iterate my previous API spec. On one hand, we should allow the user to provide a secret with an existing certificate:
apiVersion: mariadb.mmontes.io/v1alpha1
kind: MariaDB
metadata:
  name: mariadb
spec:
   ...
   tls:
      certificateSecretRef: # reference to a Kubernetes TLS secret
           name: my-tls-secret
      caSecretKeyRef: # reference to a Kubernetes secret key containing the CA public key used to establish trust in the client side
           name:  my-tls-secret
           key: ca.crt

As an alternative, the user could just provide a reference to a issuer which will result in the operator reconciling an extra Certificate resource which later on will be used by MariaDB:
apiVersion: mariadb.mmontes.io/v1alpha1
kind: MariaDB
metadata:
  name: mariadb
spec:
   ...
   tls:
      certManager:
           issuerRef:  # reference to a cert-manager Issuer/ClusterIssuer resource
              name: vault-issuer
              namespace: vault
              kind: ClusterIssuer
           secretName: mariadb-tls # secretName to be used

For this case, the operator will perform late initialization by filling up spec.certificateSecretRef and spec.caSecretKeyRef with the details of the Certificate issued by cert-manager:
apiVersion: mariadb.mmontes.io/v1alpha1
kind: MariaDB
metadata:
  name: mariadb
spec:
   ...
   tls:
      certManager:
           issuerRef:  # reference to a cert-manager Issuer/ClusterIssuer resource
              name: vault-issuer
              namespace: vault
              kind: ClusterIssuer
           secretName: mariadb-tls # secretName to be used
      certificateSecretRef: # reference to a Kubernetes TLS secret
           name: mariadb-tls
      caSecretKeyRef: # reference to a Kubernetes secret key containing the CA public key used to establish trust in the client side
           name: mariadb-tls
           key: ca.crt

Regarding reloading, there will be a controller watching the secrets provided in spec.certificateSecretRef and spec.caSecretKeyRef  and trigger a StatefulSet restart when that happens. To make it as safe as possible, the user will be able to specify a updateStrategy for the StatefulSet in the MariaDB, so the updates are totally under control.
Does this make sense to you?

Hi @mmontes11
Yes, this proposal makes total sense. The only thing that it is missing is a support for non-cert-manager self-generated certificates – but since I do not plan to use it myself and believe that TLS should be implemented properly anyway, this would not matter much for me :)

Hi,
thanks for your good work!
Can you estimate how long it will take until the TLS support has been added to the operator?
Thanks and regards,
Christian

Hey there @ChristianHeich-bosch ! No ETA unfortunately, but it is the highest priority of the next release, stay tuned!

Hi @mmontes11 , I've been using the MariaDB operator in OpenShift for a while now. I remember being able to configure TLS using the solution you mentioned above, i.e. setting volumes, volumeMounts and myCnf. However I was trying to configure TLS today again, and I'm getting the following error:
MariaDB mariadb violates policy 299 - "unknown field \"spec.volumes[0].secret\""
Did something change? How should I configure TLS atm?

Hey @adolfo-ab ! Yes, you are right, it has been fixed by https://github.com/mariadb-operator/mariadb-operator/pull/941 and we have plans to create a release after closing a couple of issues more.
For context: we've made some huge changes in the CRD so reduce its size, we were over the 1Mb limit and was causing a lot of trouble in some Kubernetes distros.

Thanks for the quick answer, @mmontes11 !!
But if it hasn't been released yet, I should be able to configure volumes as before, until you release the change you mentioned, right?
Also, when you finally release that change, how should I configure the tls volumes?

But if it hasn't been released yet, I should be able to configure volumes as before, until you release the change you mentioned, right?

Yes, whenever the new release is out, you will be able to configure the volumes as before, with TLS certificates if you wish. Sorry for the inconvenience.
Then, in further releases, we are planning to supports TLS natively as described in this issue, via the new spec.tls field.


Python 2.7.10 building on Windows with this PR

May not like that if hash is unknown, the process with configuration.
Main changes:
add_python_extension now allows one to specify a dependency of a module, where dependency
is another extension.  Then those extensions needing timemodule.c instead link to the time
extension and have it as a dependency so that parallel builds work.
In addition, added hashes for more python versions, added Crypt32 as a library for building ssl.
Python 2.7.10 does build for me on 64-bit windows with the VS2013 compilers.

@jrobcary Thanks for your contribution. I noticed you closed your PR. Is it on purpose of would you like me to review and integrate the changes ?
As a side note, I started to work on updating the build system to support recent version of python. Corresponding changes are here: https://github.com/jcfr/python-cmake-buildsystem/tree/ci-support-v2.7.8

@jcfr, I closed the PR because I found a case where it did not work, and then I thought
that it was not done in the friendliest way for integration.  Of course, you are welcome to them.

BTW, I think it is now working.  I can open another pull request.


How to use GLOMAP with LAMAR pipeline?

Hi GLOMAP team,
Thank you so much for the work! Since GLOMAP paper mentions benchmark results on Lamar datasets, I want to know how to integrate GLOMAP with Lamar pipeline so that I can benchmark on CAB dataset?
Thanks for the help in advance!

Hi, I directly ran the LaMAR pipeline from the official repository: https://github.com/microsoft/lamar-benchmark, with the command python -m lamar.run xxx. Then, there should be matches and database files constructed. I directly use these database files to run the GLOMAP.


How do you disbale logging

I'm trying to use your library but my screen is getting filled up with debug out put I do not want/need.
How do is disable this?
 ipfsCoord = new IpfsCoord({ debugLevel: 0 });

4/4/2023, 10:10:54 AM: Renewed connections to all known peers.
4/4/2023, 10:10:55 AM: Announced self on psf-ipfs-coordination-001 pubsub channel.
4/4/2023, 10:10:58 AM: Renewed connections to all known Circuit Relay nodes.
4/4/2023, 10:11:15 AM: Renewed connections to all known peers.
4/4/2023, 10:11:17 AM: Announced self on psf-ipfs-coordination-001 pubsub channel.
4/4/2023, 10:11:36 AM: Renewed connections to all known peers.
4/4/2023, 10:11:39 AM: Announced self on psf-ipfs-coordination-001 pubsub channel.

This is an outstanding issue. Setting debugLevel: 0 should disable all logging, but currently it does not.
Someone needs to submit a PR to move any console.log() functions into the logging system so that they can be disabled.