Is snap necessary?

Is there any workarounds to void using snap?

Of course. Please check out diagon's release page for binary install. The readme is a bit outdated.


typo: Double word "with"

@nschonni : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Verified typo fix.


feat: transition on theme change

Adding a transition to every single element on a page for all property changes will break the site's performance. You could add the transition manually on the theme switcher component, but imo this overcomplicates things for such a small visual change.

I don't think the performance is a problem in this case, or am I wrong? I never had a performance problem with such thing? Of course i could add it for each component, but that, as you said, overcomplicates things for such a small change.

Not on a relatively modern computer, but mobile users will suffer. Either way, this unintentionally adds e.g. hover and focus color transitions to links.

I don't have statistics, but I doubt most people browsing the Velocity website are on mobile devices. I believe desktop devices probably make up the majority of people browsing our website.

Not on a relatively modern computer, but mobile users will suffer. Either way, this unintentionally adds e.g. hover and focus color transitions to links.

Is that necessarily a bad thing?

Let's try it.

This works fine on Firefox but it's catastrophically broken on Chrome and WebKit/Safari. Reverting.

Sorry. Somehow I missed the pull request. How is it broken?


RESHAPE fails when result axis is same as source axis

Ned Cokelet reported this.  RESHAPE fails to return all the data it should.  This behavior starts with Ferret v7.21.
! Create a dataset with data along just one axis
yes? use levitus_climatology
yes? save/x=170/y=10/file=a.nc/clobber temp

yes? cancel data/all
yes? use a.nc

! Now define a new, one=point axis, and a grid which contains that axis and the same
! z axis from our saved data.

yes? cancel data/all
yes? use a.nc
yes? define axis/x=4:4:1/units=count xax
           *** NOTE: (fyi) units are not subject to auto-conversion: COUNT
yes? let dummy = x[gx=xax] + z[gz=temp]
yes? show grid dummy
    GRID (G002)
 name       axis              # pts   start                end                 subset
 XAX       X (COUNT)            1 r   4                    4                   full
 normal    Y
 ZAXLEVITR DEPTH (m)           20 i-  0                    5000                full
 normal    T

! Now try to use RESHAPE to stick the data onto this new grid. It should list 20 points in Z

yes? list reshape(temp, dummy)
             VARIABLE : RESHAPE(TEMP, DUMMY)
             FILENAME : a.nc
             X (COUNT): 4
          28.19

It doesn't matter whether the variable TEMP has other 1-D dimensions as in this example, or no other dimensions; the same thing happens.
If the regrid is to a different Z axis, with the same or different coordinates, it works correctly.
yes? use a.nc
 yes? define axis/x=4:4:1/units=count xax
           *** NOTE: (fyi) units are not subject to auto-conversion: COUNT
yes? define axis/z/depth/units="`temp,return=zunits`" znew = z[gz=temp]
 !-> define axis/z/depth/units="meters" znew = z[gz=temp]

yes? let dummy =  x[gx=xax] + z[gz=znew]

yes? list reshape(temp, dummy)
             VARIABLE : RESHAPE(TEMP, DUMMY)
             FILENAME : a.nc
             SUBSET   : 20 points (DEPTH (m))
             X (COUNT): 4
                  4
                  1
 0       /  1:  28.19
 10      /  2:  28.16
 20      /  3:  28.12
 30      /  4:  28.10
 50      /  5:  27.96
 75      /  6:  27.08
 100     /  7:  24.92
 150     /  8:  17.51
 200     /  9:  12.35
 300     / 10:   9.61
 400     / 11:   8.52
 600     / 12:   6.79
 800     / 13:   5.46
 1000    / 14:   4.49
 1200    / 15:   3.78
 1500    / 16:   3.01
 2000    / 17:   2.20
 3000    / 18:   1.61
 4000    / 19:   ....
 5000    / 20:   ....

This stems from a change made in 3/17 in gcf_impose_axes.F, as part of a checkin that Steve made.  The routine does not contain comments about the change and it resulted in changes to a couple of other benchmark scripts, err491_reshape_ctx.jnl and bn_true_monthly.jnl
I am guessing that this may have been an unintended checkin of an experimental change, and so am restoring the previous version.  The two benchmark scripts listed above now run as they had in v7.1 and prior versions.


[Enhancement] Play wake word feedback in parallel to improve Alexa responsiveness

This is an enhancement suggestion.
Currently we wait until wake work feedback (the "yes" sound) finishes then connect to AVS and then stream recorded voice. Connecting to AVS isn't always fast, can be seconds, and that causes a delay in Alexa respond - very often in my experience. Eventually, we can connect to AVS earlier and make Alexa feel more responsive.
Let's start playing "yes" in parallel in another thread while connecting to AVS immediately after the wake word is detected. Then the sound playback thread needs to join back before we start recording and send speech to AVS.

I hacked it locally and Alexa feels a lot smoother.

Very good idea, I think there's no problems to do that.
If you have done it, you can push your local git to Github and make a pull request.
Emerick

@lap-tran Can you open a PR with this?

This sounds like a great idea, it always seemed kinda laggy to respond.


Add finish progress step

Depended on #56
No error
https://user-images.githubusercontent.com/11807069/186199592-29d07436-d04c-4084-9866-0b2ba732c25b.mov
With error
https://user-images.githubusercontent.com/11807069/186199645-e02cfb48-8400-428e-8c4b-a2c4cebb5ef8.mov
This PR adds a progress screen after submission, developed according to  PF4 design recommendation: https://www.patternfly.org/v4/components/wizard/design-guidelines

[x] Add progress component
[x] Trigger public ssh key upload
[x] Trigger AWS reservation creation
[x] Render errors
[ ] Testing
[ ] Optional: create a polling for reservation status

@ezr-ondrej, rebased :)


Iterate on Card Design

Discussed card design framework with @elioqoshi to work towards more a visual language for the cards.
cc @andycochran who I think was also interested in the card design work

We got started here firstly with the branding: https://github.com/uracreative/works/issues/23


Fix installed version number

The option use_scm_version=True overrides the version number in version.py with a version number from git. This leads to version 1.1.1 being reported instead of version 2.0.0.

While I agree with @nielsdrost that this is a good idea in principle, I think that for users it it more important to consistently report the correct major version number (i.e. version 2), if necessary with -dev and the date attached to show that this is not an actual release.
Therefore I would suggest that for now we merge this PR, and once we have at least one version 2 release out and the automatic system will report the correct major version number, we can implement the suggestion by Niels.


POSIX scripts for examples are not included in the dsitribution

The scripts to run the examples are not included in the released version.

Done 029034b


Apk size increases by 3mb

Hey,
I added your library and the size of my apk increased by 3 mbs. Are you also shipping lots of images with the library ?
Thanks
Vihaan

What do you think?
:-)

I'm guessing it's the images. Can't be sure unless I check the source code :|

You're right, it's the actual emojis taking all that space.

@VihaanVerma89 were you able to add this lib?


docs: fix the issue with the Slack link not allowing external users to join

The original community entry link was limited to PingCAP internal members, and has now been replaced.

What is changed and how it works?

Issue Number: ref #15990

What's Changed:

Related changes

[ ] PR to update pingcap/docs/pingcap/docs-cn:
[ ] Need to cherry-pick to the release branch

Check List
Tests

[ ] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Release note

/title *: update README.md

/retitle *: update README.md

/hold

Can you also update this link to slack?
https://github.com/tikv/tikv/blob/c1e506eff743ea7236e76b2af64a1257233d2771/CONTRIBUTING.md?plain=1#L5

/unhold

/retest

/retest

/ok-to-test

/retest


🚀 Feature: provide ability to configure session refresh time

🔖 Feature description
Provide an additional auth config like:
auth:
   sessionRefreshTime: { minutes: <user_defined_value> }

To customize the value here that determines or not whether or not a session should be refreshed/ new refresh token should be requested.
🎤 Context
For IAM solutions like Keycloak, the default access token lifespan is set to 5 minutes. This means that by default, every single API call will send a request to http://<backstage-url>/api/auth/oidc/refresh?optional&scope=&env=development to get a new oidc-refresh-token. This slows down the application and sends a lot of unnecessary requests.
✌ Possible Implementation
No response
👀 Have you spent some time to check if this feature request has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

Are you willing to submit PR?
Yes I am willing to submit a PR!

Ah, that's certainly unfortunate. That timing was fairly arbitrarily chose when all sessions we where using expired in 1h (and surely no token would only last 5 minutes, right?). I'd be happy to bring that grace period down a bit. It exists be on the safe side when making requests with the provided token that might take a while to complete, but I think we could safely bring it down to at least 3 minutes rather than 5. What value would you want to use if it was configurable?

@Rugvip Sorry about the late response! Bringing down the grace period statically works as well. It's pretty subjective what value is suitable but I would agree with 3 minutes, as long as the refresh request is not being sent per API call it solves the problem :)
If that sounds good I can make a quick PR to update the grace period?

@JessicaJHee yep sounds good 👍


Full pip install expected to fail on Rawhide

Because of aio-libs/aiohttp/issues/7229 the full pip install test is expected to fail on rawhide until the issue is fixed. Move test code from the plan to a real test to enable the adjust rule.

How can this change break docs generation?

How can this change break docs generation?

This is a different issue: https://github.com/teemtee/tmt/pull/2249


Fix version-bump.yaml prettier done on ADO

Changes
Fix prettier in a change I made directly in Azure Pipelines that didnt validate prettier on commit. My bad.
Testing

@Mergifyio backport release/4.4.x


html5lib unused?

The html5lib project is not maintained, so I was looking at what used it on my system and found pip-audit:
https://github.com/pypa/pip-audit/blob/72d5a607b90406bd394d54ce8391678b96fc5aa3/pyproject.toml#L32
However, I only get one match in pyproject.toml, I don't see an import html5lib or anything else referencing it.
Is it really used?

Is it really used?

Nope, I think that's a vestigial dep from when pip-audit was parsing the PEP 503 index on its own.
If you're interested in sending a PR to remove that dep, I would be happy to review it :slightly_smiling_face:

Thanks. My proposed fix is in #863.


Issues with week start date and exogenous variables

Report from a user
There are a couple of issues with the current nixtlar package (0.5.2).

Fails to produce anything if weekly data starts with Monday, not Sunday. (When I shift the dates to align with Sunday, it works).
When trying to use exogenous variables, it produces an error message "The future values of the exogenous variables must cover the forecast horizon" no matter what.

Here is a reproducible example in R:
# Example current data and exogenous variables
test_current_data <- tibble(
    date = seq.Date(from = as.Date("2023-01-01"), by = "week", length.out = 10),
    revenue = rnorm(10, mean = 100, sd = 10)
)

test_xregs_tbl_au <- tibble(
    date = seq.Date(from = as.Date("2023-01-01"), by = "week", length.out = 10),
    exog_var1 = rnorm(10),
    exog_var2 = rnorm(10)
)

# Define the forecast horizon
forecast_horizon <- 12

# Create future dates
last_date <- max(test_current_data$date)
future_dates <- seq.Date(from = last_date + weeks(1), by = "week", length.out = forecast_horizon)

# Extend exogenous variables to cover the forecast horizon
future_test_xregs_tbl_au <- tibble(
    date = future_dates,
    exog_var1 = rnorm(forecast_horizon),
    exog_var2 = rnorm(forecast_horizon)
)

# Combine current and future exogenous variables
test_xregs_tbl_au <- bind_rows(test_xregs_tbl_au, future_test_xregs_tbl_au)

test_current_data %>% glimpse()
test_xregs_tbl_au %>% glimpse()

# Ensure test_xregs_tbl_au now covers the entire forecast horizon
print(test_xregs_tbl_au)

# Example call to nixtla_client_forecast (assuming the function and required parameters are defined)
result <- nixtla_client_forecast(
    df = test_current_data,
    X_df = test_xregs_tbl_au,
    h = forecast_horizon,
    target_col = "revenue",
    time_col = "date"
)
print(result)

Thanks for raising this issue @tracykteal.

Regarding the dates, as mentioned in the documentation, nixtlar assumes that weekly data starts on a Sunday. If that is not the case, then users need to specify the day of the week with the freq parameter (for example, freq = W-MON, freq = W-TUE, etc.).

Regarding the exogenous variables, X_df  should only contain the future values of the exogenous variables. The historical variables should go in df. Hence, in the example given above, we just need to make a slight modification.

# Combine historical data (target+exogenous variables)
input_data <- merge(test_current_data, test_xregs_tbl_au)

input_data %>% glimpse()
future_test_xregs_tbl_au %>% glimpse()

# Example call to nixtla_client_forecast (assuming the function and required parameters are defined)
result <- nixtla_client_forecast(
  df = input_data,
  X_df = future_test_xregs_tbl_au,
  h = forecast_horizon,
  target_col = "revenue",
  time_col = "date"
)

print(result)

Although this wasn't raised as an issue, the CRAN version of nixtlar is designed to work with data frames and tsibbles. The next version will also have explicit support for tibbles, which usually work fine but can lead to issues when dealing with hourly data.

Thanks @MMenchero! I've passed that along and will close out this issue. I'll reopen if there are more related questions.


Merge Dev ke PRD 8 April 2017 - fix pdf SC dan FM ISO Kanban

Coverage increased (+0.006%) to 64.51% when pulling de0e1c1122d761b027797c336a08a5859003885e on uat into cca72d11b25daacb3bc733b7710d95d7b26c226f on master.


Autocompletion of seed phrase (after 4 chars)

Once user started to print the word - suggest completion option
User should tap on suggested word, if he does so, so the cursor jumps to the next word
On the last word the cursor doesn't jump
If user doesn't tap on suggested word , the cursor will not jump, he will need to move to next tab manually

what happens with short words (3-4 chars) ?

almost all  keyboards have autocomplete feature (suggesting a word by user input), why do we need to implement it manually?

It was explained today

checked


Seeking a suggestion of how feed the shapes into syphon

I am toying with the idea of combining laser and video–projection whereby the laser outlines would be mapped together the filled video shapes onto the same surface. Both laser and video projectors must take into account the image warping produced by an operator in the ofxLaser app, which uses svg files as input. Laser would produce outlines, projector would produce the filled shapes, which would be adjusted perspective-wise by the external application receiving the syphon input from the ofxLaser app.
@sebleedelisle could you suggest architecturally where I could plug in syphon server to stream the warped shapes out?
Thanks

If it were me I would render the finished manipulated shapes into ofxLaser - you can use the zone output settings to fix the perspective for the laser at least. Then I would render them again into an FBO. In the past when I have done this, I have put the output onto a different screen space and outputted that to a projector (using a custom perspective correction system that I can dig out if you like). But I don't think it'd be any different sending it to syphon if you prefer. Does that answer your question?

I am drawing filled shapes in ofxLaserManagerBase::drawPoly like so:
void ManagerBase::drawPoly(const ofPolyline & poly, const ofColor& col, string profileName, float brightness){

	// quick error check to make sure our line has any data!
	// (useful for dynamically generated lines, or empty lines
	// that are often found in poorly compiled SVG files)

	if((poly.size()==0)||(poly.getPerimeter()<0.01)) return;

	ofPolyline& polyline = tmpPoly;
	polyline = poly;

	for(glm::vec3& v : polyline.getVertices()) {
		v = gLProject(v);
	}

    **//BEGIN FILL THE POLYLINE
    ofBeginShape();
        for( int i = 0; i < polyline.getVertices().size(); i++) {
            ofVertex(poly.getVertices().at(i).x, poly.getVertices().at(i).y);
        }
    ofEndShape();
    //END FILL THE POLYLINE**

	Polyline* p =new ofxLaser::Polyline(polyline, col*brightness, profileName);
	p->setTargetZone(targetZone); // only relevant for OFXLASER_ZONE_MANUAL
	shapes.push_back(p);
}

As far as I understand the call to gLProject(v); should take care of wraping, however the output I get is not warped:

Once I am able to apply the warp to these filled shapes, I am going to feed them into syphon via FBO.
However, what am I doing wrong not able to warp the added shapes?
Thanks a lot.

I'd like to take the warped shape, SEBLEE, for example's sake, (like in the Left Lower Corner in the picture above), fill it (using ofBeginShape/ofEndShape), and send it to syphon. I don't think you can call it a "creative effect" –– it is just a filled shape which has been warped precisely as in the interface above.
If I read you right, this should happen in the "zone warping within ofxLaser" –– could you specify that place in terms of specific file and method?
Thanks!

The warp system in ofxLaser is specifically designed to warp the point stream that is sent to the laser. It's not designed for warping bitmaps so you will need to build a separate system for doing that with a bitmap image.
Either way, you would need two separate processes to warp the laser output and the projector output as the laser and projector will have different positions, and different lens/scanner distortions and it will be impossible to line them up otherwise.
I'm sorry I don't have an easier answer for you but there are a number of openFrameworks addons that can perform perspective undistortion on bitmaps, have a hunt around ofxAddons - good luck!
Kindest,
Seb

That's the corner I meant  to be in:
https://user-images.githubusercontent.com/542368/167911119-79a899a2-4dbb-4c56-a068-833d99134a1c.mov
Could you suggest how to get a cleaner version of laserPoints to get a clean fill?
Thanks!


fix: DAG rendering from code package

fixes issue with rendering legacy DAG's from a code package which have a parallel foreach step.
Also cleans up the custom FlowGraph implementation to rely more on inheriting base classes from the Metaflow client

Confirmed that the DAG renders with the code from this branch, and fails with the code from master.
Is it possible to add a unit test for this?

Good call, added a few to cover expected behaviour and error cases  :)


Exclude empty paths on ChunkDict creation

This was discovered while experimenting with GOES data, kudos to @t-mcneely for discovering this. We think there's a small bug in the filter expression during ChunkDict creation. Ultimately this caused a problem when reading/writing kerchunk stores of the data.
Here's a neat image rendering the chunk grid we were working with, note how the corners are empty:

[x] Tests added
[x] Tests passing
[x] Full type hint coverage
[x] Changes are documented in docs/releases.rst

Thanks!
FYI I'm currently actually road-tripping and just occasionally looking at all the great PRs you are raising from my phone... Let me know if it would be useful to give more people push access.

Enjoy your road trip! If you could give @TomAugspurger access, I trust him to review my changes, but please don't feel like you need to keep up with PRs on the road. I can always work off a fork.


SAK-29499 remove outdated maven 1 project files

LGTM

+1, this has been on my 'kill list' for a while now.

-736 lines...


⚠ Secret Website 3 has degraded performance

In fe1d620, Secret Website 3 ($SECRET_WEBSITE_3) experienced degraded performance:

HTTP code: 200
Response time: 8009 ms

Resolved: Secret Website 3 performance has improved in 2ad4661.


issues about web viewer

Thanks for your work! nice!
I have some issues about web viewer.

1.Just like the operation marked in the figure,  I select drawdet first, and  get the test result.
But if I change the index of the image immediately, I will get an error:
error: get point cloud fail!!
Is my operation sth wrong?
2.Can web viewer generate a video about the test results?

I have the same problem with you.

Thanks for your work! nice!
I have some issues about web viewer.

1.Just like the operation marked in the figure, I select drawdet first, and get the test result.
But if I change the index of the image immediately, I will get an error:
error: get point cloud fail!!
Is my operation sth wrong?
2.Can web viewer generate a video about the test results?

Hi, I want to ask you how you visualize the prediction bbox. I follow the provided instruction, but I can only visualize the gt bbox even I select "drawdet".


ci: update setup_deno version to 1.1.1

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 91.294%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
319

Relevant Lines:
347

💛  - Coveralls


Ja/retry settings.w 7391789

Added the ability to set retry settings to calls.
i.e.
product.getProduct({
  retrySettings: {
    retries: 2
  }
});

or in the client
let client = new Product({
  retrySettings: {
    retries: 5
  }
});

This PR doesn't follow the new documentation guidelines. :-1:


Move Line Up

Description
If I want to move the last line in a file up I can do it by pressing Ctrl+Cmd+Arrow (Mac)
Proper behavior:
If there is a newline character at the end of that line, it will change from
Previous line
Last line

to
Last line
Previous line

Wrong behavior:
But if there is no newline character at the end of the last line, the hotkey will just concatenate it with the previous line
Last linePrevious line

Version 1.7.4
Problem persists in safe mode.

Confirmed on OSX El Captain using atom 1.7.4 in safe mode.

Can also reproduce on Debian sid with Atom 1.8.0.

Just discovered this myself in 1.9.0-beta0, OSX 10.10.5.
Presumably due to the fact that move-line-* commands assume that all lines end in a \n (or whatever the platform newline character is) and therefore it ends up placing the content of "Previous Line" directly after the contents of "Last Line" which ends up adding it on with no newline as there is no newline on "Last Line"


About the  model checkpoints

Hi, I try to download the model checkpoints, whose format is pytorch_model.bin, while what I download actually is a XXX.zip file? ? Can you give me some help? Thanks.

Where did you download it? You can directly load the model by using from_pretrained.


Updating options causes the chart to re-animate

I am updating the chart's options dynamically (switching between linear and logarithmic scale), but the chart then gets reinitialized and animates again. If only the options are updated and not the data, the chart should be updated with chart.update() instead.

Need this functionality to implement in angular 2 /8.


Some improvements to the Browser app

Hi again!
I decided to try and improve the Browser app a bit, with the very limited TypeScript skills I have, and the following is what I did

Fixed an oversight in the Browser code that previously made it impossible to open .HTM files

The .HTM extension was already correctly registered in components/system/Files/FileEntry/extensions.ts to open in the Browser. The problem was that, when opened, the Browser only checked for the .HTML extension to decide if the URL was a webpage or not, so it just treated the URL as a search query

Registered a new file extension: .AHTML

It stands for "App HTML", and is meant for HTML files, ideally self-contained web apps, that open in a minimal browser Window (see below)

Made the Browser load as a minimal webview-like window if it has to open an AHTML file

For HTML files with this extension, the Browser loads as a window without any UI elements (navigation buttons, omnibox, or bookmarks bar). As I said, it's ideal for apps. Demo video here: https://user-images.githubusercontent.com/37557992/179304737-448994e4-c780-44af-8a96-0a07f688c6ab.mp4

I also have some other ideas for the Browser, which I should likely propose in a ticket (for example, making the UI similar to the File Explorer one, instead of using the Chromium style, for consistency reasons), but for now, this is it!

Thanks for the suggestions. I will look into these ideas/code and see how it fits into the project. Indeed htm not working is an oversight. I like the idea of an ahtml type thing for iframe contained apps but I need to think a bit more about that implementation as I have some apps already that are basically an iframe but I treat them separate as in general I am making an offline app that happens to be online still atm. As for the look of the browser, I actually like it looking like Chromium as I do have future plans to make it more Chrome like such as putting the Dino (https://github.com/binji/raw-wasm/tree/master/dino) game when offline. Feel free to post any other feedback in Issues/Discussions or in another PR to review. Thanks!

Thanks again for the PR. I've added the htm change to the Browser app as it indeed was suppose to load those properly. As for the ahtml extension and the WebViewer concept, at the moment I am not sure I would want to re-use the browser app in this way and at the same time in general I am against iframe apps and try and avoid them. I prefer the apps to be as integrated as possible. If there is a desire to load something from an external url into the iframe, I would rather continue to use the favicon/bookmark concept in the browser to allow people to see the url and its icon and know its external to the app. If the iframe is to load local html, then I would rather resolve a way to have it be part of a dedicated app with hooks and more integration with react and lifecycles. The iframe's also don't show in Peek because of a limitation of the canvas image capture libraries.


feat: update css style of codeblock

Closes #1007

It will breaks the generated sharing image. e.g.

BTW, I think it should customize by user self.

ok


What is the password when first opening the page

What is the password when first opening the page

I also want to know

The default password is : one-very-long-and-mysterious-secret
It is defined by the setting AUTHENTICATION_SECRET described in the Configuration section of the README.


[FEATURE] Is there a tutorial for maddpg.py

Hi,
this project is really awesome and the codes is well structured!
Is your feature request related to a problem? Please describe.
I have run some codes in examples/tutorials, but can not find some about MARL algorithms such as maddpg.
Describe the solution you'd like
Since you have already implemented the maddpg.py and test_maddpg.py, I am wondering could you implement a tutorial for maddpg.py too? (It would be better to implement more MARL algorithms, such as COMA, QMIX, VDN)

Yes, I will add a simple example for every framework tomorrow. Also I would like to know what's the most valuable / interesting MARL algorithm you consider to be, as I don't have to time to implement, test, and optimize performance for all these algorithms...
Preferably a performance comparison chart for COMA, QMIX, VDN?

Example added https://github.com/iffiX/machin/commit/40d729e6b3079176ab77479eed4aad20e3ec0ec0


Handle errors on attach properly

Signed-off-by: Daniel J Walsh<EMAIL_ADDRESS>

Fixes: https://github.com/containers/libpod/issues/6575

@mheon @baude @giuseppe @vrothberg @QiWang19 @jwhonce @ashley-cui PTAL

LGTM

@vrothberg @mheon Rewritten using select statement.

LGTM

Changes LGTM, but one of the tests looks to be upset.

/lgtm


Configuration - can't connect with external postgres instance

Hi, I'm not sure if it's bug or my misunderstanding of documentation.
Goal
My goal is to create environment with external database (Postgres).
Versions

Chart: 8.3.2
Airflow image: 2.0.2-python3.8
helm: version.BuildInfo{Version:"v3.6.2", GitCommit:"ee407bdf364942bcb8e8c665f82e15aa28009b71", GitTreeState:"clean", GoVersion:"go1.16.5"}
kubectl Client Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.7", GitCommit:"1dd5338295409edcfff11505e7bb246f0d325d15", GitTreeState:"clean", BuildDate:"2021-01-13T13:23:52Z", GoVersion:"go1.15.5", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.7", GitCommit:"1dd5338295409edcfff11505e7bb246f0d325d15", GitTreeState:"clean", BuildDate:"2021-01-13T13:15:20Z", GoVersion:"go1.15.5", Compiler:"gc", Platform:"linux/amd64"}

Specification
I followed documentation and finished with values-develop.yaml
airflow:
  extraPipPackages: []
  image:
    tag: 2.0.2-python3.8

  executor: KubernetesExecutor

  variables:
    - key: "environment"
      value: "acceptance"

  pools: []

  fernetKey: "<fernetKey>"

  config:
    AIRFLOW__API__AUTH_BACKEND: "<data>"
    AIRFLOW__CORE__DAGS_ARE_PAUSED_AT_CREATION: "False"
    AIRFLOW__CORE__ENABLE_XCOM_PICKLING: "True"
    AIRFLOW__ELASTICSEARCH__END_OF_LOG_MARK: "end_of_log"
    AIRFLOW__ELASTICSEARCH__HOST: "<data>"
    AIRFLOW__ELASTICSEARCH__JSON_FIELDS: "asctime, filename, lineno, levelname, message"
    AIRFLOW__ELASTICSEARCH__JSON_FORMAT: "True"
    AIRFLOW__ELASTICSEARCH__LOG_ID_TEMPLATE: "{dag_id}_{task_id}_{execution_date}_{try_number}"
    AIRFLOW__ELASTICSEARCH__WRITE_STDOUT: "True"
    AIRFLOW__EMAIL__EMAIL_BACKEND: "<data>"
    AIRFLOW__LOGGING__REMOTE_LOGGING: "True"
    AIRFLOW__SMTP__SMTP_HOST: "<data>"
    AIRFLOW__SMTP__SMTP_STARTTLS: "<data>"
    AIRFLOW__SMTP__SMTP_SSL: "<data>"
    AIRFLOW__SMTP__SMTP_PORT: "<data>"
    AIRFLOW__SMTP__SMTP_MAIL_FROM: "<data>"
    AIRFLOW__WEBSERVER__DAG_DEFAULT_VIEW: "graph"
    AIRFLOW__WEBSERVER__EXPOSE_CONFIG: "True"

  kubernetesPodTemplate:
    extraPipPackages:
      - "toml==0.10.2"

postgresql:
  enabled: false

externalDatabase:
  host: <data>
  port: <data>
  database: <data>
  user: <data>
  passwordSecret: "<data>"
  passwordSecretKey: "<data>"
  properties: ""

scheduler:
  extraPipPackages:
    - "toml==0.10.2"

flower:
  enabled: false

workers:
  enabled: false

dags:
  gitSync:
    enabled: true
    repo: "<data>"
    repoSubPath: "dags"
    branch: develop
    httpSecret: "<data>"
    syncWait: 10

ingress:
  enabled: true

redis:
  enabled: false

And execution of helm:
    helm3 upgrade $RELEASE_NAME \
        airflow-stable/airflow \
        --kubeconfig ./kubeconfig \
        --namespace $NAMESPACE \
        --version 8.3.2 \
        --values values.yaml \
        --set ingress.web.host=$AIRFLOW_URL \
        --set dags.gitSync.branch=$BRANCH_NAME \
        --values values-develop.yaml  \
        --install

Debugging & tests
When I check logs for scheduler pod's container airflow-schedule I see error:
[2021-07-07 05:28:20,249] {cli_action_loggers.py:105} WARNING - Failed to log action with (psycopg2.OperationalError) could not connect to server: Connection timed out
	Is the server running on host "<host>" and accepting
	TCP/IP connections on port <port>?

The same thing repeats when I try to execute some DAG related action. A pod is created correctly, but fails with db connection.
The pod with a web app works correctly (when I execute nc -vz <postgres_host> <postgres_port> it can connect).
I did a quick test and copy-pasted the webserver service, then changed names to fit with a scheduler and it fixed db connection for the scheduler.
For pods created to execute DAG related actions I couldn't create service, since there is no deployment.
When I tried version with internal postgres (postgres.enabled=true) everything works fine.
Question
How to configure scheduler and DAG related pods to be able to connect with external database in proper (expected by you) way?

The log looks like you are submitting the literal value "" as the host for the postgres db. Try replacing  with the actual host of the running external db. Same thing goes for user, password, port, etc

@TheGeniesis a few questions:

Are you using something like istio (which can prevent outbound connections from pods)?
Did you run nc -vz <postgres_host> <postgres_port> from WITHIN the scheduler container (or from your laptop)?
Can you explain what you mean when you said:

I did a quick test and copy-pasted the webserver service, then changed names to fit with a scheduler and it fixed db connection for the scheduler.

The log looks like you are submitting the literal value <host> as the host for the postgres db (unless you purposefully censored that from this post). Try replacing with the actual host of the running external db. Same thing goes for user, password, port, etc. Hardcoding the values is likely fine to test locally as long as you don't commit the creds to a repo for all to see!

Hi @wyattshapiro thank you for the answer. I replaced it. In the original error message, it shows the correct IP address and correct port.
As I wrote before this configuration works correctly when I create a service for the scheduler pod.
Hi @thesuperzapper Here are answers:

Are you using something like istio (which can prevent outbound connections from pods)?
I don't think so, but I will double-check it

Did you run nc -vz <postgres_host> <postgres_port> from WITHIN the scheduler container (or from your laptop)?
First, I executed it from webserver pod to be sure that it works (and works), then I executed it from the scheduler pod (airflow-schedule container).
From my laptop, I used Dbeaver to check if DB is reachable and yes, it is.

Can you explain what you mean when you said
I created a new file, copied webserver service content, and replaced values to fit with the scheduler. Then I executed kubectl apply and repeated deployment.
The configuration was like this:

apiVersion: v1
kind: Service
metadata:
  name: <name>-web
  labels:
    app: <name>
    component: scheduler
    release: {{ .Release.Name }}
    heritage: {{ .Release.Service }}
spec:
  type: NodePort
  selector:
    app: <name>
    component: scheduler
    release: {{ .Release.Name }}
  sessionAffinity: "None"
  ports:
    - name: web
      protocol: TCP
      port: 8080
      nodePort: 30000
      targetPort: 8080

With service, the scheduler was able to connect external DB (I stopped receiving errors). When I removed it the problem has returned.

@TheGeniesis
Where are you running your external postgres, is it inside the Kubernetes cluster, or truly external?
I don't understand why creating a Service would do anything as it's unrelated to outbound connections from pods). Why did you even think to do this?
Can you give more context about your Kubernetes environment, where are you hosting your cluster?

Hi @thesuperzapper the problem was related to the network infrastructure. When other team solved it everything started working correctly. Sorry, for bothering you.
Yes, service for scheduler is redundant.
Issue can be closed.

@TheGeniesis thanks


NameError: global name 'urllib2' is not defined

While exporting basic or advanced report through email getting
NameError: global name 'urllib2' is not defined error
Python 2.7
MongoDB shell version v3.6.3

has this been resolved?  I am still getting the error.

Which version of mongoaudit are you using?

Successfully installed mongoaudit-0.1.0 pymongo-3.11.1 urwid-2.1.2
I notice that some of the files online were different than the ones
installed.  For instance, the tools.py file on my laptop and the tools.py
file on the git page are not the same.
On Wed, Dec 2, 2020 at 4:50 PM Sebastián Rajo<EMAIL_ADDRESS>wrote:

Which version of mongoaudit are you using?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/stampery/mongoaudit/issues/47#issuecomment-737543313,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIJKHYFOZKCIQJ6DTLI2EDLSS3AC3ANCNFSM4KB7VI5A
.

--
Jacob Goodson

That issue is already fixed. I have no permission to update pip with the new version. You can download the latest release from here: https://github.com/stampery/mongoaudit/archive/0.1.1.zip
Then:

Remove previous installation
Unzip the zip file. Go to the folder mongoaudit-0.1.1 and run: python setup.py install
Run mongoaudit

what's the best way to remove the previous version?
On Wed, Dec 2, 2020 at 5:14 PM Sebastián Rajo<EMAIL_ADDRESS>wrote:

That issue is already fixed. I have no permission to update pip with the
new version. You can download the latest release from here:
https://github.com/stampery/mongoaudit/archive/0.1.1.zip
Then:

Remove previous installation
Unzip the zip file. Go to the folder mongoaudit-0.1.1 and run: python
setup.py install
Run mongoaudit

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/stampery/mongoaudit/issues/47#issuecomment-737552706,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIJKHYBBXCKSWLJJ5VINOMLSS3C5VANCNFSM4KB7VI5A
.

--
Jacob Goodson

what's the best way to remove the previous version?

pip uninstall mongoaudit


Create a Component Class

This issue gather the issues related to the creation of the Component Class.

[x] Create the Class
[x] Must have a name (maybe std::string and the name can not be change after the creation
[x] The name can be get ( the class must have a getName() function)

Please improve the description of your issue. It's better than previously, but you can do a better issue.
The first checkbox "Create the class" can include the name of the class, the objective of the class, what can we do with this class, ...
For the second checkbox, what represents the name ? A better description will answer this question.
Furthermore, please link your commit with the issue, and close it when it's done !


col-*-push/pull-12 use cases

Following up on this Stack Overflow question... if it's not possible to reorder full-width (12) columns then why does Bootstrap has col-*-push-12 and col-*-pull-12 classes in the first place? What are their use cases? They break layout:

col1

col2

```
http://stackoverflow.com/questions/25714852/change-the-order-of-col-12-columns-in-bootstrap-3-by-using-push-pull

Yeah they're useless, but unless someone wants to open a PR to prevent their creation, I'm fine leaving them in.


[type:refactor] change the Chinese note to English

Make sure that:

[x] You have read the contribution guidelines.
[x] You submit test cases (unit or integration tests) that back your changes.
[x] Your local test passed ./mvnw clean install -Dmaven.javadoc.skip=true.

Codecov Report

Merging #4323 (9c4dbff) into master (dd35e77) will decrease coverage by 0.18%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #4323      +/-   ##
============================================
- Coverage     68.08%   67.90%   -0.19%
+ Complexity     7466     7453      -13
============================================
  Files          1015     1015
  Lines         28745    28734      -11
  Branches       2575     2571       -4
============================================
- Hits          19571    19511      -60
- Misses         7648     7692      +44
- Partials       1526     1531       +5

Impacted Files
Coverage Δ

...alibaba/dubbo/AlibabaDubboServiceBeanListener.java
0.00% <ø> (ø)

...t/apache/dubbo/ApacheDubboServiceBeanListener.java
0.00% <ø> (ø)

...che/shenyu/sync/data/http/HttpSyncDataService.java
70.40% <0.00%> (-19.39%)
:arrow_down:

...he/shenyu/common/timer/HierarchicalWheelTimer.java
68.00% <0.00%> (-14.00%)
:arrow_down:

...yu/sync/data/http/refresh/AbstractDataRefresh.java
68.96% <0.00%> (-13.80%)
:arrow_down:

...va/org/apache/shenyu/common/timer/TimingWheel.java
73.80% <0.00%> (-9.53%)
:arrow_down:

...henyu/common/cache/MemorySafeWindowTinyLFUMap.java
73.33% <0.00%> (-8.34%)
:arrow_down:

.../org/apache/shenyu/common/timer/TimerTaskList.java
74.72% <0.00%> (-7.70%)
:arrow_down:

...a/org/apache/shenyu/common/utils/VersionUtils.java
21.27% <0.00%> (-6.39%)
:arrow_down:

.../client/server/consul/ShenyuConsulConfigWatch.java
81.25% <0.00%> (-4.17%)
:arrow_down:

... and 12 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


UNRESPONSIVE extension host, 'vscode.typescript-language-features'

Version: 1.32.0-insider (user setup)
Commit: c23e8995f6e31b3540e0a2c3d4fdc58e6d7cba53
Date: 2019-03-04T17:23:10.903Z
Electron: 3.1.3
Chrome: 66.0.3359.181
Node.js: 10.2.0
V8: 6.6.346.32
OS: Windows_NT x64 10.0.17763

Steps to Reproduce:

Have a mid sized Typescript project (around 80 files)
Try to type fast, back and forth between multiple files

[2019-03-05 03:51:30.776] [renderer3] [warning] Aborted onWillSaveTextDocument-event after 1750ms
[2019-03-05 03:54:10.031] [renderer3] [warning] Aborted onWillSaveTextDocument-event after 1750ms
[2019-03-05 03:56:40.772] [renderer3] [warning] UNRESPONSIVE extension host, 'vscode.typescript-language-features' took 99% of 2628ms, saved PROFILE here: 'F:\Users\Paulo\AppData\Local\Temp\exthost-7bafb0.cpuprofile' [{"id":"self","total":1000,"percentage":0},{"id":"vscode.typescript-language-features","total":2594000,"percentage":99}]
[2019-03-05 03:58:34.757] [renderer3] [warning] UNRESPONSIVE extension host, 'vscode.typescript-language-features' took 54% of 5991ms, saved PROFILE here: 'F:\Users\Paulo\AppData\Local\Temp\exthost-51343c.cpuprofile' [{"id":"gc","total":1250000,"percentage":21},{"id":"program","total":671000,"percentage":11},{"id":"self","total":802000,"percentage":13},{"id":"vscode.merge-conflict","total":1000,"percentage":0},{"id":"vscode.typescript-language-features","total":3263000,"percentage":54}]

btw, my temp folder is full of those cpuprofile files, I just noticed.
https://pastebin.com/yqyY770D = exthost-7bafb0.cpuprofile
https://pastebin.com/LqpbzKBb = exthost-51343c.cpuprofile

Does this issue occur when all extensions are disabled?: No

If you disable all extensions except for the built-in JS/TS language features, do you still see this issue?

yes

pretty consistent here:
[2019-03-08 21:50:56.923] [renderer1] [warning] UNRESPONSIVE extension host, 'vscode.typescript-language-features' took 66% of 6992ms, saved PROFILE here: 'F:\Users\Paulo\AppData\Local\Temp\exthost-dbed06.cpuprofile' [{"id":"gc","total":662000,"percentage":9},{"id":"program","total":948000,"percentage":14},{"id":"self","total":782000,"percentage":11},{"id":"vscode.merge-conflict","total":1000,"percentage":0},{"id":"vscode.typescript-language-features","total":4596000,"percentage":66}]

https://pastebin.com/PMamVKNM
happens in a lot of .ts files. one almost-sure way to do it is to click "Go to declaration" or Ctrl + clicking something, happens 100% of the time after "> reload window"

Thanks for the profiles. From them, it looks like something is causing suggestions to take an unreasonably long time.
I can't repo this issue on my machine, but can you try collecting the ts server trace to see which completions could be triggering this:

Set "typescript.tsserver.trace": "verbose"
Reproduce the problem
Open the output panel and view the TypeScript section

Look for the line at the end that looks like:
[Trace  - 3:55:17 PM] Sending request: completionInfo (275). Response expected: yes. Current queue length: 0
Arguments: {
    "file": "/Users/matb/projects/vscode/extensions/markdown-language-features/src/features/previewContentProvider.ts",
    "line": 106,
    "offset": 12,
    "includeExternalModuleExports": true,
    "includeInsertTextCompletions": true,
    "triggerCharacter": "."
}
[Trace  - 3:55:17 PM] Response received: completionInfo (275). Request took 44 ms. Success: true
Result: {

Please share those lines if possible. That may help us see if there is something weird about these completion items

@mjbvz The range conversion (e.from) is gone in latest insiders unless the completion item defines a range, the default range isn't duplicated anymore. The memoize calls is the left, either this is a huge list of completions or there is something else wrong. The chart does show a lot of garbage collection...

TS could be returning a massive completion item but I'll need the logs to verify this. Haven't been able to reproduce this locally
@pocesar When you have a chance please try collecting the logs as I described


Prevents graphical glitch when tapping to open hamburger menu

I found a graphical glitch when adding a custom gesture (touch up) to open the left drawer controller:  the left drawer controller's scroll view began slightly scrolled up, which would snap to the correct position after the drawer opening animation would complete. I solved this by simply preparing the left drawer controller for animation by making sure that it was in the correct position.  Thanks!

Implemented this and when i press the hamburger button it displays this in the console:
Unbalanced calls to begin/end appearance transitions for <MMNavigationController: 0x7f9ac3415140>.
using xcode 7, iOS 8.1 and iOS 9


pca sklearn failure in latest development version

Brent;
We've been trying to use the latest development in bcbio (to get the initial hg38 support) and running into a failure during pca. Is there a minimum number of input samples needed to run pca, or am I doing something else wrong?
2018-05-30 23:07:51 r3467 peddy.pca[22570] INFO loaded and subsetted thousand-genomes genotypes (shape: (2504, 1)) in 0.8 seconds
Traceback (most recent call last):
  File "/g/data3/gx8/local/development/bcbio/anaconda/bin/peddy", line 11, in <module>
    load_entry_point('peddy==0.4.0', 'console_scripts', 'peddy')()
  File "/g/data/gx8/local/development/bcbio/anaconda/lib/python2.7/site-packages/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "/g/data/gx8/local/development/bcbio/anaconda/lib/python2.7/site-packages/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "/g/data/gx8/local/development/bcbio/anaconda/lib/python2.7/site-packages/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/g/data/gx8/local/development/bcbio/anaconda/lib/python2.7/site-packages/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "/g/data/gx8/local/development/bcbio/anaconda/lib/python2.7/site-packages/peddy/cli.py", line 204, in peddy
    in ("ped_check", "het_check", "sex_check")]):
  File "/g/data/gx8/local/development/bcbio/anaconda/lib/python2.7/site-packages/peddy/cli.py", line 43, in run
    prefix=prefix, **kwargs)
  File "/g/data/gx8/local/development/bcbio/anaconda/lib/python2.7/site-packages/peddy/peddy.py", line 871, in het_check
    pca_df, background_pca_df = pca(pca_plot, sitesfile, gt_types, sites)
  File "/g/data/gx8/local/development/bcbio/anaconda/lib/python2.7/site-packages/peddy/pca.py", line 61, in pca
    clf.fit(genos1kg, background_target)
  File "/g/data/gx8/local/development/bcbio/anaconda/lib/python2.7/site-packages/sklearn/pipeline.py", line 248, in fit
    Xt, fit_params = self._fit(X, y, **fit_params)
  File "/g/data/gx8/local/development/bcbio/anaconda/lib/python2.7/site-packages/sklearn/pipeline.py", line 213, in _fit
    **fit_params_steps[name])
  File "/g/data/gx8/local/development/bcbio/anaconda/lib/python2.7/site-packages/sklearn/externals/joblib/memory.py", line 362, in __call__
    return self.func(*args, **kwargs)
  File "/g/data/gx8/local/development/bcbio/anaconda/lib/python2.7/site-packages/sklearn/pipeline.py", line 581, in _fit_transform_one
    res = transformer.fit_transform(X, y, **fit_params)
  File "/g/data/gx8/local/development/bcbio/anaconda/lib/python2.7/site-packages/sklearn/decomposition/pca.py", line 348, in fit_transform
    U, S, V = self._fit(X)
  File "/g/data/gx8/local/development/bcbio/anaconda/lib/python2.7/site-packages/sklearn/decomposition/pca.py", line 394, in _fit
    return self._fit_truncated(X, n_components, svd_solver)
  File "/g/data/gx8/local/development/bcbio/anaconda/lib/python2.7/site-packages/sklearn/decomposition/pca.py", line 468, in _fit_truncated
    % (n_components, n_features, svd_solver))
ValueError: n_components=4 must be between 1 and n_features=1 with svd_solver='randomized'

Ideally we'd love to be able to get ancestry prediction for single sample inputs. Thanks for any pointers/suggestions.

hmm. maybe when there's a single sample we need to use X[:, np.newaxis] or something as the number of features should be ~ 20K.

I'll try to carve out some time on friday to work on peddy and get these resolved. thanks for reporting.

I can run with 1 sample on master. It seems like maybe you're only finding a single snp out of the full set.
E.g. your log info says (shape: (2504, 1)) . Are you using the right genome-build for your test-case?

I see the problem that's causing this. Will release 0.4.2 shortly.

actually, I don't think that should affect what you are reporting here. You can try updating to cyvcf2 v0.9.0 to see if that resolves it, but I don't think it will.

Brent;
Thanks for the help with this. I agree it's probably also not the parsing. It's possible there was 1 overlapping SNP; bcbio ends up throwing a lot at peddy: panels, somatic calls (when there is no germline, hoping for germline leakage). Is it possible for peddy to skip pca here if there are not enough sites? It's a bit hard to tell up from what and will not work, so I've been just doing garbage in/garbage out and handling outputs that aren't useful. Would skipping here be possible? Thanks again for taking a look at all this so quickly.

It could, but it uses those sites for the heterozygosity stuff too, so the only thing left would be the sex plots.

That would be helpful for me. I know the output is not especially useful, but in bcbio we often get not good enough data that goes in and would be great to have peddy exit cleanly just without the analysis we can't do. Right now I'm catching exceptions and doing other ugly things when it fails, so would love to improve on that. Thanks for considering this.

I'm wary of writing software that catches all possible problems and gives a 0 exit code.
I'm not completely against what you're saying, but I'm not sure how to implement. My though would be that if you send peddy--which has a list of sites that it uses, a VCF that contains none (or 1) of those sites, it's reasonable to raise an error.
I suppose the alternative is to output an informative error message and still exit 0.

Brent;
I definitely hear what you're saying about design. Raising a consistent error is also cool with me, it's just hard to tell up front if a dataset will have very few overlaps with the sites (without calculating it myself) so would be awesome if peddy told me this. Right now we essentially catch the symptom (index errors):
https://github.com/bcbio/bcbio-nextgen/blob/ebf096ea43c6464403bd656a1081bc322746a0aa/bcbio/variation/peddy.py#L91
which I'd like to improve on. Thanks again for this discussion.


Unpackaged framework-dependent app crashes if fusion manifest not present/embedded

Describe the bug
In scenarios where the fusion manifest is not embedded into the output executable, an app bootstrapping with Windows App SDK will fail to start. This appears to have regressed since 1.0.0.
Repro project: repro.zip
Steps to reproduce the bug

Open repro project provided above
Compile/execute output
Observe app does not start correctly
Edit the .vcxproj and replace all instances of <EmbedManifest>false</EmbedManifest> with <EmbedManifest>true</EmbedManifest>.
Compile/execute output
Observe app starts correctly

Expected behavior
App to start correctly regardless of fusion manifest presence.
NuGet package version
1.1.1 ❌ Broken
1.1.0 ❌ Broken
1.0.4 ❌ Broken
1.0.3 ❌ Broken
1.0.2 ❌ Broken
1.0.1 ❌ Broken
1.0.0 ✔ Works
Packaging type
Unpackaged
Windows version
Insider Build (xxxxx)
IDE
Visual Studio 2022
Additional context
Impacted Rust bindings, which does not use fusion manifests.
It appears the bootstrapping component is attempting to locate reg-free WinRT information. In non-framework-dependent apps, that is expected. In framework-dependent apps it is not. The fusion manifest in these scenarios will have very little aside from optional common controls/DPI flags.

Output window
'repro.exe' (Win32): Loaded 'C:\Sources\was-repros\redacted\x64\Debug\repro\repro.exe'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\ntdll.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\kernel32.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\KernelBase.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\combase.dll'. Symbol loading disabled by Include/Exclude setting.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\ucrtbase.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\vcruntime140d.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\rpcrt4.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\msvcp140d.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\oleaut32.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Sources\was-repros\redacted\x64\Debug\repro\Microsoft.WindowsAppRuntime.Bootstrap.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\vcruntime140_1d.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\msvcp_win.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\ucrtbased.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\ucrtbased.dll'. Symbols loaded.
'repro.exe' (Win32): Unloaded 'C:\Windows\System32\ucrtbased.dll'
'repro.exe' (Win32): Loaded 'C:\Windows\System32\ole32.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\gdi32.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\win32u.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\gdi32full.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\user32.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\advapi32.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\msvcrt.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\sechost.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\shell32.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\imm32.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\bcryptprimitives.dll'. Symbols loaded.
D:\a\_work\1\s\BuildOutput\Release\x64\WindowsAppRuntime_DLL\WindowsAppRuntimeInsights.h(53)\Microsoft.WindowsAppRuntime.Bootstrap.dll!00007FFC598324DB: (caller: 00007FFC5982E1C6) LogHr(1) tid(b6f8) 8007007E The specified module could not be found.
    Msg:[Unable to load resource dll. Microsoft.WindowsAppRuntime.Insights.Resource.dll]
'repro.exe' (Win32): Loaded 'C:\Windows\System32\kernel.appcore.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\clbcatq.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\AppXDeploymentClient.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\Windows.ApplicationModel.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\WinTypes.dll'. Symbols loaded.
D:\a\_work\1\s\dev\WindowsAppRuntime_BootstrapDLL\MddBootstrap.cpp(776)\Microsoft.WindowsAppRuntime.Bootstrap.dll!00007FFC5982B0D9: (caller: 00007FFC59829C2F) LogHr(2) tid(b6f8) 80040010 Object is not in any of the inplace active states
    Msg:[Bootstrap.Intitialize: Scanning packages for Major.Minor=1.1, Tag=, MinVersion=1001.524.1918.0] CallContext:[\Initialize]
'repro.exe' (Win32): Loaded 'C:\Windows\System32\Windows.StateRepositoryCore.dll'. Symbols loaded.
D:\a\_work\1\s\dev\WindowsAppRuntime_BootstrapDLL\MddBootstrap.cpp(865)\Microsoft.WindowsAppRuntime.Bootstrap.dll!00007FFC5982B85C: (caller: 00007FFC59829C2F) LogHr(3) tid(b6f8) 80040011 Not able to convert object
    Msg:[Bootstrap.Intitialize: Microsoft.WinAppRuntime.DDLM.1000.516.2156.0-x6_1000.516.2156.0_x64__8wekyb3d8bbwe not applicable. Version doesn't match MinVersion criteria (Major.Minor=1.1, Tag=, MinVersion=1001.524.1918.0)] CallContext:[\Initialize]
D:\a\_work\1\s\dev\WindowsAppRuntime_BootstrapDLL\MddBootstrap.cpp(865)\Microsoft.WindowsAppRuntime.Bootstrap.dll!00007FFC5982B85C: (caller: 00007FFC59829C2F) LogHr(4) tid(b6f8) 80040011 Not able to convert object
    Msg:[Bootstrap.Intitialize: Microsoft.WinAppRuntime.DDLM.1000.516.2156.0-x8_1000.516.2156.0_x86__8wekyb3d8bbwe not applicable. Version doesn't match MinVersion criteria (Major.Minor=1.1, Tag=, MinVersion=1001.524.1918.0)] CallContext:[\Initialize]
D:\a\_work\1\s\dev\WindowsAppRuntime_BootstrapDLL\MddBootstrap.cpp(885)\Microsoft.WindowsAppRuntime.Bootstrap.dll!00007FFC5982BB5E: (caller: 00007FFC59829C2F) LogHr(5) tid(b6f8) 80040012 Not able to perform the operation because object is not given storage yet
    Msg:[Bootstrap.Intitialize: Microsoft.WinAppRuntime.DDLM.1001.524.1918.0-x6_1001.524.1918.0_x64__8wekyb3d8bbwe is applicable (Major.Minor=1.1, Tag=, MinVersion=1001.524.1918.0)] CallContext:[\Initialize]
D:\a\_work\1\s\dev\WindowsAppRuntime_BootstrapDLL\MddBootstrap.cpp(908)\Microsoft.WindowsAppRuntime.Bootstrap.dll!00007FFC5982C486: (caller: 00007FFC59829C2F) LogHr(6) tid(b6f8) 80040013     Msg:[Bootstrap.Intitialize: Microsoft.WinAppRuntime.DDLM.1001.524.1918.0-x6_1001.524.1918.0_x64__8wekyb3d8bbwe best matches the criteria (Major.Minor=1.1, Tag=, MinVersion=1001.524.1918.0) of 172 packages scanned] CallContext:[\Initialize]
'repro.exe' (Win32): Loaded 'C:\Windows\System32\twinui.appcore.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\windows.storage.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\OneCoreUAPCommonProxyStub.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\SHCore.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\daxexec.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\container.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\userenv.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\usermgrcli.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\Windows.StateRepositoryClient.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\Windows.StateRepositoryPS.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\LicenseManagerApi.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\capauthz.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\ntmarta.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\shlwapi.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\uxtheme.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\propsys.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\profapi.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\cfgmgr32.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\apphelp.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\networkexplorer.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\Windows.FileExplorer.Common.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\edputil.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\urlmon.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\iertutil.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\srvcli.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\netutils.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\cldapi.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\sspicli.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\AppResolver.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\BCP47Langs.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\mpr.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\OneCoreCommonProxyStub.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\execmodelproxy.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Program Files\WindowsApps\Microsoft.WindowsAppRuntime.1.1_1001.524.1918.0_x64__8wekyb3d8bbwe\Microsoft.WindowsAppRuntime.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\powrprof.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\rometadata.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\powrprof.dll'. Symbols loaded.
'repro.exe' (Win32): Loaded 'C:\Windows\System32\xmllite.dll'. Symbols loaded.
'repro.exe' (Win32): Unloaded 'C:\Windows\System32\powrprof.dll'
'repro.exe' (Win32): Loaded 'C:\Windows\System32\umpdc.dll'. Symbols loaded.
D:\a\_work\1\s\dev\UndockedRegFreeWinRT\urfw.cpp(416)\Microsoft.WindowsAppRuntime.dll!00007FFC5901C617: (caller: 00007FFC5902FA12) ReturnHr(1) tid(b6f8) 8007000E Not enough memory resources are available to complete this operation.
D:\a\_work\1\s\dev\WindowsAppRuntime_DLL\dllmain.cpp(30)\Microsoft.WindowsAppRuntime.dll!00007FFC5902FBF3: (caller: 00007FFC5903B7EB) FailFast(1) tid(b6f8) 8007000E Not enough memory resources are available to complete this operation.
Unhandled exception at 0x00007FFC5902FBF3 (Microsoft.WindowsAppRuntime.dll) in repro.exe: Fatal program exit requested.

That's surprising - I thought I'd built apps using WinAppSDK/fwk-dependent and no Fusion manifest. Will investigate.

It appears the bootstrapping component is attempting to locate reg-free WinRT information...In framework-dependent apps [that is not expected]

Checking for Fusion manifest is expected. Failing when not found or embedded (even if it has no RegFreeWinRT info) is not expected.
The WinRT activation+metadata lookup hunt sequence1,2,3 with WinAppSDK is...

Package Graph
Undocked RegFree WinRT (URFW)
OS

When the Bootstrapper fires in an app using WinAppSDK framework-dependent it should find WinAppSDK types via 1 and OS types via 3 (e.g. PackageManager). The latter case will cause lookups to walk through the Fusion manifest (if any) but it should be fine if the executable has none (or an embedded one w/o any RegFree info).

The fusion manifest in these scenarios will have very little aside from optional common controls/DPI flags.

In the simple case. It could have more e.g. if a LolzCatzVidz project uses WinAppSDK framework-dependent and a AwesomeSauceVideoPlaybackWidget WinRT object from another library in a self-contained way.

1 WinRT types in the Windows.* namespace must be defined by Windows. The PackageGraph and RegFreeWinRT are ignored for Windows.* types.
2 Windows (without WinAppSDK) has a slightly different ordering: 1=PackageGraph, 2=RegFreeWinRT (19H1+).
3 Langauge projections can supplment the hunt sequence e.g. C++/WinRT and C#/WinRT add a step 4. Crawl file system to look for a DLL containing the type if not found by one of the other mechanisms.

Given that the package graph satisfied the hunt, I don't think WAS should have ever attempted to look for URFW / OS metadata right?

I don't think WAS should have ever attempted to look for URFW / OS metadata right

For what type? And used how?
if (RoActivateInstance(acid) == REGDB_E_CLASSNOTFOUND)
isn't an unusual "use X if available" recipe, just like
if (CoCreateInstance(clsid) == REGDB_E_CLASSNOTFOUND)

Or are you searching all sources for the best candidate?

Not COM/WinRT. That's purely "Find X, and 1st match wins" model (same as it's been for decades)
Something seems fishy but I can't put my finger on it. Yet. I need to do some poking and prodding...

TL;DR UndockedRegFreeWinRT has a few discrepancies from Windows' RegFreeWinRT behavior. Putting together some tests to repro and then verify changes.
UndockedRegFreeWinRT (URFW) will load an Fusion manifest embedded for an exe or dll or a file if not exe|dll
HRESULT LoadManifestFromPath(std::wstring path)
{
    if (path.size() < 4)
    {
        return COR_E_ARGUMENT;
    }
    std::wstring ext(path.substr(path.size() - 4, path.size()));
    if ((CompareStringOrdinal(ext.c_str(), -1, L".exe", -1, TRUE) == CSTR_EQUAL) ||
        (CompareStringOrdinal(ext.c_str(), -1, L".dll", -1, TRUE) == CSTR_EQUAL))
    {
        return LoadFromEmbeddedManifest(path.c_str());
    }
    else
    {
        return LoadFromSxSManifest(path.c_str());
    }
}

That's not how Windows does it. Windows will load an embedded manifest if exists, and then from a file (as an override). Supposed to give devs the easy 'embed when built' and admins the ability to 'provide via file and override the embedded (if any)'.
And that's only called once via ExtRoLoadCatalog() -- only called in DllMain() when Microsoft.WindowsAppRuntime.dll.
So LoadFromEmbeddedManifest() is called for exe+dll (and LoadFromSxSManifest() never is. Problem #1.
And even if we have an embedded manifest we're not looking for a file manifest (as an admin override). Problem #2.
LoadFromEmbeddedManifest() looks for the resource via LoadLibrary, FindResource(), LoadResource(), LockResource() and any failure will return ERROR_FILE_NOT_FOUND but these functions all have error info via GetLastError(). Problem #3.
Lookup of the embedded manifest resource is IF (FindResource(1)!=OK) THEN FindResource(2). That's based on winuser.h line 314+
#define CREATEPROCESS_MANIFEST_RESOURCE_ID MAKEINTRESOURCE( 1)
#define ISOLATIONAWARE_MANIFEST_RESOURCE_ID MAKEINTRESOURCE(2)
#define ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID MAKEINTRESOURCE(3)

1=CREATEPROCESS_MANIFEST_RESOURCE_ID == exe
2=ISOLATIONAWARE_MANIFEST_RESOURCE_ID == dll
3=ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID Remarks mention "This is never used by the loader." and it's not otherwise interesting to URFW so we can ignore it.
We're always checking id 1+2. We should only check 1 for exe and 2 for dl. Problem #4.
Whipping up a test suite for the various permutations and then fixes.

Oops! Sorry I missed this question earlier

Given that the package graph satisfied the hunt

UndockedRegFreeWinRT resolves Fusion + MSIX manifests at different times - DLL load vs 1st-use.
Fusion manifest resolution occurs in Microsoft.WindowsAppRuntime.dll's DllMain() when the DLL's loaded. Whatever answer's found is used until the DLL unloads. An embedded file can't change for the life of the DLL in the process, and the file (if any) is expected to match (or at least any changes after load wouldn't affect).
This differs from URFW's package graph support. That can change dynamically over the life of the process so that's resolved on 1st use as needed (i.e. just-in-time). As that's based on appxmanifest.xml and packages should be immutable once installed the manifest itself wouldn't change, we simply don't know which packages may be needed until later when we use WinRT activation (or metadata) APIs. We walk the package graph looking for answers and if a package's manifest hasn't been loaded yet it's loaded and cached for all successive uses of that package's manifest.

I don't think WAS should have ever attempted to look for ~URFW~ Fusion / OS metadata

Small correction. Technically we use URFW to resolve Fusion+MSIX manifested WinRT metadata. URFW is the code altering WinRT's activation+metadata lookup to also use our Fusion+MSIX data.

Very happy to see you tracked it down and we're going to see URFW support loose fusion manifests again. That will make things a lot easier for, say, Rust, where there's no easy access to MT. Hope you can squeeze all these changes into a servicing release!

According to https://github.com/microsoft/WindowsAppSDK/issues/2597, issue was fixed in 1.5.240205001-preview1


Update emergency_rod atmos

added scrubbers and firelocks

firelocks were removed on purpose, emisse wanted it.

firelocks were removed on purpose, emisse wanted it.

why tho? had a round yesterday, explosion on evac and whole evac got spaced because of lack of firelocks

firelocks were removed on purpose, emisse wanted it.

why tho? had a round yesterday, explosion on evac and whole evac got spaced because of lack of firelocks

I can probably find the conversation, hold on.

closing because loosing fun


Fix release workflow

Objective
While playing with the code, I found some problems in the recently merged version-bumping workflow:

Most importantly, now that we are using 0.8.0-dev in development, the workflow will try to bump it to 0.9.0 :sob:
The crate filter is outdated now that we have more crates in tools.
We are using<EMAIL_ADDRESS>but according to Github help, that email address means "old no-reply email format for the user bevy". It is currently not associated with any account, but I feel this is still not appropriate here.

Solution

Create a new workflow, Post-release version bump, that should be run after a release and bumps version from 0.X.0 to 0.X+1.0-dev. Unfortunately, cargo-release doesn't have a builtin way to do this, so we need to parse and increment the version manually.
Add the new crates in tools to exclusion list. Also removes the dependency version specifier from bevy_ecs_compile_fail_tests. It is not in the workspace so the dependency version will not get automatically updated by cargo-release.
Change the author email to<EMAIL_ADDRESS>According to the discussion here and here, this is the email address associated with the github-actions bot account.
Also add the workflows to our release checklist.

See infmagic2047#5 and infmagic2047#6 for examples of release and post-release PRs.

oh that's a pain to have it in two steps...


Fix C++ Coverage not being correctly printed in CI

Even with #270 being merged, the C++ coverage is still broken in CI. We should investigate and fix that.

After #502, we should also migrate C++ coverage to codecov.


Am I missing the details? Why should tree contain the node "CHILDREN", can we just make an array is children...?

Am I missing the details? Why should tree contain the node "CHILDREN", can we just make an array is children...?
For: State has Cities (array) ; Each city has "restaurants" , again an array... display like a tree of states and cities within a State, Restaurants within a City... whats the need of "CHILDREN" node..how general is to get such API responses?
Please help!

You need to transform your structure to the one that satisfies TreeModel interface.
Of course I could recursively scan object and in case if one of the properties is an array then treat it as children. But what if two properties are of type array? Also it adds redundant complexity to implementation. Interface is a contract and a point of extension that client should implement in order to conform to this contract.


[DeltaTable1.0] Data loss in Delta Table 1.0 merge operation

Hi All, I am a newbie here. I am debugging one data-loss issue in our pipeline where we merge the new (CSV) data into the existing Delta Table. So far I have been able to arrive to the following where I see that SortMergeJoin output had 12,722,165 records whereas after couple of steps, 12,721,496 records were written to the table. So during the serialization of the records to the store 669 recoreds are missed. What could be the reason for this? This difference of rows is surfaced at data-loss in our use-cases.

This is also reflected through the Delta Table transaction log where the output rows are not aligned with the breakdown of rest of the operations. I have marked some pointers (A, B... ) on the specific metrics to show the outcome of my theory.
{

      "commitInfo": {
            "timestamp":<PHONE_NUMBER>193,
            "operation": "MERGE",
            "operationParameters": {
                  "predicate": "(((target.`PartitionId` IN ('2022', '2023')) AND (target.`PartitionId` = source.`PartitionId`)) AND (target.`Id` = source.`Id`))",
                  "matchedPredicates": "[{\"predicate\":\"(source.`versionnumber` > target.`versionnumber`)\",\"actionType\":\"update\"}]",
                  "notMatchedPredicates": "[{\"actionType\":\"insert\"}]"
            },
            "readVersion": 1738,
            "isBlindAppend": false,
            "operationMetrics": {
                  "numTargetRowsCopied": "12720032", (A)
                  "numTargetRowsDeleted": "0",       (B)
                  "numTargetFilesAdded": "2",
                  "executionTimeMs": "2058018",
                  "numTargetRowsInserted": "11",     (C)
                  "scanTimeMs": "99636",
                  "numTargetRowsUpdated": "2122",    (D)
                  "numOutputRows": "12721496",       (E)
                  "numSourceRows": "2133",           (F)
                  "numTargetFilesRemoved": "2",
                  "rewriteTimeMs": "1957630"
            }
      }
    }

Based on my observations, I have following equations which are most held true.
Eq1: numTargetRowsCopied (A) + numTargetRowsInserted (C) + numTargetRowsUpdated (D) - numTargetRowsDeleted (B) == numOutputRows (E)
Eq2:  numTargetRowsDeleted (B) + numTargetRowsInserted (C) + numTargetRowsUpdated (D) == numSourceRows (F)
But whenever we see data loss, we see that E2 is true (i.e., input data was correctly received) but E1 is not true (i.e., some data got dropped somehow).
In this particular example, for E1, I see a difference of 669 rows (i.e., these many rows are not there in Delta Table). I am not sure if it is by design. In what circumstances, such difference can be observed?
Are there any known issues in Delta Table 1.0 stack which can lead to this? I am looking for some pointers to dig further into this issue.
We are using PySpark SDK for Delta Table and compute is through Synapse Spark pools.

Apache Spark - 3.1
Delta Lake version - 1.0

Any input here will be very helpful. TIA.

Hello Delta Lake community, I did some further digging and took help from the Synapse team as well. It does seem like that Delta Lake merge operation dropped some rows while writing the data to the destination (ADLS).
Extending further on the above post, following is the summary after looking into the specific stage in Synapse Spark logs.

Delta Table had 12,722,154 records (T in below image)
The CSV data had 2133 rows (S in the below image)
During the merge I do see that the sort-merge-join had output rows as 12,722,165
But the final records that were written to the Delta Table are 12,721,496

This yielded to the different of 669 rows which is also aligned with the operation metrics data from the Delta Table history. There were no deletes so ideally at least the same no of records would have been written as the output.

We dont have the repro environment for this issue but we will continue to explore more into the possible reasons around this. If you can help with some pointers here, it will be really great.
TIA.

Can you try the latest Delta Lake to see if this is still a problem? Delta 1.0 is at this point 2 years old. Even the Spark 3.1 is probably out of the support window.

Hi @tdas , thank you for your response. Yes we are moving to the newer version. However after doing the RCA of the issue with @sezruby , we have found out that this issue may occur in the recent versions as well. Here is the PR for the fix: https://github.com/delta-io/delta/pull/2128


Figure out directory structure version number in ingest-validation-tools

It looks like the directory schema version number applied to a dataset is either 0 or the trailing number of a file 'extras/dir-schema-v*' .  For example, to force parsing according to codex-v1, create an empty file named 'extras/dir-schema-v1' in the data directory.


Server, TGI and/or vLLM Support

Marlin looks great, but are there:

quantization scripts -  a quantize.py file that we can easily use to make models and push to HF
vLLM or TGI support. I see that https://github.com/neuralmagic/nm-vllm has some marlin support, so that's a start. Also, TGI seems to be looking at marlin support.

Even if there was a quantize.py script that would help a lot and make nn-vllm a possibility.

Marlin support exists in vLLM, the Neural Magic team upstreamed it.
As for a quantization script, it's already part of AutoGPTQ.

I see, what about AWQ, could that be supported? Better quality than GPTQ?

Sure, feel free to make any pull requests to the respective projects.

Hi,
We do not plan to add AWQ support; one reason is that we haven't observed higher quantization quality for AWQ relative to GPTQ/Marlin when both methods are tuned. Here's an example on LLaMA-3-8B-Instruct (MMLU Zero-Shot Accuracy):

Model
Accuracy (%)

bf16
65.80

RTN   g128
60.80

GPTQ 4bit g128  actorder
63.40

casperhansen/llama-3-8b-instruct-awq g128
63.30

As you can see, both methods perform essentially the same.

Thanks, nice that you did the benchmarking.
Can you just clarify what you mean by "tuned"? Thanks, Ronan
On Thu, May 2, 2024 at 9:32 AM Dan Alistarh @.***>
wrote:

Hi,
We do not plan to add AWQ support; one reason is that we haven't observed
higher quantization quality for AWQ relative to GPTQ/Marlin when both
methods are tuned. Here's an example on LLaMA-3-8B-Instruct (MMLU Zero-Shot
Accuracy):
Model Accuracy (%)
bf16 65.80
RTN g128 60.80
GPTQ 4bit g128 actorder 63.40
casperhansen/llama-3-8b-instruct-awq g128 63.30
As you can see, both methods perform essentially the same.
—
Reply to this email directly, view it on GitHub
https://github.com/IST-DASLab/marlin/issues/24#issuecomment-2089898457,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASVG6CWWAILMRTZAMYZYKK3ZAH2ZZAVCNFSM6AAAAABGTEGHEWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAOBZHA4TQNBVG4
.
You are receiving this because you authored the thread.Message ID:
@.***>

Many thanks.


preconnect: rename

Splitting the rename out of https://github.com/envoyproxy/envoy/pull/14143
Risk Level: low (renaming hidden config, and API functions)
Testing: n/a
Docs Changes: n/a
Release Notes: n/a

/lgtm api


Updated new Azure Keyvault Keywords in Connection String

Added newly introduced Connection String Keywords (keyVaultProviderClientId, keyVaultProviderClientKey) in Microsoft JDBC Driver 7.4 version to enable use of Azure Key Vault Provider
Based on MS JDBC Pull Request (https://github.com/microsoft/mssql-jdbc/pull/902) and my testing of its working

@manikandanramaswami : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Merging now.


Version prefix not applying to current version in plugins

Using the example plugin without modification, the "current version" argument doesn't contain VERSION_PREFIX config setting.
See output:
$ git semver minor

User plugin "example.sh":

  New version: v0.2.0
  Current version: 0.1.0
  ...
v0.2.0

Notice how "current version" is "0.1.0" while new version is "v0.2.0" (with v)
This seems to be because the version-do method is being called without the VERSON_PREFIX for $version in version-major, version-minor, and version-patch :
https://github.com/markchalloner/git-semver/blob/d838cb34780a29d104ed20ef18465c44918b0f64/git-semver.sh#L165
I can make a PR.

Thanks for the report. Looking at the code it seems like version-get's return would be the natural place to prefix this.

I can make a PR.

Yes please.

Right, that was my first thought as well, but then the checks for a blank version in patch, minor, and major will possibly never be true (if a version prefix is set)
https://github.com/markchalloner/git-semver/blob/d838cb34780a29d104ed20ef18465c44918b0f64/git-semver.sh#L156-L161
Unless we strip off the version prefix for that check?

@srt4rulez the checks would still be valid, version-get returns without echoing if it can't parse out a valid version.

Yes, I noticed that after doing some tests. I see you pulled in #27, which has some major changes.

This seems to be fixed from #33.


Provide library to support postgresql as data retention site (closes #438)

This PR ships a postgresql client library able to be used for creating e.g. a postgresql backed asset-index.
 Denis Neuling<EMAIL_ADDRESS>Daimler TSS GmbH, legal info/Impressum

also, the Implementation of the CommandQueue will depend on a working transaction implementation

PR Remarks
Connection Pooling

The connection pool should be decoupled from the client since the latter should not be tied to one particular pool imnplementation. For example, someone may want to use another connection pool or use a pool provided by a JTA transaction manager or Spring. This is not possible with the current implementation.

I don't see why we should make a library choice configurable by moving it out of the extension. We don't do something similar for other extensions, too.
Additionally, if this becomes a requirement at some point (which I doubt) we can do this any time. I don't see a good enough reason to increase the complexity and total number of extensions in the EDC.

Transaction Management

Transaction management is different when using resource-local connections and JTA-bound connections. This needs to be accounted for.

Could you elaborate this? Other storage extensions/libraries prefer a solution with a lower complexity, too. Why is this case different and a necessary feature for this PR, which implements a simple library to send queries to PostgreSQL?

Connection Pool Configuration

Configuration needs to account for the fact that JDBC driver properties vary by type.

This library is only for PostgreSQL and in this case the configuration types are perfectly fine.

Generalize the Implementation

Nothing appears to tie the implementation to Postgres in particular, it seems to be a generic SQL client implementation. We should just generalize it by removing Postgres dependencies.

Like I already said, the library is for PostgreSQL only (and the issue too). I would not increase the scope, and I also
don't see why this should be necessary.

Testing

Testcontainers should be removed. Docker containers must not be started from within code, as this will require docker to be installed
on every machine and will cause permission problems if the Java process does not have the appropriate rights.
Docker containers are spun up in the workflow file.
Those are integration tests and should be annotated as such
There are no unit tests, they need to be added

To integration test a PostgreSQL library having a running PostgreSQL instance somewhere is necessary. I don't see how you would test it without it.
Also, I'd assume that a docker installation on integration test machines is pretty common. GitHub supports it, too.
We will add further unit tests and the integration test annotation.

Refactoring Proposal
1. Introduce a TransactionContext interface
Create an interface TransactionContext, which is implemented by a second extension that abstracts the connection pool and transaction management.
public interface TransactionContext{
    void execute(Consumer<Connection> action);
}

The interface receives a Connection object from the pool implementation, on which all SQL/DML operations are to be executed, within the bounds of that lambda. Implementations are responsible for acquiring a connection and properly demarcating transactions. We can supply an Apache implementation of TransactionContext as default. There could be other implementations that work with C3P0, Spring, Atomikos, a JTA TM bound to JNDI, etc.
The interface would not go into the core SPI, but exist in its own SPI module. This would also allow several extensions to share a pool.

I would not move a library to its own extension and make it configurable without a good requirement. In your refactoring proposal it's already pretty good visible how this would increase the complexity by increasing the overall size of the interface and the total number of extensions and SPIs.

2. Isolate Postgres specific code if needed
The client and trx context modules should not reference Postgres. It may make sense to create a specific module to handle the Postgres driver, although generic configuration should handle that.

3. Generalize configuration
Create a general JDBC configuration loader so it is possible to configure any JDBC driver with the database pool.

Regarding 2 and 3. The PR and the issue are about supporting PostgreSQL. To increase the scope please create a follow-up issue.

4. General Comments

The Stream of *Handlers is overengineered. We can just have a single Handler class with overloads for each datatype, since we do not expect the Java primitive types to change anytime soon. Also, that would not waste memory on allocating an entire Stream of handlers per query parameter.
the RowMapper looks a lot like the one provided by Spring. We may need to attribute accordingly.

I don't see how this RowMapper has anything to do with Spring. The interface is completely different. There are
classes in other libraries that are called RowMapper, too. Anyway, we will rename it.

Having enums implement an interface is confusing, as enums semantically are just named integers. Of course we can abuse them as singletons (I know that some claim that to be good), but there are clearer and better ways to do this.

For other languages you may be right. But in Java this is perfectly fine at most a question of code style. This was also already reviewed and discussed with Andrea.

What would be the drawbacks of refactoring it to a generic jdbc solution + a postgres specific one?
Experience shows the it's hard to optimize for every database even if it's just a set of sql databases and postgres is widely used, so most likely we cover most needs by supporting it. But I like the idea to keep it open for other implementations in future.
Would also come with the benefit to test it against an in memory sql db (e.g. derby) - agree that we should not start containers from junit. @DominikPinsel  @denisneuling
Same consideration could also apply to the connection pooling question, as @paullatzelsperger described - but I understand the reasons for keeping it simple. Assume it can be refactored in future if needed.
Definitely great to have the support of (opensource) sql databases!
 Moritz Keppler<EMAIL_ADDRESS>Daimler TSS GmbH, legal info/Impressum

An alternative approach incorporating Paul's remarks has been created via PR 499.

Closing this PR in preference to the alternative approach introduced by PR 499


Remove version: Jackett.Jackett version 0.21.741

404 - release deleted
Microsoft Reviewers: Open in CodeFlow

URL: https://github.com/Jackett/Jackett/releases/download/v0.21.741/Jackett.Installer.Windows.exe
Response Error: The remote server returned an error: (404) Not Found.
(Automated message - build 918)


React testing docs part 1

Initial start at docs for testing React components. Also adds in placeholders for forthcoming docs.

thanks!!


Introduced seasonal as boolean kwargs and implemented seasonal_mean

Introduced seasonal as boolean kwargs
Implemented seasonal mean #227

Hi @sri1419
Thanks for opening the PR!

Your base fork/repo cannot be found anymore ("unknown repository")
I think it makes sense to continuing working on the related PR #253, since you also looked into it, please feel free to leave comments and review the code

Okay, will do that.
On Mon, May 11, 2020 at 9:41 PM Markus Löning<EMAIL_ADDRESS>wrote:

Hi @sri1419 https://github.com/sri1419
Thanks for opening the PR!

Your base fork/repo cannot be found anymore ("unknown repository")
I think it makes sense to continuing working on the related PR #253
https://github.com/alan-turing-institute/sktime/pull/253, since you
also looked into it, please feel free to leave comments and review the code

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/alan-turing-institute/sktime/pull/255#issuecomment-626800240,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APQQIBQUTOBYA3Y3EUCHZHLRRAPTFANCNFSM4M5L4UQA
.


update wiki and readme for 0.3

packets page is up to date for 0.4, commands and modes pages are still out of date


Note Helpers Plugin - Create Index File - structure the headers based on folder nesting

Is your feature request related to a problem? Please describe.
For the Note Helpers Plugin,
The output of the index file is hard to glance through, with the folders titles being appended with /folder/nested/folder it's hard to find the one you need.
Describe the solution you'd like
Right now the plugin command for creating an index note is great, but it's outputting each folder and it's nested folders as ## Root Folder/Nested Folder 1/Nested Folder2.
The result is (note the ## H2 Headings)
## Root Folder
- file in root
- file in root

## Root Folder/Nested Folder 1
- file in Nested Folder 1
- file in Nested Folder 1

## Root Folder/Nested Folder 1/Nested Folder 2
- file in Nested Folder 2
- file in Nested Folder 2

It would be super awesome if instead of the /, you output it like this (note the different heading levels for each deeper Nested Folder)
- file in root
- file in root

### Nested Folder 1
- file in Nested Folder 1
- file in Nested Folder 1

#### Nested Folder 2
- file in Nested Folder 2
- file in Nested Folder 2

This would make it really easy to use the CMD+/ command to fold/unfold each folder level, and also would be visually easier to quickly scan to which folder you're looking for. The ## Root Folder/Nested Folder 1/Nested Folder 2  format makes it really hard to get a high level understanding of the folder structure
Additional Context
https://discord.com/channels/763107030223290449/1117945664500924437/1186433200675897397

What if (optionally?) instead of using headings for folders, it just used bold text and indented items along the way so that the result is a tree-like structure that represents the actual structure? This would reduce the amount of repeated clutter in the folder titles

Completed in v0.19.0


Feature: Automatically Adjust Table Column Widths Based on Content for New Tables

Problem Description
When a new table is created—whether through copy-pasting, markdown imports, or by loading fresh editor JSON without defined column widths—it often appears poorly formatted by default. Specifically, the column widths are not automatically adjusted to fit the content, leading to tables that are difficult to read and require manual resizing.
For example, in our project, we use markdown as the source of truth, which means we do not store column widths. As a result, every time a document is loaded into the editor, users have to resize table columns repeatedly, which is inefficient and frustrating.
Proposed Solution
To improve the user experience, the editor should automatically calculate and apply column widths based on the table's content whenever no explicit widths are provided.
Screenshots
Current Behavior:
When a table is created without specified column widths, the columns appear misaligned, as shown below:

Desired Behavior:
For comparison, when the same table is pasted into Notion, the column widths are automatically adjusted to fit the content:

This isn't really something in lexical's table implementation, this is the TableCellResizer plugin's doing… which is just a playground plugin and not something that's distributed for re-use. I would recommend modifying your copy of the plugin according to your use case, e.g. disabling the transform that sets the default width on every column and coming up with your own scheme.


Update to RSpec 3 conventions and syntax

Replaced the deprecated should matchers with expect(...).to
Used subject and let variables instead of instance variables
Removed "should" wording from example descriptions
Replaced some redundant expectations inside examples
Utilized match_array, include, and match more

Addresses https://github.com/ariejan/imdb/issues/39

Awesome! Thanks.

Glad to contribute!


puppeteersharp Error: Execution context was destroyed, most likely because of a navigation.

Since the page is automatically redirected to the oauth login page when I visit the page, I want to automatically enter the username on the new login page, but when I execute the TypeAsync or EvaluateFunctionAsync method I get this error, I think it is caused by the page jump.
Error: Execution context was destroyed, most likely because of a navigation.

@andrew2558 as you mentioned. That might happen if you try to interact with an element from a page that was disposed.

@andrew2558 as you mentioned. That might happen if you try to interact with an element from a page that was disposed.

thanks  @kblok  , For the elements in the new page I visited, does each page have a context? If the page jumps, how to get the context of the new page?

thanks  @kblok  , For the elements in the new page I visited, does each page have a context? If the page jumps, how to get the context of the new page?

It's about getting the elements you want to interact with after the navigation. Basically don't keep elements between navigations.

It's about getting the elements you want to interact with after the navigation. Basically don't keep elements between navigations.

Closed due to inactivity. Feel free to reopen it if needed.


Add "info" field to token pools, consume "symbol" from connectors

Codecov Report

Merging #606 (eb82017) into main (96415da) will not change coverage.
The diff coverage is 100.00%.

:exclamation: Current head eb82017 differs from pull request most recent head c57cd1c. Consider uploading reports for the commit c57cd1c to get more accurate results

@@            Coverage Diff            @@
##              main      #606   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files          305       305
  Lines        18181     18196   +15
=========================================
+ Hits         18181     18196   +15

Impacted Files
Coverage Δ

internal/apiserver/route_post_token_pool.go
100.00% <ø> (ø)

pkg/fftypes/tokenpool.go
100.00% <ø> (ø)

internal/events/token_pool_created.go
100.00% <100.00%> (ø)

internal/tokens/fftokens/fftokens.go
100.00% <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 96415da...c57cd1c. Read the comment docs.


fixed FLOW CLI links

flow cli links pointed to dapperlabs github resulting in a 404 error.
Just changed the FLOW CLI link to the offical flow website (it could be usefull when it will have a richer description) and the installation steps to the github
For contributor use:

[ ] Targeted PR against master branch
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work
[ ] Code follows the standards mentioned here
[x] Updated relevant documentation
[ ] Re-reviewed Files changed in the Github PR explorer
[ ] Added appropriate labels

@magusfabius Thank you very much for fixing these links! 🙏


Improve example code

Improve example code
🔨 add file_picker to make it enable selecting firmware
🔨 apply latest ble library

Looks good, lgtm!


[Runtime] Change the default start files priority

According to W3C Widget specific (http://www.w3.org/TR/widgets/), when a start
page is not given by config.xml, the UA should locate default start file by a
fixing order instead, which is given by "default start files
table" (http://www.w3.org/TR/widgets/#default-start-files-table) from top to
bottom. This patch will solve a mismatch with the spec.
BUG=XWALK-3264

@pozdnyakov
Please help to review this patch, thanks!

The spec doesn't seem to really say that that table is supposed to be looked up in that order (it just seems to be alphabetically sorted), but I guess it doesn't hurt to do that.

@rakuco
The spec http://www.w3.org/TR/widgets/#step-8-locate-the-start-file said: For each file name in the default start files table (from top to bottom) ..., if use this rule, it does have a fixing order to look up the default start page.

lgtm

Ooops, I see.
Please backport to crosswalk-11 if necessary.