RawHtml Component for Arbitrary HTML Content

Could you consider adding a RawHtml component?
I see a gap in the ability to insert arbitrary HTML like <svg>.   My understanding is that it is designed for embedding HTML content at another URL.
I'm wanting to create reusable components for FastUI in python, but I can't see any way to get at the actual HTML.  I want to do simple stuff like creating a table where elements are images, but I can't seem to figure that out.

@jimkring,
Sure thing - you should be able to use the srcdoc field of the Iframe to pass in your custom HTML string.
Let me know if that doesn't fit your needs!

@sydney-runkle I sort of got that to work but...

src input is required (and cannot be empty string, None, or "."). I had to use a valid absolute URL string ("https://example.com"). Perhaps the Iframe model validator could be loosened up to allow src to be null if src_data is set.
I didn't set the height or width inputs, and I noticed the resulting frame renders with a horizontal scrollbar. I'd really a behavior where the Iframe would grow to fit the content, which is an image in my use case. I could probably figure out the image, size, ahead of time and set the Iframe size accordingly, but there will be instances when I don't know the size ahead of time.

Here is an example I created for wrapping raw html in an fastui Iframe component:
GitHere: https://gist.github.com/jimkring/d2c30fda78e031b285070c07797b0148
Side note: when wrapping an  I had to add some padding to get the horizontal scrollbars to go away.
def iframe_from_html_raw(
        raw_html: str,
        width: Union[str, int, None] = None,
        height: Union[str, int, None] = None,
        ) -> Iframe:
    """Returns a fastui Iframe component that displays raw HTML content."""
    return Iframe(
        srcdoc=raw_html,
        # todo: ideally `fastui` should make src not required if srcdoc is provided
        src="http://required.input.ignored.when.srcdoc.is.valid",
        width=width,
        height=height,
    )

@jimkring,
Ah nice, thanks for looking into this further. Yep, I think as an intermediate step we could make src optional. I also think a RawHTML component with associated settings could be beneficial.
Thanks for posting your example, I'm sure it'll be of help to others in the meantime!

Using IFrame seems confusing to me I would prefer just having a RawHTML Component

@shroominic yes, the iframe is just the only available work-around right now. In some ways, it's good for the evolution of fastui to not have a raw html component, because it forces everyone to try to find/design a more declarative way (with fastui features/components) to address the use cases.


Issue with Label of Input Component

Label is overflowing the textbox on change of window size.

The code for the input is simply this

Can anyone help me with this issue?

Hey there,
Please update to v2.0.3 for fixing this issue.
Regards,
Sajad


feat(interactive): Support VarChar as yet another property type

Currently Interactive only using string as vertex property. We also need to support string as edge property.
To support string edge property on csr storage, we need to ensure the maximum length of string, to reserve enough space.
Need more detail design and explanation.

The previous String type can be viewed as a varchar with a default maximum length as a fixed value.

A possible usage of VARCHAR can be
property_type:
  primitive_type: DT_VARCHAR(256)

property_type:
  var_char:
    max_length: 256


cue/encoding: add standardized deprecated attribute

Many of the encodings supported by CUE have a notion of deprecated (Protobuf, OpenAPI, Go). Support a standardized deprecated attribute, like @deprecated(msg) to facilitate preserving this information in translations.

This issue has been migrated to https://github.com/cue-lang/cue/issues/90.
For more details about CUE's migration to a new home, please see https://github.com/cue-lang/cue/issues/1078.


[OFFICIAL/TV] — Mr Olympia 2024 LIVE STreams FREE ON TV CHANNEL 12 Oct 2024

Mr. Olympia schedule 2024: Dates, times, live stream to watch men's, women's bodybuilding events
Mr. Olympia schedule 2024: Dates, times, live stream to watch men's, women's bodybuilding events image
The bodybuilding competition of the year is here. That's right — Mr. Olympia is back for its 60th anniversary and returning to Las Vegas.
🔴🌍📺📱👉GO LIVE==►► CLICK HERE TO STREAMING
🔴🌍📺📱👉STREAMING==►► CLICK HERE TO WATCH LIVE
🔴🌍📺📱👉GO LIVE==►► CLICK HERE TO STREAMING
🔴🌍📺📱👉STREAMING==►► CLICK HERE TO WATCH LIVE
Ms. Olympia pre-judging will take place on Friday morning with finals in the evening, and the Mr. Olympia main event is scheduled to start on Saturday night. Bodybuilders from all over the world will be competing for the coveted title this weekend.
MR. OLYMPIA RESULTS: Updated list of winners in 2024
American bodybuilder Derek Lunsford took home the title in 2023, making him the first winner of the competition in two separate divisions (2023 Mr. Olympia and 2021 212 Mr. Olympia). Lunsford swapped places with defending champion Hadi Choopan, who had beaten him out for first place in 2022.
Both Lunsford and Choopan have qualified for the 2024 competition, as well as 2019 champion Brandon Curry. Andrea Shaw will be looking for an incredible five-peat in the Ms. Olympia competition.
Here is everything you need to know about the 2024 competition, including a full schedule and list of participants.
When is Mr. Olympia in 2024?
Dates: Friday, Oct. 11-Saturday, Oct. 12
This year, Mr. Olympia will be held at Resorts World Las Vegas. The finals for Ms. Olympia and Mr. Olympia will take place on Friday and Saturday, respectively.
Mr. Olympia schedule 2024
Date Time (ET) Event
Oct. 11 12:30 p.m. Ms. Olympia pre-judging
9 p.m. Ms. Olympia finals/Mr. Olympia pre-judging
Oct. 12 10 p.m. Mr. Olympia finals
Mr. Olympia live stream 2024
Live stream: Olympia pay-per-view
Mr. Olympia will not be available to watch on a national TV channel. Viewers can live stream the event on OlympiaTV, which provides a pay-per-view package for $74.99.
Who is competing in Mr. and Ms. Olympia?
In order to qualify for events, competitors must meet the requirements set by the IFBB Professional League. Nineteen men qualified for Mr. Olympia, while 15 women qualified for Ms. Olympia.
Lunsford is the defending Mr. Olympia champion and will be looking for his second title this year. Choopan won in 2022 and will be hungry for a championship after placing second last year.
Shaw is competing for a fifth straight Ms. Olympia title.

Closed due to irrelevant content.


Execution of single file or list of files not working

When I try to run PyWren again on failed actions which exited unexpectedly, I get an error that the file is not found in the COS-Bucket even though it was executed before.
example:
pw = pywren.ibm_cf_executor(config=config)
try:
    pw.map(my_map_function, ['ibm_cos://01-10-2019/1569902700000.csv', 'ibm_cos://01-10-2019/1569892800000.csv'])
    result = pw.get_result()
    print("Execution completed")
except Exception as e:
    print (e)
finally:
    pw.clean()

I get this error:
PyWren v1.0.20 init for IBM Cloud Functions - Namespace: pywren-test - Region: us_east
ExecutorID 243b-42b8 | JobID M000 - Selected Runtime: ibmfunctions/action-python-v3.6 - 256MB
Object key "/1569902700000.csv" does not exist in "01-10-2019" bucket
ExecutorID 243b-42b8 - Cleaning temporary data

I think the problem is the parsing of the filenames as the slash is still in the object key.

@ManuelEberhardinger This is an issue already fixed in master branch, but no revision still created.
@gilv may we need to create a new release?

@ManuelEberhardinger you can already use 1.1.1 release

@JosepSampe thanks, then I close this issue.


feat(select,input,form-field): move test harnesses out of experimental

Moves the test harnesses for the select, input and form-field packages out of material-experimental.

Setting to P2 since there's other work that depends on these changes.

Sorry, it won't let me add comments inline since the lines are unedited, but here's a breakdown by class of changes I think we should make before moving this API out of experimental:
FormFieldHarnessFilters
	+ floatingLabelText?: string | RegExp
	+ hasErrors?: boolean

MatFormFieldHarness
	+ hasErrors(): Promise<boolean>
	+ getHarnessLoaderForInfix(): Promise<HarnessLoader>
	getPrefixContainer => getHarnessLoaderForPrefix
	getSuffixContainer => getHarnessLoaderForSuffix
	getErrorMessages => getTextErrors
	getHintMessages => getTextHints

InputHarnessFilters
	+ placeholder?: string | RegExp

SelectHarnessFilters
	+ placeholder?: string | RegExp
	+ value?: string | RegExp

MatSelectHarness
	+ select(filters?: SelectOptionHarnessFilters): Promise<void>
	getOptions => add optional filters
	getOptionGroups => add optional filters

Also, do a pass on the API docs, make sure they are consistent with other harnesses (in particular I noticed with method, move description of filter options to the filter class).

@mmalerba I've updated the harnesses based on your feedback, aside from a couple of issues:

I'm not sure how getHarnessLoaderForInfix(): Promise<HarnessLoader> is supposed to work and what it would be useful for. We already have harnesses for the input and select which expose the content inside the infix.
I don't think we can do the value and placeholder filters for the select harness, because the values aren't always in the DOM so we can't extract them reliably.

Discussed with @crisbeto on slack. After thinking about it more, I agree that those two don't make sense

I added getPanel, because I thought that it might useful if somebody wants to get info that we haven't exposed directly in the harness. I've removed it, can you take a look @mmalerba?

@mmalerba I've addressed the latest set the feedback, aside from exposing the option harnesses. I haven't exposed or documented them properly yet, because their code is duplicated between mat-select and mat-autocomplete. Once this PR is merged in I'll add proper, fully-featured harnesses that are exposed through material/core/testing.

I'm hesitant about just merging this and doing the option stuff in a follow up because I don't want this temporary state API to wind up in an RC, or worse final if the follow-up doesn't make it in in time. I would suggest doing the common option first and putting this one on hold until that's in.
cc @jelbourn

I can put together the option PR for Monday so we have some time to merge it in for final. I would've made a shared option harness to begin with, but the autocomplete and select harnesses started off in experimental and we don't have a material-experimental/core to put it in.

I'm fine with doing this in two steps since I just did an RC today and will know not to do another one until we consolidate

Addressed the last few things @mmalerba.


[OpenAI] [Assistants] Test coverage for file CRUD operations

Closes #38440
I said CRUD in the title, but currently there is no update operation, just FYI.
Changes:

Test coverage for convenience and protocol method for file operations: upload, get , list and delete
Test added for sync/async and azure/non-azure
Added custom matcher for text proxy tool for multipart operations

API change check
APIView has identified API level changes in this PR and created following API reviews.
com.azure:azure-ai-openai-assistants

run
mvn -f pom.xml -am clean install
to fix the checkstyle, spotbugs


Creating a list of achievements

https://github.com/PiechZ/ADK_wrapped/blob/master/achievements_readme.md
List of achievements is in constant change.


Thai's FYP

Main change
An self-contained endpoint for pushing an image where:

Dockerhub credentials are retrieved from the body of the request
The credentials are written into a temporary file, mounted into a docker container
Dockerhub authentication is done within the docker container, then the image is pushed, and the
docker` container is removed
Eventually no authentication data is kept on the Gantry server. Hence, there is no need manage auth state or do login/logout

Hi @StephenCoady , I created this PR as a reference for my report :)

Hi @thailekha, thanks for the contribution. I will start working through the PR and seeing what we can/can't merge. Excellent additions to the server from a first glance though, thanks!


B4 Submission

confirmed:B4
address:3cJZ7rLUor4Nnq9TMjZL5bdCeuXCTDj8VAtjihPsV9XEyjpGGY
baker:408

confirmed:B4
address:3cJZ7rLUor4Nnq9TMjZL5bdCeuXCTDj8VAtjihPsV9XEyjpGGY
baker:408


Passing an optional parameter to startAt() when querying FirebaseListObservable

Hey,
I'm using a FirebaseListObservable to retrieve some messages from firebase and I was wondering how to use the firebase query startAt() method inside the query object. It's not a simple startAt(value) call, since I need to pass in the optional "key" parameter. However, it seems that there's no easy or straightforward way to accomplish that within the query object.
I tried the following:
    this.af.database.list('/messages', {
    query: {
        orderByChild: 'date',
        startAt: {value: 'Some date', key: 'some key'}, //key is the optional parameter
        limitToFirst: 10
        }
        })

but the firebase library (not angularfire2) complains:
ORIGINAL EXCEPTION: Error: Query: First argument passed to startAt(), endAt(), or equalTo() cannot be an object.
The startAt method can receive an optional parameter "key", as described in the firebase docs:
https://firebase.google.com/docs/reference/js/firebase.database.Query#startAt
I even tried $value and $key as the object properties, but firebase threw another Error.
Is this impossible to do with angularfire or is there a different syntax to do it?
This is how the query looks like with vanilla firebase:
firebase.database().ref('/messages').orderByChild('date').startAt(startAtValue, someKey).limitToFirst(10);

Thanks for bringing this up @lf-alves. This is a case we missed in the original implementation. We'll work on it fixing it for the upcoming release.

Hey @lf-alves, upon further review I'm inclined to not support this feature as it works for priority use cases. While it is something supported by the SDK, I'm not keen on fully supporting priority as it is not the recommended way of doing things for awhile now. Most things priority does is easily achieved using the other querying methods.
I'm closing this issue, but feel free to respond with comments.

@davideast What would the option be fore querying date ranges if this will not be supported?

@davideast When look at this SO question, I was curious as to how the optional key parameters to startAt, endAt and equalTo worked. The documentation for startAt suggests that using the optional key parameter is not limited to priority:

The child key to start at. This argument is allowed if ordering by child, value, or priority.

However, the docs for the endAt and equalTo state that "argument is only allowed if ordering by priority."
I've done some experimenting and it seems that the key parameter can be specified when ordering by child when using startAt, endAt or equalTo.
Are the docs now wrong? Given that it doesn't appear to be limited to priority, shouldn't this be implemented in AngularFire2? It would be straightforward to add optional startAtKey, endAtKey and equalToKey options to the list's query.

The optional second parameter is a legacy feature. AngularFire2 won't be supporting priorities and you can achieve better behavior through orderByChild() and we will encourage this practice going forward.

@katowulf @davideast I don't think I've made my point clearly. I'll create a proper issue for this. According to the SDK documentation, an optional key parameter is supported for startAt when using orderByChild and without it paging is not always possible with non-unique child values.

Once again, the optional second parameter (i.e. a key) is used with orderByPriority(), which is a legacy feature that existed before orderByChild(), orderByKey(), and orderByValue() existed.
You should prefer orderByChild() and in in this case you only pass one parameter into startAt, endAt, et al.

@katowulf According to the SDK docs, the optional "argument is allowed if ordering by child, value, or priority." It's the docs for equalTo and endAt that mention that its use is limited to priority.
If it were not able to be used with orderByChild, it would impossible to page through results in which the number of non-unique child values exceeds the page size.
So either the SDK docs are wrong or it's impossible to reliably page when ordering by non-unique child values.

Yep, looks like this has been updated since David and I read the spec last. Interesting. Wonder if it actually works? : ) [hint: I assume so]
@davideast may be worth revisiting this decision.

@katowulf Yep. It works. It works with orderByChild and equalTo and endAt, too, but as the docs state that usage with those is supposed to be for priority only, I'm supposing that can change. It's useful enough if only supported for startAt.
If you want, I'll create a new issue with a Plunker so that you can see for yourself.
As for supporting it in AngularFire2, doing what the OP suggested - startAt: { value: 'some-value', key: 'some-key' } - would be a straightforward, non-breaking change, as startAt is declared as any.

@katowulf @davideast There's a Plunker here that pages using the SDK's optional key parameter to startAt when ordering by child.


Update selenium example to selenium 4.0

The newest major version of Selenium 4.0 was released, and some specifications had been changed.
Updating the example to follow the latest version.
Also fix some out-of-date procedures in the example’s README.
These changes are follow in the latest Selenium README: https://github.com/SeleniumHQ/docker-selenium

/assign @sebgoa

Thanks @rueyaa332266!


Javascript not running from custom index.html

Hi -
This is one of those issues that just HAS to be something stupid I'm overlooking....
I've just upgraded to Swashbuckle 5.0. I have been able to customize it to use the substitute .html index file I was using under 4.0, but none of the javascript seems to be running. The new configuration code is:
config.EnableSwagger(c =>
{
c.IncludeXmlComments(xmlCommentsPath);
c.SingleApiVersion("v2", "My Own Special API");
}).EnableSwaggerUi( c=>
{
Assembly exAssemb = Assembly.GetExecutingAssembly();
c.CustomAsset("index", exAssemb, "MYLOCALPATH.loginTest.html");
c.CustomAsset("chevrons_clear.png", exAssemb, "MYLOCALPATH.chevrons_clear.png");
c.InjectStylesheet(exAssemb, "MYLOCALPATH.myStyleSheet.css");
c.InjectJavaScript(exAssemb, "MYLOCALPATH.setupLogic.js");
});
Of these, the index file, the image file, and the style sheet are all working, but the javascript doesn't execute. The .html and .js files are unchanged from the versions that were working under Swashbuckle 4.0.
Any idea what I might be missing here?
Thanks,
Lyn

Have you change the build type of that css and javascript to embedded_resources, and what is your index.html looks like? I prefer using CustomAsset than Inject to insert custom javascript.

So Swashbuckler uses template parameters in the embedded resources to pass these settings along.
For example, the InjectStylesheet function adds to the %(StylesheetIncludes) template parameter a block of html for a link to the embeded stylesheet, which is referenced/used in the default index.html as follows
<head>
  <title>Swagger UI</title>
  ...
  <link href='css/print-css' media='print' rel='stylesheet' type='text/css' />
  %(StylesheetIncludes)
  <script src='lib/jquery-1-8-0-min-js' type='text/javascript'></script>

For InjectJavaScript, this just adds adds the embedded resource url to %(CustomScripts) which is pipe separated.
For this to work in your custom index.html, you must have some JavaScript in your custom index.html to parse these URLs and do the appropriate action to load up these scripts.  For example, the default index.html does the following code.  Note, I've omitted many of the other lines of javascript code just to demonstrate how %(CustomScripts) is working.
  <script type="text/javascript">
  $(function () {

      // Get Swashbuckle config into JavaScript
      function arrayFrom(configString) {
        return (configString !== "") ? configString.split('|') : [];
      }

      window.swashbuckleConfig = {
        customScripts: arrayFrom('%(CustomScripts)'),
      };

      window.swaggerUi = new SwaggerUi({
        onComplete: function (swaggerApi, swaggerUi) {
          _.each(swashbuckleConfig.customScripts, function (script) {
            $.getScript(script);
          });
        },
  });
  </script>

Thanks for all the help! I ended up simply starting from the index file generated by the new version of Swagger, then re-inserting my javascript and other customizations into that. It's working now.

how exactly do you do that customization add java script function
@raaga123


Vietnamese URL slug not good

Have you read the Contributing Guidelines on issues?

[X] I have read the Contributing Guidelines on issues.

Prerequisites

[X] I'm using the latest version of Docusaurus.
[ ] I have tried the npm run clear or yarn clear command.
[ ] I have tried rm -rf node_modules yarn.lock package-lock.json and re-installing packages.
[ ] I have tried creating a repro with https://new.docusaurus.io.
[ ] I have read the console error message carefully (if applicable).

Description
Test conditions
Bọn này hoà đồng thân thiện

Tag

/tags/bọn-nay-hoa-dồng-than-thiện

ToC

/blog/2022/04/21/post#bọn-này-hoà-đồng-thân-thiện

Reproducible demo
No response
Steps to reproduce
undefined
Expected behavior
undefined
Actual behavior
undefined
Your environment

Public source code:
Public site URL:
Docusaurus version used:
Environment name and version (e.g. Chrome 89, Node.js 16.4):
Operating system and version (e.g. Ubuntu 20.04.2 LTS):

Self-service

[ ] I'd be willing to fix this bug myself.

Without a repro or any description of what's wrong we can't help you. I'm going to close this for now; feel free to follow up with more information about what's wrong and what you expect to see. The current behavior looks good enough to me.


Cleanup after changes to release logic

There is more cleanup to do but I think it is better to wait for 5.0.0-beta.1 when we go full .NET 6.


Add clarity around app_guid

Just explain why it might not be present in the message
Signed-off-by: Doug Davis<EMAIL_ADDRESS>

LGTM

LGTM

rebased

Thinking a little further about this, i wonder if this is another area where need something similar to context

re: context - I've been thinking of something similar except I was thinking as it more like we just need to open up the bind_resource struct to allow for platform specific data to appear in there - thus turning it into a kind of "context"-like object.

This and some other PR's need a rebase, so I will wait for it for a new round of LGTM!

rebased

LGTM

lgtm

Needs another L G T M after rebase.
Previous approvers: @angarg12 @avade
More needed from: @pmorie @shalako @vaikas-google

LGTM

LGTM

LGTM

LGTM

@duglin The spec is now a bit inconsistent with some 80 char breaks and some long lines. I agree with @shalako that limiting every line could make rendered documentation ugly, but regardless of which we choose, we should still tidy up the spec at some point for consistency.


[Pygen] Issue with instruction name in constraint

Hello, we are trying to implement imm_c constraint with vsc library in riscv_instr.py file. But we are facing issue for instr_name in imm_c constraint. Issue is  we are not getting instr_name in imm_c constraint, while if we check same self.instr_name in post_randomize method , in that we are getting instr_name value.

Then we tried to print the object which we are passing to imm_c constraint and post_randomize. In this we can see that object id is same for particular instruction in both functions. But instr_name we are not getting in imm_c. Following is the log for this :
name.log
In this you can check object id and instr_name for particular instruction.
So, can anyone please help me in this issue?

Hi @ShraddhaDevaiya
I think this makes sense, and here is the reason why you're facing this behavior: self.instr_name itself is a vsc.rand_sth. Every method with a @vsc.constraint decorator is implicitly called while you instantiate an object. With that said, it makes sense not to get a proper value for self.instr_name inside of the constraints (as the object has not been "randomized" yet). The values for any vsc.rand_sth variable should be known only after the point where object.randomize() is called (and that's why you can see the value for self.instr_name in the post_randomize() method as it is called after the randomization process). So don't worry about not getting a proper value for a random variable within the methods with @vsc.constraint decorator, just define your constraints and you should get valid data (according to the constraints) after randomization process.
Here is a small program that illustrates what I mentioned. Please let me know if anything is unclear.

Okay got the idea. Thanks for helping !

Hello @hodjat91, I have implemented imm_c contraint in riscv_instr.py file.

But while running the program, if we check log, it is not printing "INSIDE IF"  and I have checked assembly file. We are getting  these slli, srli and srai instructions, but in imm_c constraint it is not going inside if loop . For this probably the reason is , we are not getting instr_name in imm_c.
Here is the generated log file :
logname.log
So  can you please suggest, what can be the problem ?

Hi @ShraddhaDevaiya ,
The reason behind not entering inside of the second if statement is that at this point we don't know what's the randomly generated value for riscv_instr_name. For the constraint methods (decorated with vsc.constraint), the syntax for the conditional statements (like an if statement) operating on a vsc.rand_sth variable is a bit different than what you wrote (it's actually pretty similar to that of SystemVerilog). For example, if self.imm[5:11] should be zero in case of instruction name = slli, you could do it this way:
with vsc.if_then(self.instr_name == riscv_instr_name_t.SLLI.name):
    self.imm[5:11] == 1

You can find more examples here. Please let me know if the issue still persists.
-Hodjat

Hi @hodjat91 , I tried to implement constraint  with vsc.if_then , but it is giving an error like following :

Finding the cause for this. can you please help in this?

Hi @ShraddhaDevaiya
Could you please share the code with me so I can get a better understanding of the issue? Thanks.

Hodjat

Yeah Sorry for that.
Here is the code :
@vsc.constraint
    def imm_c(self):
        with vsc.if_then(self.instr_name == riscv_instr_name_t.SLLI.name):
            print("INSIDE")
            self.imm[5:11] == 0

        with vsc.if_then(self.instr_name == riscv_instr_name_t.SRAI.name):
            self.imm[5:11] == 0

        with vsc.if_then(self.instr_name == riscv_instr_name_t.SRLI.name):
            self.imm[5:11] == 0

Thanks.
-Shraddha

Hi @ShraddhaDevaiya
I looked at your code, here is the issue with it:
Assuming that you defined self.instr_name as a vsc random variable (e.g., self.instr_name = vsc.rand_enum_t(name_of_enum_class)): there are two issues in your code, first is the .name at the end of instruction name (in your with vsc.if_then statement), you do not need .name extension. Next issue is with the part select constraint (self.imm[5:11]) that actually should be self.imm[11:5].
Here is a sample program that does what you want. Please let me know if you have further questions.

Hi @hodjat91 , it is working now. Thanks for helping !


feat: migration UI -  Review & Congrats page

Thank you for your contribution to the KodaDot - One Stop Shop for Polkadot NFTs.
👇 __ Let's make a quick check before the contribution.
PR Type

[ ] Bugfix
[x] Feature
[ ] Refactoring

Context

[x] Fix #7561
[x] Fix #7563

Did your issue had any of the "$" label on it?

[x] My DOT address: Payout

Copilot Summary

🤖 Generated by Copilot at 3bc0b8f
This pull request enhances the NFT migration feature by showing and validating the fees and balances for cross-chain transfers, and by refactoring some code for better quality and maintainability. It also updates the translation key for estimatedFees and formats the ./locales/en.json file.

🤖 Generated by Copilot at 3bc0b8f

Sing, O Muse, of the skillful coder who devised
A wondrous feature for the migration of NFTs
Across the vast and varied chains of cryptic lands
Where fees and balances shift like sands.

waiting for netlify deploy

waiting for netlify deploy

So, i have this collection that has 6 items, but 3 items are not owned by me:
https://deploy-preview-8006--koda-canary.netlify.app/rmrk/gallery/18655527-7EA1DCF47E98A25067-ANIME90-ANIME_GIRL_90S_3-0000000000000003

shouldn't it show burn 3 items and migrate 3 items?
another question, does "carbon less" and "i am helping cover costs" on settings affects this process? if so, should appear on fees i suppose

So, i have this collection that has 6 items, but 3 items are not owned by me:

updated

another question, does "carbon less" and "i am helping cover costs" on settings affects this process? if so, should appear on fees i suppose

currently, I only put I am helping cover costs, does carbon less NFT option setting affect this migration cost also? @vikiival

pay 80 usd
let's see it live!

😍 Perfect, I’ve sent the payout
💵 $80 @ 5.59 USD/DOT ~ 14.311 $DOT
🧗 1xjvRADwdJcnmUCLWerEHR4iGCT5EBTm4D4fzLLg4LcAC9p
🔗 0xa4d620809089178256e3556c1a71840c67e772cd8a1509d5fb64cc5544281dd0
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues


add tni

sorry for add wrong path
i edit to correct path
thank

@LagSeeN Thank you for the update! Pull request merged.


Pip Install Error

Hello,
I've been getting the following error when installing using pip:
$ pip install future
Collecting future
  Using cached https://files.pythonhosted.org/packages/90/52/e20466b85000a181e1e144fd8305caf2cf475e2f9674e797b222f8105f5f/future-0.17.1.tar.gz
Installing collected packages: future
  Running setup.py install for future ... error
    ERROR: Complete output from command /usr/bin/python -u -c 'import setuptools, tokenize;__file__='"'"'/private/var/folders/04/6tgyxvns6nnb8ynp8zmtk4340000gn/T/pip-install-0wZq_9/future/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/04/6tgyxvns6nnb8ynp8zmtk4340000gn/T/pip-record-Lw3bdP/install-record.txt --single-version-externally-managed --compile:
    ERROR: /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'python_requires'

I am using the latest version of pip:
$ pip --version
pip 19.1.1 from /Library/Python/2.7/site-packages/pip-19.1.1-py2.7.egg/pip (python 2.7)

Any help would be much appreciated. Wondering if others have the same issue or not.
Thanks,
Maxim

False alarm, just hit it with a sudo install and this seems to have sorted it.


[DPE-3705] Reintroduce fallback keys and fix TLS secrets initialization

Issue

We are not correctly initializing some TLS secret keys (e.g. cert instead of certificate, cauth instead of certificate-authority)
As part of PR 385, we got rid of the secret fallback keys. However, this is necessary for clients who are upgrading from old versions of the charm (without secrets) to this version of the charm (with secrets)

Solution

Correctly initialize the TLS secret keys
Re-introduce fallback keys in the framework of the new secrets lib (data_interfaces) (see Jira ticket for link to conversation for more context)

Updated libpatch in 9cddb26
I tried testing upgrades from previous stable versions:

Rev 151 fails upgrade as the charm does not have pre-upgrade-check action
Rev 196 already stores the TLS keys in the appropriate secrets (with no chance to test fallback key)
The revision for when upgrades feature was merged is no longer accessible in CI due to expired logs


Use previous existStatus code instead of default 99108

Fixes #11349
Status
not-tested
Description
Extract previously failed step exit status and use it as exit code for Chirp_WMCore_cmsRunX_ExitCode  metrics
Is it backward compatible (if not, which system it affects?)
MAYBE
Related PRs
External dependencies / deployment changes
Testing may require to intentionally run workflow which will fail step chain. It is unclear to me how to test this code though unit tests

Alan, I made initial implementation for the fix but I'm unsure how I can test it. It seems to me that provided unit tests cannot be run through docker unit test approach as it requires condor chirp, here is traceback from docker image used for unit testing:
[dmwm@a91cfde02d6a WMCore]$ python3 test/python/WMCore_t/WMSpec_t/Steps_t/Executors_t/CMSSW_t.py
/home/dmwm/wmcore_unittest/WMCore/src/python/WMCore/Services/Rucio/Rucio.py:710: DeprecationWarning: invalid escape sequence \c
  def pickRSE(self, rseExpression='rse_type=TAPE\cms_type=test', rseAttribute='ddm_quota', minNeeded=0):
/home/dmwm/wmcore_unittest/WMCore/src/python/WMCore/Storage/TrivialFileCatalog.py:42: DeprecationWarning: invalid escape sequence \?
  _TFCArgSplit = re.compile("\?protocol=")
WARNING:root:condor_chirp was not found in the system.
WARNING:root:condor_chirp was not found in the system.
/home/dmwm/wmcore_unittest/WMCore/src/python/WMCore/Algorithms/ParseXMLFile.py:64: ResourceWarning: unclosed file <_io.BufferedReader name='FrameworkJobReport.xml'>
  expat_parse(open(reportFile, 'rb'),
ResourceWarning: Enable tracemalloc to get the object allocation traceback
.FF
During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "test/python/WMCore_t/WMSpec_t/Steps_t/Executors_t/CMSSW_t.py", line 204, in testC_ExecuteSegfault
    self.fail("Failure encountered, %s" % str(ex))
AssertionError: Failure encountered, [Errno 2] No such file or directory: '/tmp/tmp7by64cuw/UnitTests/WMSandbox/WMWorkload.pkl'

======================================================================
FAIL: testD_ExecuteNoOutput (__main__.CMSSW_t)
_ExecuteNoOutput_
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test/python/WMCore_t/WMSpec_t/Steps_t/Executors_t/CMSSW_t.py", line 223, in testD_ExecuteNoOutput
    executor.initialise(self.step, self.job)
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/tmp7by64cuw/UnitTests/WMSandbox/WMWorkload.pkl'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "test/python/WMCore_t/WMSpec_t/Steps_t/Executors_t/CMSSW_t.py", line 230, in testD_ExecuteNoOutput
    self.fail("Failure encountered, %s" % str(ex))
AssertionError: Failure encountered, [Errno 2] No such file or directory: '/tmp/tmp7by64cuw/UnitTests/WMSandbox/WMWorkload.pkl'

----------------------------------------------------------------------
Ran 4 tests in 2.904s

FAILED (failures=3)

I don't think you need to precisely know that. Looking into the logic of this function:
https://github.com/dmwm/WMCore/blob/master/src/python/WMCore/WMSpec/Steps/Executors/CMSSW.py#L52
ensuring that Chirp_WMCore_cmsRun_ExitCode will have the meaningful error code seems simpler than I thought. I guess we can make something like:
"""
if previous step failed; then
do not set Chirp_WMCore_cmsRun_ExitCode once again (and with the wrong exit code)
else
keep setting Chirp_WMCore_cmsRun_ExitCode
"""
what do you think?

if we implement what you are asking then we will end-up with the following:
      "Chirp_WMCore_cmsRun3_ExitCode": 8021,
      "Chirp_WMCore_cmsRun_ExitCode": 8021,
      "CondorExitCode": 85,

instead of current
grep ExitCode 99108.json
      "Chirp_WMCore_cmsRun3_ExitCode": 8021,
      "Chirp_WMCore_cmsRun6_ExitCode": 99108,
      "Chirp_WMCore_cmsRun4_ExitCode": 99108,
      "ExitCode": 99108,
      "Chirp_WMCore_cmsRun5_ExitCode": 99108,
      "Chirp_WMCore_cmsRun_ExitCode": 99108,
      "CondorExitCode": 85,

because cmsRun6,4,5 will not be set and I'm not sure if ExitCode will show up or not, and if it will show up will it have correct status code value.
Anyway, I'll implement the change you propose.

@vkuznet yes, that is the correct behavior. Instead of the current exit codes:
      "Chirp_WMCore_cmsRun3_ExitCode": 8021,
      "Chirp_WMCore_cmsRun4_ExitCode": 99108,
      "Chirp_WMCore_cmsRun5_ExitCode": 99108,
      "Chirp_WMCore_cmsRun6_ExitCode": 99108,
      "ExitCode": 99108,
      "Chirp_WMCore_cmsRun_ExitCode": 99108,
      "CondorExitCode": 85,

we should have:
      "Chirp_WMCore_cmsRun3_ExitCode": 8021,
      "Chirp_WMCore_cmsRun4_ExitCode": 99108,
      "Chirp_WMCore_cmsRun5_ExitCode": 99108,
      "Chirp_WMCore_cmsRun6_ExitCode": 99108,
      "ExitCode": 8021,
      "Chirp_WMCore_cmsRun_ExitCode": 8021,
      "CondorExitCode": 85,

I don't see where ExitCode is defined in WMCore though. Perhaps it's created in the CMS Job Monitoring script (@mrceyhun )? The CondorExitCode is not clear to me as well, but I think we should disconsider it as it is out of scope.

No, the code is doing what you asked. I removed self._setStatus, and if you look closely to code flow you'll see the following:

the lines 108-122 checks the previous step, set proper code, and through exception WITHOUT setting Chirp_WMCore_cmsRunX_ExitCode  code
while, if you'll look further on lines 289-305 the code will set proper exit code
since lines [108-122] will not be used if previous step is not failed therefore lines [289-305] will setup proper code

you are right about setting Chirp_WMCore_cmsRun_ExitCode in line 302, so I added necessary protection in _setStatus function.  And, of course, I agree about proper testing. Since unit tests here is not an option please provide detailed instructions how to do that in test agent (or point to proper documentation).

@amaltaro For the ExitCode, if it is not provided by upstream, yes we create it[1].
And I also don't know CondorExitCode which is equal to ExitCode. Probably we keep it there because of historical reasons.
[1] https://github.com/dmwm/cms-htcondor-es/blob/master/src/htcondor_es/convert_to_json.py#L669

@mrceyhun thank you for the confirmation! Honestly, I suspect we do not set ExitCode at all for central production jobs (neither I could find it grepping the repo). Thank you for providing its definition.
@vkuznet Valentin, I suggested in one of my previous comments a setup to test it. But basically, you will need to:

either use testbed services or deploy central services in your k8s cluster
connect a WMAgent to those services (I can help you with this deployment)
patch WMAgent with this patch
inject this test template: https://github.com/dmwm/WMCore/blob/master/test/data/ReqMgr/requests/DMWM/SC_6Steps_PU.json (which should have a couple of job failures)
and check the classads propagated to MonIT.

Checking things in MonIT might be trickier. AFAIK only schedds connected to the global pool propagate condor information to MonIT. If that is the case, we need to ensure that the test WMAgent is connected to global pool. @mrceyhun can you please confirm which job information is consumed by the condor job monitoring setup?

@amaltaro , thanks for details, I think for testing it would be much simpler to use testbed. It is for testing anyway, and WMAgent are connected to it too. Please let me know which agent I can use and I can patch it.
Regarding seeing metrics in MONIT, I think it would be much easier if I'll dump the self.step into logger on an agent side and we can see the settings via logs.
Let me know if I can proceed with this setup, and let me know in this case which agent to use.

Regarding seeing metrics in MONIT, I think it would be much easier if I'll dump the self.step into logger on an agent side and we can see the settings via logs.

That's a good idea. Feel free to provide an extra commit adding those debug lines. Once you are happy with testing, just remove that commit and force push your branch and it will be all clean.
For the agent, feel free to use vocms0193 (team name is: testbed-vocms0193). Once you are done with tests, I will redeploy that agent to upgrade to the latest version (it is now 1 version behind, on <IP_ADDRESS>).

ok, here are two new WFs:
- wmagent_SC_6Steps_PU_Test_issue_11349_v6_230509_200845_2794
- wmagent_SC_6Steps_PU_Test_issue_11349_v7_230509_200936_4048

Let's wait for their completion.

@vkuznet Valentin, this seems to be working just as expected now. Here is a grep of the output log:
cmst1@vocms0193:/data/srv/wmagent/current $ grep Chirp_WMCore Job_4278/wmagentJob.log
2023-05-09 21:27:22,059:INFO:CMSSW:Step cmsRun1: Chirp_WMCore_cmsRun_ExitCode 0
2023-05-09 21:27:22,066:INFO:CMSSW:Step cmsRun1: Chirp_WMCore_cmsRun1_ExitCode 0
2023-05-09 22:36:07,721:INFO:CMSSW:Step cmsRun2: Chirp_WMCore_cmsRun_ExitCode 8016
2023-05-09 22:36:07,736:INFO:CMSSW:Step cmsRun2: Chirp_WMCore_cmsRun2_ExitCode 8016
2023-05-09 22:36:07,871:INFO:CMSSW:Step cmsRun3: Chirp_WMCore_cmsRun3_ExitCode 99108
2023-05-09 22:36:07,968:INFO:CMSSW:Step cmsRun4: Chirp_WMCore_cmsRun4_ExitCode 99108
2023-05-09 22:36:08,000:INFO:CMSSW:Step cmsRun5: Chirp_WMCore_cmsRun5_ExitCode 99108
2023-05-09 22:36:08,038:INFO:CMSSW:Step cmsRun6: Chirp_WMCore_cmsRun6_ExitCode 99108

I can also confirm that WMStats information is correct, in addition to the job Report.pkl file.
Please squash all those commits into a single one, remove the relevant GH labels and fire another review request.
We will have to backport it to <IP_ADDRESS>_wmagent branch as well.

Here is the backport PR:
https://github.com/dmwm/WMCore/pull/11589
I am cutting a <IP_ADDRESS> on top of that and also patching all the agents in production with #11589


add single-double quotes settings

Adding single-double bool setting and tests for it

Hi @k-teplyakov !
Thanks for opening this PR. I've left out a quotes setting intentionally because of the style guide I am following.
Hopefully the extension have saved you some time! Feel free to make any changes you like in your fork, of course.


fixes #30 expand environment variables

Coverage remained the same at 100.0% when pulling 90825a3dccfb47d73375f5e71e69a2d7f7f540a7 on expand-env-vars into 4577bb320aa001a5065a2e9c1fcefb58b10538d3 on master.


Level Up - Spell Choice missing

Hi!
I did not see that anyone else mentioned this. After the 3.0.1 update when a caster levels up, there is no pop up to learn new spells. It needs to be imported separately.
This is only for those casters that learns X spells/lvl up. Clerics or Druids are okay, they get the pop up to populate the spellbook.

This is a feature from a module, not the system.


Theme's highlightColor fails to change Scrollbar color Flutter Web

Steps to Reproduce

Theme(    data: ThemeData(     highlightColor: Colors.pink, //Does not work     ),     child: Scrollbar()

Flutter (Channel stable, 2.5.2, on macOS 11.6 20G165 darwin-x64, locale en-GB)

Hi @hiteshsapra, please provide a complete minimal reproducible sample that is ready to run with no changes. And your full flutter doctor -v.
Thank you

[✓] Flutter (Channel stable, 2.5.2, on macOS 11.6 20G165 darwin-x64, locale en-GB)
• Flutter version 2.5.2 at /Users/baps/Documents/flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision 3595343e20 (2 weeks ago), 2021-09-30 12:58:18 -0700
• Engine revision 6ac856380f
• Dart version 2.14.3

Without additional information, we are unfortunately not sure how to resolve this issue.
We are therefore reluctantly going to close this bug for now.
Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.
Could everyone who still has this problem please file a new issue with the exact description of what happens, logs, and the output of flutter doctor -v.
All system setups can be slightly different, so it's always better to open new issues and reference related issues.


[CI/Build] Add TP test for vision models

Follow-up to #5880
Note: This test is not run in CI as it requires multiple GPUs.
E           RuntimeError: len(serialized_obj)=1356171 larger than the allowed value 1048576,Please increase the max_chunk_bytes parameter.

vllm/distributed/device_communicators/shm_broadcast.py:248: RuntimeError

It seems that the program hangs when two tests with tensor_parallel_size>1 are run after each other. @youkaichao can you help look into this?

what is the data you try to send? why is it so large?

It's sending the multimodal data (image).

for distributed related tests, we need to put it under tests/distributed folder, and run it one by one.

Alright, thanks for the info!

do we have any size limit for the image input?

do we have any size limit for the image input?

Not really. The size depends on the model and type of data. From my understanding, the multi-modal data is send via this:
https://github.com/vllm-project/vllm/blob/3fd02bda51ee7cf07e0375994ac1f34b6d1b981b/vllm/worker/model_runner.py#L73-L82

Based on the results of the tests, it is safe to remove the .to(device) calls inside the VLMs.

@youkaichao Please take a look again and see if it is ok. The buffer size is set to 4x compared to before this PR.

The buffer size is set to 4x compared to before this PR.

increasing the buffer size looks good to me. CPU memory is cheap.

Note: This test is not run in CI as it requires multiple GPUs. You can still try it locally though.

what does this mean?
This PR looks good to me in general, and I will hand it over to @ywang96 for the final review regarding vision language models.

Note: This test is not run in CI as it requires multiple GPUs. You can still try it locally though.
what does this mean?

Oops, I forgot to update the OP after moving the tests. They are now run under distributed tests CI.

Can either one of you officially approve this to unblock the merge?

You need to also add ray backend test.


The repository size is too large

You should consider reducing the repository size by some way, this isn't normal

@nacho00112 yes the problem is that back then i had the compiled binaries inside the repository because most of the users were not able to compile them alone.
i removed that and placed the binaries in the release section of github but they are still in the history...
i would have to revisit every commit and manually remove the files from the history which would result in a ton of new commits and a possible force push ...
See this SO answer for more information: https://stackoverflow.com/a/52643437
i'm not sure if i really should do it because this repo already has 53 forks ...
maybe someone has a better idea/solution?

git-extras has an easy to use git obliterate sub-command that makes removal of junk trivial. It automatically rewrites the entire repo history for you.
Unfortunately a force push is required and it will mess up all active forks, there's no way around that as far as I know.


nerdctl version upgraded from 0.6.1 to 0.7.2 and owner also changed

nerdctl version upgraded from 0.6.1 to 0.7.2, owner also changed from AkihiroSuda to containerd
Description

nerdctl tool is now at version 0.7.2, at the moment we are supporting the 0.6.1 version of it, so we should update it to the latest version.
owner also changed from AkihiroSuda to contained, so we should changed it too.
Motivation and Context

[ ] I have raised an issue to propose this change (required)

How Has This Been Tested?

First, I do "make test", then check if all tests are working.
$ make test
CGO_ENABLED=0 go test github.com/alexellis/arkade github.com/alexellis/arkade/cmd github.com/alexellis/arkade/cmd/apps github.com/alexellis/arkade/cmd/venafi github.com/alexellis/arkade/pkg github.com/alexellis/arkade/pkg/apps github.com/alexellis/arkade/pkg/archive github.com/alexellis/arkade/pkg/config github.com/alexellis/arkade/pkg/env github.com/alexellis/arkade/pkg/get github.com/alexellis/arkade/pkg/helm github.com/alexellis/arkade/pkg/k8s github.com/alexellis/arkade/pkg/types -cover
?       github.com/alexellis/arkade     [no test files]
?       github.com/alexellis/arkade/cmd [no test files]
ok      github.com/alexellis/arkade/cmd/apps    (cached)        coverage: 2.0% of statements
ok      github.com/alexellis/arkade/cmd/venafi  (cached)        coverage: 3.2% of statements
?       github.com/alexellis/arkade/pkg [no test files]
?       github.com/alexellis/arkade/pkg/apps    [no test files]
?       github.com/alexellis/arkade/pkg/archive [no test files]
ok      github.com/alexellis/arkade/pkg/config  (cached)        coverage: 18.2% of statements
?       github.com/alexellis/arkade/pkg/env     [no test files]
ok      github.com/alexellis/arkade/pkg/get     (cached)        coverage: 48.3% of statements
ok      github.com/alexellis/arkade/pkg/helm    (cached)        coverage: 6.3% of statements
?       github.com/alexellis/arkade/pkg/k8s     [no test files]
?       github.com/alexellis/arkade/pkg/types   [no test files]

Then build the project with "go build -o ark", because I'm on mac, first, I started a container to able to setup nerdctl
$ docker container run -v $(pwd):/go/github.com/alexellis/arkade --rm -it golang:1.16.0-alpine sh
$ cd github.com/alexellis/arkade
$ go build ark
$ ./ark get nerdctl --> check the version of it same as we provide 0.7.2

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[x] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I've read the CONTRIBUTION guide
[x] I have signed-off my commits with git commit -s
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

[ ] I have tested this on arm, or have added code to prevent deployment

Thank you :smiley:


LivePlugin plugin code seems not compliant with intellij 2019.1

import com.intellij.openapi.actionSystem.AnActionEvent
import static liveplugin.PluginUtil.*
Both lines report "Cannot resolve symbol"
Thanks in advance

This was fixed in v0.6.3 and should be working in IntelliJ 2019.1.

Thank you very much!
I confirm that it works
On Tue, Jun 11, 2019 at 7:13 PM Dmitry Kandalov<EMAIL_ADDRESS>wrote:

This was fixed in v0.6.3 and should be working in IntelliJ 2019.1.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/dkandalov/live-plugin/issues/93?email_source=notifications&email_token=AA7PCLNICDRTN6OFZ7T2TDLPZ7MMBA5CNFSM4HCRYLVKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXN3OGQ#issuecomment-500938522,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA7PCLL6DDUO4322WND2G4DPZ7MMBANCNFSM4HCRYLVA
.


[Material 3] TextTheme issue

TextTheme could be assigned in 2 different way in the same time currently.
Is there any way to

Pass colors Material3 color transitions to the TextThemes
Reduce code boilerplate:

appTypography = Typography.material2021(tall: TextTheme(displayLarge: TextStyle(color: m3themeColor, ...
app*TextTheme = const TextTheme(displayLarge: TextStyle(color: m3themeColor, ...

appMaterialLightThemeData = ThemeData(
  useMaterial3: true,
  textTheme: app*TextTheme,
  typography: appTypography,

Thanks in advance

Hello @zs-dima. I'm sorry but I do not understand the issue here? Could you elaborate on it? What's the issue here with the TextTheme or with Typography?

@exaby73 thanks for looking into.
It is common Flutter theming issue as it is Font styles could not be applied properly with the current structure as you could see.
For example, what Font color will have priority and be applied to the default Flutter widgets?

Could you provide a  complete and minimal, reproducible example that demonstrates this issue?

@exaby73 sure
With this example it will no Material 3 colors transitions when you changing system themeMode for fonts the same as for the other colors with AppColors lerp() override and I displayed that current class structure allows to write application font styles in the unpredictable way.
Could I kindly ask you what color will be used for the 'displayLarge' for the current example?
import 'package:flutter/material.dart';

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

class MyApp extends StatelessWidget {
  const MyApp({super.key});

final _appTypography = Typography.material2021(tall: TextTheme(displayLarge: TextStyle(color: Colors.green)));
final _appTextTheme = const TextTheme(displayLarge: TextStyle(color: Colors.red));

final _appMaterialLightThemeData = ThemeData(
  useMaterial3: true,
  textTheme: _appTextTheme,
  typography: _appTypography
);

final _appDarkTypography = Typography.material2021(tall: TextTheme(displayLarge: TextStyle(color: Colors.orange)));
final _appTextDarkTheme = const TextTheme(displayLarge: TextStyle(color: Colors.green));

final _appMaterialDarkThemeData = ThemeData(
  useMaterial3: true,
  textTheme: _appTextDarkTheme,
  typography: _appDarkTypography
);

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      themeMode: ThemeMode.light,
      theme: _appMaterialLightThemeData ,
      darkTheme: _appMaterialDarkThemeData,
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatelessWidget {
  const MyHomePage({super.key, required this.title});

  final String title;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Text(widget.title),
    );
  }
}

I think this is working as expected. The Typography class allows you to define textTheme for different typographys like cupertino and material. To customize each theme, you should use textTheme and not typography. It works as expected for me, with red in light theme and green in dark theme.
Since this is working as expected, I am closing this issue. If you disagree with my decision, please comment with your reasoning and I can reopen it. Thank you


Bug - Fix Intraday Data

When generating line/bar charts with intraday data, minimal, if any data is displayed, even though there is data for the selected day.

Nevermind, my watch is just failing to sync...


Cannot spend from script and pay back to script in the same transaction.

When trying to spend a UTxO from a contract and spend a subset of that UTxO back to the contract the following error occurs:
{"code":2,"info":"Wallet could not send the tx.","message":"\"transaction submit error ShelleyTxValidationError ShelleyBasedEraAlonzo (ApplyTxError [UtxowFailure (PPViewHashesDontMatch (SJust (SafeHash \\\"8418cd2dd198020bc9569dc564b3459bb820340b6ea04e2090360af4c5e61073\\\")) (SJust (SafeHash \\\"e0c20279f42f99018f0d5727e1336654f8f5209e0d9cb5699f9e0b7b1309afb9\\\")))])\""}
Steps to reproduce:
1: Construct address for always successful validator.
`const exampleScript: SpendingValidator = { // This always evaluates true.
type: 'Plutus',
script:
'4e4d01000033222220051200120011',
}
const exampleAddress: Address = C.EnterpriseAddress.new(
0, // testnet
C.StakeCredential.from_scripthash(
C.PlutusScript.from_bytes(
Buffer.from(exampleScript.script, 'hex'),
).hash(C.ScriptHashNamespace.PlutusV1),
),
)
.to_address()
.to_bech32();`
2: Fund the validator script.
`let tx: TxComplete
tx = await Tx.new()
.payToContract(exampleAddress, ANY_DATUM(), { lovelace: BigInt(5000000) })
.complete();
const signedTx = (await tx.sign()).complete();
await signedTx.submit();
`
3: Spend from the validator, but send 2 ADA back to the contract.
`const utxo = (await Lucid.utxosAt(exampleAddress))[0];
let tx: TxComplete
tx = await Tx.new()
.payToContract(exampleAddress, ANY_DATUM(), { lovelace: BigInt(2000000) }) // This breaks.
.collectFrom([utxo], ANY_REDEEMER())
.attachSpendingValidator(exampleScript)
.complete();
const signedTx = (await tx.sign()).complete();
await signedTx.submit();
`

The same issue seems to occur when trying to spend multiple UTxOs from the same validator.
Based on the statement made in the stack exchange link below, it would appear that this is due to the cost model used.

The PPViewHashesDontMatch error from Edit #2 is caused by protocol parameters file not having cost models field populated - this is a problem with blockfrost-cardano-cli not having access to cost models via Api resulting in script transactions failing. –
sorki
Feb 2 at 13:10

I am not all that familiar with the cost model, I tried to use the values provided in my parameters file from the cli, (as they were different than the values present in Lucid), but this did not yield any positive results.
https://cardano.stackexchange.com/questions/6934/ppviewhashesdontmatch-and-unspendableutxonodatumhash-error-on-redeeming-funds-fr

3: Spend from the validator, but send 2 ADA back to the contract.
`const utxo = (await Lucid.utxosAt(exampleAddress))[0];
let tx: TxComplete tx = await Tx.new() .payToContract(exampleAddress, ANY_DATUM(), { lovelace: BigInt(2000000) }) // This breaks. .collectFrom([utxo], ANY_REDEEMER()) .attachSpendingValidator(exampleScript) .complete();

Likely because ANY_DATUM is applied twice to the witness set. Once from the utxo you redeem from and once for the new output you create. I have to create a hashmap for datums and check if they were already added

Ah no I'm doing that already. However I realize a strange behaviour applying multiple datums, when they are the same or a specific numbers. I'm looking into it. It's somewhere in the serialization-lib.

The costmodel must be correct already, because I'm able to spend from a script utxo. I feel like something is messed up with datum and redeeers rather.

@Riley-Kilgore should be fixed now with 0.1.9. Lemme know if everything works for you.

@alessandrokonrad Withdraw 1 utxo and pay back to validator works. Withdrawing two utxos and paying back also works. Withdrawing 3 or more utxos and paying back results in the same error as before.

@zachyking I forgot one little detail after getting the ex units back. I hope 0.2.0 resolves the issue.

@zachyking I forgot one little detail after getting the ex units back. I hope 0.2.0 resolves the issue.

Yes, confirmed: https://testnet.cardanoscan.io/transaction/e521ca28544a53bbb45c923db10ee91940144961a735d825394f2e2c240a24c1
Amazing, thank you!!

Highly appreciate your time and it seems that this issue is now resolved.
You are the real MVP @alessandrokonrad

I'm seem to be experiencing this issue with the following code
            const transaction =                 await lucid                     .newTx()                     .payToContract(scriptAddress                         , Lucid.Data.empty()                         , {                             lovelace: BigInt(Number(3000000)),                             'fda1b6b487bee2e7f64ecf24d24b1224342484c0195ee1b7b943db50434c415353494342414259424c55453031': BigInt(Number(4))                         })                     .collectFrom([utxo], serializedRedeemer)                     .attachSpendingValidator(radSaleScript)                     .addSigner(await lucid.wallet.address())                     .payToAddress('addr_test1vrh0kkuahtz28qpfdhsx2hm2eekf06des8h03xnm757u65sd6egwy'                         , { lovelace: lovelaceAmount })                     .payToAddress(await lucid.wallet.address(), {                         lovelace: minLovelaceAmount                         , 'fda1b6b487bee2e7f64ecf24d24b1224342484c0195ee1b7b943db50434c415353494342414259424c55453031': BigInt(Number(1))                     })                     .complete()
I'm using lucid-cardano version 0.3.5


Simplified compilation and distribution process

I refactored the build system to move the responsibility of packaging out of each individual project and into the new graphalytics-dist project. When using the compile-benchmark.sh script, all platforms that are compiled are packaged into one graphalytics-${version}.tar.gz file. With this, the option to automatically build per-platform distributions is removed, but this could easily be achieved with a script that runs compile-benchmark.sh for each platform.
The default behavior using mvn package is that all platforms are compiled and tested, but the packaging step is skipped.
EDIT: closes #11

Refer to this link for build results (access rights to CI server needed):
http://jenkins.tribler.org//job/Graphalytics_pull_request_tester/21/Failed Tests: 2nl.tudelft.graphalytics:graphalytics-platforms-mapreducev2: 2nl.tudelft.graphalytics.mapreducev2.cd.CommunityDetectionTest.testUndirectedCommunityDetectionOnValidationGraphnl.tudelft.graphalytics.mapreducev2.evo.ForestFireModelTest.testDirectedForestFireModelOnValidationGraph
Test FAILed.

The joys of testing algorithms with random components; failures can pop up at any moment. Created issue #48 to fix this.
@mihaic: the test failures are clearly not related to these changes. Can you merge anyway?


Unable to create state file in backend using terraform apply command

Hi,
I wrote the below code for backend and created the required s3 bucket and dynamodb table for the terraform statefile. But I get the following error.
terraform {
backend "s3" {
bucket= "rohithterraformstate"
key="global/ntier/terraform.tfstate"
region="us-west-2"
    dynamodb_table="terraformlocktable"

}

}
PS E:\Devops Job\Terraform_Packer\ntier_code> terraform apply .
Acquiring state lock. This may take a few moments...
Error: Error locking state: Error acquiring the state lock: 2 errors occurred:
* ValidationException: One or more parameter values were invalid: Missing the key lockid in the item
status code: 400, request id: 38RDO1M6UBOAQP3156S37IKP8RVV4KQNSO5AEMVJF66Q9ASUAAJG
* ValidationException: The provided key element does not match the schema
status code: 400, request id: BLLEF6MKPJ6L7DVNLKDKVFC3NBVV4KQNSO5AEMVJF66Q9ASUAAJG
Terraform acquires a state lock to protect the state from being written
by multiple users at the same time. Please resolve the issue above and try
again. For most commands, you can disable locking with the "-lock=false"
flag, but this is not recommended.

make sure that your request mapping template structure matches the Amazon DynamoDB key structure...
and also run terraform init before apply.
Meanwhile i will check  and update you

Hi,
I checked the template. It is correct as explained in the class. Also I ran
the init command before I ran the apply command.
Kind regards,
Rohith
On Thu., Oct. 29, 2020, 3:38 a.m. santhoshd402<EMAIL_ADDRESS>wrote:

make sure that your request mapping template structure matches the Amazon
DynamoDB key structure...
and also run terraform init before apply.
Meanwhile i will check and update you
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/QT-DevOps/DevOpsIssues/issues/974#issuecomment-718428450,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AMGGX6HNPDV7VJTE7HXL2B3SNELWLANCNFSM4TDCSU4Q
.

Hi rohith,
The script what you shared is perfectly working. i tried that with my credentials its absolutely working fine.
Crosscheck your work . if you got same issue . plz cal me @7893532934 we will discuss more about this.
Regards,
santhosh

Earlier I created LockID as "lockid", which cause the issue. After checking with Santhosh, I changed the name to "LockID" again. It fixed the issue.


Pi 3B and 4B fix for PulseAudio

I've added instructions that should enable both the 2mic Pi Hat (tested) and 4mic Pit Hat to work if mounted on a Raspberry Pi 3b or 4B. I've also noted that the audio test may not produce output, but audio will still play through the hat anyway.

Solid addition.  Thanks @n8ohu!


Improve Custom Partioning API Documentation

I am trying to use jax.experimental.custom_partitioning for a 3D FFT Primitive.
I am trying to get inspired by the example in the Public API
I feel that there are a few things missing.
In the first example :
@custom_partitioning
def f(*args):
  return ...

def propagate_user_sharding(mesh, user_shape):
  '''Update the sharding of the op from a user's shape.sharding.'''
  user_sharding = jax.tree_map(lambda x: x.sharding, user_shape)

def partition(mesh, arg_shapes, result_shape):
  def lower_fn(*args):
    ... builds computation on per-device shapes ...
  result_shardings = jax.tree_map(lambda x: x.sharding, result_shape)
  arg_shardings = jax.tree_map(lambda x: x.sharding, arg_shapes)
  # result_sharding and arg_shardings may optionally be modified and the
  # partitioner will insert collectives to reshape.
  return mesh, lower_fn, result_sharding, arg_shardings

def infer_sharding_from_operands(mesh, arg_shapes, shape):
  '''Compute the result sharding from the sharding of the operands.'''
  arg_shardings = jax.tree_map(lambda x: x.sharding, arg_shapes)

f.def_partition(partition, propagate_user_sharding, infer_sharding_from_operands)

The example rules do not return values, so we cannot infer what is the returned value and the type for each rule (plus typo with result_shardings being reused as result_sharding)
The lower_fn means that we call our primitive and have access to sharding info + use collectives if needed just like this example  am I correct ?
It would also be usefull to show an example of static argnums like this one
The signature has shape as the third argument which is vague because in the second example it is called result_shape :
def infer_sharding_from_operands(mesh, arg_shapes, shape):

For the FFT example I find that the return of partition and infer_sharding_from_operands very ambiguous and It would much better to give an example that has an output sharding different from the input sharding.
Though I myself am working on a 3D FFT, I find it more useful to have a simple matmul example on two matrices with the output shape different from the two input shape (thus the sharding is not the same).
After I had a chat with someone from NVIDIA JAX team who kindly explained somethings to me, I understood a bit more but I still can't help to notice that infer_sharding_from_operands that takes mesh, arg_shapes, result_shape and partition taking the same arguments and returning basically the same thing minus the mesh and the primitive call kind of redundant.
The person from NVIDIA said that if they missmatch this could cause unwanted collective call.\
My questions are :

How can we define the expected output sharding or shape from the primitive similarly to the custom call ir.RankedTensorType and the layouts
How can we set an output sharding that would tell the partionner to use collectives to reshard our output

for example in a matmul case we can tell the partitionner to set the output sharding to be like what the input was to prepare for the next step

How can we override user sharding  .. there is an example here  but It confuses me because the partition input is not the same as the infered overriden? input.
What does propagate_user_sharding serve? it is tested here   but it just returns the sharding just like the default case, so I don't understand its purpose

I noticed that the three functions are directly included in the XLA codebase, but when it comes to JAX I don't feel that they are all necessary / I might not have understood correctly their purpose.
Thank you for your help

So I have scanned the XLA & JAX repo to get a better understanding and here is what I learned
The custom SPMD call is registered with a CustomCallPartitioner that  XLA uses to learn how does this particular custom call wants to be partitioned.
XLA/custom_call_sharding_helper.cc#L63
void RegisterCustomCallPartitioner(
    const std::string& custom_call_target,
    std::unique_ptr<CustomCallPartitioner> partitioner) {
  auto& partitioners = GetPartitioners();
  partitioners.emplace(custom_call_target, std::move(partitioner));
}

the CustomCallPartitioner derived by PyCustomCallPartitioner for exposure in python and thus JAX defines the three functions mentionned in jax.readthedocs.io/
PyCustomCallPartitioner consumes the three functions partition, infer_sharding_from_operands and propagate_user_sharding from the JAX user
Propagate User Sharding
The goal here is to override the sharding of an array given by the user
XLA/custom_call_sharding.cc#L198
HloSharding PropagateUserSharding(
    const HloInstruction* instruction, const HloInstruction* user,
    const HloSharding& sharding) const override {

 auto result = py::cast<HloSharding>(prop_user_sharding_(
          sharding, instruction->shape(),
          py::bytes(instruction->raw_backend_config_string())));
...
    }

The returned result is also a HloSharding and it supposed to override the input
Note: Propagate sharding does not work because it is not used in XLA github search
The funtion is declared but not used anywhere (maybe I am wrong??) any ways using print and inspect statement I am not able to get anything and the overriding is not working.
It is (supposed to be) called here
bool ShardingPropagation::InferShardingFromUsers

xla/service/sharding_propagation.cc#L2809
std::optional<HloSharding> user_sharding =...
...
if (partitioner->IsCustomCallShardable(instruction)) {
    user_sharding = partitioner->PropagateUserSharding(instruction, user,
                                                        *user_sharding);
}

On the JAX side :
JAX/custom_partitioning.py#L109
def _custom_partitioning_propagate_user_sharding(user_sharding, shape,
                                                 backend_string):
...
 return _pack_result_sharding(shape, result_shardings)

Then is it registered for the SPMD CustomCall
Next Infering the output sharding from the input sharding
The second function defined by the XLA's PyCustomCallPartitioner is used to infer the output sharding from the input directy.
XLA/custom_call_sharding.cc#L215
std::optional<HloSharding> InferShardingFromOperands(
    const HloInstruction* instruction) const override {
...

auto py_result = infer_sharding_from_operands_(
        arg_shapes, arg_shardings, instruction->shape(),
        py::bytes(instruction->raw_backend_config_string()));
...
 return py::cast<HloSharding>(py_result);

The function takes the input shape and sharding and the result shape and should return the result sharding.
On JAX side it is declared here
JAX/custom_partitioning.py#L199
def _custom_partitioning_infer_sharding_from_operands(arg_shapes, arg_shardings,
                                                      result_shape,
                                                      backend_string):
...
  result_sharding = info.infer_sharding_from_operands(
      *info.static_args,
      info.mesh,
      info.unflatten_arg_shapes(arg_shapes, arg_shardings),
      info.out_tree.unflatten([_to_jax_shape(s) for s in result_shapes]),
  )
...
    return _pack_result_sharding(result_shape, result_shardings)

Finally and most importantly : Partition
On the XLA side
XLA/custom_call_sharding.cc#L124
xla::Status Partition(spmd::SpmdPartitioningVisitor* partitioner,
                    HloInstruction* instruction) const override {
...
auto py_result =
partition_(GetArgShapes(instruction), GetArgShardings(instruction),
           instruction->shape(), instruction->sharding(),
           py::bytes(instruction->raw_backend_config_string()));
...
 std::tie(m, arg_shardings, result_sharding) = py::cast<
            std::tuple<py::object, std::vector<HloSharding>, HloSharding>>(
            py_result);

...
partitioner->SetPartitionedHlo(instruction, result_partitioned); // <-- In here XLA now knows how to partition the primitive

The required function takes shapes and shardings for each argument and a single shape and sharding fot the output + the HLO MLIR code
Then on JAX side
jax/experimental/custom_partitioning.py#L142
def _custom_partitioning_partition(arg_shapes, arg_shardings, result_shape,
                                   result_sharding, backend_string):
...

mesh, lower_fn, result_sharding, arg_shardings = info.partition(
      *info.static_args,
      info.mesh,
      info.unflatten_arg_shapes(arg_shapes, arg_shardings), # <-- A tuple of all operands shapes and sharding
      info.out_tree.unflatten(
          [
              info.unflatten_arg_shape(s, sharding)
              for s, sharding in zip(result_shapes, result_shardings)  # <-- a single sharding and shape for the output
          ]
      ),
...
closed_jaxpr = jax.make_jaxpr(lower_fn, axis_env=list(mesh.shape.items()))(
module = mlir.build_mlir_module_helper(
closed_jaxpr,

return mlir.module_to_bytecode(module), arg_shardings, result_sharding

I can safely say the CustomPartitioning Does not support multi output with different shardings because XLA doesn't allow custom SPMD call with multi outputs
xla/python/custom_call_sharding.cc#L147
} catch (const py::cast_error& e) {
return xla::Internal(
    "Shardings returned from partitioning %s: expected "
    "Tuple[bytes, List[HloSharding], HloSharding] got: %s",
    instruction->ToString(), py::repr(py_result));
}

It takes a list for the input but a single element for the output
For JAX users
We need to decalre two functions then
partition :
as defined in

def partition(mesh, arg_shapes, result_shape):
    """
    Tells XLA how to partition the primitive

    Args:
        mesh (Mesh): The contextual mesh

        arg_shapes (tuple): A tuple of ShapeDtypeStruct that contains the shape and the sharding of each input operand

        result_shape (ShapeDtypeStruct) : a ShapeDtypeStruct reprsenting a single output

    Returns:
        Mesh (Mesh) : The mesh.

        function: The lowered function, to allow the user to redefine how the primitive is called in a context of a specific sharding

        result_sharding (XLACompatibleSharding): The sharding result for example a NamedSharding.

        arg_shardings (tuple): a tuple of all XLACompatibleSharding of the input operands
    """

Next infer_sharding_from_operands

def infer_sharding_from_operands(mesh, arg_shapes, shape):
    """
    Tell XLA how to infer the sharding of the output from the input sharding.

    Args:
        mesh (Mesh): The contextual mesh

        arg_shapes (tuple): A tuple of ShapeDtypeStruct that contains the shape and the sharding of each input operand

        result_shape (ShapedArray) : a single ShapedArray reprsenting a single output without the sharding information

    Returns:

        result_sharding (XLACompatibleSharding): The sharding result for example a NamedSharding.

    """

BTW: the infered sharding from infer_sharding_from_operands is in the input result_shape of the partition function
Use cases
In numerical computing for physics and where algorithms are not typically decomposable in a straight forward way like a deep learning network way, this is very powerfull.
For example 3D FFTs, linear algebra solvers and matrix inversions.
I can make a simple example as guide to showcase this

Note, an example is being added here: https://github.com/google/jax/pull/20179


fix site bug

when I ran CWE190_juliet_signed.py in your dataset like CWE190_s01, I found an error like this
Traceback (most recent call last):
  File "../../test_scripts/test_juliet_190_signed.py", line 78, in <module>
    do_stuff(sys.argv[1])
  File "../../test_scripts/test_juliet_190_signed.py", line 66, in do_stuff
    se.run_all()
  File "/usr/local/lib/python3.8/dist-packages/arbiter-0.0.1-py3.8.egg/arbiter/master_chief/symbolic_execution.py", line 456, in run_all
  File "/usr/local/lib/python3.8/dist-packages/arbiter-0.0.1-py3.8.egg/arbiter/master_chief/symbolic_execution.py", line 446, in run_one
  File "/usr/local/lib/python3.8/dist-packages/arbiter-0.0.1-py3.8.egg/arbiter/master_chief/symbolic_execution.py", line 429, in _execute_one
  File "/usr/local/lib/python3.8/dist-packages/arbiter-0.0.1-py3.8.egg/arbiter/master_chief/symbolic_execution.py", line 286, in _explore_one
  File "/usr/local/lib/python3.8/dist-packages/arbiter-0.0.1-py3.8.egg/arbiter/master_chief/symbolic_execution.py", line 251, in _check_state
  File "/usr/local/lib/python3.8/dist-packages/arbiter-0.0.1-py3.8.egg/arbiter/master_chief/symbolic_execution.py", line 172, in _apply_sz_constraints
TypeError: constrain() missing 1 required positional argument: 'site'

so I thougt constrain function may need site parameter

I‘m sorry.
when I run test_arbiter.py, I get some assert because of the code I changed.
It makes me confused so I will close this PR and add an issue.
Thanks


no need to use docker

First of all docker takes up disk space in the server and it's not manageable. So I installed the docker container as written and tried to upload an image and of course it didn't work. Of course nginx and some more config has to be done but I don't even know whats going on inside the container and because it's docker you think there is no need for more explanation. Thank you, this is a nice library. I won't be using it but you can write a clear explanation on how to make it work on simple ubuntu server that will be more helpful to people.

I don't quite understand your issue.
First you say docker is not needed, then you mention installing the docker container and it didn't work.
What didn't work?
Was there an error?
Docker is "required" because it simplifies the setup quite a lot and reduces the surface of unknown issues that might come up.


Fixing File-Related Type Error

See CHANGELOG

Codecov Report

Merging #7 (cbdf0f6) into main (b68c97f) will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main       #7   +/-   ##
=======================================
  Coverage   97.94%   97.94%
=======================================
  Files           3        3
  Lines         195      195
  Branches       50       50
=======================================
  Hits          191      191
  Misses          4        4

Impacted Files
Coverage Δ

src/entry.ts
98.18% <100.00%> (ø)

Continue to review full report at Codecov.

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


I can't run my web project because dependency (You may need an appropriate loader to handle this file type.)

I can't run my project on the web because of one component (my own)

You may need an appropriate loader to handle this file type.

Did you add it to the plugins section of your project's renative.json?
So add something like;
{
    …
    "plugins": {
        …
        "popup-ui": {
            "version": "1.2.3", // <YOUR PACKAGE VERSION>
            "webpack": {
                "modulePaths": true
            }
        },
        …
    }
    …
}

@RafaelAugustoS what Sander suggests will feed your package on the babel flow, which AFAIK has the proper babel config to use static members, and JSX, Which I see is what is giving you problems on webpack.
Try @sanderlooijenga 's suggestion, at least the error should change, but my guess it will just work.
Let us know!


[Bug]: CUDA Error when print

Your current environment
The output of `python collect_env.py`

🐛 Describe the bug
I am new to vllm, I want to check input to llama model, so I just print

However, it raise cuda bug. Why? And how can I get input?

Thanks!!!

I think is is caused by some cuda settings

As mentioned in the error message, try again with CUDA_LAUNCH_BLOCKING=1.


What should happen upon collection with an active using?

Specifically, I'm imagining two cases:
// Generator
function *foo() {
    using x = y
    yield x.foo
}

let g = foo()
g.next()
// `g` dropped without invoking `return`

// Async function
async function foo(signal) {
    using x = y
    await x.foo(signal)
}

foo(AbortSignal.timeout(5000))
// 5 seconds pass
// `x.foo(signal)` gets aborted, cancels operation, inner state now collectable
// `x.foo(signal)` fails to reject with `signal.reason`

Since the inner state is collectable, should the disposer be called, or should a FinalizationRegistry be used by resources to catch this? Based on the July meeting, the answer seems to be the latter.

using has no interactions with GC whatsoever. So if you want something to be collected on GC, you'll need to use a FinalizationRegistry.
In the async function example, I would assume that await x.foo(signal) would throw when signal aborts, in which case x will in fact get disposed (just as if you'd written const x = y; try { await x.foo(signal); } finally { x[Symbol.dispose]() }).

As @bakkot said, using does not interact with GC, so in the generator case, dispose would not be triggered.
In the async function case, it is better to reject the promise when the operation aborts rather then to just drop the promise on the floor. If that practice is followed, the the using would properly be triggered.

using has no interactions with GC whatsoever. So if you want something to be collected on GC, you'll need to use a FinalizationRegistry.
In the async function example, I would assume that await x.foo(signal) would throw when signal aborts, in which case x will in fact get disposed (just as if you'd written const x = y; try { await x.foo(signal); } finally { x[Symbol.dispose]() }).

@bakkot @rbuckton In the async function bit, I was talking about the case where x.foo drops its resolvers on the floor rather than rejecting like it should. Since the outer promise is discarded immediately, the only reference to that continuation is through the resolvers, and so dropping the resolvers would make it collectable if it's not settled first.
This not resulting in a @@dispose/@@asyncDispose call is what I expected after reading the July meeting notes. I was just wanting to make sure this nuance was also addressed.

// Generator
function *foo() {
    using x = y
    yield x.foo
}

Almost the same as the next step.
function *foo(){
   const x = y;
   try {
      yield x.foo;
   } finally {
     x[Symbol.dispose]();
   }
}

Isn't the problem not so much a using problem as a problem of generator's final not being processed?

@juner Yes. That's pretty much it. Closed the issue since that and awaited promises never resolving are basically just two sides of the same coin and the decision is just to let the using resource also be dropped on the floor without proper cleanup (beyond what any applicable FinalizationRegistry is wired up to do for it).


Feature configuration names

Fixes #110

Coverage decreased (-0.06%) to 87.757% when pulling e2cc69d883c2e871367b0d91247024f720ab836e on feature-configuration-names into 294905c1ef974c45810e0e1fef256d92a53344bd on master.


Fix vagrant-cadmium-up command

vagrant-cadmium-up was not getting downloaded to ~/.cadmium/bin/vagrant-cadmium-up.  The content of the downloaded file was pointing to 404 page of github.
Fix:  Location for github raw file.

@jacobheun @MikeChristianson   Quick PR to fix vagrant-cadmium-up  . After this change is merged , I will plan to create a new release to master so that fixes done by me and Mike is available to anyone following cadmium docs.

Looks good!


Connect to Dorm Wifi

iwd connects to the dorm wifi, but cannot actually communicate over the network.

Resolved by installing dhcpcd, as iwd does not configure dhcp leases by default and the dorm wifi required it.


[d3d9] WITCH ON THE HOLY NIGHT, incorrect dropdown shadow on gallery items

On 1.8 and newer, the gallery items look like this:

Note the white line in the top-right corner as well as the odd shadow
And on 1.7.3 and WineD3D it looks like this:

Bisected to fe43abbf3220b3a6f7f135c1e8749b6e01166bc6
Software information
WITCH ON THE HOLY NIGHT (2052410)
System information

GPU: RX 6700 XT
Driver: Mesa 23.3.2
Wine version: 8.21
Proton version: Experimental

Apitrace file(s)
woh-gallery.7z.zip

Still seems to be an issue

I'll take a look soon.


Kong should not run as root

Currently, nginx/openresty is running as root. This is not considered good riddance. Instead, the user running Kong should be a non-privileged user, perhaps called "kong".

Sorry, sorry, sorry, misunderstanding. The worker is actually not running as root, but as a user with id 99. Closing.


fix: function mode serializer

Q
A

Bug fix?
yes

New feature?
no

BC breaks?
no

Related Issue
n/a

Describe your change
Update FunctionModeSerializer to read name from the decoded JsonObject.
What problem is this fixing?
FunctionModeSerializer, when processing FunctionMode.Named, attempts to decode twice, which results in an exception. See included test, TestFunctionMode.

Nice catch! thank you for your contribution!

Thank you for the excellent library, and the quick merge!


ffe-icons: Consider creating a separate package for the SVG assets

Some consumers would only like the SVGs and use them directly in their app. Today we force these users to download PhantomJS as part of svg-sprite. This is a requirement to generate an SVG sprite of multiple icons at build-time. However, not all consumers want or need this feature.
Proposed solution:

Create a new package ffe-icons-assets that only holds the SVGs
Release a version of ffe-icons that uses ffe-icons-assets as its source for SVGs. If it is set as a devDependency and the SVG assets are copied and bundled in the same place as before when publishing we can avoid a breaking change.
ffe-icons-react carries on, business as usual

This way we support these three use cases:

I use React
I don't use React and I just need one or two SVGs and don't want or need sprites
I don't use React and I need several SVGs and should probably bundle them in a sprite

Is there an alternative to svg-sprite? This could solve the dependency to PhantomJS issue.

Good point.
svgstore looks promising at first glance (blogpost about it here).

I have a branch with a working build using svgstore, but some of the icons are broken. I'll see if I get the time to work on this later at some point.

A breaking change was needed for ffe-icons and ffe-icons-react got a new major version as well. There were no changes in the API for the latter, only a new major due to the risk of visual regressions. But no more PhantomJS :tada:


Artificer enthusiast wanting to help

I signed up got Github to also try to help.  I do have no knowledge about coding but I'm a DnD GM that homebrews a lot.  I might have some insight on replacement mechanics, substitute spells/systems and I got plenty of time for testing if you all will have me.

welcome aboard, contact any of us on discord to get added to the group chat.

Is the group chat in the official Larian channel?

we don't have permissions to do it. While we started from that server, our group chat is a normal private group chat on discord.

Ok how do i get to this chat room?
Rumsar is my name on discord

sent you a friend request


Object explorer task didn't complete within 45 seconds

Issue Type: Bug

Open the CONNECTIONS tab
Navigate to an existing connection
Click on the Databases node

The following error message shows up under the Databases node: Object explorer task didn't complete within 45 seconds.
Azure Data Studio version: azuredatastudio 1.39.1 (7553f799e175f471b7590302dd65c997b838b29b, 2022-08-30T01:12:48.559Z)
OS version: Darwin x64 21.6.0
Restricted Mode: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz (16 x 2300)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onrasterization: enabledskia_renderer: disabled_off_okvideo_decode: enabledwebgl: enabledwebgl2: enabled

Load (avg)
1, 2, 2

Memory (System)
16.00GB (6.08GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions: none

Console.log
LogsFolder.zip

Closing this as a duplicate of https://github.com/microsoft/azuredatastudio/issues/6450
@cheenamalhotra FYI in case the logs here are useful for your investigation into these areas at all


build(blockifier_reexecution): deserialize getstateupdate rpc request

This change is

crates/blockifier_reexecution/src/state_reader/rpc_https_test.rs line 96 at r1 (raw file):
Previously, dorimedini-starkware wrote…
the return type is enforced by the compiler; calling unwrap() makes sure you get the Ok variant (CommitmentStateDiff).
assert!(...is_ok()) is also fine

I mean we don't enforce the return type to be CommitmentStateDiff


Caching artifacts for Bazel builds

The Bazel builds are kind of slow because they rebuild everything (including the dependencies) from scratch each time. We should consider saving the $HOME/.cache/bazel to GCS and restoring it before each build.
We do something similar for Windows, where we download the build artifacts:
https://github.com/googleapis/google-cloud-cpp-common/blob/00175c520d4c32f8cac115ea11c84ee97d5bbdaa/ci/kokoro/windows/build-cmake-dependencies.ps1#L46-L62
we use them as a cache if available, and then upload them again:
https://github.com/googleapis/google-cloud-cpp-common/blob/00175c520d4c32f8cac115ea11c84ee97d5bbdaa/ci/kokoro/windows/build-cmake-dependencies.ps1#L105-L119
We would need to ensure each build gets a different object on GCS.  We also need to make sure the Docker container running our build gets these in the right $HOME, but it might work.
Testing this on -common before moving to other builds might be a good idea.
We may be able to do something similar for CMake with ccache.

/cc: @mr-salty because you were interested in this, I won't be working on it

Done as part of https://github.com/googleapis/google-cloud-cpp/milestone/14


Need error when you use name "type" in schema

For example:
{
  name: 'type',
  label: 'Type',
  type: 'string'
}

This was implemented


feat(fw): Transactions Iterator Class

🗒 Description
Adds a Transactions class which produces an iterator of transactions for each parameter that is a list, like zip.
Supersedes #434 since that one allowed a single field (nonce) as an iterator and this class is much more useful.
I modified a couple tests to use this feature and the generated fixtures so far are completely unaffected.
🔗 Related Issues
None
✅ Checklist

[x] All: Set appropriate labels for the changes.
[x] All: Considered squashing commits to improve commit history.
[ ] All: Added an entry to CHANGELOG.md.
[ ] All: Considered updating the online docs in the ./docs/ directory.
[x] Tests: Included the type and version of evm t8n tool used to locally execute test cases:  e.g., ref with commit hash or geth 1.13.1-stable-3f40e65.
[x] Tests: Ran mkdocs serve locally and verified the auto-generated docs for new tests in the Test Case Reference are correctly formatted.

Super nice!

When I update: #61 - I will use Transactions - so I can mention these in the documentation too

Yes please :+1: we definitely need some examples in the docs for this.
I think the Blocks case should be doable. I haven't thought too much about it but I don't see why this could not be done.

This PR is affected by the pydantic changes, so potentially needs to be reworked.
Converting into draft until rework is done.

Rebased on top of #486, which was surprisingly easy, but now it requires that PR to be merged first.


Header customization causes overlapping text in Material-React-Table when scrolling

material-react-table version
v1.13.1
react & react-dom versions
React-Dom v18.2.0
Describe the bug and the steps to reproduce it
Hello,
I have encountered a bug in the Material-React-Table package while customizing the header of the table. When applying custom styling to the table header using the muiTableHeadCellProps prop, such as setting a background color, adding a right border, and modifying the text color, an issue arises when scrolling through the table content.
The problem occurs when scrolling vertically, as the table content ends up appearing underneath the header. Consequently, the text within the table cells overlaps, making it difficult to read and comprehend the information presented. This behavior is inconsistent with the expected behavior of a properly functioning table, where the header should remain fixed while the content scrolls independently.
Minimal, Reproducible Example - (Optional, but Recommended)
To reproduce the issue, you can use the following code snippet as an example:
this is how i faced the issue :
<MaterialReactTable
muiTableHeadCellProps={{
 sx: (theme) => ({
 background: "rgba(52, 210, 235, 0.1)",
borderRight: "1px solid rgba(224,224,224,1)",
color: theme.palette.text.primary,
}),
 }}
/>
Screenshots or Videos (Optional)
https://github.com/KevinVandy/material-react-table/assets/77841233/8980ff38-76b1-4e44-9c41-59feee7bc18a
Do you intend to try to help solve this bug with your own PR?
Maybe, I'll investigate and start debugging
Terms

[X] I understand that if my bug cannot be reliably reproduced in a debuggable environment, it will probably not be fixed and this issue may even be closed.

I understand your suggestion of reducing the opacity, it's important to note that the header row should remain unaffected by the opacity setting. Customizing the header style aims to improve the table's visual appearance without compromising the distinctiveness of the header. The desired behavior is to have a solid header row that doesn't overlap with the scrolling content. I appreciate your attention to this matter and any additional insights you may have to resolve the issue. Thank you for your continued support in enhancing the Material-React-Table package.


Using more than one service doesnt work

Although the HeartRateService and the HelathThermometerService both work just fine, when I enable both then the app crashes on a connection (similar to other issues Ive been seeing).
Does anyone know how I can debug this to find out more information?
Am I supposed to be using this code for new development, there doesn't seem a lot of activity here
I am using a Nordic nrf58122 dev board on windows 10

This is a low memory problem see #issue 80 - need to add config.json with S110 enabled
Thanks pan (Vincent?)


2.0.0

Any ETA on this?

Any ETA on this?

It's available on NPM in the next tag. For the release channel, more time is needed since the documentation is not totally updated and other articles still refer to v1 syntax.

Any ETA on this?

@Nikola-Milovic the 2.0.4 is out now, it's still released in the @next tag, but it's becoming the main branch, since I'd like to focus with this version, writing the missing documentation and creating the most possible compatible release


2.14.0 blog post draft

Added 2.14.0 blog post draft

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Thank you @iemejia. Updated with your suggestions.
This is turning out to be a great announcement with lots of exciting updates.

@iemejia It looks like the comments are addressed? I am merging the PR, feel free to re-open and ping me if there are more comments/concerns.

Run Website PreCommit


Failed to install Linkerd via Meshery UI

Current Behavior
Failed to install Linkerd via Meshery UI for a in-cluster k8s
Expected Behavior
Linkerd can be installed (which works for me a few days ago from another meshery on another k8s)
Screenshots/Logs
log from lmeshery-linkerd
time="2022-12-13T01:16:04Z" level=info msg="network-authentication.yaml registered" app=linkerd-adapter
time="2022-12-13T01:16:04Z" level=info msg="Component creation completed for version stable-2.12.3" app=linkerd-adapter
time="2022-12-13T01:16:04Z" level=info msg="Registering workloads with Meshery Server for version stable-2.12.3" app=linkerd-adapter
time="2022-12-13T01:16:04Z" level=info msg="Latest workload components successfully registered for version stable-2.12.3" app=linkerd-adapter
time="2022-12-13T01:18:24Z" level=info msg="Listing Operations" app=linkerd-adapter
time="2022-12-13T01:19:38Z" level=info msg="Listing Operations" app=linkerd-adapter
time="2022-12-13T01:20:21Z" level=info msg="Applying operation linkerd" app=linkerd-adapter
time="2022-12-13T01:20:21Z" level=info msg="Requested install of version: edge-22.4.1" app=linkerd-adapter
time="2022-12-13T01:20:21Z" level=info msg="Requested action is delete: false" app=linkerd-adapter
time="2022-12-13T01:20:21Z" level=info msg="Requested action is in namespace: linkerd-system" app=linkerd-adapter
time="2022-12-13T01:20:22Z" level=error msg="chart "linkerd2" version "22.4.1" not found in https://helm.linkerd.io/edge repository" app=linkerd-adapter code=1003 probable-cause= severity=2 short-description="Error with Linkerd operation: " suggested-remediation=
time="2022-12-13T01:20:22Z" level=info msg="Attempting manifest installation..." app=linkerd-adapter
time="2022-12-13T01:20:22Z" level=info msg="Looking for linkerd in the path..." app=linkerd-adapter
time="2022-12-13T01:20:22Z" level=info msg="Looking for linkerd in/root/.meshery/bin..." app=linkerd-adapter
time="2022-12-13T01:20:22Z" level=info msg="linkerd not found in the path, downloading..." app=linkerd-adapter
time="2022-12-13T01:20:22Z" level=info msg=Installing... app=linkerd-adapter
time="2022-12-13T01:20:23Z" level=info msg=Done app=linkerd-adapter
time="2022-12-13T01:20:23Z" level=error msg="exit status 2" app=linkerd-adapter code=1003 probable-cause= severity=2 short-description="Error with Linkerd operation: " suggested-remediation=
time="2022-12-13T01:20:23Z" level=error msg="exit status 2" app=linkerd-adapter code=1003 probable-cause= severity=2 short-description="Error with Linkerd operation: " suggested-remediation=
time="2022-12-13T01:20:23Z" level=info msg="Event stored and sent successfully" app=linkerd-adapter
Environment
fresh instal

Host OS: Mac Linux Windows
Platform: Docker or Kubernetes
Meshery Server Version: v0.6.34
Meshery Client Version: v0.6.34

Contributor Guides and Handbook

🛠 Meshery Build & Release Strategy
📚 Instructions for contributing to documentation

Meshery documentation site and source

🎨 Wireframes and designs for Meshery UI in Figma
🙋🏾🙋🏼 Questions: Discussion Forum and Community Slack

This is probably due to an issue with the version specified or the repository specified not being correct.
You can check the documentation of Linkerd to determine which version is compatible with your K8s cluster and the features you require. You should also verify the availability of the version in the corresponding Linkerd repository before trying to install it.
this is the repo : https://helm.linkerd.io/edge