Karaoke+Chords   and Music Notation+Tab

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. It would be cool to [...]
Is your feature related to the sound library or the app/website?
The library is responsible for making the sound and the website is the keyboard, renderer etc.
** My Project is called KaraJam(TM) I am a musician who wants to build a cool program to help musicians learn songs.

I am not a programmer
I have dyslexia and struggle to keep track of code, snippets etc drive me crazy.
I have been using Clause and ChatGTP to try and do this. It works then it doesn't work, ugh
This has been a dream of mine for many many years, I have tried all kinds of efforts including on Lynux using Jack and the many opensource libraries there. I gave up on Lynux as it required a better education than what I have. I like to say "Duh me play drums"
The basic are to create a new pane that presents First Karaoke and Chords, for this I am trying to use the Fraigo Karaoke Parsing feature, for some reason the Shift+T feature does not read many many .mid and .kar files not sure why but Fraigo reads them all?
I am trying to use Vexflow Libraries to parse chords and present them under the lyrics. This would be in a new pane like the main screen pane and the music player pane called "Karaoke+Chords".
I am also trying to use Vexflow Libraries to parse music notation and tab. The concept here is to have a musical note on the individual channels of the Synthesizer Controller, when you click that track's note button the music notation for that track is added to the Karaoke+Chords Screen/pane. On the Music Notation sub/pane there is a button for TAB, this will convert the Notation into either Guitar TAB or if it is on Track 10 it will be converted to Drum Tab. These of course are toggles.
I am trying to figure out how to make my new features in a new pane, they keep being added to the main screen or the music player. I tried duplicating the content for music_player_mode.js and creating the new Karaoke+chords but it is only adding the place marker to the bottom of both the main screen and the music player screen.

I would gladdly pay you to help me build KaraJam(TM), I don't have lots of money but will try to raise any money required. I can raise money but to write code I am help less.
P.S GREAT JOB on this program, I can't begin to list all the cool features and how musicians can put this to use. I am an old rocker from the 70s-80s and these days I am out of it, but would love to start practicing songs again, just to keep up the skills, and why not share that with other musician's as well.
Sincerely, Pat
KaraJam(TM)
<EMAIL_ADDRESS>Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

Hi,
I am not sure if I understood you correctly. Is your request related to your KaraJam program or SpessaSynth? If the latter, what would you like to get added into the program?

I am working with ChatGTP to incorporate SpessaSynth Fraigo Karaoke and VexFlow.
Been dreaming of KaraJam(TM) for twenty years. Heres the basic layout as I see it.

Karaoke+Chords
Program Open in a Karaoke+Chords Mode, we get Karaoke by Fraigo because of it robust Lyrics Handling, SpessaSynth only handles one of the over 100 .mid and .kar files I have, to parse the lyrics, Fraigo can parse them all. Then we use Vexflow to parse the chords, when changing key the program must be able to transpose the chord changes.. So the main UI is Karaoke+Chords like a musician's cheatsheet.

Midi Mixer and Synth
Then we come to the Midi Mixer portion, this should look like a Normal Audio Mixer, with Channels and a Master Section, including Reverb, Chorus, EQ Hi Mid and Low the Channels will have the ability to change instruments (GM) and import individual SF2 instruments GM MIDI Guitar sounds really suck). I would separate your Synthesizer Controller into two parts, 1 Midi Mixer and 2 a Synthesizer section for Modulation other Synth related parameters. I would like to see the Synthesizer Section expanded to include the possibility of an actual Synthesizer segment looking similar to the old Mooge Synth, using FM wave Synthesis or other more modern paramemters.

Music Notation / TAB
When in the Midi Mixer portion we can hit a Musical Note at the top of the channel and the mixer goes away and Music Notation for that channel is added to the bottom of the Karaoke+Chords pane. On the Music Notation Pane is a TAB button that will convert that channel to Tableture for Guitar, any channel can be viewed in Guitar Tab accept for Channel ten. Channel Ten needs to have Drum TAB of course. I understand that VexFlow is ideal for this, but have not got there yet.

Mix Down "Save Audio"
The Master Section of the MIDI Mixer should have the ability to either import a Compressor/Limiter or have one resident. I have looked at VST as a good possibility for signal Processing, but still exploring the possibilities here. Midi files can be all over the place in channel levels and even the difference between files can be an issue, we want a FM Radio Style compression applied at the Master output.
SpessaSynth is a great foundation for my project, I am struggling to get what I want from ChatGTP, some of it's code works great some not so great, up and down up and down excitement disappointment. I am not a programmer and suffer from dyslexa so when I have to work with snippets of code I get lost quickly. I have had some great success with Performous, but when I saw SpessaSynth was web based and did not require installation and worked on all platforms with a browser, i fell in love with SpessaSynth.

KaraJam(TM) the game
KaraJam(TM) the game, I envision going forward after establishing a user base for KaraJam(TM) that a game would be the next logical step. 1 like Roch Band or Guitar Hero, but for real musicians. 2. Midi input for polyphonic inputs and USB audio for Monophonic inputs. If you can imagine replacing the Keyboard with a Guitar Fret Board SpessaSynth already has the parts and pieces to make this happen.
Picture the singer get the note lines like in Performous, the Guitar player gets the vertical fret board (Non 3d) Key Boards well you got that beat already. It is possible (tested with Performous) to even do Brass and Woodwind (Monophonic) but the UI is still unclear.
To begin with I want the Karaoke+Chords working, then move to the MIDI Mixer and Synth, then add the Music Notation and TAB. Your Save Audio section has the potential to be great for not only the Mix Down but also for saving custom soundfonts once custom channel SF2 files have been added. There are some much better Guitar SF2 and VST instrument to be used out there and most of them are free, though I saw a few paid VST that might really work better for guitar.
There is still more to talk about here. By Linking the Music Notation portion to a network we could envision a School Band Teacher using the Software for his/her whole band. I did this with Lynux many years ago we used Muscore and by sending MIDI time code had them all synced up, though back then slower computers would have trouble with lag, I resolved that by only having ghe Start/stop Command heard on those slow machines, kind of worked but once in a while even then it would loose it's way. Now days it seems they are sending midi time code over the network much better, this opens the door to have Musician forming band from home, jamming etc, though even then inorder for them to hear the other guy we have to reduce the sample rate to almost being unworthy of the effort. The best way I see is to let each player just hear the Midi file and practice along, adding a video phone like feature that disables during play back has worked for me jamming with friends in the past, but again the audio sample rate had to be really bad and even then the latency got to be an issue. So far I only see practicing together and chatting later as a serious option. This is clear an expansion option but has the potential for a huge user base. Kids have become so anti-social these days.
So you would think that is it, keep track if you can, now when it comes to talking KaraJam(TM) to a venue, lets talk about what modern technology has open up for musician's and how MIDI could be used in a live performance use base. I played in Bands in the 70-80-90s and I use to blow peoples minds by preprogramming the lights using midi, it could be dead on the beat and have all kinds of effects, like Strobe or Specials doing cool effects right in time to the music. Spot lights would come on right when the singer would take the mike and using sysex I could make it so the guitar player never had to touch their pedals. I used a Midi Light Controller by Sun and a Sysex/Midi-Controller controller byBerranger (I think). By Using a click track in my ear (as the drummer) I cold keep the band in sync with the Midi File. Cool Right? The main issue was no more endless guitar solos and by using a FM style Compressor/Limiter on the mains, we had a Album Quality sound. Today with Amp Simulators and Electric Drums etc we could do a sound and stage design that meets even the Workman's Compensation Board standards for SPL levels. Bringing back the live band days.
Practice at home, play the game till your good enough to perform and form bands online, they meet for the first time at the gig potentially. Lol Single Acts and Duo's can create backing tracks for use at the gig as well. Even create custom sound fonts, it's all there if we can merge SpessaSynth, Fraigo Karaoke and Vexflow CHords and Charts.
Well I said I would pay you to build the KaraJam Software but understand I might be able to raise a few grand 1-3 but I am not rich and once it's done it would still be open source and free for the users. Only once karajam.org and kchord.org are live and build a user base will the potential for the game and the venue system to explode on the scene.
For now the focus is to build Karajam(TM) on karajam.org. I already have the hosting package with Network Solutions ready to go. So the job if you can do it for a few grand is build the Karaoke+Chords, add the Midi Mixer/Synth add the Music Notation/TAB and host it on my GitHub server, KaraJam-Dev.
Once it is up and running, the next step is to build a user base that loves it and uses it all the time, then I can move toward the Proprietary Game and Venue systems.
Let me know what you think, till then I will continue pluggin away at SpessaSynth/Fraigo-karaoke/Vexflow dreaming of the day it all works and I can start both telling my friends to try it out and using it my self to learn the oldies. I sing and play both Leys and Guitar a bit, so that would be fun in and of it's self.
Complements on SpessaSynth great software wonderful features and wow so close to my dream for KaraJam(TM) by the way I have owned KaraJam the Trade Mark since 15 good till 2030 and will renew it then. So far it is only in Canada, but they tell me there are treaties that cover me in most countries. As soon as I can afford it I will expand that as well, and try to get into Music Licensing. I would love to create KaraJam(TM) Creator software around my sound and stage design that would be like having a robot band..lol Customized MIDI files with Lights SYSEX etc, would be cool but my lawyers says music licensing is big money to get involved in. Ugh.. For now there are tonnes of free Midi files and lots of places to buy them too.
Thanks for getting back to me, see the vision believe in the dream, lets make KaraJam(TM) together. Oh and revenue could be generated off of KaraJam.org via advertising and I would gladely share some of that income with you as well, if we had an agreement in principle where you are the software author and I am the Producer Founder. Regardless I am never giving up on my dream.
Pat Hobbis
KaraJam(TM)

From: spessasus @.>
Sent: December 23, 2024 1:01 PM
To: spessasus/SpessaSynth @.>
Cc: KaraJam-dev @.>; Author @.>
Subject: Re: [spessasus/SpessaSynth] Karaoke+Chords and Music Notation+Tab (Issue #86)
Hi,
I am not sure if I understood you correctly. Is your request related to your KaraJam program or SpessaSynth? If the latter, what would you like to get added into the program?
—
Reply to this email directly, view it on GitHubhttps://github.com/spessasus/SpessaSynth/issues/86#issuecomment-2560292092, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BM7DVZ75WKUJVLS6PLIVRX32HB22DAVCNFSM6AAAAABT746HP2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNRQGI4TEMBZGI.
You are receiving this because you authored the thread.

To be clear I am using SpessaSynth as the foundation and adding libraries from Fraigo-karaoke and Vexflow to add features, is this ok? Chat GTP said your software was the best candidate for the new app.
I hope so i have invested many hours on this. It's a MIT license right?
Oh my musician buddies think I should not use KaraJam because it is associated with Karaoke, WHICH THEY HATE, I am now thinking I will release the software as KJam. So kjam.org will be the website.
Let me know what you think. The money is there if you want it, but I will keep banging away at the AI for now till I hear from you.
Pat
KaraJam(TM)

From: spessasus @.>
Sent: December 23, 2024 1:01 PM
To: spessasus/SpessaSynth @.>
Cc: KaraJam-dev @.>; Author @.>
Subject: Re: [spessasus/SpessaSynth] Karaoke+Chords and Music Notation+Tab (Issue #86)
Hi,
I am not sure if I understood you correctly. Is your request related to your KaraJam program or SpessaSynth? If the latter, what would you like to get added into the program?
—
Reply to this email directly, view it on GitHubhttps://github.com/spessasus/SpessaSynth/issues/86#issuecomment-2560292092, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BM7DVZ75WKUJVLS6PLIVRX32HB22DAVCNFSM6AAAAABT746HP2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNRQGI4TEMBZGI.
You are receiving this because you authored the thread.Message ID: @.***>

Hi,

First of all, you mentioned that this "Fraigo Karaoke" can parse some of your MIDI files while Spessasynth can't. Can you either upload them here or e-mail them to me<EMAIL_ADDRESS>I'll fix up spessa's parser to make them work and then Fraigo won't be necessary.

You mentioned the quality of the built-in samples. I understand, the built-in soundfont is intended to be a small soundfont that gets loaded quickly. I wish I could make a different one the default, but nobody wants to download a 1GB file on the start.
I personally use a different, higher quality soundfont: this one (https://musical-artifacts.com/artifacts/1176) to be precise. It has some very high quality samples that will satisfy your needs. And for different SF2 files, sure. SpessaSynth supports SF list.

Musical notation is a topic that has been discussed in spessasynth before. I am considering implementing it, though doing it with Vexflow is out of the question. However, I am willing to help you integrate Vexflow into your KaraJam/KJam project, though I'd prefer us conversing over e-mail for that, as it is not related to SpessaSynth. Again, feel free to send me an e-mail if you're interested.

About some of the features you mentioned:

MIDI ports are already supported. Both playing to other MIDI devices or MIDI input. Navigate to settings and they are available under the section named "MIDI Settings." Note that you have to give the permission for the website to access the MIDI devices and restart the browser after you've connected any for them to show up!
VSTis simply don't work on the web as they are intended to be installed as sort of "drivers". So I can't help you with that one.
FM Modulation is out of scope for SpessaSynth. Spessa is a SoundFont (or DLS) synthesizer, I.E. a wavetable synthesizer, or in other words, a fancy sampler. I can't help you with that one, though we could emulate it by using samples as well.
Equalizer does sound quite easy to implement, by using BiquadFilterNode in the WebAudio API, so I can try to help you with that.

About AI: I personally can't really recommend chat GPT or bing copilot for the task. GitHub Wikis (where SpessaSynth's documentation is hosted) aren't indexed by search engines and also by these assistants. The only AI i'd recommend for the task is GitHub Copilot, if you have access to that. Though, again, I am willing to help you with your project.

It is absolutely okay for you to use my project like that. In fact, i'm quite happy that it can help make your dream come true :)

And final question: Do you want me to add these features to spessasynth, or is it strictly related to KaraJam? If the latter, please reach out to me via e-mail and we'll continue from there.
Regards,
spessasus
<EMAIL_ADDRESS>

I can't send you midi files it would be an infringement but you can simply search for free midi karaoke files there are lost of them out there not sure fraigo karaoke handles the so well? Spessasynth says no lyrics found to most files. Not sure why though.
Yes I am planning to release KJam.org in the new year. About Vexflow I am not stuck on any particular library. They said my Muscore score has the same capabilities. How ever it needs to be compiled first.? There are others as well but my research says that Vexflow will parse chords nicely like lyrics in sync. Have not tried it yet.
Just think about a young musician learn to play classic rock. We first want Karaoke plus chords like a musician cheat sheet then we want individual tracks to have either notation or TAB so they can slow it down and practice it a bit at a time.
KJam is intended to help young musicians learn songs in everyway possible.
Now as I said if I can pay you to do the programming I would be very happy because I am 63 with dyslexia and have never been able to get this done. You let me know what you want I will raise more money if I need to.
The other stuff is all just dreaming for now but if I can get a strong user base advertisers and subscription may open the door to revenue potential.
I really like the keyboard interface and we under how hard it would be to put a static guitar neck on the screen as an option. More can complex because guitar has the same note up and down the neck so how do we know which one the artist played.
For now karaoke plus chords is the starting ground if you would take that on. Let me know how much you want. Changing the look of the synthesizer controller to more of a traditional mixer would also be cool even without the EQ . You tell me what you want to get started. I will find a way. I can etransfer a deposit asap.
Great to hear from you.
Pat
KaraJam (TM)
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: spessasus @.>
Sent: Friday, December 27, 2024 11:03:52 AM
To: spessasus/SpessaSynth @.>
Cc: KaraJam-dev @.>; Author @.>
Subject: Re: [spessasus/SpessaSynth] Karaoke+Chords and Music Notation+Tab (Issue #86)
Hi,

First of all, you mentioned that this "Fraigo Karaoke" can parse some of your MIDI files while Spessasynth can't. Can you either upload them here or e-mail them to me<EMAIL_ADDRESS>I'll fix up spessa's parser to make them work and then Fraigo won't be necessary.

You mentioned the quality of the built-in samples. I understand, the built-in soundfont is intended to be a small soundfont that gets loaded quickly. I wish I could make a different one the default, but nobody wants to download a 1GB file on the start.
I personally use a different, higher quality soundfont: this one (https://musical-artifacts.com/artifacts/1176) to be precise. It has some very high quality samples that will satisfy your needs. And for different SF2 files, sure. SpessaSynth supports SF list.

Musical notation is a topic that has been discussed in spessasynth before. I am considering implementing it, though doing it with Vexflow is out of the question. However, I am willing to help you integrate Vexflow into your KaraJam/KJam project, though I'd prefer us conversing over e-mail for that, as it is not related to SpessaSynth. Again, feel free to send me an e-mail if you're interested.

About some of the features you mentioned:

MIDI ports are already supported. Both playing to other MIDI devices or MIDI input. Navigate to settings and they are available under the section named "MIDI Settings." Note that you have to give the permission for the website to access the MIDI devices and restart the browser after you've connected any for them to show up!
VSTis simply don't work on the web as they are intended to be installed as sort of "drivers". So I can't help you with that one.
FM Modulation is out of scope for SpessaSynth. Spessa is a SoundFont (or DLS) synthesizer, I.E. a wavetable synthesizer, or in other words, a fancy sampler. I can't help you with that one, though we could emulate it by using samples as well.
Equalizer does sound quite easy to implement, by using BiquadFilterNode in the WebAudio API, so I can try to help you with that.

About AI: I personally can't really recommend chat GPT or bing copilot for the task. GitHub Wikis (where SpessaSynth's documentation is hosted) aren't indexed by search engines and also by these assistants. The only AI i'd recommend for the task is GitHub Copilot, if you have access to that. Though, again, I am willing to help you with your project.

It is absolutely okay for you to use my project like that. In fact, i'm quite happy that it can help make your dream come true :)

And final question: Do you want me to add these features to spessasynth, or is it strictly related to KaraJam? If the latter, please reach out to me via e-mail and we'll continue from there.
Regards,
spessasus
<EMAIL_ADDRESS>—
Reply to this email directly, view it on GitHubhttps://github.com/spessasus/SpessaSynth/issues/86#issuecomment-2563957759, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BM7DVZ6KAXYMLI3PV5QSHBD2HWQBRAVCNFSM6AAAAABT746HP2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNRTHE2TONZVHE.
You are receiving this because you authored the thread.Message ID: @.***>


what is mean about "${DATASET}flow_val_split${SPLIT}.txt" in scripts/test_off.sh

when I run test.sh. I found what should I write on data/${DATASET}flow_val_split${SPLIT}.txt \   in scripts/test_off.sh . Can anybody help me?

what is this "scripts/test_off.sh" file?


Replace atty by std::io::IsTerminal

Changes
atty is now unmaintained RUSTSEC-2024-0375. Replaced the only occurrence with std::io::IsTerminal.
Checklist

[x] An issue to be fixed by this PR is listed above.
[-] New tests are added to ensure new features are working. Please refer to this page to see how to add a test.
[x] ./frb_internal precommit --mode slow (or fast) is run (it internal runs code generator, does auto formatting, etc).
[-] If this PR adds/changes features, documentations (in the ./website folder) are updated.
[ ] CI is passing. Please refer to this page to see how to solve a failed CI.

Remark for PR creator

./frb_internal --help shows utilities for development.
If fzyzcjy does not reply for a few days, maybe he just did not see it, so please ping him.

LGTM and thanks!
(You may want to revert the changes to pubspec.lock to make CI happy. That may be caused by your local Flutter version is different from CI's)


Remove unchecked versions of distributions

Remove unchecked versions of distributions in favor of checked versions returning Result in order to be more in accordance with RFC 236.

After reading through the deliberation on RFC 236 and 1.0 slice stabilization, I have decided to remove the Checked type variants in favor of the current panicking versions

have decided to reverse direction in favor of assertions and panics over checked types


Support subctl unexport

What would you like to be added:
Per a discussion on Slack with newish-to-SubM devs, it seems like folks rightly-expect subctl to have commands to undo actions it takes. For example, subctl unexport service. This can be achieved with kubectl delete serviceexport, but that's not a very clear UX.
Another idea is to add a dry run mode.
Why is this needed:
For better UX.

De-scoping this to include only the unexport part for inclusion with 0.12.

@mkolesnik can you please raise a quick docs PR as well? AFAICT this should only be mentioned in https://submariner.io/operations/deployment/subctl/


JsonMapper not working with nulls in lists properly

Anil	1:48 PM
QBit.factory().createJsonMapper().toJson(object) .. will add [,,,,,123,,13]
JsonFactory.toJson(object) will add [null, null, null, null, 123, null, 13]
how do i get the same behavior as second one using QBit.factory jsonmapper

Rick Hightower	1:50 PM
ok
let me write a unit test and try to reproduce this
Anil	1:50 PM
ok. awesome!

Rick Hightower	1:54 PM
ok JsonFactory uses the lax parser but QBit use the strict one and the bug seems to be in the strict parser.
    @Test
    public void badSerializer() throws Exception {

        String json = QBit.factory().createJsonMapper().toJson(Lists.list(1, 2, null, 3));

        puts(json);

        json = JsonFactory.toJson(Lists.list(1, 2, null, 3));

        puts(json);

    }
Show less
[1,2,,3]

[1,2,null,3]
Anil	1:56 PM
hmm. I don't have the control if use Callback<MyObject> then in the endpoint.
Then need to do Callback<HttpTextResponse>
Any other way to tell QBit factory use the lax one?

Rick Hightower	1:59 PM
ok
it has to do with JsonSimpleSerializerImpl vs BasicObjectSerializerImpl
here is SimpleSerializer
    public final void serializeCollection( Collection<?> collection, CharBuf builder )  {

        if ( collection.size () == 0 ) {
             builder.addChars ( EMPTY_LIST_CHARS );
             return;
        }

        builder.addChar( '[' );
        for ( Object o : collection ) {
            if (o == null) {
                builder.addNull();
            } else {
                serializeObject(o, builder);
            }
            builder.addChar ( ',' );

        }
        builder.removeLastChar ();
        builder.addChar( ']' );

    }
Show more
Rick Hightower	2:04 PM
here is the wrong one
    @Override
    public final void serializeCollection ( JsonSerializerInternal serializer, Collection<?> collection, CharBuf builder ) {
        if ( collection.size () == 0 ) {
            builder.addChars ( EMPTY_LIST_CHARS );
            return;
        }

        builder.addChar( '[' );
        for ( Object o : collection ) {
            serializer.serializeObject ( o, builder );
            builder.addChar ( ',' );
        }
        builder.removeLastChar ();
        builder.addChar( ']' );

    }
Show more
Anil	2:05 PM
hmm.. looking at it.
Rick Hightower	2:06 PM
it is missing the addNull
 if (o == null) {
                builder.addNull();
            } else {
                serializeObject(o, builder);
            }
            builder.addChar ( ',' );
Show more
Anil	2:06 PM
I see
ok its in CollectionSerializerImpl
Anil	2:12 PM
Any workaround that you can think of?
like using our own custom CollectionSerializer?
Rick Hightower	2:13 PM
I will get a new release to you with a fix in the pub repo in a few hours.. and snapshot fix in a few minutes.

This was fixed over here.
https://github.com/advantageous/boon/issues/7


[RFC] feat: use imgix js-core to format ixlib param

Problem
We need a way to add ixlib to the video source URL and poster source URL.
Proposed solution
Implement a quick fix by leaning on what js-core already does so well re: param parsing.
Considered alternatives
Creating a params property that gets read/written to by user and us. Then, just before making the request to the video/image asset, format the URL with said params.
This was discarded because of the need to provide two params props. One for the video and one for the poster. I think a more in-depth discussion and considerable more time is needed to do that prop right.
Shortcomings
We might have users duplicating deps/functionality if they need to add params to their posters/video URLs prior to our doing the same behind the scenes.
Example output:
Video source URL:
https://assets.imgix.video/videos/girl-reading-book-in-library.mp4?ixlib=foobar-123

closed, look at #22 instead.


FilterCertainIntegers for special number values

https://github.com/uhyo/ts-array-length/blob/9b0b68038418608eb03bca31196d188382c691ba/src/typeUtils.ts#L17
Since there are no NaN, Infinity or -Infinity types in TypeScript, I think it would be better to remove them.
Additionally, shouldn't you handle exponential notation decimals as shown below? (For example, 1e-900 is a decimal.)
 : Str extends `${string}e-${string}`

Thanks! Actually you can produce an Infinity type by type Infinity = 1e1000;. I'm not sure of NaN, but I included one for safety.
The 1e-900 case indeed needs a fix.


Ionic bug: click on button to open alert and keep pressing enter unlimited numbers of popup will open as you keep pressing enter.

Bug Report
Ionic Info
Run ionic info from a terminal/cmd prompt and paste the output below.
Beta.15

Describe the Bug
Ionic bug: click on the button to show alert and keep pressing enter unlimited numbers of popup will open as you keep pressing enter.
Steps to Reproduce
Steps to reproduce the behavior:

Go to https://beta.ionicframework.com/docs/components#alert
Click on Show Alert
Press Enter multiple times

Expected Behavior
It should not open new alert when already previous is open

The same behavior occurs with pressing spacebar.


memory leak in 1.4.0

Hi, i'm sorry for opening such an old issue, but i'm currently experiencing the same issue.
I'm using version 1.4.0 now and getting small steady memory leaks (after debugging with tracemalloc) on:
A = ahocorasick.Automaton()
MyList = [...]
for x in MyList:
A.add_word(y, (y, z))
is there a chance this bug has returned
Thanks,
Eden.
Originally posted by @EdenAzulay in https://github.com/WojciechMula/pyahocorasick/issues/81#issuecomment-705534956

I think that I'm also experiencing the same memory leak on add_word.
Would love to see any updates :)

@AlonSh could you please provide some minimal example?

Yeah:
create some automaton
create a multiprocessing Pool
and do:
pool.apply_async(
            run_automaton,
            (automaton, text),
            callback=callback_success,
            error_callback=_my_error_callback,
        )

and you'll see your memory exploding after some calls.

Great! Thank you.

I am pushing tests to run on the CI on many Linux ... but while I can have it fail locally on Ubuntu 16... the tests seem to pass on more recent linux. I wonder if this is not dependent on a certain version of the compiler? Otherwise, this is a head scratcher.
@AlonSh FWIW, I recycle processes after a 1000 calls in my pools to cope with leaks. Not perfect, but a workaround at least. See for instance
https://github.com/nexB/scancode-toolkit/blob/e080f8354bed5813df9b619efe575ce9931a5a5b/src/scancode/cli.py#L1209

Hello guys,
Is there any update on this issue?
I've tested a library version 2.0.0 today and memory consumption added up every time automaton was used in ProcessPoolExecutor futures. We had to stop the service after RAM consumption crossed 140GB.
I attempted to build an image FROM ubuntu:20.04, python:3.8, python:3.10. The issue is reproduced every time.
The latest usable lib version for us remains 1.1.8.
Please let me know if there is any troubleshooting info I could provide for the research.


fix: to_datetime in Pandas 2

SUMMARY

The recent upgrade on Pandas from 1.5.3 to 2.0.3 broke some features. In this PR we fix a regression where a column with a full ISO timestamp (2017-07-01T00:00:00.000Z) can't be configured with the Python date format "%Y-%m-%d" because in Pandas 2.0 the format should match the whole string by default.
I changed the relevant calls to to_datetime to have exact=False, to preserve the behavior from Pandas 1.5.3.
One additional problem is that we had errors="coerce" in the call, which returns NaN if something goes wrong. I changed to to "raise", since I think it's a better experience. Otherwise the user has no idea of why their data is missing.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TESTING INSTRUCTIONS

Added a test covering the regression.
ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Required feature flags:
[ ] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

Thanks @betodealmeida for the fix. Apart from the possibly unnecessary assert this LGTM.

"possibly"? You mean "totally". 😆

@john-bodley I removed the 3.0 label given that the Pandas upgrade is not in 3.0.

🏷 preset:2023.31


change code font to Ubunto Mono

@cleiserson @neboat @ailiop I diagnosed the "small code font" problem, and with this PR propose to standardize our code font as Ubuntu Mono. We want to use the same font in all our figures etc., so if you don't like Ubuntu Mono, please let me know.
My rationale for Ubuntu Mono is that we already use Ubuntu as the headline font. So using Ubuntu Mono reinforces our headline aesthetic. (The regular body text is Roboto btw.) Here is a comparison of Ubuntu Mono with Consolas, and a couple other comments about it here and here.
On an accidentally related note, I discovered that after I installed GoogleFont Consolas on my local instance, then I too got the "small code font" problem that we discussed, until I resolved some font-size issues in index.css and prism.css that are part of this PR.
So bottom line, this PR makes Ubuntu Mono the code font and it fixes font-size problems to make the code font match the regular.

I went ahead and merged this, but I am still happy to take feedback on Ubuntu Mono and the other changes here.


Unable to distribute to App Store Connect "app references non-public selectors"

[x] I have read the Get Started - Installation section
[x] I have read and done the Get Started - Setup Android section
[x] I have read and done the Get Started - Setup iOS section
[x] I have already searched for the same problem

Environment

Technology
Version

Flutter version
3.0.0

Plugin version
5.4.3+7

Android version
n/a

iOS version
n/a

Xcode version
13.3.1

Device information: M1 Macbook pro
Description
Expected behavior:
I should be able to upload my flutter Xcode archive to App Store Connect
Current behavior:
When uploading my Xcode archive to App Store Connect I receive the following error
The app references non-public selectors in Payload/Runner.app/Frameworks/
flutter_inappwebview.framework/flutter_inappwebview:allowsResizing,
applicationNameForUserAgent, dataTypes, estimatedProgress, framelnfo, initialURL,
isMainFrame, mediaTypesRequiringUserActionForPlayback, selectionGranularity,
setNavigationDelegate:, setProcessPool:, setSelectionGranularity:, sourceFrame, targetFrame
userContentController, userScripts, websiteDataStore With error code
STATE ERROR.VALIDATION ERROR.50 for id f560997f-27c8-4dff-9266-80818b0fc91d

Everything was fine 7 days ago when I last submitted my app to App Store Connect and I have not changed any of my dependencies since then. So I'm not sure if maybe apple changed some validation check during the distribution process or what.
Note: flutter_inappwebview is a transitive dependency in my project but the pubspec.lock file indicates that it is using the most recent version.
Steps to reproduce

Build flutter app in the Xcode archive format
Attempt to Distribute App to App Store Connect

Images

I am having the same problem, try to upload my app now and have the same error on uploading,
i have the same device specs.

i have same issue, was able to upload one around 12pm ET but after 4pm et I've been running into this issue!

it looks like it has something to do with apple developer event they had today

Response from apple when using the transporter app

Same here.

Same here.

Same, seems to be an apple issue.  Lots of reports here too https://developer.apple.com/forums/thread/127678

Same here.

Same here when I tried to publish using codemagic

Same here. thought it was my bad. but everyone got the same too
Which the last version that worked for this? anyone know?

If think is an apple think rather than a version stuff

Same here.

just tried again still busted

same here

Thank god it's not just me.  Yes same error message here, although it took a while to find since I don't use this package directly, but it is part of a youtube player package.

Same here.

ITMS-90338: Non-public API usage - The app references non-public selectors in Frameworks/flutter_inappwebview.framework/flutter_inappwebview: allowsResizing, applicationNameForUserAgent, dataTypes, estimatedProgress, frameInfo, initialURL, isMainFrame, mediaTypesRequiringUserActionForPlayback, navigationType, selectionGranularity, setNavigationDelegate:, setProcessPool:, setSelectionGranularity:, sourceFrame, userContentController, userScripts, websiteDataStore,The app references non-public selectors in Frameworks/webview_flutter_wkwebview.framework/webview_flutter_wkwebview: estimatedProgress, isMainFrame, setNavigationDelegate:, userContentController, websiteDataStore. If method names in your source code match the private Apple APIs listed above, altering your method names will help prevent this app from being flagged in future submissions. In addition, note that one or more of the above APIs may be located in a static library that was included with your app. If so, they must be removed.

Same issue here :(

This should be fixed now. An apple developer tools engineer commented here (at the end) saying it should work if you now resubmit
https://developer.apple.com/forums/thread/127678?page=6

I solved！
This is due to Apple have update their policy and you need to log in from the apple developer account and click on agree to new policy updates. then this will be resolved and try with a new test flight build.

Can confirm, just uploaded the same file successfully.


Introduce leader election capabilities

Leader election can be beneficial for ensuring HA for control plane calls to storage platforms. Introducing this at a libStorage level can be an important natural benefit of adopting libStorage and introducing new implementation of libStorage that may sit in front of storage platforms (Polly).

Is running a clustered set of libStorage servers on the roadmap, @cduchesne ? If not, let's close this until it is.


Creates service-client lib

Still trying to get the docker compose stuff to run two daemons for the tests, but otherwise, this is gtg.

wow, nice work! this looks like it was a bunch to figure out. i think the only thing that popped out at me was:
it's obvious that we use the types of the thread_service grpc api via the protobufs. but then otherwise, we recreate types that maybe should be singularly defined for all implementations of threads. so for example, the event type is defined as typescript here, why not import it from one of the pb libraries so we can ensure only one event type exists across all threads? maybe it's not a big deal, it just struck me as a good long term safety/upgrade measure.

I think I'm close with the CI test docker setup. I can't quite figure out how to have the two images able to connect to one another. I think I'm incorrectly specifying their local addresses (should be using docker names?), but don't want to invest much more time here given its probably an obvious fix.

This is all GTG now @andrewxhill, tests passing now thanks to updated go-threads image.


Entity hider plugin

A plugin which you can use to hide various elements in the game's world.
Suggested configuration:

Hide players 3D
Hide players 2D
Hide NPCs 3D
Hide NPCs 2D
Display friends
Display clan mates
Display attackers
... ?

I did some initial work on this but didn't finish it: https://github.com/devLotto/runelite/commits/renderablehider.
There is a maximum of 5 rendered npcs/players on a tile, which means that if you have 10 hidden players on a tile, along with your friend, chances are your friend won't be visible. To solve this, one probably has to have a look at the addEntityMarker method in the game code: https://github.com/runelite/runelite/blob/ea53cbc99a2c2e9e1f7c5c515c46fd107940bb96/runescape-client/src/main/java/Region.java#L535
Maybe code should be added in there by use of mixins to filter out entities. var9 (the Renderable) can be among other types an instance of NPC or Player, making it easy to for example check if the entity being added is a friend.

WIP code that gets rid of the 5 entity limit bug: https://github.com/devLotto/runelite/commit/c5acec9b69503d7e1af3e1aab4973e1afba82671
It fullfills the suggested configuration but I think somebody was suggesting hiding objects such as cannons, and that has not been implemented. If somebody feels like they can pick it up and finish it, they're free to do so.


Fixed broken link

Replaced the fwlink with https://dynamics.microsoft.com/finance-and-operations-to-finance-and-scm/ and removed locale "en-us" from this link. I tested and the fwlink works but the customer reported an error when they try to access the link so they requested to replace this with the complete link.
This is related to issue #895

@cmcatee-MSFT - PR is ready for final review based on issue #895.
Thank you.
cc: @kenwith

The problem was only with the FWLink for Japanese. All other links were redirecting properly. I fixed the FWLink, and verified that the page now redirects properly, so no change to the file is needed.


Build initial Rust data package

#361  👈
master

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

Join @chrisaddy and the rest of your teammates on  Graphite


chore: migrate to replacements instead of vars; addresses #232

Signed-off-by: ali.alkhalidi<EMAIL_ADDRESS>

Looks OK if the deployment generates the same YAMLs as before (except of the newly-added resources like few Ingresses)


Issue 8973 - core.cpuid.coresPerCPU returning incorrect value.

maxCores for AMD is currently calculated using the theoretical maximum number of cores, not the actual enabled maximum number of cores.
This causes all bulldozer CPUs(and possibly others) to report the wrong value.
http://support.amd.com/TechDocs/25481.pdf

The size of this field determines the maximum number of cores (MNC) that the processor could theoretically support, not the actual number of cores that are actually implemented or enabled on the processor, as indicated by CPUID Fn8000_0008_ECX[NC].

issue

Auto-merge toggled on


Add support for connection pooling in redcord

Summary
Add support for a connection pool Redis client if pool is specified in the configuration. This is intended to mimic how you can specify pool in the config/database.yml file, and overall the code is loosely based off of redis-memo's connection pool client: https://github.com/chanzuckerberg/redis-memo/blob/main/lib/redis_memo/connection_pool.rb
Testing
Currently trying this out in Along to see if it solves our issues with performance when running multi-threaded.

Requesting a re-review with recent changes


Ribbon not loading a list of servers during spring boot startup or initialisation

Bug:
I want to use the listofservers which are defined in a configuration file during spring boot startup (i.e. in a @Postconstruct annotation) to connect to an aws s3 instance.
ribbon:
listOfServers: localhost:8080
ServerListRefreshInterval: 15000
Eureka is disabled.
This is being set using the
@RibbonClient(name = "test", configuration = TestConfiguration.class).
Am autowiring the loadbalacer client
@Autowired
private LoadBalancerClient loadBalancer;

eg: @PostConstruct
loadBalancer.choose("test").getUri().toString()
& loading the servers in a config file as
@Bean
public ServerList ribbonServerList(IClientConfig config) {
ConfigurationBasedServerList serverList = new ConfigurationBasedServerList();
serverList.initWithNiwsConfig(config);
return serverList;
}.
But the list of servers during initialization is always empty, so i get back an exception that riboon client cannot find the list of servers during springboot startup.
: No up servers available from load balancer: DynamicServerListLoadBalancer:{NFLoadBalancer:name=s3,current list of Servers=[],Load balancer stats=Zone stats: {},Server stats: []}ServerList:com.netflix.loadbalancer.ConfigurationBasedServerList@3efedc6f
WARN 19548 --- [main] c.netflix.loadbalancer.BaseLoadBalancer  : LoadBalancer [s3]:  Error choosing server for key default
even though the serverList is defined in the application.yml file, if i don't read the serverList from @postcontruct annotation it is working fine.
I looked up online but could not find examples of using this in a @postcontruct annotation, but i need this to be used there is there any other alternative?

user.zip

Attached a test project with which the issue is reproducible

Please learn how to format code on GitHub.
I would imagine that your @PostConstruct code is running before Ribbon is fully initialized.  I am not sure what we could do about that.

Ok.
Yep you are right, but the loadbalancerclient is autowired so I thought the server list to be set before we use it in @PostContruct, we would need the list of servers to be used during initialisation as there are calls to be made to S3 server to create a bucket.
Do you reckon  this as a bug otherwise is there an alternative. Appreciate your reply.

We've generally not recommended using ribbon during initialization phases. This may help: http://cloud.spring.io/spring-cloud-static/Edgware.SR1/single/spring-cloud.html#ribbon-child-context-eager-load

Thanks, that property doesn't seem to have any effect, still getting the same error. I have added that to yaml file as follows.
say-hello:
ribbon:
eureka:
enabled: false
eager-load:
enabled: true
clients: localhost:8090,localhost:9092,localhost:9999
listOfServers: localhost:8090,localhost:9092,localhost:9999
ServerListRefreshInterval: 15000
Is that the correct way?

no, clients is the ribbon client name. In your case say-hello.

oops unfortunately even that doesn't seem to have any effect. Getting the same error.
user.zip
say-hello:
  ribbon:
    eureka:
      enabled: false
    eager-load:
      enabled: true
      clients: say-hello
    listOfServers: localhost:8090,localhost:9092,localhost:9999
    ServerListRefreshInterval: 15000

eager-load can't be under say-hello:. It needs to be:
ribbon:
  eureka:
     enabled: false
  eager-load:
    enabled: true
    clients: say-hello
say-hello:
  ribbon:
    listOfServers: localhost:8090,localhost:9092,localhost:9999
    ServerListRefreshInterval: 15000

Still no luck tho. Getting the same error in the startup log I noticed that ribbon.eager-load property is matched.
RibbonAutoConfiguration#ribbonApplicationContextInitializer matched:
- @ConditionalOnProperty (ribbon.eager-load.enabled) matched (OnPropertyCondition)

Not sure what else to say:

We've generally not recommended using ribbon during initialization phases.

Just wondering if adding ribbon.eager-load.enabled property does not list the servers during startup, could this be a bug?

@RohitGupta31 only if you provide a minimal project that recreates the problem.

Hi Rohit,
Try deleting
@Bean
public IRule ribbonRule(IClientConfig config) {
return new AvailabilityFilteringRule();
}
from your SayHelloConfiguration.java

@spencergibb I have the same issue like @RohitGupta31. I added the following lines in application.yaml:
ribbon:
  eager-load:
    enabled: true
    clients: merchant-security
  eureka:
    enabled: false
merchant-security:
  ribbon:
    listOfServers: localhost:8081, localhost:8082
    ServerListRefreshInterval: 15000

I used @FeignClient:
@FeignClient(name = "merchantSecurityPermissionClient", serviceId = "merchant-security")
In the method "public void configure(HttpSecurity http) throws Exception" of the Configuration class (this class extends ResourceServerConfigurerAdapter.java). I called @FeignClient and it return an error:
Caused by: com.netflix.client.ClientException: Load balancer does not have available server for client: merchant-security
However, after Spring Boot StartUp, I call @FeignClient again and it works fine.

I have the same problem, I remove the ribbonRule and works fine. thanks @ArtemZubenko .
Why?
Is correct not use ribbonRule?

Closing due to age of the question. If you would like us to look at this issue, please comment and we will look at re-opening the issue.

I have the same problem,I push my code to git : https://github.com/kanghouchao/oldheaven.git
When I run test in restlet for this url : http://localhost:8080/test frist I get right response
When request for this url seacend I get a exception : com.netflix.client.ClientException
Befor the exception I get a warn : No up servers available from load balancer

@kanghouchao unfortunately, your sample is very complex and there are no instructions on how to reproduce it. Please simplify your sample and provide instructions.

@spencergibb thanks for your suggest，I pushed a simply demo as I can to github:https://github.com/kanghouchao/sample-springcloud.git
About instructions, I don't how to explain that demo
sorry for my poor english
I luncher two module's Starter in springboot,the server and client
I want to use the feign client in model named client to get the message from the module named server
The requestmapping in server registed in zookeeper-3.4.13.
And I think the error is from Ribbon,I added Ribbon but I didn't use it,There is not Configuration for Ribbon
that's all, Thanks again.

@spencergibb I forgot saying that I used zookeeper dependencies in client

@spencergibb If I don't use the zookeeper dependecies configuration, Everything is ok

@spencergibb or use RestTemplate.getForObject(...)


Please delete template UCSD:RT:bf2:Monograph:Item_OpenAccess

UCSD:RT:bf2:Monograph:Item_OpenAccess is no longer needed, please delete. Its ID is nearly identical to UCSD:RT:BF2:Monograph:Item_OpenAccess, which we DO want to retain. Template to delete has Label UCSD Monograph Item Open Access (BIBFRAME) DON'T USE

Are there any existing resources in Trellis that depend on this resource template?

No resources on Stage use this resource. Now deleted.


mobile waiters are broken and each operation waits for a minute or so

on Android and iOS with latest 1.22+ Appium we start to observe huge pauses between actions.
For iOS one of the possible reason is new capability:
https://github.com/appium/appium-xcuitest-driver#desired-capabilities

let's investigate possibility to limit fluent WebDriverWaiter forcibly using java native instruments...

done. testing better to organize on problematic environments using 7.3.17-SNAPSHOT carina.
@ashuaviator1987, @aostapenko92 ^^^
Major note: waitForIdleTimeout and/or waitForQuiescence not required anymore!

reopened as some changes related to #1530 might be a reason. retries seems operated for any webdriverexception with 1 sec pause which is not expected. it might the reason of extra calls to appium after regular timeout

hotfixes for appium and web executor listeners pushed:
https://github.com/zebrunner/carina/commit/f1e614611fe6cc8425c84c231b1a1633e27f6cdf#diff-7c7ae098aa09dd7602302a5609318ae6f6674dec0accbd70018490741f3733b1R162
https://github.com/zebrunner/carina/commit/d7ab18fcc8f4ebc74ff694807b874c19a3185f64
retries are possible only for driver connection refused!

tested on my own on mobile and web. no regressions detected.


L2 Public Client: estimateRelayMessageGas

OK so actually there's probably a subtask here that is estimateRelayMessageGas which would proxy to estimate gas from viem but set the caller to 0x0000000000000000000000000000000000000001, which is an address that will cause the function to revert if it is not relayed correctly.

from #55

I worked on this but not sure is worth doing given changing the from address makes a lot of transactions revert. Ie they need a specific msg.sender.

going to close for now

Actually, if you're using the crossChainMessenger then it shouldn't ever really matter who msg.sender is? The sender on the call to the contract is always going to be the crossChainMessenger? Probably still worth having. Thoughts @zencephalon @roninjin10 ?


Upgrade cw1 contracts

 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.

@orkunkl Fixed schemas for failing packages and the cw1 contracts. Hope I'm not going to cause conflicts with your work on the packages!

@orkunkl Also, remember I don't currently have permissions necessary to merge this myself!

Cargo.lock needs to be updated....

Rebased.


Turn off storage of raw  economic results

Raw economic results take up alot of space (100+ GB for 5 models and 100 replicates) .
Add an option to the if() statement to turn off raw result storage based on something set in the `'set_om_parameters_global.R''
https://github.com/lkerr/groundfish-MSE/blob/fe5ae329bbe97d9b39a263734acb90d9b29754c2/processes/OutputStorage.R#L24-L50

Took 2 commits to do this:
ad214f06db396222886dc1263a607171e7dd62d7
90bb1676c9bd3f295ef9da9ba76ddca5e91cdf98


Purchase a license for Loom

Motivated by creating this JupyterBook video workflow and work being done by @jnywong in  Handbook Authoring docs, we have both found utility in Loom as a screen recorder and it worked the best out of all the other screen recorders we tried. The free 14-day trial allowed video downloads but will expire soon – is there potential to pay for a subscription to continue the documentation work?
To make decision on this purchase, we need to answer the following questions:

What's the purpose for Loom? Is it creating internal content, external content? What is the value we hope that it will deliver?
What alternatives exist and why is Loom the right choice? (e.g. compared with YouTube, Slack videos, Google Drive videos, etc)
What are our hypotheses for why Loom will deliver the value we hope it will?
How will we test this hypothesis? What measures will we look for in 1/3/6/12 months to decide if this is still the right choice?
Are there any risks to using Loom? E.g., what happens if Loom changes its pricing to be unsustainable for us?
Does this change any of 2i2c's standard operating procedures? And if so, where will we document them?

(TO BE FILLED IN BY ANYONE!)

What's the purpose for Loom? Is it creating internal content, external content? What is the value we hope that it will deliver?

It will be used for creating screen cast video for usage in community facing documentation and tutorials. It also will be used for internal training and documentation purposes.

What alternatives exist and why is Loom the right choice? (e.g. compared with YouTube, Slack videos, Google Drive videos, etc)

Loom is being recommend primarily as a screen capture tool.  The primary limitation in the 'free version'
Article on Loom alternatives: https://clickup.com/blog/loom-alternatives/

What are our hypotheses for why Loom will deliver the value we hope it will?

How will we test this hypothesis? What measures will we look for in 1/3/6/12 months to decide if this is still the right choice?

Are there any risks to using Loom? E.g., what happens if Loom changes its pricing to be unsustainable for us?

Does this change any of 2i2c's standard operating procedures? And if so, where will we document them?

What's the purpose for Loom? Is it creating internal content, external content? What is the value we hope that it will deliver?

Mainly screen recording for technical content creation to be shared externally to 2i2c end users.

What alternatives exist and why is Loom the right choice? (e.g. compared with YouTube, Slack videos, Google Drive videos, etc)

The alternatives listed are video sharing platforms, whereas the Loom pro subscription would allow me to record and  download videos to then embed into our external facing documentation. Another tool that I have used in the past is OBS, which is free but overkill and clunky to use.

What are our hypotheses for why Loom will deliver the value we hope it will?

My hypothesis is that Loom is a lightweight tool and its ease of use would facilitate content creation at a higher rate.

How will we test this hypothesis? What measures will we look for in 1/3/6/12 months to decide if this is still the right choice?

Currently I don't have a base case to test this hypothesis against, but I think it's worth reviewing usage in 3 months time.

Are there any risks to using Loom? E.g., what happens if Loom changes its pricing to be unsustainable for us?

It's true that Loom have increased their pricing in the past. If we use the monthly plan then this allows some flexibility to opt out after initial review.

Does this change any of 2i2c's standard operating procedures? And if so, where will we document them?

I will primarily use this tool for developing technical content and there are no 2i2c-wide standard operating procedures for this, which I think is reasonable in this regard.

I approve. Please proceed.

Loom license purchased and receipt sent to<EMAIL_ADDRESS>I've added this issue to the Partnerships project board with an end date of May 5 for review in 3 months' time.

@choldgraf it looks like you have to add my email address to the Ramp account for the automatic receipting to work. I've sent you a DM on Slack.

Depending on what the outcome of this process is, I will make an issue to document the relevant change on the Team Compass!

I've responded in https://github.com/2i2c-org/team-compass/issues/800 with the process @jnywong can follow - thanks for catching that and sorry about the confusion.
Many thanks to @jmunroe and @jnywong for writing up some quick rationales and context for the decision. I look forward to seeing what we can do with Loom! I'm particularly interested in learning about this because "video recording for async communication" is a pain point I often feel.

This task is completed. There is subsequent task

[ ]  @jnywong report on experience in 3 months

that needs to be created and scheduled.


Any plans for supporting Yarn?

It would be great for people who use create-react-app or prefer yarn instead.

I'm pretty sure this already works with yarn. Did you give it a try?

I got the problem, it has no business with Yarn. I'll open another issue.


MiningAndPropagatingPOW [Mining and Staking tests implementation]

MiningAndPropagatingPOW [Mining and Staking tests implementation]

MineBlockCheckNodeConsensusTipIsCorrect : Mine a block check consensus   tip (success)
MineBlockCheckPeerHasNewBlock : Mine a block and propagate to peers (success)
NodeConsensusTipHasLessWorkThanNetworkTipResets : Node consensus tip has less work than network tip and   consensus resets (success)

This has been completed.


Testing if NimGo test suite pass in windows

If you have time, don't hesitate to run the test suites and the bench on windows with NimGo and tell me what are the errors messages.
If you know how and it is possible, you can also tell me how to add a windows github hosted runner
Any proposition of fix are also welcome ;-)

PS C:\Users\HamidB80\Documents\programming\NimGo> nimble test
  Verifying dependencies for<EMAIL_ADDRESS>  Compiling C:\Users\HamidB80\Documents\programming\NimGo\tests\tcoroutines (from package nimgo) using c backend
C:\Users\HamidB80\Documents\programming\NimGo\src\nimgo\coroutines.nim(23, 14) Warning: Completly untested on windows. If I made a mistake the program will just early crash or won't compile [User]
C:\Users\HamidB80\Documents\programming\NimGo\src\nimgo\coroutines.nim(239, 58) Error: type mismatch
Expression: mergeStackTraceEntries(coroAddr)
  [1] coroAddr: pointer

Expected one of (first mismatch at [position]):
[1] proc mergeStackTraceEntries(coroPtr: ptr CoroutineObj): seq[StackTraceEntry]

       Tip: 2 messages have been suppressed, use --verbose to show them.
tools.nim(36)            doCmd

    Error:  Execution failed with exit code 1
        ... Command: C:\Users\HamidB80\.nimble\bin\nim.exe c --noNimblePath -d:NimblePkgVersion=0.0.6 --hints:off -r --path:. C:\Users\HamidB80\Documents\programming\NimGo\tests\tcoroutines

Oops, I'm sorry, I thought I had better checked types. My bad
I have a big refactor on this file ongoing. I will merge it and create a new release in few days.
Maybe I will take time this weekend to install have a windows virtual machine on my pc (to not sollicitate you too much) and ensure it works.

Unfortunatly, I naively thought that std/selectors was working with windows on files and other I/O. So there are still way to go before making it work on windows.
You can see here the advancement : https://github.com/Alogani/NimGo/discussions/26
For now, I close this issue because its goal was to make at least nimgo/coroutines works.


Chmod +x scripts that were not

Not sure about that one but I found it weird to have to chmod +x them everytime, maybe there was a reason for it ? in which case forget about it :lollipop:

Thank you! Good idea. :clap: :taco:


Binary Testing Framework

Description of the Change
The PR introduces Binary Testing Framework.
BTF allows performing stateful validation for transactions and queries built using client libraries.
For now, only Python is supported. Java support will be added later on.
This PR comes with python scripts that cover all the set of Iroha permissions.

Benefits
Now here is the tool for stateful validation of transactions and queries created via client libraries.
Also, here is a set of python examples that shows how to use Iroha permissions model. (Scripts' listings will be included into "permissions" page at ReadTheDocs).

Possible Drawbacks
No drawbacks were observed.

Usage Examples or Tests
cmake -H. -Bbuild -DSWIG_PYTHON=ON
cmake --build build --target binary_test
cd build
ctest -R binary

Possible Improvements
The existing set of python example scripts can be extended with tests which validate the correctness of resulting state after applying transactions to Iroha (that approach was not the point of current tests set).
Such improvement will require changes in the implementation of Python and Java launchers.

Note about SonarQube report - that is just a false positive error.

launchers.cpp#L57: The function 'initialized' is never used.

https://github.com/hyperledger/iroha/blob/53f1894ed2b8ba703f6fccb9b939b9c9a76762f7/test/integration/binary/binaries_test_fixture.hpp#L117


Microsoft Copilot Product Catalog Plugin

Q
A

Bug fix?
no

New feature?
no

New sample?
yes

Related issues?
fixes #X, partially #Y, mentioned in #Z

Microsoft Copilot Product Catalog Plugin
Demo app that shows how to use a Teams Message extension and extend to Copilot for Microsoft 365. This app uses SharePoint list as the backend datasource to get the data and display it in Teams Messaging extension
Summary
This application, crafted with the Teams Toolkit, leverages an Azure Function to facilitate communication with a SharePoint list, serving as its backend data source. It has been further enhanced for integration with Copilot for Microsoft 365, incorporating a variety of command parameters and enriched semantic descriptions to elevate the user experience.
Upon successful deployment, users will experience enhanced functionalities within the Teams Message Extension and Copilot for Microsoft 365, showcasing the seamless interaction between Microsoft Copilot Plugin and SharePoint data, powered by the underlying Azure function. This integration not only streamlines data access but also enriches the collaborative environment within Microsoft Teams by providing immediate, context-aware information retrieval and manipulation capabilities.

Hi @BobGerman I have just created a pull request again. Let me know if you have any question

Thanks - I like this sample, it's a good example of how to wrap an API within a message extension and also bringing in SharePoint!


Memory is not being cleared

When repeating a computation on a dask.DataFrame the memory builds up and the computation slows considerably.
for _ in range(10):     %time mag_std = ddf.mag.resample('15Min').std().compute()

CPU times: user 3min 21s, sys: 10.6 s, total: 3min 32s
Wall time: 1min
CPU times: user 3min 17s, sys: 11.1 s, total: 3min 28s
Wall time: 59.9 s
CPU times: user 3min 14s, sys: 10.9 s, total: 3min 25s
Wall time: 58.8 s
CPU times: user 3min 6s, sys: 9.98 s, total: 3min 16s
Wall time: 1min 8s
CPU times: user 2min 57s, sys: 14.3 s, total: 3min 11s
Wall time: 2min 2s
CPU times: user 2min 51s, sys: 13.7 s, total: 3min 5s
Wall time: 3min 41s
CPU times: user 2min 44s, sys: 17.5 s, total: 3min 1s
Wall time: 5min 20s
CPU times: user 2min 44s, sys: 11.4 s, total: 2min 55s
Wall time: 5min 37s
CPU times: user 2min 42s, sys: 11.3 s, total: 2min 53s
Wall time: 7min 6s
CPU times: user 2min 50s, sys: 14.8 s, total: 3min 5s
Wall time: 12min 3s

Hi @simonkamronn can you provide a reproducible example that we can use to test this?

Here is a small example on my local machine:
In [1]: import numpy as np
In [2]: import pandas as pd
In [3]: import psutil
In [4]: import dask.dataframe as dd

In [5]: df = pd.DataFrame({'x': np.arange(2000000)}, index=np.arange(2000000).astype('M8[s]'))
In [6]: ddf = dd.from_pandas(df, npartitions=8)
In [7]: for i in range(20):
   ...:     _ = ddf.x.resample('15min').std().compute()
   ...:     print(psutil.Process().memory_percent())
   ...:     import gc; gc.collect()
   ...:
/home/mrocklin/Software/anaconda/lib/python3.4/site-packages/dask-0.9.0-py3.4.egg/dask/dataframe/tseries/resample.py:54: FutureWarning: how in .resample() is deprecated
the new syntax is .resample(...).count()
  temp = divs.resample(rule, how='count', closed=closed, label='left')
7.097494976784888
9.655723916451082
10.41409133967979
9.986215363179515
10.204666811097377
10.526980930898402
10.126822906710506
9.77392346021996
10.198401067088064
9.828509772436673
9.718806152748218
10.697961403016903
10.423436856168253
10.201056043363197
9.873219572909896
10.09432599710289
9.608677736855743
9.820863440764294
10.041757466855277
10.906961135395294

I'm unable to reproduce the issue with synthetic data and it seems to happen only occasionally when using data stored in BColz. If it happens again I will try to find out more.


Create a Store Button Amazon Dark #1964

Here is the component I have built.
Here is a screenshot of that.

@bhumi-125 Make it of this size https://play.tailwindcss.com/kh6GK8m2cr

Reduce the font size, Amazon logo is not rendering

@bhumi-125 Please recheck the path mentioned in the issue, You have added this in Testimonial but it should be in Store Button


Add DB to quarkus sample app for DevOps tests

The issue says that this version should be on a different branch (https://github.com/devonfw/devon4quarkus/issues/15#issuecomment-907214059). So please create the PR for an other branch


Syntax for using output as input

Which project is this feature idea for?
Turborepo
Describe the feature you'd like to request
When creating pipelines it's easy to think in terms of inputs and outputs - very often they relate to each other, and one task's output becomes another task's input.
There is no syntax to specify this - we can list the same file patterns in both scripts at appropriate positions but it's:

manual
error-prone
doesn't convey the intention

Describe the solution you'd like
It would be lovely to have some special syntax for inputs, to automatically use outputs of another task as an input.
Describe alternatives you've considered
The alternative is to carefully manage inputs/outputs when making changes.
We can also solely rely on dependsOn and if only this dependsOn: ['build'], inputs: [] would mean that this dependant script could not be executed then it would be OK-ish. But this actually means that a task should be re-run on any change in the particular directory. I could try to use dependsOn: ['build'], inputs: ['this_wont_match_anything'] but that is quite hacky.

In most cases we're hoping that you don't have to get super-clever with inputs and outputs. If you're having to do that I'd love to see a concrete example of your use case to see if there's a way to accomplish your goals in our current intentionally-limited DSL that isn't super painful. (Can ping me privately on Twitter or https://turbo.build/discord if sharing in public isn't viable.)
In general, our "conceptually pure but of course doesn't survive contact with the real world" approach is:

inputs are intended for scoping down the files in-package in terms of hash inclusion. They can be abused to support impure monorepos and traverse out of a package.
outputs in an ideal world would only ever be a single directory, and it wouldn't exist prior to running the task.

If those two invariants are met we can avoid doing a ton of work on your behalf.

(Also, we're really trying to avoid addition of additional microsyntax so the final shape of any solution to the problem you're trying to solve for might look a lot different than this proposal.)

Basically, I'd like for test to depend on build's output while ignoring any other changes in that package. Changes to src/**, package.json etc should only affect build, that in turn should rerun test. I can share the same inputs here and depend on the build but that isn't exactly what I want - those overlap when you think about what build is doing etc but at the conceptual level I only care about build's output (and test's own input: test/**). Cache invalidation for build is its job, not test's. Note that I want to keep test in the same package as build.

(Also, we're really trying to avoid addition of additional microsyntax so the final shape of any solution to the problem you're trying to solve for might look a lot different than this proposal.)

Not a problem, I respect that you might not want to extend the existing DSL too much here - each new syntax has its cost.
Note though that how you described inputs is exactly what I'd want here: I want to include some output as part of the hash. That's why this particular proposal made sense to me (over, let's say, including a new config key or stuff like that)
I also share the same understanding of outputs. It's just that, ideally, those generated outputs could be directly used as inputs.

I think that your detailed (❤) answer satisfies all of my use cases right now!

This makes it possible to do things like: turbo run build --dry=json | jq .[].packageName.cacheState at the beginning of your CI run and—if it comes back as a hit—you could maybe skip installing something like graphviz in CI.

This is neat! Thanks for the tip. A tip like this could get included somewhere in the docs 😃


Pass font variation with font-family

Webfont loader with Monotype module always shows "n4" as font variation description. Monotype users can enable family grouping on their project after adding fonts on the project. When this project is used with google webfont loader, it always shows "n4" as font variation description. So, it is firing single font event for different variation of same font-family.
for more detail: https://github.com/typekit/webfontloader/issues/272
I have updated logic to pass font variation along with font-family.

This looks good. Minor nitpick: could you add spaces at appropriate places (e.g. after a comma, before and after an equals sign, etc.).

I have added missing space.
A quick question, how can we know these changes are reflected on production environment?
Thanks,
Ram

I'll do a release right now, and then within a couple weeks the Google CDN will pick it up. Unfortunately there isn't a more detailed schedule as I don't have any control over Google's release schedule.

Thanks @bramstein


Adding FFMPEG 7.0 as a sacred branch?

Solution to issue cannot be found in the documentation.

[x] I checked the documentation.

Issue
I'm hitting a few incompatibilities with my usage of ffmpeg7.1 with code that was working on ffmpeg 7.0
Some of the things seem to change how encoding options are parsed.
This seems related but it isn't exactly my error
https://trac.ffmpeg.org/ticket/11218#no2
I can't actually use their bug tracker since they can't verify my email........ I've been trying on and off for about 4 years now. (ok i changed some syntax in my email and now it worked....)
Actually, ... this: https://trac.ffmpeg.org/ticket/9574 is the error i'm facing....
I'm wondering if we should pin ffmpeg 7.0 at build time while this gets resolved.
Installed packages
ffmpeg 7.1
Environment info
linux + cuda

Feels like nobody else had major issues.
Closing but will also close the 6.0 sacred branch too
@conda-forge-admin please rerener

@conda-forge-admin please rerender


Product prices

When I open the app all prices appear as zero and after couple of seconds actual prices rendered.
Why is this happening and how to resolve this?

@imran1992 Magento API returns 0 for configurable products, so it takes time to fetch simple children for it and set price. As a resolution, you can show a price for configurable products only after children are fetched.


Problem with axisY labels

Hello,
I have a problem. A try to add labels (axisY), from 0 to 100 (every ten), but when I try to use
        var verticalLabels = [0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100];

        axisY: {
                labelInterpolationFnc: function (value, index) {
                    return verticalLabels[index];
                }
            }

I have labels only to 80. So max value of index is 8. I dont know why. What it depends on? Please help.

I can relate to that. Having the same problem

Hello @abadondev 👋
Chartist has recently been updated to version 1.0 with some new exciting changes like ESM and TypeScript support. The migration guide can be found right here.
Please let me know if the question is still relevant to you so we can further look into it!
Might be related to #1022.


[Feature Request] Support for EXCEL Formula Arguments Syntax on xlsx

Hello friends !!!!
My FR is about a little feature to be added when using the syntax xlsx or xls .
In many cases we need to present the argument of an EXCEL formula instead of the cell.
=FORMULA(argument_1,argument_2)
=VLOOKUP(lookup_value,table_array,col_index_num, [range_lookup])

We only get syntax highlight when inserting cells
=FORMULA(A1,A2)
=VLOOKUP(A1,A2,A3,A4)

Why I am asking this ?
The Note-taking  App Obsidian uses PrismJS to highlight code syntax .
I am creating a documentation about my EXCEL formula knowledge and I want to describe the formula arguments as a code block.
Suggestion of Implementation
I was talking about this idea with  ganesshkumar on this Issue here
ganesshkumar suggests these approach:

Little more context, a rendered syntax like the below

We can see that the arguments are not wrapped inside span elements and are not annotated with classes - token, argument or text. If they can wrap the arguments in span with some css classes then we can use some custom css in obsidian to show the alternating arguments in different colors as you are expecting.

This the original comment with all the details.
I was not able to insert images in this issue (I don’t know why) but I tried the best to show my FR.

If you take a look at my original FR about this topic it will be easier to understand my FR by looking at the images
https://github.com/ganesshkumar/obsidian-table-editor/issues/41

Thanks for reading this. Let me know if something is not clear.
Have a great day!

In many cases we need to present the argument of an EXCEL formula instead of the cell.
=FORMULA(argument_1,argument_2)
=VLOOKUP(lookup_value,table_array,col_index_num, [range_lookup])

We only get syntax highlight when inserting cells
=FORMULA(A1,A2)
=VLOOKUP(A1,A2,A3,A4)

Please clarify what you mean. Functions take arguments, so any arbitrary expression (variables, cells, functions calls, etc.) can be an argument. Why exactly do you want highlighted?

Hello @RunDevelopment !!!!
Thank you very much for your reply :)

Please clarify what you mean.

Sorry for my bad explanation. Let me be more clear about my FR.

Functions take arguments, so any arbitrary expression (variables, cells, functions calls, etc.) can be an argument.

1⃣ EXCEL Fundamentals
AN EXCEL formula is designed is with elements

Formula_Name: the name of the formula in the screen;
Arguments: the type of the input the the user have to define when using the formula. (This is the term used by Microsoft).

For example the EXCEL formula VLOOKUP has these structure:
Formula_Name -> VLOOKUP
Arguments

lookup_value,
table_array
col_index_num
[range_lookup]

2⃣ EXCEL Formula Syntax
The EXCEL formula syntax is this :
=formula_name(argument_1, argument_2, argument_3)
💡 each argument is separated by comma
For Example with the VLOOUP formula.
=VLOOKUP(lookup_value,table_array,col_index_num, [range_lookup])

Why exactly do you want highlighted?

MY FR is to highlight the arguments

When I use the codeblock above, this what we get:

This is my FR 🙏 :

Let me know if something is not clear know !
Thanks for reading this!
Have a great day

Hello @RunDevelopment
Sorry to bother you :)
Just to know if my FR is now clear (from my previous comment)
Thanks.

Sorry for the delay!
Yes, it's clear now. Unfortunately, this won't be too easy to implement. The problem is that to wrap an argument, we need to match arbitrary expressions, which isn't possible with regexes (context-free grammar vs regex). So we'll have to use a few tricks to make this happen.

Sorry for the delay!

No problem 😀 !!!! Sorry again for bothering you :)

Yes, it's clear now.

I'm glad to know that is clear :)

Unfortunately, this won't be too easy to implement. The problem is that to wrap an argument, we need to match arbitrary expressions, which isn't possible with regexes (context-free grammar vs regex). So we'll have to use a few tricks to make this happen.

I appreciate you feedback ! My hope is that would be something easy to implement :)
I am going to start to create my EXCEL documentation in Obsidian maybe in the future we get the highlights for the EXCEL arguments.
Thanks and have a great day!!!!!!

@RunDevelopment: this is very similar to what we have done in https://github.com/wojtekxtx/framework-ng
We are also MIT, so go ahead and use our code ( ofc with customizations )


Upgrade wasmtime 10.0

This updates Spin to wamstime 10.0.
I'm marking this as a draft for now as we'll want to wait until wasmtime 10.0 is officially released before making a decision on whether to merge this.
This also supersedes #1544 (cc @Mossaka - thanks for making those changes!)

Moving this to ready review now that wasmtime 10.0.0 has been released.
Before actually merging this we'll want to merge:

https://github.com/fermyon/spin-componentize/pull/10
https://github.com/fermyon/wit-bindgen-backport/pull/11

And then we should update the git shas referring to these dependencies to be the newly merged commit.


Fixed loading of MQClient Library on Windows x64

On Windows x64 the mqic32.dll Library cannot be loaded because of the Architecture mismatch

Wonderful to have Win 64 support, Thank you


How to spaces at the end of placeholder text in TextInput?

Description
<TextInput        placeholder = 'Email                     '     // I would like to add some spaces at the end of text 'Email'        keyboardType = 'email-address'}/> </TextInput >
But when I put spaces at the end of Email                            like this, it doesn't work.
It seems that spaces are ignored.

The reason why I want to do like this is - Centre position of Login button text and Email placeholder text, password placeholder text is not match.
You can see about that from the above screenshot.
Is there anyway to handle this issue?
Thanks

You could use a non-breaking space, it's '\xa0'.

Thanks for your reply.
But It seems it's not working....
I tried like this.
placeholder = {"Email" + '\xa0' + '\xa0' + '\xa0' + '\xa0' + '\xa0'+ '\xa0'+ '\xa0'+ '\xa0'+ '\xa0'+ '\xa0'+ '\xa0'+ '\xa0'+ '\xa0'+ '\xa0'}

Looks like the expected way to use it inside placeholder is placeholder="Email      ".
To be clear, I wouldn't suggest this a the best way to re-center your labels.
You can use style={{ paddingRight: 40 }} for example. Or make the icons overlap the TextInput while having a paddingRight on the TextInput.

Thanks so much

@facebook-github-bot answered


Add DatePickerField

Summary
Addresses #456 Will follow with a separate PR for TimeInputField
Deployment link
https://terra-framework-deploye-pr-642.herokuapp.com/#/components/terra-date-picker/date-picker/date-picker-field
Thanks for contributing to Terra.
@cerner/terra

Functional verification completed. The date picker field example displays and functions as expected.


Transformation error (Unexpected token) and wrong behaviours

Environment
Svelte/Kit
Steps to Reproduce

Run pnpx @sentry/migr8@latest
Select Apply all transformations

Expected Result
The migrate command changes the files that are actually necessary to be changed and in the right way
Actual Result
For each component I have in my routes folder, I get the following error:
ERR /src/routes/bug-report.svelte Transformation error (Unexpected token (34:1))
SyntaxError: Unexpected token (34:1)

This is because for some reason </string> is being added just before </script> when transforming the files:

This doesn't happen in sveltekit's route files (+layout and +page.svelte) files, however, it does in +error.svelte files.
Another thing is that for some reason it tries to "fix" self-closing elements.
If we have
 for example, it changes it to

, while it is true that
 is not valid HTML, this should not apply to components:

Why is Sentry changing my markup? Isn't it supposed to just change it's own stuff and only in


bug. Weapon Specialization

Unless I've misunderstood, only one bonus effect should be applied to one weapon type, but multiple are applied.

Other subclasses have this problem too.

Can you share these heroes or save?

https://drive.google.com/file/d/1rl7TTo6eaZX5Iav3Z_sBYFJCRK0Va4mx/view?usp=drive_link
savefile

Make link public

open link.

there isn't much I can do with a save in a location. Share the heroes instead or a save in a campaign.

Probably fixed.


feat(cli): changing the local port for glasskube open

Closes #523
Fixes #523
📑 Description

This code adds a new feature of specifing the local port for any packages with one entrypoint, It shows an error when there is more than one entrypoint.
Outputs

When a specific port is mentioned:

PS H:\glasskube> go run .\cmd\glasskube\main.go open kubernetes-dashboard --port 3004
         |I| Forwarding from <IP_ADDRESS>:3004 -> 8443
         |I| Forwarding from [::1]:3004 -> 8443
✅ kubernetes-dashboard is now reachable at https://localhost:3004
         |I| Handling connection for 3004
         |I| Handling connection for 3004

✅ Checks

[ ] My code requires changes to the documentation
[ ] I have updated the documentation as required

ℹ Additional Information

Made the changes 👍


"dotnet new grpc" doesn't build on a macbook pro m3

I'm trying to create a GRPC app, but not getting any further than the initial steps.
from a terminal:
dotnet new grpc [return]
The template "ASP.NET Core gRPC Service" was created successfully.

Processing post-creation actions...
Restoring /Users/barrie/Code/tmp/grpctester/grpctester.csproj:
Determining projects to restore...
Restored /Users/barrie/Code/tmp/grpctester/grpctester.csproj (in 105 ms).
Restore succeeded.

Then
dotnet build [return]
MSBuild version 17.8.3+195e7f5a3 for .NET
Determining projects to restore...
All projects are up-to-date for restore.
/Users/barrie/.nuget/packages/grpc.tools/2.57.0/build/_protobuf/Google.Protobuf.Tools.targets(291,5): error MSB6003: The specified task executable "/Users/barrie/.nuget/packages/grpc.tools/2.57.0/tools/macosx_x64/protoc" could not be run. System.ComponentModel.Win32Exception (86): An error occurred trying to start process '/Users/barrie/.nuget/packages/grpc.tools/2.57.0/tools/macosx_x64/protoc' with working directory '/Users/barrie/Code/tmp/grpctester'. Bad CPU type in executable [/Users/barrie/Code/tmp/grpctester/grpctester.csproj]
/Users/barrie/.nuget/packages/grpc.tools/2.57.0/build/_protobuf/Google.Protobuf.Tools.targets(291,5): error MSB6003: at System.Diagnostics.Process.ForkAndExecProcess(ProcessStartInfo startInfo, String resolvedFilename, String[] argv, String[] envp, String cwd, Boolean setCredentials, UInt32 userId, UInt32 groupId, UInt32[] groups, Int32& stdinFd, Int32& stdoutFd, Int32& stderrFd, Boolean usesTerminal, Boolean throwOnNoExec) [/Users/barrie/Code/tmp/grpctester/grpctester.csproj]
/Users/barrie/.nuget/packages/grpc.tools/2.57.0/build/_protobuf/Google.Protobuf.Tools.targets(291,5): error MSB6003: at System.Diagnostics.Process.StartCore(ProcessStartInfo startInfo) [/Users/barrie/Code/tmp/grpctester/grpctester.csproj]
/Users/barrie/.nuget/packages/grpc.tools/2.57.0/build/_protobuf/Google.Protobuf.Tools.targets(291,5): error MSB6003: at Microsoft.Build.Utilities.ToolTask.ExecuteTool(String pathToTool, String responseFileCommands, String commandLineCommands) [/Users/barrie/Code/tmp/grpctester/grpctester.csproj]
/Users/barrie/.nuget/packages/grpc.tools/2.57.0/build/_protobuf/Google.Protobuf.Tools.targets(291,5): error MSB6003: at Microsoft.Build.Utilities.ToolTask.Execute() [/Users/barrie/Code/tmp/grpctester/grpctester.csproj]

Build FAILED.

Executing the afore mentioned executable (/Users/barrie/.nuget/packages/grpc.tools/2.57.0/tools/macosx_x64/protoc) results in:
zsh: bad CPU type in executable: ./protoc
dotnet --version
8.0.100
file -b /Users/barrie/.nuget/packages/grpc.tools/2.57.0/tools/macosx_x64/protoc
Mach-O 64-bit executable x86_64
file -b /usr/local/share/dotnet/dotnet
Mach-O 64-bit executable arm64
I don't see why I should install have to install rosetta to run this, protoc is available for arm64:
https://github.com/protocolbuffers/protobuf/releases

Grpc.Tools only ships with x86_64 binaries for MacOS. These should run on arm64 with Rosetta installed.
Can you try running the binary it's complaining about
/Users/barrie/.nuget/packages/grpc.tools/2.57.0/tools/macosx_x64/protoc
under rosetta as a stand alone binary?
Although you can download protoc for arm64 from https://github.com/protocolbuffers/protobuf/releases that does not have the gRPC protocol buffers plugins needed for generating the gRPC service code. Those plugins are only available in Grpc.Tools.

As I said in the bug - I don't want to use rosetta.
As you can't fix it, I'll have do it myself and use the protoc that google produce for macos arm64 and ignore the plugin.


Might need to change one line in TDANet.py.

According to the original paper, the 367th line in TDANet seems to be changed as follow:
# expanded = self.last_layer[i](x_fused[i], x_fused[i - 1])
expanded = self.last_layer[i](x_fused[i], x_fused[i + 1])

Because the first embedding in the decoder should be produced using the top global feature and the upsampled one by factor 2.

Yes, you are right. In the tdanet v2, we have changed this code.
https://github.com/JusperLee/TDANet/blob/565af18692e18bf695e5bb0ca54ba466c4a86a2a/look2hear/models/TDANet-v2.py#L377

Good to know!


handle defaults in one place, correctly

set defaults in one place, at the start.
add tests, including a test key which can be replaced with a real one when ready. the test key must have eeid 'lambda' and a default value.

Thanks @bmacnaughton!


App restarts / crashes when enabling remote debugging with RN 0.73.9 for Android

Description
When enabling remote debugging using NativeDevSettings.setIsDebuggingRemotely(true) on Android the app keeps on restarting and eventually crashes.
Steps to reproduce

Install the app using 'yarn android'
Notice that the app will keep on restarting and eventually crash

React Native Version
0.73.9
Affected Platforms
Runtime - Android
Output of npx react-native info
info Fetching system and libraries information...
System:
  OS: macOS 14.5
  CPU: (10) arm64 Apple M2 Pro
  Memory: 93.36 MB / 16.00 GB
  Shell:
    version: "5.9"
    path: /bin/zsh
Binaries:
  Node:
    version: 20.15.0
    path: /usr/local/bin/node
  Yarn:
    version: 3.6.4
    path: /opt/homebrew/bin/yarn
  npm:
    version: 10.8.1
    path: /usr/local/bin/npm
  Watchman:
    version: 2<IP_ADDRESS>
    path: /opt/homebrew/bin/watchman
Managers:
  CocoaPods:
    version: 1.14.3
    path: /usr/local/bin/pod
SDKs:
  iOS SDK:
    Platforms:
      - DriverKit 23.5
      - iOS 17.5
      - macOS 14.5
      - tvOS 17.5
      - visionOS 1.2
      - watchOS 10.5
  Android SDK:
    Android NDK: 24.0.8215888
IDEs:
  Android Studio: 2024.1 AI-241.15989.150.2411.11948838
  Xcode:
    version: 15.4/15F31d
    path: /usr/bin/xcodebuild
Languages:
  Java:
    version: 17.0.10
    path: /usr/bin/javac
  Ruby:
    version: 2.6.10
    path: /usr/bin/ruby
npmPackages:
  "@react-native-community/cli": Not Found
  react:
    installed: 18.2.0
    wanted: 18.2.0
  react-native:
    installed: 0.73.9
    wanted: 0.73.9
  react-native-macos: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: false
  newArchEnabled: false
iOS:
  hermesEnabled: Not found
  newArchEnabled: false

Stacktrace or Logs
After some restarts it crashes with the exception:

FATAL EXCEPTION: mqt_js
                                                                                Process: com.androidjsc, PID: 9748
                                                                                java.lang.AssertionError: No source URL loaded, have you initialised the instance?
                                                                                at com.facebook.infer.annotation.Assertions.assertNotNull(Assertions.java:19)
                                                                                at com.facebook.react.modules.debug.SourceCodeModule.getTypedExportedConstants(SourceCodeModule.java:32)
                                                                                at com.facebook.fbreact.specs.NativeSourceCodeSpec.getConstants(NativeSourceCodeSpec.java:45)
                                                                                at com.facebook.react.bridge.JavaModuleWrapper.getConstants(JavaModuleWrapper.java:127)
                                                                                at com.facebook.jni.NativeRunnable.run(Native Method)
                                                                                at android.os.Handler.handleCallback(Handler.java:942)
                                                                                at android.os.Handler.dispatchMessage(Handler.java:99)
                                                                                at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:29)
                                                                                at android.os.Looper.loopOnce(Looper.java:201)
                                                                                at android.os.Looper.loop(Looper.java:288)
                                                                                at com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.run(MessageQueueThreadImpl.java:234)
                                                                                at java.lang.Thread.run(Thread.java:1012)
2024-07-12 10:58:36.834  9748-9812  Process                 com.androidjsc

Reproducer
https://github.com/Sushant-Sardeshpande/androidRemoteDebugging/tree/main
Screenshots and Videos
No response

Get the following log on the metro bundler:
Error: Unable to resolve module ./debugger-ui/debuggerWorker.aca173c4 from /Users/sushantsardeshpande/WebstormProjects/androidRemoteDebugging/ReproducerApp/.:
None of these files exist:

debugger-ui/debuggerWorker.aca173c4(.native.js|.js|.native.jsx|.jsx|.native.json|.json|.native.ts|.ts|.native.tsx|.tsx)
debugger-ui/debuggerWorker.aca173c4/index(.native.js|.js|.native.jsx|.jsx|.native.json|.json|.native.ts|.ts|.native.tsx|.tsx)
at ModuleResolver.resolveDependency (/Users/sushantsardeshpande/WebstormProjects/androidRemoteDebugging/ReproducerApp/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:112:15)
at DependencyGraph.resolveDependency (/Users/sushantsardeshpande/WebstormProjects/androidRemoteDebugging/ReproducerApp/node_modules/metro/src/node-haste/DependencyGraph.js:231:43)
at /Users/sushantsardeshpande/WebstormProjects/androidRemoteDebugging/ReproducerApp/node_modules/metro/src/lib/transformHelpers.js:156:21
at Server._resolveRelativePath (/Users/sushantsardeshpande/WebstormProjects/androidRemoteDebugging/ReproducerApp/node_modules/metro/src/Server.js:1023:12)
at async Server._explodedSourceMapForBundleOptions (/Users/sushantsardeshpande/WebstormProjects/androidRemoteDebugging/ReproducerApp/node_modules/metro/src/Server.js:971:35)
at async Promise.all (index 1)
at async Server._symbolicate (/Users/user/WebstormProjects/androidRemoteDebugging/ReproducerApp/node_modules/metro/src/Server.js:928:26)
at async Server._processRequest (/Users/sushantsardeshpande/WebstormProjects/androidRemoteDebugging/ReproducerApp/node_modules/metro/src/Server.js:394:7)
BUNDLE  ./index.js

FYI Remote JavaScript Debugging is deprecated, as you can see from:
https://reactnative.dev/docs/other-debugging-methods#remote-javascript-debugging-deprecated
cc @huntie

Yup, we do plan to move to Hermes and use either the Hermes or Experimental debugger.
However, as of now we did face some issues with date formats that were working with JSC but not Hermes, in case we face more issues we might want to keep using JSC for some more time. In which case I think for Android, remote debugging does seem to work better than adb or Flipper, at least for me.

FYI Remote JavaScript Debugging is deprecated, as you can see from:
https://reactnative.dev/docs/other-debugging-methods#remote-javascript-debugging-deprecated
cc @huntie

Was doing some debugging, and realized that when it tried to reload  it was always creating a new thread. PREFS_REMOTE_JS_DEBUG_KEY had been set but not used.
In DevSupportManagerBase.java
UiThreadUtil.runOnUiThread(           () -> {             mDevSettings.setRemoteJSDebugEnabled(isRemoteJSDebugEnabled);             handleReloadJS();           });
Added a condition over it to read for the preference before starting another thread.
if (!mDevSettings.isRemoteJSDebugEnabled()) {       UiThreadUtil.runOnUiThread(           () -> {             mDevSettings.setRemoteJSDebugEnabled(isRemoteJSDebugEnabled);             handleReloadJS();           });     }
That seemed to do the trick for me. Not entirely sure if it would be the right way. Would appreciate if someone could confirm.

@cortinico
Remote debugging is critical for a good developer experience and just because it is deprecated doesn't mean it should be allowed to break without a good substitute (i.e., not flipper).
Also, you guys have said "We will leave Remote JS Debugging deprecated, but not remove it until we have an full alternative ready for the community."  Half of the appeal of our ecosystem are tools like the class redux-devtools.  That one tool alone has probably influenced billions of dollars of IT decisions.  We had access to it, we updated, and now we don't. It's frustrating.
CC @huntie

@cortinico Remote debugging is critical for a good developer experience and just because it is deprecated doesn't mean it should be allowed to break without a good substitute (i.e., not flipper).

I agree that debugging is crucial for React Native developer experience.
@huntie can share more about what is the right alternative here.

@jehillert Thanks for raising your concerns.

We're actively working on a rebuilt modern debugging stack that intends to (eventually) solve all significant developer needs.
For the time being, 3P DevTools plugins will not be something we support in this new stack at launch. We're aware this is an important use case, and therefore will not remove Remote Debugging for a long time, until this is functionality is replaced (see also this thread). Remote Debugging is deprecated, but we will continue to support any major bugs.

Closing as we previously merged #45775.

@huntie,
Let's say I wanted to figure out how to make RND compatible with the new architecture and the new debugging I/O. Is there someone on your side I could get some guidance from? And also, how complicated would it be?  In my head, I am picturing maybe a week of work (with guidance), but maybe I misunderstand the scale of the changes required.

And to be even less ambitious, I'm just interested in classic redux devtools, and the maybe reviving the ability to listen for network calls.  I think having those two things back would make most of us very happy.  The rest of what we want is already covered by react devtools and the experimental debugger

The problem with remote debugging is it's not just deprecated.  It's broken. It's been broken for at least a year. And not just once, it seems at least twice now. Three times, if you include incompatibility with react-native-reanimated (so three times).  How can I convince my team to accept a patch if it's just going to break again 3 months down the road?

@huntie
I switched jobs twice this year.  The first one put me on a team of about 20 react native devs.  The second one is smaller.  There are 4 of us.  Both used redux.  At the first place, nobody had access to the redux devtools.  It took me about a week to figure out the full solution to getting remote debugging to work for their current version of react native.  And we had to have an architecture meeting for me to get the merge request approved.
At the second place, nobody knew it existed (young crew).  Or the experimental debugger.  They have just been console logging everything out.
What I'm trying to say is it may seem like you left us with enough to hold us over until the new experience is done.  But I would bet the practical result is that most of the community no longer has access to redux devtools or network calls. Or any idea how to get them back.  And a smaller but significant portion of the community isn't using anything to debug.  Just console.logs.  it's a much bigger problem than you guys are aware of, imho.


Update CLA info in README

To reflect the new OSS CLA process

 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.