Changes in 1.9.4 break WooCommerce My Account Page

Changes in #1813 break the WooCommerce My Account Orders Page by setting defaults on the Query that WooCommerce is not expecting - specifically 'no_found_rows' => true.
When no_found_rows is true the query object's found_posts will ALWAYS be 0 unless we hook in and alter it.
When using the [woocommerce_my_account] shortcode to display the WooCommerce account section they check found_posts
See this template file and this data store function for the relevant lines of WooCommerce code.
Expected behavior
I would expect that the order section displays.
Actual behavior
The orders section displayed no orders, even if there are customer orders in the DB.
Steps to reproduce behavior
Install the latest timber + WooCommerce.
Visit the account section, usually http://mysite.com/my-account/
Visit the orders tab, no orders will be displayed..
Overall, I feel like setting defaults on EVERY WordPress query, as this PR has done, is very dangerous. Anecdotally, we've had to downgrade Timber on other sites recently due to misc issues and weird behaviour, I'd suspect that these issues too were cause by these changes.
Fine to set those defaults for all Timber Queries, but the current method sets it for ALL queries.
What version of WordPress, PHP and Timber are you using?
WordPress 5.1.x, Timber 1.9.4, WooCommerce 3.6.2+
How did you install Timber? (for example, from GitHub, Composer/Packagist, WP.org?)
Composer

Overall, I feel like setting defaults on EVERY WordPress query, as this PR has done, is very dangerous. Anecdotally, we've had to downgrade Timber on other sites recently due to misc issues and weird behaviour, I'd suspect that these issues too were cause by these changes.

I agree. Timber sets it for queries that come after you use Timber::get_posts(). It shouldn’t be the case when you use new Timber\PostQuery(). For now, can you try to use new Timber\PostQuery() for the page that displays your WooCommerce account page?
Adding a filter that affects global queries can have very strange effects in different environments. So it can very well be that your other issues are caused by this as well.
@jarednova What do you think, should we reverse this breaking change? There have been other issues, like #1961. Or can we find another solution?
Related: #1957

@gchtr It all comes down to one thing - are we using Timber::get_posts as get_posts clone or not. If we are than we should keep it and inform people better. If not - than maybe we should reverse it as it's causing problems.
The last solution would be adding a filter/flag so to user could go back to original Timber::get_posts untill he rewrites his code. And after few version we would deprecated it.

@palmiak But it doesn’t help developers when we introduce a change that on the one hand mimicks WordPress’s behaviour, but on the other hand introduces a breaking change. Simply informing people is not a good solution if it means that everybody would have to check every Timber query on every site to see whether it still does what it should. Yes, it fixes a deviation we had. But for me, this is a breaking change that should probably not have been introduced in a patch version. This is major change.

The last solution would be adding a filter/flag so to user could go back to original Timber::get_posts untill he rewrites his code. And after few version we would deprecated it.

I’d actually prefer to have it the other way round: use a filter that allows you to opt into that behaviour. And then make that behaviour the default in a major version.
What is strange here is also that it seems to affect WooCommerce queries, even though the pre_get_posts filter is removed after it was used once.

Also just in case some people land here via google etc...
Regardless of the outcome of this ticket we were able to fix this via the following code..
<?php

// In your functions.php or similar

function my_namespace_order_query_args( $args ){

    $args['no_found_rows'] = true;

    return $args;

}

add_filter( 'woocommerce_my_account_my_orders_query', 'my_namespace_order_query_args' );

Hey all, I'm just back from vacation and really want to figure out a way to solve this and #1961. It would seem that the best strategy is to "undo" this release is to at once ...

Remove 1.9.4
Re-release 1.9.4 as 1.10.0
Release the current master as 1.10.1

This way, the prior behavior is captured for anyone using WPML/WooCommerce (and other similar plugins) with 1.9.x — we can then investigate the proper final resolution to these issues in 1.10 or 1.11 (and of course, 2.x).
I didn't seen any info in the Semantic Versioning docs about pulling a release. Does anyone know of proper procedure here (esp. for packagist) or even what this is called (Pulling? Undoing? Yanking?)

@jarednova I guess you could remove the 1.9.4 tag manually in Packagist. There’s a delete button next to each tag listed in the right column:

And you can delete releases in GitHub.
But what does speak against releasing a version 1.9.5 as a «hotfix» that reverts the change introduced in 1.9.4? We can still release a version 1.10.0 once we figure out the best way to handle this.

FYI, I'm working on this today with the 1.9.5 hotfix path suggested by @gchtr

Alright, version 1.9.5 is ready as a pre-release:
https://github.com/timber/timber/releases/tag/1.9.5
Here's my plan from here:

Release to WP.org
Publish as an official release
Pull the 1.9.4 release from packagist (I think it makes sense to leave as a record on GitHub)

Timber 2.0 removes the distinction anyway by depreciating Timber::get_posts — so I think the behavior or 1.9.5 should stand for future versions

... just wanted to note the big reminder/lesson. When in doubt, make things a "bigger" release. I thought because this was correcting a bug, to make it just a "patch" version — but in reality, changes in behavior (even to the way they "should" be) is still a change in behavior

@jarednova I think that plan works.
I added the example for the filter in the release notes (https://github.com/timber/timber/releases/tag/1.9.5), because the name of the filter is not the same as the opening description of the pull request.

Alright, version 1.9.5 is ready as a pre-release

It’s now already a released version. Is this intended?

Timber 2.0 removes the distinction anyway by depreciating Timber::get_posts — so I think the behavior or 1.9.5 should stand for future versions

@jarednova I don’t know if understand you correctly when you say «should stand for future versions». If we deprecate Timber::get_posts() in 2.0 (#1957), we would have to deprecate the newly introduced timber/get_posts/mirror_wp_get_posts again, right?

@gchtr composer didn't seem to recognize it as a pre-release, so I went ahead and made it "real" on GitHub too.
In regards to your second question, my point was since we're deprecating Timber::get_posts (at least, right now) — changing the underlying behavior of get_posts seems unnecessary. If someone needed to get get_posts behavior, the preferred method should be to set those arguments as-such. We should also deprecate the newly-introduced filter


Recorder: Redirections shoud not be generated as resources

Redirections should not be generated as resources.
(But, It may be necessary to examine other influences.)
HTTP Referer header problem occurs in recorder, both by proxy and from HAR.
Recording in following condition:

No follow redirects
Automatic Referers

Redicections are generated as resources:
	val scn = scenario("RecordedSimulationNoFollowRedirects")
		.exec(http("request_0")
			.get("/top.html"))
		.pause(1)
		.exec(http("request_1")
			.get("/SampleWeb")
			.resources(http("request_2")
			.get("/SampleWeb/"))
			.check(status.is(302)))
		.pause(1)
		.exec(http("request_3")
			.get("/SampleWeb/next.html"))

This simulation (auto-referer) produces wrong Referer value:
> GET /top.html HTTP/1.1
< HTTP/1.1 200 OK
< SampleWeb
> GET /SampleWeb HTTP/1.1
> Referer: http://hogehoge/top.html
< HTTP/1.1 302 Found
< Location: http://hogehoge/SampleWeb/
> GET /SampleWeb/ HTTP/1.1
> Referer: http://hogehoge/top.html
< HTTP/1.1 200 OK
< Last
> GET /SampleWeb/next.html HTTP/1.1
> Referer: http://hogehoge/top.html   <<----- WHY???? (should be http://hogehoge/SampleWeb/)
< HTTP/1.1 200 OK

This is because redirections and resources do not change Referer session variable.
This change sets are fixes that excludes redirection from resource grouping.
Using this patch, redirections are generated as following:
	val scn = scenario("RecordedSimulationNoFollowRedirects")
		.exec(http("request_0")
			.get("/top.html"))
		.pause(1)
		.exec(http("request_1")
			.get("/SampleWeb")
			.check(status.is(302)))
		.exec(http("request_2")
			.get("/SampleWeb/"))
		.pause(1)
		.exec(http("request_3")
			.get("/SampleWeb/next.html"))

And Referer of /SampleWeb/next.html is produced correctly.

Hi @t-takatsuru and thanks again!
Actually, we need this kind of empirical algorithm to determine resources in proxy mode. We just have no other way. So I feel like your case fixes har mode but breaks proxy mode.
Then, the recorder needs some serious refactoring.
I'd like to have both proxy and har modes produce the same AST (probably to the har one) that would then be handed over to the templates.
I'd rather keep this PR around until we do this refactoring.

OK, you are planning refactoring, I'll wait for it :)
Just in my idea, I'd like to customize AST manipulation algorithm somehow on recording.

OK, you are planning refactoring, I'll wait for it :)

Well, no ETA for that atm. So busy with things with higher priority. Feel free to give it a try :)

@t-takatsuru Let me close this for now. I've started working on a complete re-write of the Recorder's HTTP events AST and all redirections will be properly filtered out.
Thanks!


add M5 CoreInk project

Description

add CoreInk project for the CoreInk product

Motivation and Context

add ready-to-go properties for the CoreInk product

How Has This Been Tested?
see README file for implemented properties and testing result
Types of changes

[ ] Improvement (non-breaking change that improves a feature, code or algorithm)
[ ] Bug fix (non-breaking change which fixes an issue with code or algorithm)
[x] New feature (non-breaking change which adds functionality to code)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[x] Config and build (change in the configuration and build system, has no impact on code or features)
[ ] Dependencies (update dependencies and changes associated, has no impact on code or features)
[ ] Unit Tests (add new Unit Test(s) or improved existing one(s), has no impact on code or features)
[ ] Documentation (changes or updates in the documentation, has no impact on code or features)

Checklist:

[x] My code follows the code style of this project (only if there are changes in source code).
[ ] My changes require an update to the documentation (there are changes that require the docs website to be updated).
[ ] I have updated the documentation accordingly (the changes require an update on the docs in this repo).
[ ] I have read the CONTRIBUTING document.
[ ] I have tested everything locally and all new and existing tests passed (only if there are changes in source code).
[ ] I have added new tests to cover my changes.

Summary by CodeRabbit

New Features

Introduced support for the nanoFramework.CoreInk package in the pipeline.
Added a comprehensive packages.lock.json file for nanoFramework.CoreInk, detailing essential project dependencies, including various nanoFramework libraries.

Bug Fixes

Ensured integrity verification through content hashes in the new dependencies manifest.

Draft mode as missing for:

[ ] nuGet generation implementation
[ ] PR validation for screen implementation
[ ] screen implementation

@xas any update on this?

@networkfusion Yeah sorry, I was waiting for the merge of the E-Ink driver and then lot of work happened 😞
I will try to update the PR this week

@xas hey hey! 😃
Are you planning on resuming work on this PR?

@xas hey hey! 😃 Are you planning on resuming work on this PR?

yeah, sorry, I wish I had more time. Plus updating packages/nuspec require some attention 😭

@xas glad to see that you're able to finish this. 👍🏻
Let me know if you need any help with anything that is blocking you.

Note: we can ignore the line duplication. It's mainly "normal" regarding how we've been setting up the projects.


Kube mgr

This PR adds KubeMgr - a go package that interacts with KubeAPI to get and set Guardian CRDs and ConfigMaps
Guardians can be get by guard-gate instances (inside queue-proxy), by the guard-learner (guard-service) and by the guard-ui (for manual visualization and control of Guardians).
Guardians can be set by the guard-learner (guard-service) and by the guard-ui.

pls merge #45  first


Make telemetry explicit

Addresses #667

looks good to me, also we would need to not hash our users in the lambda to ignore events of those correctly as well https://github.com/diggerhq/digger-usage-lambda/blob/main/app.py#L15


chore: sync changes from updated openapi doc

Description
Syncs the updates from the latest OpenAPI changes including the version update and doc string changes.
References

Review Checklist

[x] I have clicked on "allow edits by maintainers".
[] I have added documentation for new/changed functionality in this PR or in a PR to openfga.dev [Provide a link to any relevant PRs in the references section above]
[x] The correct base branch is being used, if not main
[ ] I have added tests to validate that the change in functionality is working as expected

Converting to draft as I'll mirror #109 once merged


Can not parse Tensor shape in graph mode

Hi, it's really convenient to get the shape of the Tensor and use the shape for randomize another Tensor in PyNative mode. However, it seems not working during the compilation of graph mode.
For example:
import mindspore.nn as nn
import mindspore.ops.operations as P
from mindspore import context

class Cell(nn.Cell):
    def __init__(self, n):
        super(Cell, self).__init__()
        self.n = n
        self.random = P.StandardNormal()

    def construct(self, x):
        # Can not get x.shape in graph mode
        y = self.random(x.shape)
        return x + y

if __name__ == '__main__':
    # Working only in PyNative mode
    context.set_context(mode=context.GRAPH_MODE)
    cell = Cell(4096)
    x = cell.random((4096, ))
    print(cell(x))

And my suggestion to the problem is to just maybe define shape as a reserved word during the Python parsing and complication.
Or another solution (not elegant) is to make new operators like torch.randn_like(torch.Tensor) (https://pytorch.org/docs/stable/generated/torch.randn_like.html), which uses the whole tensor as an input :)

Yeah，as you can see, In version 0.6, the shape and dtype attributes of the tensor can be called only in the Pynative mode, and is not supported in graph mode.
It will be supported in version 0.7.
In the PR：https://gitee.com/mindspore/mindspore/pulls/3820

Yeah，as you can see, In version 0.6, the shape and dtype attributes of the tensor can be called only in the Pynative mode, and is not supported in graph mode.
It will be supported in version 0.7.
In the PR：https://gitee.com/mindspore/mindspore/pulls/3820

Thanks for your reply! You can close this issue freely when merged.

Sorry，I don't have access to close the issue. The PR is already merged. In version 0.7, it will supported.


docs: Correcting the name of the python method

The name of the compile method seems to have changed since the python bindings page was written:
https://pypi.org/project/prql-python/
This PR aims to correct that.

Thanks @RalfNorthman !


ENH: snapgene shows primer_binding sites not primers unless sequence …

…is emitted explicitly
Small patch to get snapgene to show primers rather than just primer binding sites.  It needs the sequence to be explicitly stated in the genbank feature

👍

Once we've resolved #3 I'll push out a new rev to nuget.


Update test coverage to cover Scala 2.12.0

Scala 2.12.0 was just released.
http://www.scala-lang.org/news/2.12.0
We currently only test Gradle against 2.10.4 and 2.11.1. We should consider updating these versions too.
Scala 2.12 only works with JDK8+, so we'll need to split our coverage accordingly.

What would be the desired outcome?
Update all existing scala references to latest of 2.10, 2.11 and add 2.12 to the ScalaCrossCompilationIntegrationTest? What should be the default scala version for the integration tests?

This has been done


real zero dependencies

Fixes #28.

Agreed! It should've been there in the first place, thanks for pointing this out!


Upload 组件能否增加 [队列上传/限制同时上传数量] 功能

[ ] I'm sure this does not appear in the issue list of the repository

Basic Info
What are the similar cases of this feature
未知
What problem does this feature solve?
因为服务器资源有限，当用户选择图片数量过多时(1000张图片)，会造成请求过多导致超时

支持一次请求提交多张图片


Format all  with  instead of

Replace all of the existing  layouts on the forms with . Try to use the new dmproadmap.scss stylesheet.

related to #230

(copying over some conversation that happened in Slack)
@briri "I'm working on some of the UI issues that came out of our accessibility test last summer (specifically replacing the html tables that were causing problems).
I decided to try and follow the look of the new create plan page (#150). Let me know if this is a good approach for now.

and here's the old look:

I dropped the cancel button since it wasn't really doing anything besides bringing the user back to the view plans page. We can add it back if necessary. I also added some text below the email asking the user to also enter their password when changing the email address."
Some conversation then began about the workflow for changing one's email address and adding in the account recovery email address field. This particular task though is just about cleaning up the accessibility issues in the html form. We'll create a different ticket to record the desired changes to the edit profile page.

(copying over some conversation that happened in Slack)
@briri: "and here's an example of one of the updated forms that are part of a larger page (like template/plan editing).

@JEK-III: "This looks great. I do recommend moving the field labels to above the form elements (as you did on the profile page) instead of to the left. Although there are plenty of exceptions, top labels are generally considered best practice. In this case, because the labels are of such variable length, “ID,” for example is very far from the associated input field.
If that’s problematic in the short-term, I would right-justify the labels– which would make them harder for a user to scan, but give us a tighter association between the label and the field.
(None of which impacts the original underlying accessibility issue, which should be taken care of by what you’ve done already)"
@briri: "I'll right justify them then. I tried letting them fall above their input boxes originally but the visual transition from the read-only view of this info to editable form was a bit disorienting"

(copying over some conversation that happened in Slack)
@briri: "the forms used to format the question-answer portion of the plan page doesn't use html tables but it does use ordered lists. Was that also an issue that was called  out on the accessibility report? If not I'll leave them as-is for now"
@rhu001: "I don't recall that being called as a major issue but in general tables and lists should be used for tabular data and lists of items respectively and not for form fields.
If there is time in this sprint to re-do them as normal form fields and not as an ordered list that would be preferable.
Unless there were numbers attached to each form field."

Finished up Contact Us, Edit Profile, Create plan, edit plan details, answer questions, add/edit notes to plans, share plan forms.
Did not yet address the plan export page (this is being re-imagined by UX) and did not tackle any of the org admin pages (templates, guidance groups, org details, etc.)


Implement JSON Unmarshaler interface on Message and Field types

New Behaviour
As of this PR, users may now unmarshal JSON back into an *iso8583.Message object using the untyped API as such:
input := `{"0":"0100","1":"500000000000000000000000000000000000000000000000","2":"4242424242424242","4":"100"}`

message := NewMessage(spec)
if err := json.Unmarshal([]byte(input), message); err != nil {
    // handle err
}

Similarly, the typed API may be used as such:
input := `{"0":"0100","1":"700000000000000000000000000000000000000000000000","2":"4242424242424242","3":{"1":"12","2":"34","3":"56"},"4":"100"}`

message := NewMessage(spec)
data := &TestISOData{}
if err := message.SetData(data); err != nil {
    // handle error
}
if err = json.Unmarshal([]byte(input), message); err != nil {
    // handle err
}

fmt.Printf("Field F2: %v", data.F2.Value) // This will print "4242424242424242"

This allows for some powerful behaviour to be built on top of the library e.g. Building JSON APIs which then convert messages into ISO8583 to then process for test purposes.
I've also improved some of the error handling and the implementation of SetBytes() to set the value of the data struct if one exists along the way.

Codecov Report

Merging #127 (f3b6cb9) into master (0ae91c8) will decrease coverage by 1.92%.
The diff coverage is 31.81%.

@@            Coverage Diff             @@
##           master     #127      +/-   ##
==========================================
- Coverage   69.21%   67.28%   -1.93%
==========================================
  Files          33       33
  Lines        1192     1244      +52
==========================================
+ Hits          825      837      +12
- Misses        267      300      +33
- Partials      100      107       +7

Impacted Files
Coverage Δ

field/composite.go
78.80% <0.00%> (-4.65%)
:arrow_down:

field/spec.go
62.50% <ø> (ø)

field/binary.go
47.45% <15.38%> (-7.26%)
:arrow_down:

field/bitmap.go
68.88% <22.22%> (-2.54%)
:arrow_down:

field/string.go
67.79% <23.07%> (-9.57%)
:arrow_down:

message.go
68.48% <42.85%> (-1.79%)
:arrow_down:

field/numeric.go
70.76% <60.00%> (-5.90%)
:arrow_down:

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 0ae91c8...f3b6cb9. Read the comment docs.


Add example for multiple databases

I have a massive confusion regarding multiple databases.  Do I need Eve?  flask-pymongo?  Something else?
All I want is to have a single endpoint switch between multiple databases.  Examples on stackoverflow mention that its not supported in Eve:
https://stackoverflow.com/questions/39249272/multiple-databases-with-eve
Or that you need to use authentication:
https://stackoverflow.com/questions/51364424/python-eve-mongodb-read-from-multiple-mongodb-databases
Now, onto flask-pymongo.  The documentation shows how to initialize multiple databases, but not how to set up the endpoint to switch between them.  Maybe adding this as a simple example would be useful for us neophytes.
I'm looking for both of these using the same route and somehow switching to the correct database:
http://localhost:27017/myDatabase1/user
http://localhost:27017/myDatabase2/user

There's no notion of "switching" databases, as there's no notion of a "current" database or anything like that. Each PyMongo instance usually addresses a single MongoDB database, but you can have more than one (you would just initialize each one with a separate URI); or you can access any database on the same MongoDB server by using the cx attribute (the connection, a MongoClient) to access the other databases, just like you would when using PyMongo directly.
If your databases require authentication, you must use the first option -- a separate PyMongo instance per database -- as authentication is a per-session (per connection) notion in MongoDB. You can read more in the description of the deprecated authenticate() method: http://api.mongodb.com/python/current/api/pymongo/database.html#pymongo.database.Database.authenticate

Then you can connect once to your MongoDB server (you can use a connection string without any database name, as of 2.2.0, released last week). You can access each database through the cx attribute. Suppose you have 2 databases, experiment1 and experiment2, then you can do:
mongo = PyMongo(...)

exp1 = mongo.cx["experiment1"]  # the first database
exp2 = mongo.cx["experiment2"]  # the second database

and so on.
Basically, the things you can do with PyMongo by itself you can do with Flask-PyMongo, since it's a pretty thin wrapper on top of the underlying driver.
Does this help clarify things?

The mists are slowly parting.  So I should do something like:
@app.route('/<database>/foo')
def foo(database):
    db = mongo.cx[database]
    foo_data = db.foo.find({'whatever'}]
    ...

Thanks much for your help.  I found something that seems to work. Please let me know if there's a more elegant solution.
# create a dict of known databases
databases = {
    'Z100': mongo.cx['Z100'],
    'Z101': mongo.cx['Z101'],
}

@app.route("/<database>/foo1")
def foo1(database):
    db = databases[database] # fetch the appropriate DB
    data = db.tar.find_one({'metadata.grid' : {'$eq': '5000'}})
    print(database + str(len(data)))
    return 'foo1 ' + database + str(len(data))

Yup, that'll work, too.


WIP Create wind barb example

Create an example app of wind barb extension to bokeh.

@twsearle Still a long way to go to replicate what was there originally, e.g. _u[i] support and .define(...) but we have satisifed the type checker for now

I think this is the basic wind barb example pretty much ready to go.
I was going to add an optional argument to set the scale of the wind barbs, however I can't work out how to get this working.
I changed to Bokeh version 1.4 because that version includes the examples, but this may not be necessary.
Do you think it would be worth committing this as is for now?

@twsearle I think it is a significant step forward on the way to wind barb support.


fix: primary ,secondary sidebars and links

fix sidebar in association with #403
sidebar with active and hover

sidebar hover

navigation bar

links

visited link and visited hovered

link and link hovered

@Revathyvenugopal162, for the sidebar on the right, I thought we were only highlighting the current section with a blue color, see https://github.com/ansys/ansys-sphinx-theme/issues/403#issuecomment-2180978557


Enable Docusaurus native CSS transitions

Remove restrictions on CSS transitions to allow for native transitions in Docusaurus components.
this brings back things like:

sidebar menu transition in and out of view
sidebar menu list expand and collapse animation
link and button hover animation
popover in and out animation

https://github.com/user-attachments/assets/ee3d5f03-37bc-4635-bd9b-9a17a2d97db6
closes #4379

glad you liked the changes!
if i can get your attention to a couple of PRs i made that greatly enhance the DX #4381 and #4375


Update integration

Repository checks
These checks are automatic.
Checks for test/test

Status
Check

❌
Exist

❌
Submitter is owner

❌
Not a fork

Hi, @ludeeus 👋
An automatic task is now running some initial checks before this can be merged.
When those are done, someone will manually ensure that that it's OK. 💃
While you wait, you can have a look at this cute kitten 😺


Added elevation notebook

A demo of estimating elevations using WOfS.
Checklist (replace [ ] with [x] to check off)

[x] Notebook created using the DEA-notebooks template
[x] Remove any unused Python packages from Load packages
[x] Remove any unused/empty code cells
[x] Remove any guidance cells (e.g. General advice)
[x] Ensure that all code cells follow the PEP8 standard for code. The jupyterlab_code_formatter tool can be used to format code cells to a consistent style: select each code cell, then click Edit and then one of the Apply X Formatter options (YAPF or Black are recommended).
[x] Include relevant tags in the final notebook cell (refer to the DEA Tags Index, and re-use tags if possible)
[x] Clear all outputs, run notebook from start to finish, and save the notebook in the state where all cells have been sequentially evaluated
[ ] Test notebook on both the NCI and DEA Sandbox (flag if not working as part of PR and ask for help to solve if needed)
[ ] If applicable, update the Notebook currently compatible with the NCI|DEA Sandbox environment only line below the notebook title to reflect the environments the notebook is compatible with

stations_in_range - does 'range' mean 'bounding box'? I couldn't spot a buffer, so I assume you're just looking for stream gauges within the specific bounding box? Could you please clarify this?
is the get_stream_data function here the same as the one in the Scripts/BoM file? If so, can you just import that one? If not can you please add a sentence or two describing what you're doing here that's different?
'find the first shared observation' - shared with what?
'Mask the data to only include wet or not wet, and set everything else to nan.' - just checking there aren't more bit flags to include, like low solar angle etc? Ness had a list of a few she was using for waterbodies. Possibly for this application you want to err on the side of confidence though and exclude those other flags?
'Plot WOfS against stream gauge' - can you please add axis labels to the plot with the 0 and 128? I am not entirely sure what the plot is showing.
'We can then visualise this as a heightmap:' holy crap! This is amazing!!!!!!!!
'depth map' - I am not sure what you mean by 'Depth from maximum WOfS extent (m)'. You mean depth of water if the maximum amount of area is observed as wet? Can you convert to depth relative to the stream channel? So zero would be the top of the channel, and the floodplain would then be positive, and the stream negative? It may be too complicated?
'We can then apply the calibration to the WOfS summary:' - can you please add a label to the colourbar for the red/blue plot in this section? What is the anomaly?

Also, this notebook is absolutely nuts!!!! Well done.

Added a little widget to help investigate parts of the correlation plot.

Added a little widget to help investigate parts of the correlation plot.

stations_in_range - does 'range' mean 'bounding box'? I couldn't spot a buffer, so I assume you're just looking for stream gauges within the specific bounding box? Could you please clarify this?

Made it explicit that it's a bbox.

is the get_stream_data function here the same as the one in the Scripts/BoM file? If so, can you just import that one? If not can you please add a sentence or two describing what you're doing here that's different?

A bit different. I've added a sentence explaining that.

'find the first shared observation' - shared with what?

Clarified.

'Mask the data to only include wet or not wet, and set everything else to nan.' - just checking there aren't more bit flags to include, like low solar angle etc? Ness had a list of a few she was using for waterbodies. Possibly for this application you want to err on the side of confidence though and exclude those other flags?

There are more flags, but as you've said, let's err on the side of confidence.

'Plot WOfS against stream gauge' - can you please add axis labels to the plot with the 0 and 128? I am not entirely sure what the plot is showing.

Yep, done.

'We can then visualise this as a heightmap:' holy crap! This is amazing!!!!!!!!

:D Thank you!

'depth map' - I am not sure what you mean by 'Depth from maximum WOfS extent (m)'. You mean depth of water if the maximum amount of area is observed as wet? Can you convert to depth relative to the stream channel? So zero would be the top of the channel, and the floodplain would then be positive, and the stream negative? It may be too complicated?

Deleted this plot, since it's not that useful IMO. It's hard to estimate the top of the channel since it's not clearly defined, so I haven't done that conversion.

'We can then apply the calibration to the WOfS summary:' - can you please add a label to the colourbar for the red/blue plot in this section? What is the anomaly?

I can't seem to find the docs for colourbar labels for xarray plots... but really this plot is just kind of confusing, so I've deleted it.

Also, this notebook is absolutely nuts!!!! Well done.

Thank you! :)

stations_in_range - does 'range' mean 'bounding box'? I couldn't spot a buffer, so I assume you're just looking for stream gauges within the specific bounding box? Could you please clarify this?

Made it explicit that it's a bbox.

is the get_stream_data function here the same as the one in the Scripts/BoM file? If so, can you just import that one? If not can you please add a sentence or two describing what you're doing here that's different?

A bit different. I've added a sentence explaining that.

'find the first shared observation' - shared with what?

Clarified.

'Mask the data to only include wet or not wet, and set everything else to nan.' - just checking there aren't more bit flags to include, like low solar angle etc? Ness had a list of a few she was using for waterbodies. Possibly for this application you want to err on the side of confidence though and exclude those other flags?

There are more flags, but as you've said, let's err on the side of confidence.

'Plot WOfS against stream gauge' - can you please add axis labels to the plot with the 0 and 128? I am not entirely sure what the plot is showing.

Yep, done.

'We can then visualise this as a heightmap:' holy crap! This is amazing!!!!!!!!

:D Thank you!

'depth map' - I am not sure what you mean by 'Depth from maximum WOfS extent (m)'. You mean depth of water if the maximum amount of area is observed as wet? Can you convert to depth relative to the stream channel? So zero would be the top of the channel, and the floodplain would then be positive, and the stream negative? It may be too complicated?

Deleted this plot, since it's not that useful IMO. It's hard to estimate the top of the channel since it's not clearly defined, so I haven't done that conversion.

'We can then apply the calibration to the WOfS summary:' - can you please add a label to the colourbar for the red/blue plot in this section? What is the anomaly?

I can't seem to find the docs for colourbar labels for xarray plots... but really this plot is just kind of confusing, so I've deleted it.

Also, this notebook is absolutely nuts!!!! Well done.

Thank you! :)

Looks amazing! Is there a trick for getting your widgets to save their state? All your awesome plots are missing from the notebook output cells now that you've made them a widget. Otherwise, this one is good to go.

Looks amazing! Is there a trick for getting your widgets to save their state? All your awesome plots are missing from the notebook output cells now that you've made them a widget. Otherwise, this one is good to go.

I think I can do something like that, I'll investigate!

I think I can do something like that, I'll investigate!

@CEKrause I've added most of the plots back in by forcing the GUI back into inline mode :) the interactive plot won't show up still, but that's not a huge loss (it's more fun to poke around anyway)

@CEKrause I've added most of the plots back in by forcing the GUI back into inline mode :) the interactive plot won't show up still, but that's not a huge loss (it's more fun to poke around anyway)


Fix preStop Hooks for ovn-controller pod containers

preStop Hooks currently fails with:-
ovs-ctl: exactly one non-option argument required
becaues ";sleep 2" is passed to the stop command which it do not expect.
To run additional commands we could use "bash -c" but considering the extra sleep do not help to avoid the "FailedPreStopHook" event just dropping the extra sleep as part of this patch.
"FailedPreStopHook" event gets raised even with successful graceful shutdown because container get's killed due to these stop commands.
To avoid "FailedPreStopHook" one option is to use wrapper startup script and handle SIGTERM signals, something like revert of [1], but leaving that for later.
Also add kuttl test to validate graceful shutdown of ovn-controller by checking SB DB for the chassis.
[1] https://github.com/openstack-k8s-operators/ovs-operator/pull/53
Resolves: OSPRH-4553

/lgtm


update-stack fails with "Application name update feature has been deprecated"

Describe the bug
When running the aws cloudformation update-stack command, Cloudformation returns the following error:
Resource handler returned message: "Application name update feature has been deprecated. (Service: ServiceCatalogAppRegistry, Status Code: 400
To Reproduce

Deploy the solution according to the docs
Make modifications to the code
Run the update-stack command

aws cloudformation update-stack \
  --region ${REGION} \
  --template-url https://${DIST_BUCKET_PREFIX}-${REGION}.s3.amazonaws.com/${SOLUTION_NAME}/${VERSION}/iot-device-simulator.template \
  --stack-name ${CF_STACK_NAME}-${CI_COMMIT_REF_SLUG} \
  --capabilities CAPABILITY_IAM CAPABILITY_NAMED_IAM CAPABILITY_AUTO_EXPAND \
  --parameters ParameterKey=UserEmail,ParameterValue=${INITIAL_USER}

Expected behavior
The update-stackcommand should apply the updates.
Please complete the following information about the solution:

[x] Version: [v3.0.5]
[x] Region: [eu-central-1]
[x] Was the solution modified from the version published on this repository?
[ ] If the answer to the previous question was yes, are the changes available on GitHub?
[ ] Have you checked your service quotas for the sevices this solution uses?
[] Were there any errors in the CloudWatch Logs?

Additional context
I'm running the update-stack action from within a Gitlab Pipeline using the aws-cli:latest image

Application registration updates were disabled, resulting in your failure. If the application name has changed, our recommendation is to deploy the solution with a new stack name.


Angular's ControlValueAccessor has a null initial value causing  "Cannot read property 'a' of null" ?

I'm using Nativescript  + Angular
| nativescript     │ 3.4.3           │ 3.4.3          │ Up to date  │
│ tns-core-modules │ 3.4.1           │ 3.4.1          │ Up to date  │
│ tns-android      │ 3.4.2           │ 3.4.2          │ Up to date  │

I'm using a code which creates a custom ngModel value  using the ControlValueAccessor  interface .
As you can see I have 2 TextFields  and a json showing the model value.

This is how I activate the component with value :
home.component.ts
export class HomeComponent  {

 dataModel = {
    a:1,b:2
};

...
}

home.component.html
<StackLayout >
	<app-flag  [(ngModel)]="dataModel"></app-flag>
</StackLayout>

— This is the actual component markup code :
flag.component.html
<GridLayout rows="auto,auto,auto"   columns="*" >
	    <TextField [(ngModel)]="innerValue.a" row="0" ></TextField>
		<TextField [(ngModel)]="innerValue.b" row="1"></TextField>
		<Label textWrap="true" text="{{innerValue | json}}" row=3></Label>
</GridLayout>

flag.component.ts
export class FlagComponent implements  ControlValueAccessor {

	innerValue: { a: 1, b: 2 }

	writeValue(value: any) {
		this.innerValue = value;
	}
...}

This code works fine , and does show the values in json. But the problem is that at t=0 , there is an error :

ERROR TypeError: Cannot read property 'a' of null

After  testings  - it seems that at first -  the value in writeValue is  null.
Question
Something is not right here. Even if there's a delay in writeValue values - it still has a public property with initial values :

So how come it's null ?
Playground
BTW - in native angular it doesn't happen - same code :
https://plnkr.co/edit/TyoCgvb8i8zSryxC9NXb?p=preview

@NickIliev  it's not a question  , it's a bug. In native angular it doesn't happen.

So i want to use ngForm on my forms to verify if they are valid with myForm.form.valid and seems like it is not possible with StackLayout's. Can someone show a sample to do that?

@RoyiNamir Can you please show a example of how the StackLayout is supposed to be and if i am doing right on my comment above? thanks.

+1

This seems to do the trick, register stack layout as form element.


refactor(general):  add random-array-item package and few improvements

@all-contributors please add @mskian for review


"Release name" option available for name held < 1 year

A user owning a name for < 1 year should not have the option to release the name.

removed in this commit https://github.com/status-im/ens-usernames/pull/32/commits/675204731644a09377608d6567c2fa429df54925


Medical tend quality & surgery success chance bonuses not working

As reported in Workshop issue reporting discussion by bl1tz3n:

What happened before your issue?: I placed a Blood IV next to a horizontal steel hospital bed.
Expected result: Blood IV provides medical tend quality offset and surgery success chance multiplier bonuses, as stated in description.
Actual result: Offset and multiplier values are "inactive", and are not applied to the bed.
Has this happened before? It happened every time I placed a Blood IV next to a bed (6 times).
RimWorld Version: 0.18
Are you using any other mods? If so, list them: Too many to easily list.

Wrong mod!  Oops!


Continue: Write comments for this code produces math questions

Before submitting your bug report

[X] I believe this is a bug. I'll try to join the Continue Discord for questions
[X] I'm not able to find an open issue that reports the same bug
[X] I've seen the troubleshooting guide on the Continue Docs

Relevant environment info
- OS: macOS 14.4
- Continue: v0.9.112 (pre-release)
- IDE: VSCode 1.88.0

Description
When selecting code and asking continue.dev to comment on it, it will produce math equations instead
Using OpenAI configured like this:
    {
      "title": "Mistral",
      "provider": "openai",
      "model": "mistral-7b-instruct",
      "apiKey": "your-api-key",
      "apiBase": "https://your-base-url.com/llm/v1"
    }

Using Mistal with Ollama the extension produces the expected result, but it seems using the OpenAI provider only empty strings get send, which will lead Mistral to dream about math.
async_llm_engine.py:436] Received request cmpl-6def2b5f4c4d4d61952dbf6a82262f4d: prompt: '<s>',

To reproduce

Select this function and Press CMD + P

   def get_attribute(attributes: list[dict[str, str]], key: str) -> Optional[str]:
      for attribute in attributes:
          if attribute.get("key") == key:
              return attribute.get("value")
      return None

Write Continue: Write comments for this code
See the result below

Log output
async_llm_engine.py:436] Received request cmpl-6def2b5f4c4d4d61952dbf6a82262f4d: prompt: '<s>',

@max-wittig Probably there's a very clear prompt formatting problem somewhere.
The most transparent way to debug this would be to open the Output panel next to the Terminal in VS Code and then select "Continue - LLM Prompts/Completions" in the dropdown. This will display the exact prompt sent to LiteLLM so that we can determine if the problem comes before the request.
Continue should be attempting to format the prompt on its own, but if LiteLLM's README is up to date, then they might not support the /completions endpoint, in which case they are probably double wrapping the prompt.
I'll try setting LiteLLM on my own tomorrow as well to investigate.
Separately, I don't know if you're just trying many models, but I can share a few recommendations if you are interested.

@sestinj This is the output when trying to create comments for a simple hello wolrd function:
==========================================================================
==========================================================================
Settings:
contextLength: 4096
model: mistral-7b-instruct
maxTokens: 1024
raw: true

############################################

[INST] ```python
def hello_world():
  print("Hello world")

Please rewrite the entire code block above in order to satisfy the following request: "Write comments for this code. Do not change anything about the code itself.". [/INST]Sure! Here's the entire rewritten code block:
==========================================================================
==========================================================================
Completion:

Q: Let c = 106.1 + -106. Let o = c + -0.1. Let r = 0.1 - o. What is the closest to r in 2, -1/3, -1?
A: 2

This seems to have broken recently.
It is working with the same configuration in version 0.8.22 where the log output looks like this:
[INST] You are a helpful code assistant. Your task is to rewrite the following code with these instructions: "Original request: Write comments for this code. Do not change anything about the code itself.
Updated request: Write comments for this code. Do not change anything about the code itself."
```python
def hello_world():
  print("Hello world")

```

Just rewrite the code without explanations: [/INST]
```python==========================================================================
==========================================================================
Completion:

 ```python
# This function prints "Hello world" when called
def hello_world():
  # The print statement outputs the given message to the console
  print("Hello world")

Seems to be caused by https://github.com/continuedev/continue/pull/1029

@bufferoverflow That is the PR that changed the prompt, but it's not clear that the prompt alone is the problem. Both prompts take the same approach of pre-empting the model. So it seems something is amiss in the request itself.
I ran a few tests. Tried Mistral-7b-Instruct with each of the following pairs: [LiteLLM, TogetherAI], [LiteLLM, Ollama], [Direct, TogetherAI], [Direct, Ollama]. All of these worked fine, except for the first, in which LiteLLM just threw an error that seems unrelated to all of this.
This leads to me to think that the LiteLLM+vLLM combination is causing the problem. Since the log shared above by Max shows that vLLM got an empty prompt in the request, my guess would be that when LiteLLM is setup with vLLM like this it does something to re-format the prompt.
Still working on figuring out figuring out what exactly is going on, as I don't want to put blame on another tool until I've verified it's not us. I'll hopefully have more to share soon after looking through the LiteLLM code, and if it's something there I'll aim to make whatever PR is necessary.

@sestinj I found the problem :tada: It works with the following hack, which forces the use of the /v1/chat/completions endpoint instead of the /v1/completions endpoint
diff --git a/core/llm/index.ts b/core/llm/index.ts
index ed920eaa..a9e03095 100644
--- a/core/llm/index.ts
+++ b/core/llm/index.ts
@@ -58,7 +58,7 @@ export abstract class BaseLLM implements ILLM {
         return false;
       }
     }
-    return true;
+    return false;
   }

   supportsPrefill(): boolean {

@sestinj not sure how you envision this. What about extending https://github.com/continuedev/continue/blob/preview/schema/json/ModelDescription.json with EndpointType and adding an enum with chat/completion, completion, so people could set the endpoint to use?

This leads to me to think that the LiteLLM+vLLM combination is causing the problem. Since the log shared above by Max shows that vLLM got an empty prompt in the request, my guess would be that when LiteLLM is setup with vLLM like this it does something to re-format the prompt.

We do indeed have a custom chat template configured for vLLM via--chat-template /config/mistral-mixtral-chat-template.jinja:
{% if messages[0]['role'] == 'system' -%}
    {% set loop_messages = messages[1:] -%}
    {% set system_message = messages[0]['content'].strip() + ' ' -%}
{% else -%}
    {% set loop_messages = messages -%}
    {% set system_message = '' -%}
{% endif -%}
{{ bos_token -}}
{% for message in loop_messages -%}
    {% if (message['role'] == 'user') != (loop.index0 % 2 == 0) -%}
        {{ raise_exception('Conversation roles must alternate user/assistant/user/assistant/...') }}
    {% endif -%}
    {% if loop.index0 == 0 -%}
        {% set content = system_message + message['content'] -%}
    {% else -%}
        {% set content = message['content'] -%}
    {% endif -%}
    {% if message['role'] == 'user' -%}
        {{ '[INST] ' + content.strip() + ' [/INST]' -}}
    {% elif message['role'] == 'assistant' -%}
        {{ content.strip() + eos_token -}}
    {% endif -%}
{% endfor -%}

For completeness sake: The new prompt does not work with the legacy /completions endpoint:

It does work well with the /chat/completions endpoint though:

So as @bufferoverflow suggested above it be best to just let users select with endpoint to use.

@bufferoverflow @fgreinacher this sounds like a good solution to me. I'll make an update now.
Is my understanding correct that what happens here is that vLLM applies the chat template on top of whatever is sent through the /completions endpoint?

@bufferoverflow yes this looks perfect!

PR is now merged: https://github.com/continuedev/continue/pull/1151
To solve, you now can set "useLegacyCompletionsEndpoint": false in your model in config.json. I'll wait to close the issue until it's verified that this works

Works pretty well with 0.9.113 and "useLegacyCompletionsEndpoint": false.
Thanks for your efforts!


Add option to show total tested samples

Is your feature request related to a problem? Please describe.
It's been repeated written in many articles India is testing fewer people per million. The Govt releases data on how many samples tested and how many cases are positive out of the tested samples. The API contains the same data under the field name totalsamplestested. It may be a good idea to represent the information as a ratio or any other metric both at the country and state level.
Describe the solution you'd like

Display a table containing state name, total samples tested, total positive cases, positive cases/samples.
Already home page contains similar data, maybe add a column to the existing column(only ratio).
A graph containing ratio over a time period for both states and the country.

Describe alternatives you've considered
The above solution can be added in multiple places depending on the UI and other parameters.
Additional context
NA

Fixed via #699


Cleanup & allow passing fetch function

Hey @david7117,
thanks for making this useful library.
I worked a bit on cleaning up the code and removing the need for any types. Also I added a first jest test.
A probably controversial (and breaking) change is that I removed the dependency to the got library and instead allowed to pass your own version fetch function. This makes testing easier and also allows using the library in the browser (e.g. electron) or other environments which are not supported by got.
To get back the got features (caching, following redirects, etc) one could easily use https://www.npmjs.com/package/got-fetch and pass it as an option. This makes the library more flexible but also is a breaking change.
I would be happy to read your thoughts about this.
Jascha

First of all i really need this
I am working with tauri where i don't even have a node js "backend" like in electron so browser support would be very important for me
Second
There is no need to change the compilerOptions for just using replaceAll
Just use /YourText/g with replace as a regular expression


Results SSIM

Hi there, thank you for open-sourcing the code to reproduce your results. While reading the paper I noticed the following:

Wouldn't a high MS-SSIM be better (arrow up) and the proposed method is slightly behind the comparison in terms of SSIM, while being better in FID?

@lukas-folle-snkeos Thank you for your interest in our work. In fact, the MS-SSIM score is mostly used to compare a generated image with a ground truth image, e.g. in a paired image-to-image translation task (also see section 4 of this paper) . We use the MS-SSIM score to compare the generated images with each other (not generated with ground truth, but generated with generated, as no ground truth is available). In this case, a low MS-SSIM score indicates that the generated images are diverse. On the other hand, a high MS-SSIM score would in this case indicate that the generated images are very similar, which would be a sign of mode collapse.
I hope this answers your question.

That explains it! Just found it confusing that in the results section you mention outperforming SOTA and have the table right next to it. Next time I'll take a closer look 😄


Add missing include to install_dist resource

Description

Add missing helper library include to install_dist resource

Issues Resolved

n/a

Check List

[x] All tests pass. See TESTING.md for details.
[x] New functionality includes testing.
[x] New functionality has been documented in the README if applicable.

          1 Warning

:warning:
This Pull Request is probably missing tests.

  Generated by :no_entry_sign: Danger


fioctl: 0.22 -> 0.23

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/foundriesio/fioctl/releases.
meta.description for fioctl is: "A simple CLI to manage your Foundries Factory "
meta.homepage for fioctl is: "https://github.com/foundriesio/fioctl"
meta.changelog for fioctl is: ""
Updates performed

Golang update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
Warning: no invocation of /nix/store/sxjc359c1qk0ppwf0kfvcfvdc7h5pwml-fioctl-0.23/bin/fioctl had a zero exit code or showed the expected version
0 of 1 passed binary check by having a zero exit code.
0 of 1 passed binary check by having the new version present in output.
found 0.23 with grep in /nix/store/sxjc359c1qk0ppwf0kfvcfvdc7h5pwml-fioctl-0.23
found 0.23 in filename of file in /nix/store/sxjc359c1qk0ppwf0kfvcfvdc7h5pwml-fioctl-0.23

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
fioctl

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/sxjc359c1qk0ppwf0kfvcfvdc7h5pwml-fioctl-0.23 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A fioctl https://github.com/r-ryantm/nixpkgs/archive/a673c6b87c382dbb9ac4b176c5247b233ab0108d.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/sxjc359c1qk0ppwf0kfvcfvdc7h5pwml-fioctl-0.23
ls -la /nix/store/sxjc359c1qk0ppwf0kfvcfvdc7h5pwml-fioctl-0.23/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

fioctl

Maintainer pings
cc @nixinator @matthewcroughan @kalbasit for testing.

Result of nixpkgs-review pr 156473 run on x86_64-darwin 1

1 package built:

fioctl


[Feature][Connector-V2] Support multi-table sink feature for doris

Search before asking

[X] I had searched in the feature and found no similar feature requirement.

Description
sub task of #5652
Usage Scenario
No response
Related issues
No response
Are you willing to submit a PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

@gnehil

Hi, @gnehil , Is there any progress on this task?

Hi, @gnehil , Is there any progress on this task?

I'm working on it and will submit a PR soon.


Are other tasks outside of segmentation also effective？

If it is not a segmentation task, such as a low light video enhancement task, is the SPC strategy effective？

If it is not a segmentation task, such as a low light video enhancement task, is the SPC strategy effective？

Hi there,
Thanks for your interest. I would say it is very likely that SPC is useful for measuring the consistency of results for a video enhancement task. The unconstraint feature matching part would be the same or similar to the segmentation task. For the constraint matching part, you may consider only allowing pixels within a certain range of difference being able to match with each other. In this way, it's like the segmentation task where pixels with the same labels in the predictions can be matched. Hope this makes sense.
-yz


Ingest of VOD

Note: This is not ready. I need to specify requirements for this

[ ] Expose endpoint to trigger the ingest process
[ ] Validate the JSON file in S3
[ ] Copy files to new bucket
[ ] Add data into the DB
[ ] Remove old files


Stop flink-sql-runner-dist from emitting an empty jar

Currently the build produces the tarball but it also produces an empty jar we don't need.
[INFO] --- jar:3.4.1:jar (default-jar) @ flink-sql-runner-dist ---
[WARNING] JAR will be empty - no content was marked for inclusion!
[INFO] Building jar: /home/robeyoun/development/upstream/flink-sql/flink-sql-runner-dist/target/flink-sql-runner-dist-0.0.1-SNAPSHOT.jar
[INFO]

We should configure it to stop producing this jar.

@robobario were you planning to pick this up? If not I can pick it up

@katheris I did not plan to, go ahead!

Resolved by https://github.com/streamshub/flink-sql/pull/25


Self-hosted Atuin server in k8s

Implemented here: https://github.com/heywoodlh/nixos-configs/commit/54260c1f67418b14af764020741e03027631f8e8
(using cloud service, not self-hosted)


Code does not follow PEP8 Style guide

use of white space is somewhat random
varying approaches in naming functions and variables
code quality could be improved by using an editor that supports PEP8 checks

Personally, I'm a fan on PEP8 or black but I can accept a PR for this. Thanks


Roma Netflix issue

Roma was removed due to it not being released in theaters. Manually, fill Roma information:

Release date November 21, 2018
Gross assume the median gross
Release_date.month 11

For any Netflix nominations going forwards these assumptions need to be manually filled

Fixed issue. However, will keep it open for future reference


Update BLE interface and incorporate some functions into writeToCharacteristic( )

Service Selection Changes
We should simplify the information presented to users. Let's focus on hiding the UUIDs and simplifying language:

[x]  (JG EDIT, from slack discussion) - Change "UUID" Heading to "Bluetooth Service"

[x] "Select the UUID of the bluetooth service you want to use:" -> "Select the Bluetooth Service you want to use from your microcontroller:"
[x] "Select the UUID of the bluetooth characteristic you want to use:" -> "Select the Bluetooth Characteristic you want to use from the selected BLE Service:"

Dropdown:

[x] Remove the UUIDs from the dropdowns
[x] Rename UART characteristic "micro:bit UART TX (read)" to "micro:bit TX (read from micro:bit)"
[x] Rename UART characteristic "micro:bit UART RX (write)" to "micro:bit RX (write to micro:bit)"
[x] Rename "Random Service 1-5" to "Custom Arduino Service 1-5" and "Random Characteristic" to "Custom Arduino Characteristic"...
[x] Move relevant UUID for each service/characteristic to the space under the drop-down after the service/characteristic has been selected (for reference).

Clean up Service/Characteristic selection
A lot of services either only have one relevant characteristic, or we are only supporting one. Let's automatically select it or possibly drop the second dropdown altogether when there is only one?

[x] When there is only one possible characteristic UUID, let's just automatically select it. I believe only Button, IO Pins, UART, and LED have more than one characteristic UUID option.

RX (write to the microcontroller, microcontroller is reading)
We can only write to the RX service.

[x] Remove the Read/Write tabs for RX.

What you write to the microcontroller does not always have to be a string, and it seems micro:bit handles this gracefully, but it would be nice to abstract some of the text part. I think the best option here is to duplicate the RX characteristic and then repurpose one to make the writeToCharacteristic( ) automatically decode (for both RX and TX).

[ ] Duplicate "micro:bit RX (write to micro:bit)" and rename the duplicate to "micro:bit RX Text (write string to micro:bit)"

UUID: 6E400003B5A3F393E0A9E50E24DCCA9E

Let's also update the writeToCharacteristic( ) function to do add the delimiters to the string and encode the string to UTF-8, which the micro:bit expects. The user will still need to define the string, but it could be a String component, which would make things even simpler.
Example JS from microbit-ratio-game:
// Construct the command string based on LED state
let str = "";
if (readyToLaunch) {
    if (isInGoalRatioDerived) {
        str = "success"; // Command for LED pin 0 Up
    } else {
        str = "failure"; // Command for LED pin 0 Down
    }
}
str = "$" + str + "|"; // Format the command string with start and end markers

// Encode the string to UTF-8
var encoder = new TextEncoder(); // TextEncoder defaults to UTF-8
var encoded = encoder.encode(str);

// Create an ArrayBuffer from the encoded string
var buffer = new ArrayBuffer(encoded.length);
var bufferView = new Uint8Array(buffer);

for (var i = 0; i < encoded.length; i++) {
    bufferView[i] = encoded[i];
}

// Send the command over BLE
writeToCharacteristic(buffer);
console.log(`Command sent: ${str}`);
console.log(buffer);

[ ] Update new RX Text write function so that it does the encoding and the user provides `writeToCharacteristic( "string", dataDelimiter, stringDelimiter) where defaults are: dataDelimiter = "$" and stringDelimiter = "|".

TX (read from microcontroller, microcontroller is writing)
UUID: 6E400002B5A3F393E0A9E50E24DCCA9E
We can only read from the TX service.

[x] Remove the Read/Write tabs for RX.

Same logic as the RX, I think the best option here is to duplicate the TX characteristic and then repurpose one to make the writeToCharacteristic( ) automatically decode into a string, and store the string into deviceValue.

[ ] Duplicate "micro:bit TX (read from micro:bit)" and rename the duplicate to "micro:bit TX Text (read string from micro:bit)"

Example JS from microbit-ble-demos:
// Assuming `data` is your byte array from UART
const data = deviceValue;

const textDecoder = new TextDecoder('utf-8'); // Default is utf-8, which is typical for UART text data
const text = textDecoder.decode(data);

console.log( 'received text' );
setReceivedUARTString( text );

[ ] Incorporate textDecoder into new TX Text read function so deviceValue returns a string.

LED Service
LED Matrix
UUID: E95D7B77251D470AA062FA1922DFA9A8
Let's update writeToCharacteristic( ) by incorporating the code we've used from https://github.com/antefact/microBit.js/blob/b512cdc79994a8d120851bd1ed360ec05e0c5bd1/src/microBit.js#L115C1-L141.
I think the goal here should be that someone only has to define an const icon = [ insert matrix here] and then provide it to the characteristic as icon and that should be good to go. The writeToCharacteristic( ) function will convert it to the Array it expects and send it off.

How might we incorporate help for the icon form into the documentation above the custom code?

Also is this function to convert a string to a UTF8Array helpful?
https://github.com/antefact/microBit.js/blob/b512cdc79994a8d120851bd1ed360ec05e0c5bd1/src/microBit.js#L346-L375
LED_Matrix_State : uint8[ ]

[ ] Update LED Matrix writeToCharacteristic( icon(5x5 uint8Array) ) to automatically convert the matrix to a form the microbit will accept.

LED Text
BF EDIT: NEVERMIND. I somehow missed we already had this. Sorry!
Button, Magnetometer, Accelerometer, Temperature
Each can only be read, not written to.

[x] Remove Read/Write tabs from the these services.

All of the custom services can retain the read/write tabs, since we don't know how they are being used. I don't think it makes a difference which they choose, but it could be helpful for tracking.
Remove Microbit Event service
The event service needs some more time and can't be used in the current implementation. It needs to send the respective requirements service at connection (on either side, client or microbit), then follows up with the respective event service. Not worth our time unless someone is very invested in it. I think UART should be a fine substitution.

[x] Remove the entire microbit event service

{Placeholder for documentation updates to different characteristics, including link to BLE documentation for micro:bit, and showing the expect form of the value read or written}

@jessegreenberg , I think the first bit is in place. I want to expand a bit on the information we present in each menu, but the first post should reflect some needed changes that are more structural in nature.

OK, I think these requests are done. However, for the following I took a slightly different approach.

Duplicate "micro:bit RX (write to micro:bit)" and rename the duplicate to "micro:bit RX Text (write string to micro:bit)"
Update new RX Text write function so that it does the encoding and the user provides `writeToCharacteristic( "string", dataDelimiter, stringDelimiter) where defaults are: dataDelimiter = "$" and stringDelimiter = "|".
Incorporate textDecoder into new TX Text read function so deviceValue returns a string.
Update LED Matrix writeToCharacteristic( icon(5x5 uint8Array) ) to automatically convert the matrix to a form the microbit will accept.

Instead of overloading writeToCharacteristic, I think it would be better to have separate function per action. I think that is clearer and will work for multiple characteristics. For example, string decoding may apply to a few characteristics and the "Custom" ones.
For the LED characteristic, you can now use
writeMatrixToCharacteristic( [
    [ 1, 1, 1, 1, 1 ],
    [ 1, 0, 0, 0, 1 ],
    [ 1, 0, 0, 0, 1 ],
    [ 1, 0, 0, 0, 1 ],
    [ 1, 1, 1, 1, 1 ]
] );

to draw a square.
Some of these (like the LED example) are characteristic specific, and if you would like we can hide the function documentation when it isn't relevant. Ill do that if you are OK with this direction.
Ready for you to review @brettfiedler !

I think that approach is great and certainly more generalizable.
Noting the slack conversation here:

Alright, fixed up a few programs. They are much shorter! I'm a little torn on the LED Text service. It expects a UTF8 string, not a Uint8Array with delimiters, which is what our writeStringToCharacteristic function does. So, taking your LED Text Face example will send it with delimiters (though it does work...) to the LED matrix. By torn, I am wondering if we should leave it as an example to encode and document it, or if we should try to remove those documentation entries for writeStringToCharacteristic and add another for the UTF8string.

Or maybe we could just add a couple more "general purpose" functions to all of the write characteristics?
writeAsUTF8(), writeAsUint8Array()  or something?
UTF8s and Uint8[] covers most of the write characteristics in micro:bit. The rest for the most part are reads and are a variety of signed or unsigned (4-32 bit) integers, which I think we can add to the documentation, but do not need to abstract out.

I think adding one more function to the Write characteristics form should cover us well and make the LED Text characteristic easier to use:

[ ] writeCharacteristicAsUTF8s( string ) : Encode the string as UTF8s without sending any delimiters.

Otherwise, I'll check in with AE and company to see if the changes help.


Ship 8b

https://linear.app/tableland/project/rigs-filecoin-integration-10012ecc0ad8

I'm seeing an error in the garage deployment:
Uncaught (in promise) Error: ALL_ERROR: running read statement: parsing result to json: executing query: no such column: renders_cid
SELECT
    *,
    'ipfs://'||renders_cid||'/'||rig_id||'/'||image_thumb_name as "thumb",
    'ipfs://'||renders_cid||'/'||rig_id||'/'||image_full_name as "image"
  FROM (
    SELECT
      rig_id,
      cast(rig_id as text) as "rigId",
      json_object(
        'contract', pilot_contract,
        'tokenId', pilot_id
      ) as "pilot",
      'piloted' as "action",
      start_time as "timestamp"
    FROM pilot_sessions_80001_4078
    WHERE end_time IS NULL
    UNION
    SELECT
      rig_id,
      cast(rig_id as text) as "rigId",
      null as "pilot",
      'parked' as "action",
      end_time as "timestamp"
    FROM pilot_sessions_80001_4078
    WHERE end_time IS NOT NULL
  )
  JOIN lookups_314159_10
  ORDER BY timestamp DESC
  LIMIT 40
  OFFSET 0
    at bf (index-e0345121.js:541:960)
    at Wk.all (index-e0345121.js:542:1710)

@asutula is taking a stab at it but @datadanne we might need your assistance

I'm seeing an error in the garage deployment:

Uncaught (in promise) Error: ALL_ERROR: running read statement: parsing result to json: executing query: no such column: renders_cid

SELECT

    *,

    'ipfs://'||renders_cid||'/'||rig_id||'/'||image_thumb_name as "thumb",

    'ipfs://'||renders_cid||'/'||rig_id||'/'||image_full_name as "image"

  FROM (

    SELECT

      rig_id,

      cast(rig_id as text) as "rigId",

      json_object(

        'contract', pilot_contract,

        'tokenId', pilot_id

      ) as "pilot",

      'piloted' as "action",

      start_time as "timestamp"

    FROM pilot_sessions_80001_4078

    WHERE end_time IS NULL

    UNION

    SELECT

      rig_id,

      cast(rig_id as text) as "rigId",

      null as "pilot",

      'parked' as "action",

      end_time as "timestamp"

    FROM pilot_sessions_80001_4078

    WHERE end_time IS NOT NULL

  )

  JOIN lookups_314159_10

  ORDER BY timestamp DESC

  LIMIT 40

  OFFSET 0

    at bf (index-e0345121.js:541:960)

    at Wk.all (index-e0345121.js:542:1710)

@asutula is taking a stab at it but @datadanne we might need your assistance

Ah, did we publish a new lookups table that doesn't have that column?
If that's what's causing it the queries will have to be rewritten, but as a quick fix to unblock the deployment you could just hardcode it to use the old lookups table in env.ts instead of reading from the rigs package

Yea @datadanne that is the problem. I created an issue about it here https://linear.app/tableland/issue/RIG-52/update-garage-to-use-new-rig-image-cids-and-lookups-table. Good call about hardcoding the old table as a work around. Since it's late in the day here, let's just see what you think about my branch I handed off to you in that issue, and if it seems tricky still by my tomorrow morning, we can do the hardcode workaround.

Ok this is looking good.

@datadanne i noticed a couple things on the live deployment: missing owner address on rig pages and a little text overflow issue on the deal popup

oh, I forgot that the previews are pointing to the mumbai deployment. is that correct?

oh, I forgot that the previews are pointing to the mumbai deployment. is that correct?

Yeah. The missing owner info is because we deployed a new contract to mumbai recently so no tokens are minted but the tables are populated with data

Is the "raw metadata" button supposed to work on the staging deploys?

Is the "raw metadata" button supposed to work on the staging deploys?

No right now it won't, it gets the URL by calling the tokenURI method on the contract and we don't get that data right now because we use a multicall to call multiple read functions in one RPC request. ownerOf is one of read calls and that one reverts for unminted tokens


rewrite installation instructions

i think it'd be more useful to categorise the installation instructions by operating system instead of by installation method.
also, i should look into instructions for opensuse. the packages are so extremely simple (it's just moving a few files) that there should not be any compatibility issues like there would be if C-code were compiled for a different system. the issue with opensuse in my experiments was that you have to manually specify which RHEL-version you use, and i don't know what that means in terms of opensuse (e.g. is there a command you can use to get your highest RHEL compatibility version?)

fixed in 9e54bbb


Added a new page under "Useful Utilites", named "Clipboard Mangers"

This page discusses 2 specific clipboard managers which suit WMs like hyprland
GUI Utilities like copyq and other have intentionally not been discussed as I have personally not had a great time with them, would add if requested
This was referenced here https://github.com/hyprwm/hyprland-wiki/issues/119

Thanks!


Improve and Automate raw data archiving/access

Description
This Epic tracks updates to the data archiving and access processes. The previous process for creating new archives involved first running the scraper to download new data locally. Next, the archiver could be used to upload new data to zenodo and create a new archive version. This manual process makes updating archives somewhat difficult, and requires someone being aware of upstream updates, which often leads to stale data. Combining the archiver and scrapers will not only simplify this process, but also make automation much easier.
Once new data archives are created, there is still no easy way to access these raw archives outside of PUDL. This is because the Datastore that PUDL uses for accessing these data archives is embedded within PUDL. Making the Datastore a standalone software package would allow accessing these archives from client projects, and by users.
Scope
- How do we know when we are done? This epic is done when dataset archives are updated automatically.
- What is out of scope? Integrating specific datasets.
Tasks
Archiver

[x] catalyst-cooperative/pudl-zenodo-storage#35
[x] catalyst-cooperative/pudl-archiver#4
[x] catalyst-cooperative/pudl-archiver#5
[x] catalyst-cooperative/pudl-archiver#3
[ ] catalyst-cooperative/pudl-archiver#2
[ ] catalyst-cooperative/pudl-archiver#10

PUDL Integration

[ ] Notify PUDL when a new archive is created
[ ] Kick off nightly build to detect problems stemming from new data

Create standalone Datastore

[ ] Move datastore source code to new repo so it can be used as a library
[ ] Pull over tests from PUDL, and setup CI
[ ] Implement basic CLI for accessing data
[ ] Package Datastore on pypi and conda-forge

We had mentioned maybe "Try adding a new dataset and see if our automation picks it up and archives it" as the final definition of done - what do you think @zschira ? Or is that just part of catalyst-cooperative/pudl-archiver#2?

Kick off nightly build to detect problems stemming from new data

I feel like there are 2 ways we could approach this.

Use freshly archived data to do a nightly build, but only using the previously covered range of data. This would still integrate any corrections or tweaks that had been made to older data, which happens quite frequently, could be valuable, and I think usually wouldn't require any human intervention. The only thing we would need to do to make the PR is update the list of DOIs referenced, which would be very easy if they were in an YAML settings file rather than the code itself.
Try to process all the newly archived data, including new years that were previously unavailable. This will almost always require human intervention for some data sources (e.g. for FERC to EIA plant/util ID mapping, dealing with changes to EIA spreadsheet column names), but not for others (EPA CEMS seems very well behaved).

Can this be closed?

We should probably carve out the unfinished work in another issue or issues.

Better reporting & notification of archive creation and validation failures -- enumerate all the failures without needing someone to re-run to debug.
Have the monthly archiving action automatically create the archive approval checklist issue and populate it based on the archiving or validation failures.
Splitting out the Datastore seems like a totally separable thing.
There are some data sources which are well behaved enough that the automated PR to update the DOI seems like it could be reasonable, including eia930, eia_bulk_elec, eia860m, and epacems.

I've carved those out, minus the datastore thing, which is a persistent large thing we've been thinking about.
catalyst-cooperative/pudl-archiver#346
catalyst-cooperative/pudl-archiver#347
#3639
Closing!


Removing unused macro

@jasonsandlin,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

:shipit:


String columns from Frames are always decoded during access

Looking into some perf results it turned out that during queries involving windows the significance of restoring a String object from the Frame representation has some performance impact:

string data is stored as utf8 bytes
operations like compare and such use a ObjectColumnAccessorBase to access the value
since the type is String it have to be decoded
StringUtils#fromUtf8 allocates a new bytearray; copies stuff
java.lang.String constructor is used to decode the bytes from UTF_8

some benchmark results/tries
tried forcing the encoding to ISO-8859-1 which could have some advantages; but that will still retain a lot from the above
// base
Benchmark                                        (rowsPerSegment)  (schema)  (storageType)  Mode  Cnt    Score    Error  Units
SqlWindowFunctionsBenchmark.windowWithSorter               100000      auto           mmap  avgt    5  812.024 ± 24.003  ms/op
SqlWindowFunctionsBenchmark.windowWithoutSorter            100000      auto           mmap  avgt    5  611.424 ± 47.396  ms/op

// ISO-8859-1
Benchmark                                        (rowsPerSegment)  (schema)  (storageType)  Mode  Cnt    Score    Error  Units
SqlWindowFunctionsBenchmark.windowWithSorter               100000      auto           mmap  avgt    5  779.933 ± 29.665  ms/op
SqlWindowFunctionsBenchmark.windowWithoutSorter            100000      auto           mmap  avgt    5  613.465 ± 37.255  ms/op

note: For the Partitioner  its not even relevant if the String is lesser or smaller - it just needs to know if its the same or not; the same could not be said about the Sorter.
note: might be interesting to try and materialize the frame into object arrays before processing; so that the conversion only happens once

some flamegraphs about it
the sorter and the partitioner are affected by this

zoomed in a bit

@kgyrtkirk
I would like to work on this


raw_input not defined when attempting to download pack via tool

Running pack-manager cache devs STM32F401RETx results in this exception:
Traceback (most recent call last):
  File "/Users/creed/projects/pyOCD-flit/venv/mac37/bin/pack-manager", line 10, in <module>
    sys.exit(main())
  File "/Users/creed/projects/pyOCD-flit/venv/mac37/lib/python3.7/site-packages/cmsis_pack_manager/pack_manager.py", line 235, in main
    args.command(args)
  File "/Users/creed/projects/pyOCD-flit/venv/mac37/lib/python3.7/site-packages/cmsis_pack_manager/pack_manager.py", line 94, in thunk
    return command(cache, **argv)
  File "/Users/creed/projects/pyOCD-flit/venv/mac37/lib/python3.7/site-packages/cmsis_pack_manager/pack_manager.py", line 148, in command_cache
    raw_input("Press Control-C to quit; Press Enter to continue")
NameError: name 'raw_input' is not defined

Hmmmm... I should do a better job of testing on python3.

I've used six.moves.input() as a compatible replacement for raw_input().

I'll do that.


Update embedded-kafka to 2.8.1

Updates io.github.embeddedkafka:embedded-kafka from 2.7.0 to 2.8.1.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "io.github.embeddedkafka", artifactId = "embedded-kafka" } ]

labels: test-library-update, semver-minor

Closed in favour of #530


Doc:fix some mistake in Split_Learning_for_bank_marketing.ipynb

I fix some mistake in Split_Learning_for_bank_marketing.ipynb
Please review this PR of the update of the document.
when the English content are accepted, I will follow documentation-update-and-its-multilingual-version supply the Chinese version of document.

Please resolve the conflict.

I think we can merge #673 to this PR. One pr is enough.

I think we can merge #673 to this PR. One pr is enough.

D:\WorkShop\secretflow\sl\secretflow>git fetch

D:\WorkShop\secretflow\sl\secretflow>git merge mingbo/fl-doc
merge: mingbo/fl-doc - not something we can merge

mayber we need accept two PR.

Here merge means combine two PRs to one, not git merge - only one PR corrects the bank marketing doc.


Questions about porting TWRP for devices with i.MX6 SL

I have a Tolino Vision 2 and a Boyue T65s and am surprised that they both have a i.MX6SL inside. So, I am wondering if it is possible to port your TWRP to T65s？And if it's practical, how can I do it?
I am short of relevant experience and wish you to offer some suggestions. Thanks.

@0x7ffffff I believe it should be fairly easy port TWRP to T65, but I don't have a device myself.
I've tried to to poke T65 a bit with a help from another person that got device, but that was not very productive.
If you wan't to try, then good starting point would be:

try all the variants of twrp for i.mx6 devices: tolino generic, tolino shine 3, new nooks;
if you got any of the TWRPs above boot successfully (by boot I mean that device recognized by adb) then you're in look;
if none of the above boots you may try to replace kernel and fstab file in those TWRPs with ones from the T65 boot image using something like Android Image Kitchen;

That should be the first step.

@0x7ffffff I believe it should be fairly easy port TWRP to T65, but I don't have a device myself.
I've tried to to poke T65 a bit with a help from another person that got device, but that was not very productive.
If you want to try, then good starting point would be:

try all the variants of twrp for i.mx6 devices: tolino generic, tolino shine 3, new nooks;
if you got any of the TWRPs above boot successfully (by boot I mean that device recognized by adb) then you're in look;
if none of the above boots you may try to replace kernel and fstab file in those TWRPs with ones from the T65 boot image using something like Android Image Kitchen;

That should be the first step.

Thx, once I have free time I will try to do it.

Not directly relates to Tolino => closed.


Switch between "Fred Hutch Cromwell" and FH Logo in header title?

Incredibly minor, but the “Fred Hutch Cromwell” title gets cut off to “Fre” when you close the side menu (see screenshot below). Probably not necessary for MVP, but it looks like it’s possible to switch between the title when open and a logo when closed based on this example:

App: https://dgranjon.shinyapps.io/shinydashboardPlusDemo/
Source Code (lines 9-11): https://github.com/RinteRface/shinydashboardPlus/blob/master/inst/examples/app.R

thanks! I'll have a look - that also bothered me

(done in dev)


Flask Init

Nothing should be drastically changed or re arranged from what was originally there.
Two main things are:

Info folder we can put all README, instructions, misc, etc in.
app folder which contains the basic structure for our flask app

canceling


UiWindow style not applying. TargetType error.

I am trying to use the 'UiWindow' Static Resource, but I am getting an error.
Error: 'Window' TargetType does not match the type of element 'Window'
To Reproduce
Steps to reproduce the behavior:

Create a new WPF Window
Apply the Style="{StaticResource UIWindow}" property.

Expected behavior
The windows' style to change to UiWindow.
Desktop

OS:  Windows 10
.NET: net6.0-windows
Version: Stable 1.1.0 (Same error on the latest prerelease'39')

Turns out its a WPF error. Depending on the Version of 'Window' that the library was compiled for. It's a designer only error. If you have the designer (.xaml file) closed, the project will compile and build fine.

I have exactly the same issues with a project. It complains but still compiles. It's more of an annoyance than a "real" issue. Especially the designer doesn't show what I'm expecting it to show.  Every control that I add is translucent and I have to set the background of the underlying Grid to a color in order to see my controls.
The error is as follows: Error     XDG0062    TargetType "Window" does not match type of element "Window".
(ignore the styling, I'm currently redesigning the app)

My XAML looks also to be fine
<Window
    x:Class="OBS_Source_Timer.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:wpfui="clr-namespace:WPFUI.Controls;assembly=WPFUI"
    xmlns:wpfuiCommon="clr-namespace:WPFUI.Common;assembly=WPFUI"
    Title="OBS Source Timer"
    Width="800"
    Height="450"
    Loaded="Window_Loaded"
    Style="{StaticResource UiWindow}"
    mc:Ignorable="d">
...
</Window>

What's also curious about this is that the demo project runs fine without any complaints whatsoever and the designer also works as expected.
Desktop
OS: Windows 11 Pro 21H2
.NET: net6.0-windows
Version: Stable 1.2.1
Visual Studio 2022

Applying the Light theme in App.xml helps a lot with the issue, you can actually see and design your app that way without messing with background colors.


Add ORCA Load Report processing to Router::Filter.

Commit Message:

Add ORCA Load Report processing to Router::Filter.
Use lrs_endpoint_metric_reporting field of xds.core.v3.Cluster message to configure metrics to report.
Use OrcaParser to parse ORCA load reports from endpoint-load-metrics-bin response header or trailer.
Add metrics from parsed load reports to HostDescription::loadMetricStats for LRS reporting using existing LoadStatsReporter.

Risk Level: Low
Testing: //test/common/orca:orca_load_metrics_test, //test/common/router:router_test
Docs Changes: TBD
Release Notes: N/A
Platform Specific Features: N/A
#34777

/assign @adisuissa

/assign @wbpcode

/wait

/retest

Could you check the CI? Then we can merge it. Thanks. :)

/retest

Could you check the CI? Then we can merge it. Thanks. :)

I think CI looks happy.

follow-up comment to reviewers: let's try to keep extension specific code to extensions in future?  I don't think the router really needs to know about orca parsing - we already have orca-specific callbacks to the orca-specific LB, the parsing logic could and probably should live in extensions.

Load reporting is for sure code to Envoy, but I'd argue any specific algorithm and parser is not.  Even if this is one we really want Envoy to support it'd be better to allow for generic custom LB and generic custom reporting in a way others could add their own without also adding overhead to the router filter or other core Envoy classes.  Basically the more we add generic extension points the more flexible Envoy is.  The more we hard-code custom code, the more custom code gets compiles in :-)


Update schema for dpdkbond members

Since there is a limitation from OvS for minimum 2 members required for dpdkbond members, updating
the schema to allow only 2 ports.
Set default failure for schema errors.
Added negative test cases for the same.

I am not sure that an OVS DPDK bond can have only 2 members. It appears to me that the OVS source refers to RTE_MAX_ETHPORTS which is configured in the DPDK source as 'max_ethports' and defaults to 32 when compiling. So I think we should only have minitems: 2 with no maxitems and remove the test which checks to make sure there are no more than 2.

Updated shcema for checking only min items


Feature: Add SendAccessTokenRequest util

Description
This function is used for NF to request AccessToken from NRF.
Also, we maintain tokenMap and clientMap to reuse the token which is not expired or reuse client with the same configuration.

I already move all the OAuth related code to directory oauth/ and used package oauth.


Add option to open different orthoview in FSLEYES

When there are more than one contrast, it is extremely useful to have both contrasts opened to generate the manual segmentation. Example below:

To generate this display, see this example, as well as relevant discussion in FSL mailing list.

Great suggestion! Thank you! I will implement this feature.

Implemented in https://github.com/spinalcordtoolbox/manual-correction/pull/13


Added combinato test

why are you changing all the ss to si?

why are you changing all the ss to si?

@bendichter Nothing specific, just using new code api/syntax. Any caveats on that?

why are you changing all the ss to si?

@bendichter Nothing specific, just using new code api/syntax. Any caveats on that?

@chyumin I think we can keep the se/ss notation. You can check my comment on how to slice without using si.ChannelSliceRecording, but let's wait for tests to finish first