[SPARK-32906][SQL] Struct field names should not change after normalizing floats

What changes were proposed in this pull request?

This PR intends to fix a minor bug when normalizing floats for struct types;
scala> import org.apache.spark.sql.execution.aggregate.HashAggregateExec
scala> val df = Seq(Tuple1(Tuple1(-0.0d)), Tuple1(Tuple1(0.0d))).toDF("k")
scala> val agg = df.distinct()
scala> agg.explain()
== Physical Plan ==
*(2) HashAggregate(keys=[k#40], functions=[])
+- Exchange hashpartitioning(k#40, 200), true, [id=#62]
   +- *(1) HashAggregate(keys=[knownfloatingpointnormalized(if (isnull(k#40)) null else named_struct(col1, knownfloatingpointnormalized(normalizenanandzero(k#40._1)))) AS k#40], functions=[])
      +- *(1) LocalTableScan [k#40]

scala> val aggOutput = agg.queryExecution.sparkPlan.collect { case a: HashAggregateExec => a.output.head }
scala> aggOutput.foreach { attr => println(attr.prettyJson) }
### Final Aggregate ###
[ {
  "class" : "org.apache.spark.sql.catalyst.expressions.AttributeReference",
  "num-children" : 0,
  "name" : "k",
  "dataType" : {
    "type" : "struct",
    "fields" : [ {
      "name" : "_1",
                ^^^
      "type" : "double",
      "nullable" : false,
      "metadata" : { }
    } ]
  },
  "nullable" : true,
  "metadata" : { },
  "exprId" : {
    "product-class" : "org.apache.spark.sql.catalyst.expressions.ExprId",
    "id" : 40,
    "jvmId" : "a824e83f-933e-4b85-a1ff-577b5a0e2366"
  },
  "qualifier" : [ ]
} ]

### Partial Aggregate ###
[ {
  "class" : "org.apache.spark.sql.catalyst.expressions.AttributeReference",
  "num-children" : 0,
  "name" : "k",
  "dataType" : {
    "type" : "struct",
    "fields" : [ {
      "name" : "col1",
                ^^^^
      "type" : "double",
      "nullable" : true,
      "metadata" : { }
    } ]
  },
  "nullable" : true,
  "metadata" : { },
  "exprId" : {
    "product-class" : "org.apache.spark.sql.catalyst.expressions.ExprId",
    "id" : 40,
    "jvmId" : "a824e83f-933e-4b85-a1ff-577b5a0e2366"
  },
  "qualifier" : [ ]
} ]

Why are the changes needed?

bugfix.
Does this PR introduce any user-facing change?

No.
How was this patch tested?

Added tests.

Test build #128795 has started for PR 29780 at commit 1bf4f32.

Merged build finished. Test PASSed.

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

Test build #128795 has finished for PR 29780 at commit 1bf4f32.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

GA passed. cc: @cloud-fan @viirya

Thanks all! Merging to master/3.0.

Thank you, @maropu and @viirya and all!


CB_CBView_AdSense_content should have text-align: center to center ads

The main goal of this is that by default when you create a CB_CBView_AdSense it should center its ad.
Later potential:

add left or right
add max sizes

Also:
An adsense view should not have to be placed in a container view.

The code on other sites seems to set the size of the container to a specific ad size which would for the size of the add to that size or smaller.

Potentially CSS of JavaScript could do a full dynamic resize of the element in response to window size changes.


Explain Windows User which sharetype to choose

winnfs is very slow in write operations, but faster in read than vboxfs

+1 ;D

@mikemeier i added more documentation and suggestion to the documentation: https://github.com/dominikzogg/vagrant-php/blob/v1-ubuntu/doc/installation/windows.md


Added eval command

Ever want to test some python code? Now you can! With the help of the amazing eval command! It'll run whatever python code you give it indiscriminately!

This is not even an eval it's straight up doing a subprocess. :schmuck:

Sorry but this is a very dumb idea


Upgrade to new WebRTC Task API

Leverages the new SaltyRTC WebRTC Task API.
Further changes:

Make the user application data channel flow-controlled
Allow to send arbitrarily sized messages from the web UI
Allow to send arbitrarily sized messages from the app UI
Remove redundant utilities
Cleanup

To do:

[ ] Web: Use released version of the SaltyRTC WebRTC Task in package.json (depends on https://github.com/saltyrtc/saltyrtc-task-webrtc-js/pull/28)
[ ] Android: Use released version of the SaltyRTC WebRTC Task (depends on https://github.com/saltyrtc/saltyrtc-task-webrtc-java/pull/27)

@dbrgn You can start reviewing if you want to. There's an issue with the flow control in the Java version but hopefully that's not going to introduce a lot of changes.


LMS items have a GE price

Type
Incorrect behavior
Operating System
Windows
OS Version
Windows 10
Bug description
Items like the Dark Bow and the Seers Ring(i) inside of LMS are showing a GE price which is causing another plugin to mistake them for a drop and post via webhook. Not a huge deal, just a slight nuisance.
Screenshots or videos

RuneLite version
RuneLite Version: 1.10.4
Loader Version: 2.1.6
Logs
No response

causing another plugin to mistake them for a drop and post via webhook.

This should be handled by the plugin in question

causing another plugin to mistake them for a drop and post via webhook.

This should be handled by the plugin in question

I would consider that one way to fix it but I feel like the core issue is why these particular LMS items magically started getting a GE price generated for them by RuneLite in the first place when others don't. I first started noticing this pop up about March 1st.

That's weird, those items should explicitly have a low value and not be alchable, tradable or GE-able. Or so the wiki claims.. The wiki doesn't seem to have a price for these items. And neither does the RuneLite prices API.
VERY weird

Some items in LMS are LMS-unique clones of other items (as an anti-smuggling technique), but not all. As above, this should be handled by the plugin in question to not track within LMS.


on_os block: allow to contain conflicts_with

Some conflicts are os-specific.

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[ ] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.
[ ] Have you successfully run brew style with your changes locally?
[ ] Have you successfully run brew typecheck with your changes locally?
[ ] Have you successfully run brew tests with your changes locally?
[ ] Have you successfully run brew man locally and committed any changes?

Review period will end on 2021-02-09 at 00:00:00 UTC.

Review period skipped due to critical label.

@iMichka could you rebase so we get green CI?


pull num_uids from subtensor

This eliminates guesswork in determining how many UIDs to initialize the gating model with per subnet.

@Eugene-hu Do you see this as something to be approved asap to accelerate development on net11 (therefore merge to main) or is it something to be pushed in the next release (merge to staging)?

@Eugene-hu Do you see this as something to be approved asap to accelerate development on net11 (therefore merge to main) or is it something to be pushed in the next release (merge to staging)?

It depends on when we are releasing the emissions to netuid 11 and 21. I think this should be released inline with the emission changes, and so the validator can be run without issues. We can do a seperate release for the changes


update on the landing page

Please review

This has a lot of conflicts and there is no time to resolve


add Optional.isNotEmpty as an alias of Optional.isPresent

I'm on it :)

Consider it done :)

I was about to work on it, but you were faster :)
cheers

You are welcome :)


"onEnterBounds" is missing from phaser.d.ts

and it is also missing from "destroy()" function inside the gameobjects/Events.js

(Parasite, but related, question)
How is the phaser.d.ts file generated?
I see some patches come in for updates, and I hope it's not an [entirely] manually process.

It's entirely manual.

It is manual for the TS and there is no relation to the docs.

@legendary-mich :+1:  the update function already existed in the dev branch.

@clark-stevenson You missed the point I had made in the first comment. In gameobjects/Events.js there is a function named destroy() and it seems to me that it lacks of "onEnterBounds" as well.
// gameobjects/Events.js
destroy: function () {
  this._parent = null;
  if (this._onDestroy) { this._onDestroy.dispose(); }
  if (this._onAddedToGroup) { this._onAddedToGroup.dispose(); }
  if (this._onRemovedFromGroup) { this._onRemovedFromGroup.dispose(); }
  if (this._onRemovedFromWorld) { this._onRemovedFromWorld.dispose(); }
  if (this._onKilled) { this._onKilled.dispose(); }
  if (this._onRevived) { this._onRevived.dispose(); }
  if (this._onOutOfBounds) { this._onOutOfBounds.dispose(); }
  if (this._onInputOver) { this._onInputOver.dispose(); }
  if (this._onInputOut) { this._onInputOut.dispose(); }
  if (this._onInputDown) { this._onInputDown.dispose(); }
  if (this._onInputUp) { this._onInputUp.dispose(); }
  if (this._onDragStart) { this._onDragStart.dispose(); }
  if (this._onDragStop) { this._onDragStop.dispose(); }
  if (this._onAnimationStart) { this._onAnimationStart.dispose(); }
  if (this._onAnimationComplete) { this._onAnimationComplete.dispose(); }
  if (this._onAnimationLoop) { this._onAnimationLoop.dispose(); }
}

Yup well spotted, have added it to the destroy method too.


Community have discord server?

There is none at the moment anyway. Perhaps sometime in the future we could create a channel in the nixos discord or something similar, but I don't really use discord much so I'm not sure.

it would be really nice to have a discord server


[Create New Issue]: Technical Questions -Hashmaps

Description
This issue is for the most important 10-12 questions on HashMaps. Video Type solutions are highly encouraged. The questions selected should be such that they cover wide range of topics and do not overlap in terms of concepts.
langauge : Java/Cpp
Domain
Interview Prep
Type of Contribution
Audio, Video, Documentation
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of this project.

@ruchitadamodar1922 I'll clear the question through intuition or Pseudo Code but can I code it in Python?

Yea sure go ahead
On Thu, Sep 30, 2021, 09:59 Nikhil Singh @.***> wrote:

@ruchitadamodar1922 https://github.com/ruchitadamodar1922 I'll clear
the question through intuition or Pseudo Code but can I code it in Python?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/girlscript/winter-of-contributing/issues/3513#issuecomment-930772543,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKK4SU3VX3JBFNQCIVXELULUEPRRFANCNFSM5E7QX7HA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Sure, currently I'hv 2 issues in my hand.
Don't want to overburden me right now.
If nobody takes this issue, I'm surely gonna take it.

/assign


fix(monitor): remove newing-up unused object in UseAzureMonitor

fixes #38787
Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

@amis92 Thanks for the feedback and contribution!


How to make auto redirect(slide) user to previous page inside custompageviewcontroller ?

I have two custom page of viewcontroller like "CustomPageViewController" in this project.
Lets say, CustomPageViewControllerA and CustomPageViewControllerB. While user slide forward to CustomPageViewControllerB but they not finish fill the form inside CustomPageViewControllerA yet then i want make it will auto redirect them to previous page (CustomPageViewControllerA) ?

You could implement the logic on your code to check on walkthroughPageDidChange if your requirements for that page are fulfilled, or you could block the scrollview until the user filled the form ( scrollview  is a public property of BWWalkthroughViewController).


Rich rdf

It seems queries 13 and 14 contradict our current specification, so I'm closing this PR.


If fastify-opentelemetry is run in a nested span parent is incorrect

If you run fastify-opentelemetry inside of opentelemetry-instrumentation-http  then the fastify-opentelemetry created span has the incorrect parent set if the client sends the b3 headers (if the b3 propagator is set).
If no headers are provided, then everything works fine.
Example:

service1 - HTTP GET       (note, no b3 headers passed here

service1 - FASTIFY GET    (note that the parent is correct)

service1 - call to server2   (passing b3 headers)

service2 - HTTP GET
service2 - FASTIFY GET     (note that the parent is incorrectly set as server1 call)

Note, the instrumentation-http is beneficial in addition to the fastify plugin as it enables us to get a clearer indication of network level issues, and a better view on overall performance.

I've submitted a PR with the fix, although I've tested manually, I can't figure out how to setup the test environment to be able to recreate in a unit test (as no context manager is currently configured).


Add ability to change storeMode in RedissonClusteredLocalCachedMap in runtime

I use cache with 2 services, one of them is writer and another one is reader. I would like to have fast reader even with outdated cache in some cases, which will be updated periodically. But I can't modify storeMode field in runtime, I have to choose between fast read (storeMode = LOCALCACHE) and ability to preloadCache from cluster (storeMode = LOCALCACHE_REDIS). Not considering java reflection API
Adding setter for storeMode field in RedissonClusteredLocalCachedMap will solve my problem
Maybe I do something wrong and there is other solution

sorry, I don't clue why do you need to change it in runtime? In LOCALCACHE mode data isn't stored in Redis.

I need to read fast like from local cache, but update this cache periodically from cluster. Reading with mode LOCALCACHE_REDIS isn't fast, even when I use org.redisson.api.RLocalCachedMap#getCachedMap

even when I use org.redisson.api.RLocalCachedMap#getCachedMap

Did you try switch to Caffeine local cache implementation?
If RLocalCachedMap#getCachedMap is not enough for your need then why do you use it?

need to read fast like from local cache (being sometimes outdated is ok), but update this cache periodically from cluster

Each update operation will also update local cache. You don't need to call preloadCache each time.

Yes, I tried Caffeine, it didn't help.
I tried RLocalCachedMap#getCachedMap trying to improve performance. It helps fro sure, but not always, some reads are suspiciously slow by my tests.

Each update operation will also update local cache

Not when storeMode = LOCALCACHE, as I understand


Tracking issue for split

This is the tracking issue for split keyboard support.

[x] Basic split BLE implementation #60
[x] Config split keyboard using keyboard.toml
[x] Put splits to sleep mode if there's no key
[x] Update project template
[ ] Report battery level on both side
[x] Test the power consumption
[ ] Manually switch the master & slave role
[ ] Auto-switch the master & slave role to avoid master's battery running out too fast
[ ] Switch to usb if USB cable is connected to one of the splits and make it master
[ ] Heterogeneous split communication, dongle mode, etc

Tested split power consumption:

idle state: central=350ua, peripheral=20ua
key pressing state: 2-3ma


keepassxc: 2.4.3 -> 2.5.0

Motivation for this change
New minor release. Full changelog available at https://github.com/keepassxreboot/keepassxc/releases/tag/2.5.0.
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Notify maintainers
cc @

Tried the build and running the binary, it works. LGTM


Failed to resolve: com.github.Q42:AndroidScrollingImageView:1.1

Error:(20, 13) Failed to resolve: com.github.Q42:AndroidScrollingImageView:1.1
It says this, what is wrong?
I put it in the app build.gradle not in the top-level build gradle. Is this the bug?
It should not.

Hi, did you add the repository in your gradle file?
repositories {
    maven { url "https://jitpack.io" }
}

Yes I did


update README.md

LGTM 👍
I may need to update the instructions for setting up Slack and Telegram once they are properly implemented. But for now this works well for the project's documentation!


Support for Lelantus-MW: Send screen

All screens https://app.zeplin.io/project/5b379c2c38cb39e73e5f8889/dashboard?seid=5ecf9fee9c931a2a11627c16

Update the design according to the https://zpl.io/VxxZ4WJ

Send only unlinked funds is on https://zpl.io/aBJX9DA .
Button name if unlinked funds is on "add all unlinked" and "Unlinked available" appears in the right block

Send only unlinked funds is off https://zpl.io/VQXk9kn
Button name here "add all" and "Total available" in the right block

Transaction fee, comment and advanced could be hidden by default

Empty send screen https://zpl.io/25DBQlj

Show token popup https://zpl.io/2jnnkqm

Save contact after sending (only permanent tokens) https://zpl.io/VOwG6rk

this design will not be implemented now


How to represent that Kubernetes resources are not accessible?

UX Description
With https://github.com/podman-desktop/podman-desktop/issues/7629, the frontend now knows which Kubernetes resources (pods, deployments, nodes, etc) the user can access.
How do we want to represent that some resources are not accessible, in these different pages?

In this page, Pods and/or Deployments may not be accessible:

In the Kubernetes menu, some Kubernetes resources may not be accessible:
In the Kubernetes Dashboard, some Kubernetes resources may not be accessible:

The backend sends two information for each Kubernetes resource:

is the resource accessible (more exactly, does the user have the permission to watch the resource, used to get the list of objects)?
optionally, a reason why it is accessible / not accessible

For now, the permissions to create/delete/... (all other operations except watch/list) are not known.
Request type
UX analysis/suggestions for improvement
Primary Contact
@feloy
Deadline for request
as part of the current sprint/next sprint

@feloy there are several ways to mark something inaccessible:

grey out a particular element
add an icon / badge; potentially accompanied by a small label text (not accessible)
display an error message next to it

There also needs to be a way to provide more info for the user, in form of a tooltip, for example on what the status is and why.
@ekidneyrh the dashboard is your design, WDYT? Let's discuss!


Application Insights: use date-time not date_time

Replace 'date_time' with 'date-time' in these specs to unify with all other specs
This checklist is used to make sure that common issues in a pull request are addressed. This will expedite the process of getting your pull request merged and avoid extra work on your part to fix issues discovered during the review process.
PR information

[x] The title of the PR is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For information on cleaning up the commits in your pull request, see this page.
[x] Except for special cases involving multiple contributors, the PR is started from a fork of the main repository, not a branch.
[x] If applicable, the PR references the bug/issue that it fixes.
[x] Swagger files are correctly named (e.g. the api-version in the path should match the api-version in the spec).

Quality of Swagger

[x] I have read the contribution guidelines.
[x] My spec meets the review criteria:

[x] The spec conforms to the Swagger 2.0 specification.
[x] The spec follows the guidelines described in the Swagger checklist document.
[x] Validation tools were run on swagger spec(s) and have all been fixed in this PR.

Automation for azure-sdk-for-go

Automation for azure-sdk-for-python

Automation for azure-sdk-for-node

Can one of the admins verify this patch?

Automation for azure-sdk-for-ruby

Automation for azure-sdk-for-java

Closing this due to inactivity. Feel free to open a new PR when you are ready.


[Feature Request] Notification panel option ON/OFF

Hi Developer,
I'm really enjoy your plugin since it gives me a quick toolbar to edit alternative task symbols. There is only slightly minor problem that i cant find where to disable Notification from the plugin.
I'm very thankful if my request get implemented, that would be quality improvement right there.
Your sincerely,
MangoBee

You should only get notifications when you save settings? Are there others?

Hi, it always appears when I start the vault. Is that normal?

Hmm. No.. that's too frequent. What does the notification say? (update of settings?) Do you have sync enabled? Have you opened/closed/saved settings?
(I wonder if you have older settings that are adapted rather than saved..)

It's the same when you save settings, i see no sync in setting.

Right. After you save it once, and you restart.. it happens again?

It will happen on exit from settings (or if you push save button). Should not happen at startup, unless something is restoring old settings.

Hi again, sofar im really enjoying using your plugin, it enables for my daily workflow much easier, big thanks.
About the problem that I stated before. I accidentally found the cause. Its "Settings Search"-plugin, just so you know.


Should not set public path in lib mode

Version
3.0.0
Node and OS info
Node 10.8.0 / yarn 1.9.4 / WSL
Steps to reproduce
Run: vue-cli-service build --target lib --name lib-name src/index.js
What is expected?
Should not set public path since this is a library build.
What is actually happening?
I have seen this in the dist file:
/***/ "fb15":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);

// EXTERNAL MODULE<EMAIL_ADDRESS>var setPublicPath = __webpack_require__("1eb2");

And I didn't find any option to disable this behavior. I also suggest this to be automatically disabled when --target set to lib.

This is intentional.
See:
https://github.com/vuejs/vue-cli/blob/7fd344376edbb67eca7d9295b859c57eb72a0e43/packages/%40vue/cli-service/lib/commands/build/resolveLibConfig.js#L110-L112


Consistency check

The parameter description provides the definition:
The minimum number of non-alphanumeric characters (such as @, #, !, %, &, and so on) in the generated password.
The example obscures that definition with the comment:
// Generate a new 12-character password with 1 non-alphanumeric character.
string password = Membership.GeneratePassword(12, 1);
Adding the two words, "at least", to the comment ensures the sharing of consistent information regardless of where one looks.  Especially when including examples to provide clarity.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: eb4e7f91-d0bb-9c98-3c4d-c171be068c93
Version Independent ID: cd0bb956-d55a-4bd8-0361-b9bf51e08a33
Content: Membership.GeneratePassword(Int32, Int32) Method (System.Web.Security)
Content Source: xml/System.Web.Security/Membership.xml
Service: unspecified
Product: .net
GitHub Login: @dotnet-bot
Microsoft Alias: dotnetcontent

Thanks for your feedback @WilMead. I've opened a PR to fix this.


JSQLParser 4.2 up to 4.4 hava a problem

hi~
JSQLParser 4.2 up to 4.4 vesion,  I have a problem，net.sf.jsqlparser.expression.Function  toString method
When the database dialect is MySQL，when i want to assemble SQL totalcount , there are some differences,  as shown in the picture

How can I solve this problem  give me some advice

@afuchrisma
In my case I've changed the code snipped
Function countExpression = new Function();
countExpression.setName("count");
countExpression.setAllColumns(true);

To this one:
Function countExpression = new Function();
countExpression.setName("count");
countExpression.setParameters(new ExpressionList(new AllColumns()));

Hope it will help

Greetings,
we have changed * from a Function property into an Expression AllColumns, which also supports Table References, e.g. f( a.* ).
Just access the Function's parameters and set or get the Expression of each parameter and test for AllColumns Expression.

Closed, since no further questions asked.


Docker paid plan

We got an email saying that we will need to pay for docker. I think martin is the only maplibre project using docker hub.
Can we switch martin to ghcr.io i.e. github's container thing? That would be free...

https://blog.alexellis.io/docker-is-deleting-open-source-images/


Develop this for java

Hi, thanks for this great library. can you develop this for java developers?

it already exists

https://github.com/florent37/ExpectAnim


Update cdn-pop-abbreviations.md

Fix misspelling Columbia -> Colombia.

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

Thanks for the fix, @enzocanoo.


ci: add melos bootstrap action

- What I did

Used more specific glob patterns for the melos package definitions to avoid selecting unwanted packages

- How I did it
- How to verify it
- Description for the changelog
ci: add melos bootstrap action

This failure is a sign that our packages in this repo don't share any common dependency constraints. In this case, specifically for at_commons

The issue is a result of pinning in at_root_server. I'm not sure as to why we've chosen to do that, but our options are as follows:

Update the version constraints to ones that are compatible with the rest of our packages.
Ignore it from the melos tool.

@cpswan what do you think is the best course of action here?

@XavierChanth at_root_server and at_secondary_server both have pinned dependencies as they're services rather than packages. Maybe they shouldn't even be in the packages directory?
at_root_server might have slipped behind on deps, as I don't think it's covered by Dependabot.

@XavierChanth at_root_server and at_secondary_server both have pinned dependencies as they're services rather than packages. Maybe they shouldn't even be in the packages directory?
at_root_server might have slipped behind on deps, as I don't think it's covered by Dependabot.

I think the best course of action is to check with and without, so I setup a matrix that will bootstrap with everything, and also everything but at_root_server and at_secondary.
I also put in the dependabot config for at_root_server

melos really doesn't like the git ref when bootstrapping... but I can't seem to produce the same issue on my local

@cpswan I changed it so that the default was to filter the packages with pinned dependencies by default (since they aren't a worry for this check anyways - because they aren't being published)


Feature Request: Add the Deno engine.

On a serious note though, I think [embedding deno] is something that would suit this project well.
One of the problems with embedding node is node's complexity. Deno's source code is arguably simpler than node and is less prone to memory leaks due to deno being written in Rust. Deno is also explicitly designed to be embeddable:

https://docs.deno.com/runtime/manual/advanced/embedding_deno/

The only issue is that it is written to be embedded in another Rust application, so Rust FFIs would have to be written in addition to C# bindings. However, I don't imagine that to be more difficult than writing the C# bindings themselves.

Originally discussed here: https://github.com/microsoft/ClearScript/issues/487#issuecomment-2222058653

Hi @anonhostpi,
We've looked at the Deno documentation, and we aren't clear on what a ClearScript-Deno combination would look like or even what the point of it would be.
ClearScript aims to make .NET applications scriptable, whereas Deno is a JavaScript application platform. How would one help the other achieve its goals?
Treating Deno as a script engine doesn't make sense. The script engine within Deno is V8, which ClearScript already supports, and going through Deno to achieve parity with that would be both difficult and pointless.
Deno's other main benefit is its implementation of a comprehensive JavaScript API, but if that's what you need, you can either embed Deno directly or use ClearScript and .NET to implement a similar API on top of bare V8.
The ability to use .NET to extend Deno might be interesting, but ClearScript doesn't really offer anything to facilitate that, and it's unclear whether such a capability would have broad appeal.
Please feel free to reopen this issue if you have additional thoughts about this topic. Thanks!

Language interop mostly. It would help .NET achieve the same thing that Python.NET has done but for JS instead of Python.
I know that this idea has been brought up for node multiple times, but Node isn't very embeddable.
Deno on the other hand is. Of course, as stated, an additional layer of work would have to be done to embed Deno compared to what Python.NET had to do for Python as Deno would need Rust FFIs in addition to the C# bindings.
The primary problem with porting the Node and/or Deno APIs to ClearScript's V8 as suggested is that hundreds of those APIs aren't Javascript, but rather Native/C++. These APIs would have to be entirely rewritten from scratch.
In contrast, writing FFIs and bindings is just a matter of identifying existing code that you want to expose to another program (no rewrites required) which is effectively what this repo already does for V8 and the other JS engines
Currently, I'm exploring and researching both approaches (rewriting Node's Native APIs and writing my own FFIs for Deno) independently of this repo, but I am just a single hobby developer, and I expect that work to likely take me years, since I don't develop professionally (I have to do this in my off time between classes and work)

Can you give us an idea of what ClearScript-Deno integration might look like? That is, how would you use it from a .NET application? Do you envision something like DenoScriptEngine that works just like V8ScriptEngine but has all of Deno's JavaScript APIs built in?

I would expect it to be similar to what is exposed with V8ScriptEngine for consistency, just with the additional ability to call Deno's specific APIs from JS land.
Given that Deno is V8 based, I don't imagine you would need to expose any additional Deno-specific APIs to C# land.
It would be handy to have a variant of eval that just loads a Deno module by its identifier and returns its exports, but I don't think that's necessary.

Hi @anonhostpi,
Although that sounds like an interesting idea and a potentially useful project, it really isn't ClearScript's goal to provide general-purpose application frameworks or script APIs that go far beyond what's built into the language.
Also, please understand that ClearScript is a side project maintained by a very small group in their spare time, and we've got our hands full with the current batch of eight V8 platforms and over twenty individual NuGet packages.
ClearScript interfaces with V8 via the latter's expansive C++ API. Because Deno doesn't – as far as we can tell – provide that kind of access to its underlying script runtime, your proposal would require extensive modifications to both Deno and ClearScript. While that might still be far less work than building a Node.js-like platform atop V8ScriptEngine, it just isn't something we're likely to tackle in the foreseeable future.
Sorry!


[WIP][SPARK-8425]

just running tests, not ready for review just yet.  Still need to do some cleanup.

Test build #61400 has started for PR 13951 at commit 168de23.

Test build #61400 has finished for PR 13951 at commit 168de23.

This patch fails to build.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Test build #61405 has started for PR 13951 at commit 17e1e77.

Test build #61411 has started for PR 13951 at commit a9ea1b6.

Test build #61405 has finished for PR 13951 at commit 17e1e77.

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

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

Merged build finished. Test FAILed.

Test build #61411 has finished for PR 13951 at commit a9ea1b6.

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

Merged build finished. Test FAILed.

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

Test build #61589 has started for PR 13951 at commit c89def5.

Test build #61589 has finished for PR 13951 at commit c89def5.

This patch passes all tests.
This patch does not merge cleanly.
This patch adds no public classes.

Build finished. Test PASSed.

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

Test build #61627 has started for PR 13951 at commit 3276d41.

Test build #61627 has finished for PR 13951 at commit 3276d41.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
public final class JavaStructuredNetworkWordCount
abstract class ConsumerStrategy[K, V]
 class DirectKafkaInputDStreamCheckpointData extends DStreamCheckpointData(this)
class KafkaRDDPartition(
trait HasOffsetRanges
trait CanCommitOffsets
class OptionUtils(object):
class DataFrameReader(OptionUtils):
class DataFrameWriter(OptionUtils):
class DataStreamReader(OptionUtils):
class DataStreamWriter(object):
public class UDFXPathUtil
 public static class ReusableStringReader extends Reader
abstract class ExplodeBase(child: Expression, position: Boolean)
case class Explode(child: Expression) extends ExplodeBase(child, position = false)
case class PosExplode(child: Expression) extends ExplodeBase(child, position = true)
case class Elt(children: Seq[Expression])
case class XPathBoolean(xml: Expression, path: Expression)
case class TypedFilter(

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

Merged build finished. Test PASSed.

Test build #61778 has started for PR 13951 at commit e6664ac.

Test build #61778 has finished for PR 13951 at commit e6664ac.

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

Merged build finished. Test PASSed.

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

Test build #61855 has started for PR 13951 at commit 1a24341.

Test build #61855 has finished for PR 13951 at commit 1a24341.

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

Merged build finished. Test FAILed.

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

Test build #61863 has started for PR 13951 at commit 32870a5.

closing to open a cleaner pr ...

Test build #61866 has started for PR 13951 at commit a12985e.

Test build #61863 has finished for PR 13951 at commit 32870a5.

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

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

Merged build finished. Test PASSed.

Test build #61866 has finished for PR 13951 at commit a12985e.

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

Merged build finished. Test PASSed.

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


Weird bug crashes when i load euro truck simulator 2 and soft locks my pc afterwards

Microsoft PowerToys version
0.77.0
Installation method
Microsoft Store
Running as admin
No
Area(s) with issue?
General
Steps to reproduce
Opening Euro truck simulator 2 via truckers mp
once the game loads to the menu, powertoys comes up with a crash log and then euro truck simulator 2 comes up with a bug check
2024-01-12.txt
✔ Expected Behavior
Open Euro Truck simulator and powertoyss to not crash
❌ Actual Behavior
Power toys crashes and opens log screen and my pc is unusable unless i hard reset it
Other Software
Euro truck simulator 1.49
Trucks MP

Based on the provided information, it seems that the you encountered two fatal exceptions, one related to an OutOfMemoryException and the other to a COMException regarding desktop composition being disabled.
[2024-01-12 21:02:13.9087] [FATAL]
Exception
System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
   Source: Wpf.Ui
   TargetAssembly: Wpf.Ui, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null
   TargetModule: Wpf.Ui.dll
   TargetSite: IntPtr WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
   at Wpf.Ui.Appearance.SystemThemeWatcher.WndProc(IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at System.Windows.Interop.HwndSource.PublicHooksFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

I think it was using 100% CPU and you used one of the hotkeys, enabling PowerToys and Windows ran out of memory and crashed generating this log.
Suggested Actions:

Close unnecessary applications to free up system resources. (PowerToys for example)
Check if any background processes are consuming excessive memory or CPU.
Consider upgrading the system's RAM if it's below the recommended requirements for the applications in use.

[2024-01-12 21:35:35.1205] [FATAL]
Exception
System.Runtime.InteropServices.COMException: {Desktop composition is disabled} The operation could not be completed because desktop composition is disabled. (0x80263001)
   Source: PresentationFramework
   TargetAssembly: PresentationFramework, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35
   TargetModule: PresentationFramework.dll
   TargetSite: Void DwmExtendFrameIntoClientArea(IntPtr, Standard.MARGINS ByRef)
   at Standard.NativeMethods.DwmExtendFrameIntoClientArea(IntPtr hwnd, MARGINS& pMarInset)
   at System.Windows.Shell.WindowChromeWorker._ExtendGlassFrame()
   at System.Windows.Shell.WindowChromeWorker._UpdateFrameState(Boolean force)
   at System.Windows.Shell.WindowChromeWorker._HandleDwmCompositionChanged(WM uMsg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at System.Windows.Shell.WindowChromeWorker._WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at System.Windows.Interop.HwndSource.PublicHooksFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

This one seems to be related to this issue.

Hi @williamg209
Did it only happen once or are you able to reproduce the crash?
/needinfo

that 2nd feature doesnt even exist in modern windows, also it had it happen twice, it may have been to do with my paginf file playing up as it was only 3gb instead of 7gb, im unsure

From: Breno A. @.>
Sent: 13 January 2024 02:55
To: microsoft/PowerToys @.>
Cc: williamg209 @.>; Author @.>
Subject: Re: [microsoft/PowerToys] Weird bug crashes when i load euro truck simulator 2 and soft locks my pc afterwards (Issue #30923)
Based on the provided information, it seems that the you encountered two fatal exceptions, one related to an OutOfMemoryException and the other to a COMException regarding desktop composition being disabled.
[2024-01-12 21:02:13.9087] [FATAL]
Exception
System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
Source: Wpf.Ui
TargetAssembly: Wpf.Ui, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null
TargetModule: Wpf.Ui.dll
TargetSite: IntPtr WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
at Wpf.Ui.Appearance.SystemThemeWatcher.WndProc(IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Interop.HwndSource.PublicHooksFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
I think it was using 100% CPU and you used one of the hotkeys, enabling PowerToys and Windows ran out of memory and crashed generating this log.
Suggested Actions:

Close unnecessary applications to free up system resources. (PowerToys for example)
Check if any background processes are consuming excessive memory or CPU.
Consider upgrading the system's RAM if it's below the recommended requirements for the applications in use.

[2024-01-12 21:35:35.1205] [FATAL]
Exception
System.Runtime.InteropServices.COMException: {Desktop composition is disabled} The operation could not be completed because desktop composition is disabled. (0x80263001)
Source: PresentationFramework
TargetAssembly: PresentationFramework, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35
TargetModule: PresentationFramework.dll
TargetSite: Void DwmExtendFrameIntoClientArea(IntPtr, Standard.MARGINS ByRef)
at Standard.NativeMethods.DwmExtendFrameIntoClientArea(IntPtr hwnd, MARGINS& pMarInset)
at System.Windows.Shell.WindowChromeWorker._ExtendGlassFrame()
at System.Windows.Shell.WindowChromeWorker._UpdateFrameState(Boolean force)
at System.Windows.Shell.WindowChromeWorker._HandleDwmCompositionChanged(WM uMsg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Shell.WindowChromeWorker._WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Interop.HwndSource.PublicHooksFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
This one seems to be related to this issuehttps://answers.microsoft.com/en-us/windows/forum/all/disable-and-enable-desktop-composition-with/f8bf66c6-9be9-4fb6-8273-5bcc4354a9ed.
—
Reply to this email directly, view it on GitHubhttps://github.com/microsoft/PowerToys/issues/30923#issuecomment-1890270030, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BDCF4XZBVI6TOWFAWNHMOTLYOHZQVAVCNFSM6AAAAABBYYFSIOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOJQGI3TAMBTGA.
You are receiving this because you authored the thread.Message ID: @.***>

this would be #30507

/dup https://github.com/microsoft/PowerToys/issues/30507


Add built-in fixed timestep interpolation

Following discussion here #10388 I've been working on potential enhancement to the engine.
Issue description:
There is as yet no support for fixed timestep interpolation, you have to implement it yourself.
https://www.gamedev.net/blogs/entry/2265460-fixing-your-timestep-and-evaluating-godot/
The past few games I've made I've written some hacky interpolation in gdscript, however now I'm tinkering with the source I've managed to make a module with a smoothing node type that will do timestep interpolation for you, without any code:
https://www.youtube.com/watch?v=SFLwCR2KEJ8
After spending a few days on it, 3 avenues seem to be interesting options:

Build optional interpolation ability directly into nodes (perhaps spatial?)
Add a smoothing node to the main engine
Add better support to allow use of smoothing nodes in modules, or smoothing within gdscript.

More on option 3
Interpolation is already possible to an extent but really needs the main_timer_sync to expose to gdscript and modules the interpolation fraction, the fraction through the current physics tick that the current frame is being rendered at. As far as I can see that is not available at the present time, I have modified the timer to allow this for my module.
At present you can for instance make a note of the OS time from gdscript at the last physics tick, and the OS time at the rendered frame, and calculate the time difference, but this is subject to jitter because you actually need to know the logical time that the physics tick would take place, rather than the actual time it is calculated.
Anyway I'm thinking of starting by doing a small PR to allow give access to the interpolation fraction in gdscript and modules. But would be interested to gauge the support for some kind of inclusion of ability to do interpolation as a first class feature of Godot.

I wrote a demo that relies on Node2D.set_as_toplevel() here: https://github.com/Calinou/godot-physics-interpolation-demo
As someone who owns a 144 Hz display, I would really appreciate having this built-in. However, we need a way to prevent interpolation from being performed (so that objects which are explicitly "teleporting" aren't interpolated). I can see several ways to do this:

Add a property to PhysicsBody that can be toggled when needed. Can be tedious, but it's flexible.
Add a parameter to the KinematicBody/RigidBody movement functions. Can be tedious, but it's flexible.
Add an user-defined "maximal speed" property to PhysicsBody which defines the maximum speed at which the object is reasonably expected to travel in one second. This still requires a bit of manual setup, but it's much more fire-and-forget. Still, if the maximal speed is set too low, interpolation will stop working when the object moves really fast.

The demo looks good to me, although I believe it may suffer from the same problem that the engine doesn't currently support : the start time at integrate forces is the actual time the tick is calculated, not the the logical time of the tick.
For example, at a tick rate of 1tps, if the current frame time is 1.0 second, and the physics tick was due at 0.5 seconds, but is processed late (just before the frame), as far as you are concerned the physics tick started at 1.0 second, and the frame starts at 1.0 second, and the interpolation fraction is 0.0, whereas in reality the interpolation fraction at the frame should be 0.5. In fact in your code the delta passed to _process is the time since the last frame, not since the last logical physics tick. So that might be another source of error - but as I say it may currently be impossible to get the right value.
This is why a slight modification to the timer code in Godot main engine may be necessary to expose this and deal with this issue, which can be a source of jitter. I will have to have a proper look, at the moment I've completely hacked apart main_timer_sync and replaced it with a simpler version because I didn't want to deal with the jitter fix while debugging. It is probably possible to turn off the jitter fix by setting it to 0.0 but I need to confirm this empirically. In fact with proper interpolation, I don't think there is need for the jitter fix.
Agree that interpolation should be essentially free when turned off, both in terms of processing, and preferably in terms of memory use too. Having a separate smoothing node achieves this (method 2), whereas making it part of the node itself (method 1) requires some care. However ultimately method 1 would be easiest to use, especially for beginners.
Adding a property to physics node sounds viable, but you might also want to use it for non physics stuff like cameras so there is an argument for adding it to spatial. You could do it pretty cheaply just by having a pointer to an interpolation property that is either present or not on the node. The bigger problem is getting such a use of interpolation without a proxy to work without throwing out the physics (or other things). At the moment, if your interpolation code moves e.g. a rigid body translate and rotate to smooth it, it also moves the physics, giving a feedback loop. I had a little go at this and trying to prevent the transform change being propagated but opted for the separate node method for now. Really you would ideally have accessible both the transform at the physics tick (for physics, AI etc) and the interpolated position for rendering etc.
Interesting idea about the maximum interpolation speed / distance. I've always simply had a function which gets called explicitly, called teleport, which both moves the object but also sets both the previous and current values for transform. This is the one 'cost' of interpolation, you have to remember to call teleport rather than e.g. set the transform directly. But in practice I've never had a problem with this.

@lawnjelly sounds very promising! I have struggled with jitter issues over the years with Godot. For my main game, I currently have resolved most of them and it is pretty smooth. I find that Godot will mostly give you a solid jitter-free experience as long as I can comfortably stay over 60fps and use vsync (either in engine or in the GPU settings).
However jitter/judder appears pretty much as soon as it dips below 60 fps with vsync on. If I have no vsync on, even if I am well above 100 fps, it is not a smooth experience (not even factoring in screen tearing). Would be interested to know how well your solution handles in these situations. Can't say I have noticed any improvement when the jitterfix option was added to Godot.

if this fixes a player who has a 144hz monitor playing a godot game that coded their movement in physics_process (defaults to 60fps), instead of _process, then i think it will be a great addition to the engine

A little update on this .. I have put in the first PR for adding the interpolation fraction. I did some testing with the existing main_timer_sync code, which includes the jitter fix and is a little hard to fathom lol (!) but empirically with jitter fix set to 0.0 it produces pretty much the same results as my simplified main_timer_sync (there is some small floating point variation (+- 0.001 or so), but nothing serious I think).
I've also written a simple (for now) delta time smoother to work alongside the main_timer_sync. This is because there are 2 major sources for jitter, one is the need for timestep interpolation, and the other is the lack of correct timing information coming from the OS. I will write a separate issue for this later to discuss.
Still no joy on working out a good place to attach the interpolation to the nodes themselves. It has occurred to me if we keep the usual transform as holding the current physics transform, the interpolated transform can perhaps be used only when propagating to the children. However I haven't quite worked out where the parent -> child transforms are getting concatenated yet.

Further update.
I now have a proof of concept working with interpolation built in to the spatial node, such that there is a bool you can turn on in the editor for anything derived from spatial to enable interpolation.
I tracked down the actual concat of the parent and local transform to Spatial::get_global_transform().
I managed to get it working by adding an internal physics notification (for the fixed update) and internal process notification (to mark dirty) for spatial, and banditing the get_global_transform() function, such that the parent retains the uninterpolated transform, but the children get the interpolated version.
However, I still don't have it working with the physics nodes, there is still feedback going on from the interpolated global transform to the physics representation in bullet.
Best solution?
I believe I would be able to get it working with physics, however I am getting concerned that while integrating interpolation into spatial is the easiest solution as far as the user is concerned, it makes the engine code itself overly convoluted, a bit hacky and hard to understand, and prone to bugs in the future.
So at the moment I am in favour of the simplest and most maintainable solution as far as the engine is concerned, which is to have a separate smoothing node, even if it means marginally more work for users. This also guarantees there will be no extra costs in terms of processing and memory use if a game is not using fixed timestep interpolation (there seems to be some interest in alternative methods also, such as semi-fixed timestep and frame delta physics stepping).
Next
So I am now thinking of concentrating effort on refining the smoothing node, and then making it available (as a module and possibly test build of Godot) for testing / feedback.
Note that in any case it will be dependent on the interpolation fraction PR #30226 so will have to wait until this is merged.

Now access to the interpolation fraction has been merged, I have made first versions of both a c++ module and (on suggestion from Calinou) a gdscript addon to add smoothing nodes to allow fixed timestep interpolation, for anyone who is interested in trying this. There may still be a few little bugs to sort and I'll refine them over the coming weeks but they are mostly working fine I think:
GDScript addon:
https://github.com/lawnjelly/smoothing-addon
c++ module:
https://github.com/lawnjelly/godot-smooth
Of course it is also possible to do the interpolation yourself now, so if you want to use these as examples to work from go for it :smile: . Also suggestions for changes / bugs please let me know, I guess via issues on the repositories.
Once the bugs have been worked out I'll have a look at whether it is possible to put the gdscript version in the Godot asset library. It requires a build with the interpolation fraction PR so it might have to wait until 3.2 is released.
Some interesting quirks
Normally for interpolation I use slerping for quaternions, and handle scale separately. As Godot stores rotations and scaling combined in a basis I decided to try out simply lerping the basis as an alternative. To my surprise it actually looks quite reasonable. I suspect there is some contortion going on during the lerping but it is hard to see even at low tick rates, so is unlikely to be a concern at over around 20 ticks per second.
On the other side of the coin decomposing a Basis back to a quaternion doesn't seem to work well with any scaling applied to the Basis (I think the gdscript version flat out refuses to do it). I have left the slerp method available, but it would probably mean you would need to apply any scaling to a parent node.
Now it is actually possible to do the interpolation with the PR I will close this issue after a couple of days just in case of more comments, as it is effectively resolved. :+1:

I wanted to add my two cents here instead of making a new issue despite it being closed.
I don't think having a separate module for this feature is appropriate. I see a two pronged approach to implementing this in a more effective way, albeit idealistically:

Going with what was said prior - add a tick-box to PhysicsBody to enable interpolation. Having it on Spatial doesn't make sense because there isn't really a sane use case in my opinion for a Spatial node to need to automatically interpolate. The movable physics bodies are the only nodes that really require this behaviour to be done automatically. If there is a use-case for it, then I withdraw my comment.
Add a new overrideable function in PhysicsBody called _timestep_interval for user-defined interpolation. This function would run in the same step as _process but never in the same step as _physics_process which takes 3 arguments:

delta: time since last physics frame
next: time to next physics frame (this would be estimated but I'm not sure how feasible/realistic that is)
state: a handle to a shadow PhysicsDirectBodyState object which the interpolation calculations are applied to. This state is always overridden whenever the normal state is written to or set (solving the problem of rubber-banding when teleports are done on raw transforms).

This would allow users to manually handle the interpolation in a more controlled manner. It might be handy to have a function that can integrate the forces in state and return a new PhysicsDirectBodyState based on the delta and next variables. This approach to interpolation would be the most flexible because the tick-box should work for most users and for those that it doesn't, they have an overrideable function they can work with to fit their specific needs.
I don't know how much of this implementation is realistic but I would appreciate comments and criticisms to better understand the limitations of this approach. Thanks!

Putting interpolation in the physics has always been one of the options.
@AndreaCatania has been investigating this approach here:
https://github.com/godotengine/godot-proposals/issues/671

Having it on Spatial doesn't make sense because there isn't really a sane use case in my opinion for a Spatial node to need to automatically interpolate.

Consider people may be making games without using Godot physics at all. I've made several. Also consider things like cameras which may not require physics.
However there is another possibility, when me and Andrea discussed this, one of the ideas was to use a physics dummy object, which has the interpolation but no actual representation in the physics world. This is another way of getting around the problem, while keeping the interpolation in the physics module.

I don't think having a separate module for this feature is appropriate.

There is a good argument for having support for interpolation in core, however the decision is ultimately down to reduz, and he is opposed to this.

@lawnjelly Thank you for taking the time to address my comments. Now that you've mentioned it I think letting people do things their own way rather than someone telling them how to instead makes putting the feature on the Spatial node a better idea overall. That was really my only point in terms of "sane use-case".

If I'm understanding it right, that this is trying to solve situations where _phisics_proces goes out of sync with rendering and it appears like a frozen frame with a consecutive jump? In that case, I raise the question - why only Spatial?
I focuse mostly on pixel art games and I'm in process to document some visuals for a bug report because that jump is VERY obvious.

I totally agree .. mentioning spatial is only because my initial investigation was in 3D.
If you check out my smoothing addon:
https://github.com/lawnjelly/smoothing-addon
This has 2D as well as 3D smoothing nodes. :+1:

@lawnjelly Yeah, soon after found out you had it in repository. I'm checking it right now and it's much bigger script than I'd like it to be for such task. More flag flipping than actual interpolation. Non the less it's amazing learning material.

More flag flipping than actual interpolation. Non the less it's amazing learning material.

The flag flipping is just an abstraction. We could probably remove those abstractions to make the script shorter :slightly_smiling_face:

@lawnjelly Yeah, soon after found out you had it in repository. I'm checking it right now and it's much bigger script than I'd like it to be for such task. More flag flipping than actual interpolation. Non the less it's amazing learning material.

Feel free to use it as a reference to do your own interpolation.
As well as being something users can just plug in to their own project, it is also intended as a demonstration of using Engine::get_physics_interpolation_fraction. :relaxed:


Add explorer open editors tail tip setting

Feature request:
I would love to see the latest tokens of the path on my opened files if it doesn't fit the view
Take a look at this annotated image

Maybe using a setting like explorer.openEditors.pathTails

I will look into this @isidorn

@Jeyanthinath no, we do not want this feature implemented yet. If more users ask for this and somebody proposes a good solution only then we can discuss if we really want it. Thanks

This feature request will not be considered in the next 6-12 months roadmap and as such will be closed to keep the number of issues we have to maintain actionable. Thanks for understanding and happy coding!


Added support for comment command Cmd + '/'

I really like using the cmd + '/' keyboard shortcut to quickly un/comment code blocks.

Hi @dude719 , Just wondering if you were interested in merging this PR.

Hi @dude719 , Just wondering if you were interested in merging this PR.

My apologies! I completely forgot about this. Thank you for the contribution!


End-to-end test experiment using testcafe

Overview
(This builds on #13, which adds a "static" Drupal build option, and github actions)

Adds a testcafe service to docker-compose, which runs constantly in the background and can run tests on-demand.
Adds a make test target which will run tests
Adds some simple tests in end-to-end/tests that are run by testcafe

The testcafe service bind mounts the end-to-end directory, with tests present in end-to-end/tests.  make test will ultimately run a docker-compose exec that runs npm test inside the testcafe container.   If tests pass, make will terminate with a 0 error code.  If tests pass, you'll get a nonzero error code, and screenshots of failed tests will be dumped into a .gitignore'd end-to-end/reports directory.
Github actions are configured to run tests upon push.  If tests fail, the contents of end-to-end/reports will be attached to the build as an artifact.
Although not necessary for tests to run via make test, It is worthwhile for developers to go cd end-to-end, and run npm install --save-dev, if they have Node and npm installed locally.  This will allow your IDE (e.g. vscode) to do autocomplete, show types (it's written in typescript!!)  and makes the development process much easier, in my opinion.   It is also possible to run tests locally by directly invoking npm test or testcafe, but I haven't tried it.
To Test
Local tests

Checkout this pr, and do a make reset to start from a known starting point

(or just start the environment manually via docker-compose down -v, make docker-compose.yml, make up.  It's important to build a new docker-compose.yml file if you do this manually)

Do a make up
Once up, do make test.  It should pass
Look at the files in end-to-end/tests.  Edit one in order to make it fail.  For example, change one of the .match expectations to something bogus.  Run make test again and watch it fail.

look in end-to-end/reports/screenshots for screenshots of the page where tests fail

Github actions

Push this branch as a branch in your own personal git repo.   Navigate to your own personal git repo in the browser, and click on the "actions" tab.  You should see a build starting!  Wait for it to pass.
Intentionally make a commit that fails, as you did before when locally.  Push this commit.  Watch the github action fail.  See if you can find the attached build artifact (it should be a zip file) and find the screenshot of the failed test.

Resolves jhu-sheridan-libraries/idc-general#66

Thanks @jaredgalanis !   With respect to netscape and/or other browsers, you or @jabrah can make that tweak when you're at the point of intentionally testing the UI with this framework.  I didn't do that in this PR, as my focus was on basic "is the site up" sort of tests.
Glad you could get the tests working locally too!
I'll merge once the github actions PR is reviewed and merged.

Do we, in general, want the tests to clean up after themselves?

Just finished testing and it ran fine for me in all the scenarios you described above.  👍

Do we, in general, want the tests to clean up after themselves?

We can bring it up in the dev meeting, but at this point I'm fine with them leaving messes.  We'd conceivably need to clean up derivatives et al if we add binary content, roll back ingests, etc etc, which would seem to be a tall order at this stage.
That being said, we could have make test take a snapshot, run tests, then restore.  It would add a minute or so to the test cycle, but could be worth it.  If so, that's probably for another PR.


mssql-developer:2017-windowsservercore-ltsc2019 doesn't seem to exist

When trying to build a 9.1.1 installation, I'm receiving this error:
Processing 'sitecore-xm1-sqldev:9.1.1-windowsservercore-ltsc2019'...
Sending build context to Docker daemon  443.4MB
Step 1/5 : FROM mssql-developer:2017-windowsservercore-ltsc2019
pull access denied for mssql-developer, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
Failed.
At C:\Docker\sitecore-images\modules\SitecoreImageBuilder\SitecoreImageBuilder.psm1:158 char:70

... CODE -ne 0 | Where-Object { $_ } | ForEach-Object { throw "Failed." }

                                                    ~~~~~~~~~~~~~~~

CategoryInfo          : OperationStopped: (Failed.:String) [], RuntimeException
FullyQualifiedErrorId : Failed.

Hi, which tags have you defined in the -Tags parameter? Should like you have something other than *, so you need to have base images build as well. Tthere will soon be merged a change that does that automatically but until then you can do like this:
-Tags "sitecore-openjdk:*", "sitecore-base:9.1.1-*", "mssql-developer:2017-*"

@pbering thanks for the reply!
I was following this tutorial: http://blog.martinmiles.net/post/starting-with-docker-and-sitecore
The idea was to get a working sitecore docker container setup going to ease other developers on the team, particularly front end devs, up and running quickly.
I'm not sure which tag to specify, to tell you the truth, as it was based off the build script supplied in that site:
`"pass" | docker login --username myusername --password-stdin
Load module
Import-Module (Join-Path $PSScriptRoot "\modules\SitecoreImageBuilder") -Force
Build and push
SitecoreImageBuilder\Invoke-Build     -Path (Join-Path $PSScriptRoot "\images")
-InstallSourcePath "c:\Docker\Install\9.1.1"     -Registry "myregistry"
-Tags "*"      -PushMode "WhenChanged"
The failure is specifically around ### Processing 'sitecore-xm1-sqldev:9.1.1-windowsservercore-ltsc2019'... Sending build context to Docker daemon  443.4MB Step 1/5 : FROM mssql-developer:2017-windowsservercore-ltsc2019 pull access denied for mssql-developer, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
All the other images specified seem fine, but if I try to just docker pull mssql-developer:2017-windowsservercore-ltsc2019, it doesn't exist.

The mssql-developer:2017-windowsservercore-ltsc2019 image is not in any public registries but build here and defined in https://github.com/sitecoreops/sitecore-images/blob/master/images/mssql-developer-2017/windowsservercore-ltsc2019/build.json. Not sure why it's not build first as it should. Can you please try to run
SitecoreImageBuilder\Invoke-Build `
    -Path (Join-Path $PSScriptRoot "\images") `
    -InstallSourcePath "c:\Docker\Install\9.1.1" `
    -Registry "myregistry" `
    -Tags "*" `
    -PushMode "WhenChanged" -WhatIf

(notice the -WhatIf parameter) and paste the output here?

It spit out a list of tags:
'''
Tag                                                                    Include Priority Base

sitecore-openjdk:8-nanoserver-1709                                        True      110 {mcr.microsoft.com/windows/s...
sitecore-openjdk:8-nanoserver-1803                                        True      110 {mcr.microsoft.com/windows/s...
sitecore-openjdk:8-nanoserver-1809                                        True      110 {mcr.microsoft.com/windows/s...
sitecore-base:9.1.1-windowsservercore-ltsc2019                            True      120 {mcr.microsoft.com/windows/s...
sitecore-xm1-sqldev:9.1.1-windowsservercore-ltsc2019                      True      130 mssql-developer:2017-windows...
sitecore-xp-sqldev:9.1.1-windowsservercore-ltsc2019                       True      160 microsoft/mssql-server-windo...
sitecore-xp-base:9.1.1-windowsservercore-ltsc2019                         True      170 {mcr.microsoft.com/windows/s...
sitecore-xp-xconnect:9.1.1-windowsservercore-ltsc2019                     True      180 {mcr.microsoft.com/windows/s...
sitecore-xm1-solr:9.1.1-nanoserver-1809                                   True     1000 {sitecore-base:9.1.1-windows...
sitecore-xp-solr:9.1.1-nanoserver-1809                                    True     1000 {sitecore-base:9.1.1-windows...
sitecore-xm1-cd:9.1.1-windowsservercore-ltsc2019                          True     1000 {mcr.microsoft.com/windows/s...
sitecore-xm1-cm:9.1.1-windowsservercore-ltsc2019                          True     1000 {mcr.microsoft.com/windows/s...
sitecore-xp-cd:9.1.1-windowsservercore-ltsc2019                           True     1000 {mcr.microsoft.com/windows/s...
sitecore-xp-standalone:9.1.1-windowsservercore-ltsc2019                   True     1000 {mcr.microsoft.com/windows/s...
sitecore-xp-xconnect-automationengine:9.1.1-windowsservercore-ltsc2019    True     1000 {sitecore-xp-xconnect:9.1.1-...
sitecore-xp-xconnect-indexworker:9.1.1-windowsservercore-ltsc2019         True     1000 {sitecore-xp-xconnect:9.1.1-...
'''

that is strange! Seems like you are missing some files on disk, do you have the "/images/mssql-developer-2017/windowsservercore-ltsc2019/build.json" file?

Oh man....that might be it - in the tutorial I linked above, the author removes all the folders from this repo other than the 9.1.1 folder and the jdk folder.
Ugh.   I put the folder back for the sql server image, and yeah, I think it's working.  I'll keep you posted.
Thanks for the tremendous help!  Stumbling my way through this :)

no problem 👍
Will close this for now :)


Issue with iOS 15 build

in ~/.pub-cache/hosted/pub.dartlang.org/flutter_bluetooth_basic-0.1.7/ios/libGSDK.a(Utils.o), building for iOS Simulator, but linking in object file built for iOS, file                         '~/.pub-cache/hosted/pub.dartlang.org/flutter_bluetooth_basic-0.1.7/ios/libGSDK.a' for architecture arm64                         clang: error: linker command failed with exit code 1 (use -v to see invocation)
There is the error
working fine with Android even with flutter_bluetooth_basic Android v2 warning message

potential duplicate of https://github.com/andrey-ushakov/flutter_bluetooth_basic/issues/30


Docker inspect returns [] when it has no permissions to docker.sock

$ docker inspect 2b81d178e32a
[]
# docker inspect 2b81d178e32a
[
{
    "Id": "2b81d178e32ad259b7fff5caca03b83111db452e0d6710....

Hi!
Please read this important information about creating issues.
If you are reporting a new issue, make sure that we do not have any duplicates already open. You can ensure this by searching the issue list for this repository. If there is a duplicate, please close your issue and add a comment to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to include the BUG REPORT INFORMATION shown below. If you fail to provide this information within 7 days, we cannot debug your issue and will close it. We will, however, reopen it if you later provide the information.
This is an automated, informational response.
Thank you.
For more information about reporting issues, see https://github.com/docker/docker/blob/master/CONTRIBUTING.md#reporting-other-issues

BUG REPORT INFORMATION
Use the commands below to provide key information from your environment:
docker version:
docker info:
uname -a:
Provide additional environment details (AWS, VirtualBox, physical, etc.):
List the steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Provide additional info you think is important:
----------END REPORT ---------
#ENEEDMOREINFO

For me, and yes this is still incorrect, I get an error message + []:
$ docker inspect test
Cannot connect to the Docker daemon. Is the docker daemon running on this host?[]

#17715


HRNet Checkpoint fiel

Hi,
Where can I get the checkpoint file for HRNet (mentioned here)
Thanks

Hi, you can use this script to download the checkpoints for HRNet to the default path.
Hope this helps


Adding emscripten tests

I have added test that compiles the emscripten code, plus test on 1000 addresses that the derivation is correct.
(Note that this is testing the js that is created in the emcc build, not the one that's actually deployed in emscripten/trezor-crypto.js)

Closed in favor of #86


Reset slices pointer to base_slices when slice_bufer length is 0.

Currently, we keep increasing the slice pointer, and
can run out of the inline space or try to realloc the
non-inline space unnecessarily.
Simply set slices back to the start of the base_slices,
when we know the length of the slice_buffer is 0.
Note: This will change the behavior of undo_take_first(),
if user tries to grow the slie_buffer, between take_first()
and undo_take_first() calls. That said, it's not legal
to add something to the buffer in between take_first()
and undo_take_first(). So, we shouldn't have any issue.
This is part of a larger performance change.

BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/32768/1                      -4%         -4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/262144/2                  -8%         -8%
BM_StreamingPingPongWithCoalescingApi<InProcess, NoOpMutator, NoOpMutator>/262144/2/0  -5%         -5%

:+1:

Thank you for the approval.

Should this apply to grpc_slice_buffer_trim_end and grpc_slice_buffer_pop as well?

maybe_embiggen is called in all add_* variants and we basically reset when necessary. adding it to pop and trim would add an extra branch which we already have if one tries to add anything to the buffer. Would this address your question?

Yes, I consider that resolved. Thanks!

Thanks!


feat: add ecma_parser deps

in the file transform/tests/fixture.rs, we use the ecma::parser relative methods, but not define dependencies, causing error with cargo test.
use swc_core::{
    ecma::parser::{EsConfig, Syntax},
    ecma::transforms::testing::{test_fixture, FixtureTestConfig},
};

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.lishoulong seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

I think it should be a dev dep instead

yes, I miss it, it only being used for testing.

Can you sign the CLA?

Can you sign the CLA?

yeah, done it!


Rate limiter not working

This is my Ocelot.Json file, rate limiter is not working. Can any one tell me any thing else I need to add on?
{
  "GlobalConfiguration": {
    "BaseUrl": "https://localhost:49977",
    "RateLimitOptions": {
      "DisableRateLimitHeaders": false,
      "QuotaExceededMessage": "Customize Tips!",
      "HttpStatusCode": 999,
      "ClientIdHeader": "Test"
    }
  },
  "ReRoutes": [
    //This is for IMDB API
    {
      "UpstreamPathTemplate": "/GetMovie",
      "UpstreamHttpMethod": [
        "Get"
      ],
      "DownstreamScheme": "http",
      "DownstreamHostAndPorts": [
        {
          "Host": "localhost",
          "Port": 25158
        }
      ],
      "DownstreamPathTemplate": "/GetMovie"
    },
    //This is to get from WeatherForecast Microservice
    {
      "UpstreamPathTemplate": "/wf",
      "UpstreamHttpMethod": [
        "Get"
      ],
      "DownstreamScheme": "http",
      "DownstreamHostAndPorts": [
        {
          "Host": "localhost",
          "Port": 42446
        }
      ],
      "DownstreamPathTemplate": "/WeatherForecast"
    }
  ]
}

You need to add a RateLimitOptions field to your routes.
      "RateLimitOptions": {
        "ClientWhitelist": [],
        "Period": "10s",
        "EnableRateLimiting": true,
        "PeriodTimespan": 10,
        "Limit": 10
      }

source: https://ocelot.readthedocs.io/en/latest/features/ratelimiting.html

It worked.. closing this


Local Storage Size of P4mv3 and P5mv3, P0v3 is not listed

Local storage size of P5mv3 is 560 GB, and not covered in the following table. It would be nice if you would update the table in Types of file access granted to an app section.
https://learn.microsoft.com/en-us/azure/app-service/operating-system-functionality#types-of-file-access-granted-to-an-app

SKU Family
B1/S1/etc.
B2/S2/etc.
B3/S3/etc.

Basic, Standard, Premium
11 GB
15 GB
58 GB

PremiumV2, PremiumV3, Isolated
21 GB
61 GB
140 GB

kudu Environment in P5mv3 says

C:\local usage: 573,440 MB total; 573,398 MB free

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 0e6f6c24-c956-df49-ae5f-739312be4fed
Version Independent ID: aba60038-0195-1b85-6a24-8994b421b5d2
Content: Operating system functionality - Azure App Service
Content Source: articles/app-service/operating-system-functionality.md
Service: app-service
GitHub Login: @cephalin
Microsoft Alias: cephalin

@YusukeTobo
Thanks for your feedback! We will investigate and update as appropriate.


Your byte implementation is unsafe under strict aliasing

As Richard Smith points out in https://groups.google.com/a/isocpp.org/d/msg/std-proposals/McSXSFki08I/fwKKfZqNCAAJ, your byte implementation would be unsafe under strict aliasing optimisation.
The solution is to mark up your byte type with __attribute__((__may_alias__)) on GCC and clang, For MSVC, currently, unless you use __declspec(noalias) and/or __declspec(restrict), everything is assumed to alias, though Microsoft promise that strict aliasing optimisation is coming at some point soon.

Thanks Niall! Addressed in 75bf4d22285564e09d46fcf6c8aeb12d620b5b5e

Todo:

[ ] Add aliasing test


fix(node): update call stripBase in utils.ts before passing to fsPath…

update call stripBase in utils.ts before passing to fsPathFromUrl (fix #9438)

Description

Additional context

What is the purpose of this pull request?

[X] Bug fix
[ ] New Feature
[ ] Documentation update
[ ] Other

Before submitting the PR, please make sure you do the following

[x] Read the Contributing Guidelines.
[ ] Read the Pull Request Guidelines and follow the PR Title Convention.
[ ] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[ ] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[ ] Ideally, include relevant tests that fail without this PR but pass with it.

CI tests always fail. What is the reason? I haven't encountered this failure locally.

CI tests always fail. What is the reason? I haven't encountered this failure locally.

These are flaky tests. We're having issues with them since last week, it is unrelated to this PR.

IIUC, this issue can't be exploited, no? In that case, let's merge it for Vite 5 (we'll start the beta soon). @sapphi-red let me know if you think it is important to get this one in a patch though.

I'm not sure if we need to hold off this change. I think it'd be nice to fix as patch though.

I think this issue can't be exploited. But I think it'd be good to merge this in a patch.


Request to add License

Hi, could you please add an appropriate license to this library? I'm hoping for MIT. Unfortunately this has been flagged by our company's legal compliance tools due to unknown license.

It has said "MIT" in the bot README for years: https://github.com/HenrikJoreteg/wildemitter#license

Ahh, thanks. Tooling looks for LICENSE or LICENSE.md files or license field in package.json. I'll add an exception.


Consider a test suite that compiles all of our sample code

I've seen quite a few issues go by over time where someone finds that our sample code doesn't compile. Some causes include:

Breaking changes in our APIs
Stronger type restrictions in Dart over time
NNBD
We'll also have a lesser version of this as the new standard lint options roll out; the code may still compile, but show issues in a clean new project, which still isn't a great experience.

We should consider having a policy of having all of our sample code be copied from a test suite (annotated with comments linking to the page containing it) that we run on every stable release of Flutter, so that we catch these proactively rather than them building up as issues that are found later by consumers of the docs.
/cc @Hixie

cc @sfshaza2 for web site samples
cc @gspencergoog for api doc samples

more examples would be good -- we do have analysis running for lots of our samples; maybe there's a blind spot in our coverage?

https://github.com/flutter/website/issues/3610 was a combination of outdated code, and someone adding a typo that never compiled when fixing other outdated code.
I've seen one or two cases go by recently that I can't find (they may not have been in the issue tracker?) where examples hadn't been updated to work in null-safe mode, but I didn't remember where unfortunately.

Do we run analysis in CI on examples on the website repo? If not, we should. I can help build an analyzer for that if we don't already have one, but it may require some changes in the way that we write code samples for the website (in order to be able to specify prerequisite symbols, imports, etc.).

@stuartmorgan
it would be great if such test suite would update or replace
the current steps for producing code-excerpts
with something that does not act as a barrier for contributors
as I feel it does right now
https://github.com/flutter/website/issues/5861

@gspencergoog @sfshaza2 how much of our samples are analyzed, compiled, or tested these days?

@Hixie I believe there is some analysis, but I don't have a good feel for exactly how much.  I'll talk to Shams and we'll get back to you.

BTW, I'm referring specifically to the website samples in my previous comment.  In the API docs, all snippets, samples, and Dartpad code is analyzed, and at least smoke tested. The only code in the API docs that isn't analyzed is the code enclosed in bare
```dart ``` sections, since that code can include "don't do this" examples that aren't intended to pass analysis. We're requiring all new and modified example code to have tests as well, and the overall percentage with more than just smoke tests is 27% and climbing.


[help] No 'transform' method in the softImpute class

Hello,
I am using the softImpute solver for a collaborative filtering problem.
After fitting and transforming my model on the training set using .fit_transform() I want to make predictions on the test set. However, the SoftImpute.transform method is not implemented!
Do you know how it could be implemented?
Thank you in advance.

Nope, sorry. Only IterativeImputer supports this unfortunately!


[FEAT] add useEtherscanLink

Is your feature request related to a problem? Please describe.
When users interact with on-chain data, they expect a friendly way to verify that it exists on-chain outside of the app UI. As a best practice, dapps provide a link to Etherscan web page with transaction data.
Describe the solution you'd like
A React Hook that takes as input chain ID, transaction hash or contract address and creates a populated URL to the correct chain explorer where the transaction or address are hosted.
Describe alternatives you've considered
Each app can use it's own ad hoc method for achieving this effect. I have not been able to find a common open source library with this functionality.

@nerderlyne what do you think about this idea. Does it belong in the Kali hooks library?

Need this!
It will take ->
chainId, type(tx, address), value
It will have return either ->
https://{{chainExplorer}}/tx/{{txHash}}
https://{{chainExplorer}}/address/{{address}}
I think we decided to build this on top of wagmi?
This hook can extend useNetwork so we repeat work)
Does this sound good to you? @ivelin

Need this!
It will take ->
chainId, type(tx, address), value
It will have return either ->
https://{{chainExplorer}}/tx/{{txHash}}
https://{{chainExplorer}}/address/{{address}}
I think we decided to build this on top of wagmi?
This hook can extend useNetwork so we repeat work
Does this sound good to you? @ivelin

Need this!
It will take -> chainId, type(tx, address), value
It will have return either -> https://{{chainExplorer}}/tx/{{txHash}} https://{{chainExplorer}}/address/{{address}}
I think we decided to build this on top of wagmi? This hook can extend useNetwork so we don't repeat work
Does this sound good to you? @ivelin

Yes. All sounds good to me.

I suppose after some battle testing this hook could become PR to wagmi itself.


V5 Interface

Go through the interface and methods and cleanup/optimize UX.

waitForTransaction - First most important parameter should be txHash, optional parameters should go in as object.

waitForTransaction(txHash: string, options: {
 ... whatever
})

Sequencer
Remove string NetworkName and create constant enum NetworkName, use constants StarknetChainName = StarknetChainId like this:

StarknetChainName.MAINNET
StarknetChainName.TESTNET
StarknetChainName.TESTNET2

Extend this list with known issue....

Add blockIdentifier to details parameter
It is a parameter that is also always optional.

Can't find the block identifier issue.


⚠ dev-deces.matchid.io search API has degraded performance

In 5f8653f, dev-deces.matchid.io search API (https://dev-deces.matchid.io/deces/api/v1/search?q=pompidou) experienced degraded performance:

HTTP code: 200
Response time: 4173 ms

Resolved: dev-deces.matchid.io search API performance has improved in b2112ae.


update to work

There are a couple problems with the code presumably due to sqlalchemy updates - here's the minimum needed to get a successful connection and query working.

automerging since hopefully this will be helpful to others needing this module. I cant verify it works myself

Thanks for developing this dialect!
I'm going to be using it a lot for the next few weeks - if I make more changes would you rather I keep making pull requests here, or keep them on a fork?

It would probably be easier for you to make a fork, this isn't published on
pypi or anything. If you want I can change the readme to point to your fork
as canonical
On Wed, Aug 17, 2016, 12:43 Jeremy Gray<EMAIL_ADDRESS>wrote:

Thanks for developing this dialect!
I'm going to be using it a lot for the next few weeks - if I make more
changes would you rather I keep making pull requests here, or keep them on
a fork?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/deontologician/netezza_sqlalchemy/pull/3#issuecomment-240524441,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAFVuYBNgz-BJDoMwwXuLjbLxGgRKLNks5qg2Q_gaJpZM4JmyvJ
.


Delete all keys after reconnect

Version: 3.5.3
Platform: redis:alpine/Mac OS 10.15.6, python 3.7
Description:  I connect to redis from fastapi. When the application is restarted, the keys in the database are cleared. Why can this be so?
def redis_connect() -> redis.client.Redis:
    try:
        pool = redis.ConnectionPool(
            host=os.getenv('REDIS_HOST'),
            port=6379,
            password=os.getenv('REDIS_PASSWORD'),
        )
        return redis.Redis(connection_pool=pool)
    except redis.AuthenticationError:
        print("AuthenticationError")
        sys.exit(1)```

redis-py only deletes keys when you explicitly tell it to.

@egornevezhin Nothing in the code above or any code path that it uses above would be the cause of your keys being deleted. It must have been from either some other code, or other trigger for data to be lost in your case.

Ya, this doesn't seem to be a redis-py issue.


Merging dbsnap-copy with dbsnap-verify

I'm merging the dbsnap-copy repo and codebase into this repo and code base.
This will make it easier to iterate on both projects because they share so much of the same code (via copy/paste).

The first commit is the manual merger
The 2nd commit is the result of running black .

CC @phobologic

I'm going to merge this in. It is running well in production. I did find and fix an error after testing where we failed to clean up because I was referencing snapshot.id instead of self.id