Add support for DECIMAL input to greatest and least Spark functions

Add support for DECIMAL input to greatest and least Spark functions.
Spark adds cast to handle different decimal types during planning, so we don't
need to handle the type difference in functions.
https://github.com/apache/spark/blob/master/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/TypeCoercion.scala#L482
Example:
spark.sql("""
SELECT *
    FROM VALUES (
        CAST(5.345 AS DECIMAL(6, 2)),
        CAST(5.35 AS DECIMAL(5, 4)))) AS data(a, b);
""").write.mode("overwrite").parquet("decimal_table")
spark.read.parquet("decimal_table").createOrReplaceTempView("decimal_table")
val df = spark.sql("SELECT greatest(a, b) from decimal_table")

Project [greatest(cast(a#6 as decimal(8,4)), cast(b#7 as decimal(8,4))) AS greatest(a, b)#10]

cc @rui-mo , thanks.

@zhli1142015 We need the help from a Meta-employee for further review or action. Thanks.

I see, thanks.

This PR is approved by @rui-mo and @PHILO-HE . @mbasmanova , @Yuhta and @pedroerp  could you please help review?


Notifications on mobile - styling fixes

Items below show examples from 3 notifications. These styling updates should be applied to all notifications to improve legibility.
See examples of styling for all states of mobile notifications here:
https://www.figma.com/file/bZh7tOiLm6Ls9Hl4RL6qMC5X/Augur-Redesign?node-id=13208%3A740

Unsigned orders:
https://www.figma.com/file/bZh7tOiLm6Ls9Hl4RL6qMC5X/Augur-Redesign?node-id=13258%3A288895

[x] Button styling is wrong, it's using desktop rather than mobile button
[x] Text styles and color need to be updated to match figma
[x] The copy "You have unsigned orders pending for the following market’s initial liquidity: “What will be the high temperature in Death Valley for 2019?” is split over two lines, it should be one sentence.
Example on design side of an unread and read state:

Reporting:
https://www.figma.com/file/bZh7tOiLm6Ls9Hl4RL6qMC5X/Augur-Redesign?node-id=13258%3A288897

[x] Button styling is wrong, it's using desktop rather than mobile button
[x] Text styles and color need to be updated to match figma

Dispute:
https://www.figma.com/file/bZh7tOiLm6Ls9Hl4RL6qMC5X/Augur-Redesign?node-id=13258%3A289135

[x] Button styling is wrong, it's using desktop rather than mobile button
[x] Text styles and color need to be updated to match figma
[x] The copy "Dispute round [X] for the market: “What will be the high temperature in Death Valley for 2019?” is ending soon" is split over three lines, it should be one sentence

Note the main things to fix and that apply to all notifications:

The notification text should flow like a paragraph - there should be no line breaks
The button should be the mobile button

Note - claim proceeds is not in the screenshot but please apply the same changes to it
See all issues here:

Color issue with the read state:

closing


An enhanced version of 'Snip & Sketch'

Summary of the new feature/enhancement
I currently have a subscription to Techsmith Snagit. The reason I have it is because I find 'Snip & Sketch' is missing a couple of key features. It would be great if PowerToys could make a screenshot and screen recording tool for Power Users.
Proposed technical implementation details (optional)

Ability to copy selected area to clipboard and save as an image in a single button press.
Image files can be named with RegEx
Can create separate profiles for screenshots, screen recording and assign keyboard shortcuts to each.

Image files can be named with RegEx

I'm not a coder but maybe it would be a good idea to use PowerRename module to provide this functionality to this new proposed module, so it wouldn't duplicate the code for two individual modules.

Personally i prefer Irfanview for screenshots.  In my opinion it's far more powerful than snip & sketch and it's free.

7 methods to capture a section of the screen.
Capture after a time delay or using a hot key.
Hide or highlight the mouse pointer.
Save the screenshot straight to file using batch naming or send it straight to a printer.


No documentation about authentication/authorization

I couldn't find any information about how to handle ChatOps authentication/authorization. I know that this is probably something for Hubot, but could still be documented for StackStorm.
What is recommended for this? Is https://github.com/hubot-scripts/hubot-auth a good choice?

Hi,
We don't handle access control in ChatOps, unfortunately, but I know some people use hubot-auth or modify the hubot-stackstorm plugin in their deployment. There's more context in this issue: https://github.com/StackStorm/hubot-stackstorm/issues/128
FWIW, it's pretty high on our list of priorities :)


codespace

Type: Bug
I was having an issue connecting my codespace to my visual studio code and it won't open every time I click on open in vs code. I'm trying to open it from code.c50.io
VS Code version: Code 1.78.2 (Universal) (b3e4e68a0bc097f0ae7907b217c1119af9e03435, 2023-05-10T14:44:45.204Z)
OS version: Darwin arm64 22.4.0
Modes:
Sandboxed: No

System Info

Item
Value

CPUs
Apple M2 (8 x 24)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
2, 2, 2

Memory (System)
8.00GB (0.05GB free)

Process Argv
--crash-reporter-id 5f346747-4022-404d-b273-768e4cd1b136

Screen Reader
no

VM
0%

Extensions (16)

Extension
Author (truncated)
Version

vsc-material-theme
Equ
33.8.0

vsc-material-theme-icons
equ
2.7.5

codespaces
Git
1.14.7

python
ms-
2023.8.0

vscode-pylance
ms-
2023.5.20

jupyter
ms-
2023.4.1011241018

jupyter-keymap
ms-
1.1.0

jupyter-renderers
ms-
1.0.15

vscode-jupyter-cell-tags
ms-
0.1.8

vscode-jupyter-slideshow
ms-
0.1.5

cmake-tools
ms-
1.14.31

cpptools
ms-
1.15.4

cpptools-extension-pack
ms-
1.3.0

ayu
tea
1.0.5

cmake
twx
0.0.17

material-theme
zhu
3.15.13

(8 theme extensions excluded)

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
vstes627:30244334
vslsvsres303:30308271
vserr242cf:30382550
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263:30335439
pythondataviewer:30285071
vscod805cf:30301675
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
cmake_vspar411:30581797
vsaa593cf:30376535
pythonvs932:30410667
cppdebug:30492333
vsclangdc:30486549
c4g48928:30535728
dsvsc012:30540252
pynewext54:30695312
azure-dev_surveyone:30548225
vsccc:30610678
3biah626:30602489
pyind779:30671433
f6dab269:30613381
pythonsymbol12:30671437
a9j8j154:30646983
showlangstatbar:30737416
vsccsb:30705552
azdwalk:30721579
pythonms35:30701012
pythonfmttext:30731395
pythoncmv:30739700
fixhidewlkth:30730051
pythongtdpath:30739704

Thanks for creating this issue! We figured it's missing some basic information or in some other way doesn't follow our issue reporting guidelines. Please take the time to review these and update the issue.
Happy Coding!

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!


Add analyzer for missing validation webhook

For various reasons, sometimes users end up with no effectively Validating webhook from there install. We should warn on this in the analyzer

I am interested in this issue, and I'm willing to try it.

My understanding:

to add a check in the analyzer for whether Validating Webhook is installed(exists).
the ValidatingWebhookConfiguration   name is  istiod-default-validator  in istio-system(get for configuration)

@howardjohn  is that correct?

We might need to check the failurePolicy=Fail as well. Otherwise its not validating


Setting to change Stunt Die color when using Dice so Nice

Done! Players can also select their own Stnt Die colorset from Dice so Nice. Option saved on flags.


Update ipex-llm default transformers version to 4.37.0

Description

Update ipex-llm default transformers version to 4.37.0
Update qwen/qwen-vl examples as they requires transformers<4.37.0
Temporarily fix transformers version for some not yet verified examples

Performance tests: https://github.com/analytics-zoo/nano/issues/1577
Example tests: https://github.com/analytics-zoo/nano/issues/1573

PR Validation: https://github.com/intel-analytics/ipex-llm-workflow/actions/runs/10465990770

Updated PR Validation: https://github.com/intel-analytics/ipex-llm-workflow/actions/runs/10468430094


Dummy people

I've got three dummy people in and am ready to close this, but @heymonkeyriot I see you put a 'design' tag on this - what design work is needed? Are we going to have People pages?

Have removed the tag. Because you're right, there's no plan at the moment to have a people page, and we'll be exposing them via the blog etc. Sorry!

Cool, thanks. My dummy people are named after (dead) blues musicians, male and female.


Fix typings in editor-service tests to make tools build again

This seems to make builds go again after npm run nuke at least. Let's see if the tests pass...

Can we retry tests on appveyor? Seems like an unrelated issue.

Updated appveyor.yml with suggested workaround from https://github.com/appveyor/ci/issues/2772. PTAL and merge @usergenic @aomarks


Set account detail model and conversion

What is this pull request?
Adds set account detail model with corresponding converters
Why do you implement it? Why do we need this pull request?
To add key/value detail about account it is required to have set account detail command. Detail is the key/value data about account
How to use the features provided in the pull request?
Take a look to new protobuf and json converters tests

Codecov Report

:exclamation: No coverage uploaded for pull request base (develop@e00160e). Click here to learn what that means.
The diff coverage is 23.25%.

@@            Coverage Diff            @@
##             develop    #662   +/-   ##
=========================================
  Coverage           ?   43.3%
=========================================
  Files              ?     298
  Lines              ?   12070
  Branches           ?    6646
=========================================
  Hits               ?    5227
  Misses             ?     726
  Partials           ?    6117

Impacted Files
Coverage Δ

irohad/model/converters/json_command_factory.hpp
100% <ø> (ø)

irohad/model/converters/pb_command_factory.hpp
100% <ø> (ø)

irohad/model/generators/command_generator.hpp
100% <ø> (ø)

irohad/model/generators/impl/command_generator.cpp
21.05% <0%> (ø)

...ule/irohad/model/converters/json_commands_test.cpp
2.51% <0%> (ø)

...odule/irohad/model/converters/pb_commands_test.cpp
7.53% <0%> (ø)

...had/model/converters/impl/json_command_factory.cpp
42.63% <22.58%> (ø)

irohad/model/impl/model_operators.cpp
39.39% <28.57%> (ø)

...rohad/model/converters/impl/pb_command_factory.cpp
37.99% <37.5%> (ø)

irohad/model/commands/set_account_detail.hpp
50% <50%> (ø)

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 e00160e...a00335b. Read the comment docs.

 pb_command_factory.cpp#L507: The Cyclomatic Complexity of this function is 15 which is greater than 10 authorized.
:cry: we should deal with it some day


I am also having this same issue with reoccuring events being a duplicate the next day. I imagine I am on the latest versions because I just got this set up only a couple of days ago, but Im not sure how I can check what cx3 version I am on

          I am also having this same issue with reoccuring events being a duplicate the next day. I imagine I am on the latest versions because I just got this set up only a couple of days ago, but Im not sure how I can check what cx3 version I am on

Originally posted by @epascua2 in https://github.com/MMRIZE/MMM-CalendarExt3/issues/150#issuecomment-2099459665

I separate this issue into a new post.

I sent you a mail, so I'll close this issue.


Update sbt-scalafix to 0.9.30

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

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "ch.epfl.scala", artifactId = "sbt-scalafix" } ]

labels: sbt-plugin-update, semver-patch

Superseded by #151.


feat: adding RegisteredDistributionAddresses to ics29 genesis state

Description

Adding RegisteredDistributionAddresses to ICS29 GenesisState

Needs: #1491
This PR includes the additions from the above and should be merged after the initial work in #1491
NOTE: this is one of many PRs to complete the feature work referenced in: #1477

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

[ ] Targeted PR against correct branch (see CONTRIBUTING.md)
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Code follows the module structure standards.
[ ] Wrote unit and integration tests
[ ] Updated relevant documentation (docs/) or specification (x/<module>/spec/)
[ ] Added relevant godoc comments.
[ ] Added a relevant changelog entry to the Unreleased section in CHANGELOG.md
[ ] Re-reviewed Files changed in the Github PR explorer
[ ] Review Codecov Report in the comment section below once CI passes

Codecov Report

Merging #1492 (defc821) into main (46f5eee) will increase coverage by 0.11%.
The diff coverage is 90.99%.

@@            Coverage Diff             @@
##             main    #1492      +/-   ##
==========================================
+ Coverage   80.36%   80.47%   +0.11%
==========================================
  Files         166      166
  Lines       12105    12200      +95
==========================================
+ Hits         9728     9818      +90
- Misses       1920     1923       +3
- Partials      457      459       +2

Impacted Files
Coverage Δ

modules/apps/29-fee/types/genesis.go
86.20% <71.42%> (+1.42%)
:arrow_up:

modules/apps/29-fee/types/msgs.go
90.43% <92.59%> (+0.66%)
:arrow_up:

modules/apps/29-fee/keeper/keeper.go
92.48% <93.10%> (+0.09%)
:arrow_up:

modules/apps/29-fee/keeper/genesis.go
87.50% <100.00%> (+2.50%)
:arrow_up:

modules/apps/29-fee/keeper/msg_server.go
96.00% <100.00%> (+0.83%)
:arrow_up:

modules/apps/29-fee/types/keys.go
97.14% <100.00%> (+0.47%)
:arrow_up:


feat: added warning for unreachable server

Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

Closes #42203

This feature adds a new error message which will better describe the reason for losing connection to the server. Before there was only 'You are offline' message while this adds new reason which is 'Server unreachable'.
Testing:
For me personally it worked best to finish a challenge and start next one. Then the message usually came up as expected. Refreshing the page or navigating through the domain too much would cause the "Something went wrong" message to appear instead and simply disconnecting the server and waiting for the message seemingly didn't do anything. There might be a desire to implement periodic server status check.

Just want to say that the test that is failing is not testing my changes to the code. At least that's how it appears to me.

Hey @budbreaker,
You only have to add the new key to the English translation file 😉
Thanks for working on this 😁

I was told by chat to add it everywhere, just in case ¯_(ツ)_/¯

This is looking good, though there's a slight issue if you navigate between challenges.  The new warning appears, but then if you navigate away it disappears and never returns.  It seems there's a problem with the CSS, since it's in the dom, but hidden beneath the nav bar.
The failing tests aren't a serious problem, though: client/src/redux/failed-updates-epic.test.js just needs isServerOnline: true adding to the initialState.

Hi @ojeytonwilliams
Can you please describe in detail what you mean by "navigate away". I have tried navigating between Donate, Curriculum, Profile and Settings pages and it popped up again when I returned to Curriculum page (and even showed up on Donate and Settings page). It even shifted the "Something went wrong" message down once it appeared. So I wasn't able to reproduce.

Sure.

Go to the first challenge
Wait until you see the server warning
Press escape
Press n
The warning should have disappeared

When I press escape on a challenge the page simply jumps down, so that the warning is out of sight, but can be scrolled back up (though scrolling doesn't work in the editor section of the page). Solution could be to make it position:fixed like the "Something is not quite right" message, which is .flash-message so it scrolls with page. Can you please tell me how to invoke the "Something is not quite right" message so I can test how they interact when both are fixed position?

Ah, yes, you're quite right - I didn't notice the scroll!  This happens because of focusOnHotkeys.  The issue is that we do want to keep the hotkeys in focus, but we don't want the scrolling side effect.

Can you please tell me how to invoke the "Something is not quite right" message so I can test how they interact when both are fixed position?

Yep, an relatively straightforward way to do that is the following:

npm run seed:certified-user
clear your cookies for localhost (otherwise dev login will fail)
reload
click sign in if necessary
shut down the server
go to a certification: http://localhost:8000/certification/certifieduser/responsive-web-design
click through any react errors

I have made the warning behave similar to the flash message. So it should stay visible at all times now.
It would probably be best to create a separate issue to fix the scroll on escape bug.

onlineStatusChange was not replaced entirely, only in offline-warning related files. It's still used when determining user online status as opposed to server status.
https://github.com/freeCodeCamp/freeCodeCamp/blob/af4ead336aa223e5e3733771a8d03e5c88d37479/client/src/components/layouts/Default.js#L119-L124

onlineStatusChange was not replaced entirely, only in offline-warning related files. It's still used when determining user online status as opposed to server status.
https://github.com/freeCodeCamp/freeCodeCamp/blob/af4ead336aa223e5e3733771a8d03e5c88d37479/client/src/components/layouts/Default.js#L119-L124

Right, that is why I wonder if we are best just using one -> If Camper cannot reach server, Camper is disconnected

I'm not sure I understand. It was the point of this issue to distinguish between "User disconnected from the internet" and "Server is unavailable for everybody". So I think they're both needed?

I'm not sure I understand. It was the point of this issue to distinguish between "User disconnected from the internet" and "Server is unavailable for everybody". So I think they're both needed?

I will continue the conversation on the original issue, just to keep it all in the same place.

One last thing I would like discussion on:
Should the Camper be able to dismiss (close) the flash message?

Maybe, but that's out of this PR's scope IMO. Let's keep it focused.

Hey @budbreaker I noticed a slight bug when the offline warning shows:

the splitters (between the description, editor and preview) can be seen over the warning when you scroll the page down.  I guess there's a problem with the z-levels. Could you take a look?

I have based the offline warning on the "Something is not quite right" (SNQR) banner, but I have noticed that they render differently. While the offline warning creates extra space on the page, which then becomes scrollable in the case of challenge page, the SNQR banner does not cause it. I suspect it's because the offline warning is actually a function that creates an element on the page "during runtime" while the SNQR banner gets rendered with the page itself, but I have no idea how to circumvent this.

Assuming that's correct - the concern I have is that the message doesn't go away until the app has a successful update. Which means the server goes offline, I get the message on a challenge page - I can then navigate around a decent portion of the site, it seems, before an app update gets triggered and the message goes away - even though the server may have been online for a while. This was verified in my testing. I don't think it's big problem, but I'm wondering if we should look into more ways to get rid of the message?

That does make sense and yeah, I think we should.  When we merge this, let's create an issue to track the problem.


Adding TOC as of 2/8

Signed-off-by: Amye Scavarda Perrin<EMAIL_ADDRESS>

Rather than adding them as external collaborators, I'd create a GH Team called toc or toc-members and then add the group to that repo.
Then we can grant perms using the group and not individual folks' handles.


Feature parity with Fedora Asahi?

After using Fedora Asahi for a while, I've found out about this project and am thinking of switching to it. However, I'm concerned that I will lose some recent features like OpenGL 3.3 support.
In a few issues, asahi-edge is mentioned which leads me to believe that this project pulls from Asahi Arch and not Fedora Asahi but I'm not sure.
Does this project directly pull from Fedora Asahi and if so how behind is it?

Aarch is not that far behind currently. I think the only missing main feature at this time is HDMI out support for connecting displays. This is available in Fedora but not yet in Aarch (and also not in nixos).

Aarch is not that far behind currently. I think the only missing main feature at this time is HDMI out support for connecting displays. This is available in Fedora but not yet in Aarch (and also not in nixos).

Not only HDMI, Audio support is already on the mainstream as well. AFAIK, Asahi devs are not using alarm at all.

The information previous is mostly correct. I haven't figured out where to focus to determine the changes in Fedora so that's primarily why we are lagging. I'm working on that but it may still be a bit.

The information previous is mostly correct. I haven't figured out where to focus to determine the changes in Fedora so that's primarily why we are lagging. I'm working on that but it may still be a bit.

All such info can be found at:
https://src.fedoraproject.org/group/asahi-sig
https://copr.fedorainfracloud.org/groups/g/asahi/coprs/

We are now officially tracking features and packages from Fedora Asahi Remix. Speaker support is, however, still in the pipeline.


[Feature request] Add support to beautify Typescript code

Seeing as how Visual Studio Code is such a great Typescript editor, it'd be great to be able to beautify Typescript files.

I just add "ts" to my Beautify settings and it seems to work fine:
"beautify.JSfiles": [
        "js",
        "json",
        "jsbeautifyrc",
        "jshintrc",
        "ts"
    ]

It works ok for Typescript. If you get into using some of the funkier structural syntax of TS, you may get caught out though. Since js-beautify doesn't state support for Typescript, I won't hard code it as a capability. @Jakobud's setting is the right way to do it FYI.


Deploy istio chart fails due to mixer post-install hook job keep failing

env:
ubuntu: 16.04
istio version: istio-0.8.0
kubenetes version: v1.10.0

Reproduce steps
Actually it's hard to reproduce by helm install command line. I have reproduced this deploying the istio-chart from Catalog of IBM Cloud Private.
Symptom
The error is that mixer post-install hook job keeps creating new pod and keep failing until timeout.
Have caught the logs of failed pods:
root@llcao-master:~/istio-chart# kubectl -n istio-system logs -f istio-mixer-post-install-gspwf
2018-06-05 08:41:14.429103 I | proto: duplicate proto type registered: google.protobuf.Any
2018-06-05 08:41:14.429152 I | proto: duplicate proto type registered: google.protobuf.Duration
2018-06-05 08:41:14.429164 I | proto: duplicate proto type registered: google.protobuf.Timestamp
attributemanifest "istioproxy" configured
attributemanifest "kubernetes" configured
stdio "handler" configured
logentry "accesslog" configured
rule "stdio" configured
metric "requestcount" configured
metric "requestduration" configured
metric "requestsize" configured
metric "responsesize" configured
metric "tcpbytesent" configured
metric "tcpbytereceived" configured
prometheus "handler" configured
rule "promhttp" configured
rule "promtcp" configured
kubernetesenv "handler" configured
destinationrule "istio-policy" configured
destinationrule "istio-telemetry" configured
Error from server: error when creating "/tmp/mixer/custom-resources.yaml": admission webhook "mixer.validation.istio.io" denied the request: 1 error occurred:

* actions[0].instances[0]: attributes.kubernetes not found
Error from server: error when creating "/tmp/mixer/custom-resources.yaml": admission webhook "mixer.validation.istio.io" denied the request: 1 error occurred:

* actions[0].instances[0]: attributes.kubernetes not found
Error from server: error when creating "/tmp/mixer/custom-resources.yaml": admission webhook "mixer.validation.istio.io" denied the request: error evaluating AttributeBinding expression 'adapter_template_kubernetes.output.source_service | "unknown"' for attribute 'source.service': unknown attribute adapter_template_kubernetes.output.source_service

More accurately, the error is relate to these lines: https://github.com/istio/istio/blob/master/install/kubernetes/helm/istio/charts/mixer/templates/config.yaml#L447-L496
Have tried change the sequence of the related CR, still no good.
Suspect that this has something with the validating webhook defined here: https://github.com/istio/istio/blob/master/install/kubernetes/helm/istio/charts/galley/templates/validatingwebhook.yaml#L49-L94
But it's all right when I deploy with helm install CLI.
/cc @gyliu513 @linsun

@morvencao do you see istio-galley deployment up and running? galley chart is not enabled in values.yaml. So it looks like you are specifically enabling this chart and installing validating webhook.
This feature is not really supported in 0.8.

@mandarjog Thanks, I do enable galley. I thought the validatingWebhook is working for istio 0.8.0
It's all right after I disable galley.

@guptasu, would this possibly related to your recent mixer validation changes?

@ayj this problem happens in 0.8, the latest changes that @guptasu made are in pending on master, were you thinking about some other changes?

I'm also seeing these errors with master without touching values.yaml (galley enabled by default).
Are the galley and validation webhook mutual exclusive?


Crystal Scribing Tools cannot be craft due to missing vis cost

The crystal scribing tools can't be craft because the recipe calls for absolutely nada from your wand.
src/main/java/fox/spiteful/forbidden/ForbiddenRecipes.java
ForbiddenResearch.recipes.put("Crystalwell", ThaumcraftApi.addShapelessArcaneCraftingRecipe("CRYSTALWELL", new ItemStack(ForbiddenItems.crystalwell, 1, 0), (new AspectList()), new Object[] { new ItemStack(ConfigItems.itemInkwell, 1, 32767), "dyeBlack", new ItemStack(ConfigItems.itemShard, 1, 32767), new ItemStack(ConfigItems.itemShard, 1, 32767) }));

the (new AspectList()) has no aspects tied to it.

Ugh.  Knew I forgot to test something.
You'd think TC would be able to handle something like that, but nooooooo.
Thanks for the report.


[Bug]: "Create a new Application" fails (500)

Description
Connecting with Github does not work.
Minimal Reproduction (if possible, example repository)

http://example.com:8000/project/abcd/production/new?type=private-gh-app&destination=xyz&server_id=0

Click Add New GitHub App

Exception or Error

Version
v4.0.0-beta.248

This will be fixed in the upcoming version.


Simplify test and getIndex fix for triply nested case

I'm late to your #723 party, @MartijnR and @FrankApiyo but did want to take a moment to understand what was going on since I know repeats are complex.
This PR is mostly meant to check my understanding. I think the simplifications proposed might also help us in the future if/when this code needs to be revisited but will be interested to hear whether others agree.
I also moved the test. In the repeats tests, there's a cloning test block that this new test was previously in but then there are many tests that appear related to cloning outside of that block, too. @MartijnR is there meaning to that organization or is it just that the block was forgotten about at some point? I moved the new test to after 'In an empty form it creates the first repeat instance automatically because there are other tests around there about nested repeats and the issue turned out to be about missing repeat instances on outer repeat creation.
Some additional clarifications:

My understanding of the bug is that because the info nodes were not being counted correctly (the count was increasing even if there wasn't an info node there), there were nodes that were supposed to be cloned that weren't. Is that a reasonable one sentence explanation? If not, what would one be?
getIndex computes an absolute index of repeat instances or repeat info of a particular name across the entire primary instance? What's the high-level reason for it? E.g. is it used to index into linear collections that keeps track of all instances of one repeat regardless of their nesting structure?
In the conversation around this issue, @MartijnR you mentioned some kind of recursive algorithm for getIndex. I don't see any recursion there, am I missing it? It seems it walks the node tree iteratively. The inner loop counts repeat instance that are siblings of the node that was passed in and the outer loop does the same count in any outer repeats that may exist. Did I get that roughly correctly?
I'm having trouble understanding the initialization of the count in getIndex.  I would expect that initializing using repeat-number and then counting previousElementSiblings would double count but clearly that's not the case. What am I missing?
@MartijnR mentioned that there might be value in splitting getIndex. This feels related to some questions we've run into around set/update for the records queue and saveRecord/submitRecord for online and offline views. My sense is that it's dangerous to have two functions that have largely duplicated code with subtle differences. It requires a lot of concentration to consistently make updates in both in parallel and it can be difficult for the call site to make the right choice. I've proposed alternate simplifications that hopefully increase readability without needing two functions.
Doesn't getInfoIndex do exactly the split you describe? Except I think it wouldn't work in nested cases? I feel it illustrates what I described above -- it has a subtly different signature (can return null), and clearly wasn't used everywhere it could have been. I can confirm that using its approach in getIndex would lead to all tests passing except those having to do with nested repeats. I propose removing the duplication.

or is it just that the block was forgotten about at some point?
Yes
I don't see any recursion there, am I missing it? It seems it walks the node tree iteratively.
Yes, indeed. I used the wrong word to describe that the code should work for any level of nesting (to explain that the workaround proposed in the previous PR seemed not right

Thanks for this PR and reviewing!

Thanks so much for taking a look, @MartijnR, and for putting up with my wall of questions. My spidey-sense tells me we'll be back in this code so I think it's a good investment to get context now.
I feel like I'm at least confident I understand what getIndex does and how it works. I don't have a sense of why this index is used (as opposed to e.g. an index within a parent). If you can give us a high-level sense or a hint on where to look, @MartijnR, I think that'd good to know. But also not critical at the moment. We have a lot more context and breadcrumbs now.
In response to @eyelidlessness's comment about count vs. index, I've tried changing the accumulator's name to predecessorCount and I find that helpful. That also led me to move the adjustment to go from a 1-based index to a 0-based index up in the initialization which I think makes more sense. That change helped me understand why the initialization works: the inner while loop doesn't add to the count in the case of a non-nested repeat. The loop condition is checking for repeat siblings but then the querySelectorAll call looks for children of the element being checked that match the original element's name. If I got all that right, the one unfortunate thing is that there is iteration over every instance of a repeat that adds 0 every time even if it's not nested. I'm not immediately coming up with a way to remove that and it doesn't feel like a big deal.

This whole process has been extraordinarily clarifying. Thank you @lognaturel both for revisiting it and helping me get a better understanding of what’s happening here. The only thing I want to add for posterity, which was additionally clarifying in our check in today, is that the thing that helped us understand what happens in this bit of code is the “absolute” index is an index of all repeated/nested references as if they had been flattened into a single list, and that that term flatten helped make it clear.

 I don't have a sense of why this index is used (as opposed to e.g. an index within a parent). If you can give us a high-level sense or a hint on where to look, @MartijnR, I think that'd good to know. But also not critical at the moment. We have a lot more context and breadcrumbs now.

This was a very early choice based on easy querySelectorAll (or jQuery) searches, as opposed to determining indices at every nested step. Not sure if that still makes sense, but it was never revisited by me.

Thanks so much to you both. This looks like a big improvement! 🎉

This was a very early choice based on easy querySelectorAll (or jQuery) searches

Ah, got it. Makes perfect sense, thank you!
@eyelidlessness it might also help to consider that repeats in general but especially nested repeats are not a big priority for web form users. Nested repeats in particularly generally imply an enumerator-mediated context and even then they're relatively rare. Most of the time when forms with nested repeats end up in Enketo they were authored for Collect and are being used for edits.
I still wouldn't be surprised if we did work in this area sooner than later but major refactoring might not be so compelling unless it benefits no-repeat or single-repeat cases significantly.


Dev build expires on iPhone?

I deployed a 'release' build of my app to my iPhone, which worked for around a week. I don't have an Apple developer account. It seems the app stops working after around a week? I tried this again on another iPhone and the same thing happened. I'm not sure if this is a react-native thing or an XCode thing?

Please google these types of questions first, it was easy to find an answer:
http://stackoverflow.com/a/38308037/659988
http://stackoverflow.com/questions/4740382/will-an-app-continue-to-work-if-my-provisioning-profile-expires


Support deployment using Vagrant

Since Docker does not support macOS guests, this allows deploying an isolated instance that can be used to build iOS projects.

Thanks @thii! I am very much in favor of being able to use fastlane.ci via vagrant. I think this PR is great. I haven't been able to test it, because... I ran out of disk space downloading macOS! 😅

@thii I was not able to complete the provision phase successfully.
During brew install I got:
    default: Software Update Tool
    default: ==> /usr/bin/sudo /bin/rm -f /tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress
    default: ==> /usr/bin/sudo /usr/bin/xcode-select --switch /Library/Developer/CommandLineTools
    default: xcode-select: error: invalid developer directory '/Library/Developer/CommandLineTools'
    default: Failed during: /usr/bin/sudo /usr/bin/xcode-select --switch /Library/Developer/CommandLineTools
    default: /tmp/vagrant-shell: line 7: brew: command not found

Any ideas?

Can we :ship: this?


Special chars in group names don't seem to work

I have a couple group titles like "24/7" or "this & that" and the groups don't get picked up. I can only assume it has to do with the / and & chars. It looks like the regex should match these chars no problem, but I have multiple group titles with the / and none of them get picked up.

hmm sounds odd, thanks for the heads up. I'll run some tests to see if I can reproduce it

I think I'll need further information about your m3u file, it's contents and how you're calling the script to understand what this problem is because I've not been able to reproduce this.
My steps to reproduce were to start with a valid m3u file on disk, edit one channels' group-title attribute from "United Kingdom" to "United/Kingdom" and then call the script like this:
python /home/joe/Dev/git_repositories/m3u-epg-editor/m3u-epg-editor.py -m="file:///home/joe/Dev/git_repositories/m3u-epg-editor/original.m3u8" -e="http://vaders.tv/p2.xml.gz" -g="'united/kingdom'" -r=12 -t=100 -d="/home/joe/Dev/git_repositories/m3u-epg-editor" -f="mini"

The end result was a reduced m3u file containing that one channel and an epg xml file containing data for that one channel as expected.

Thinking on some more about this, I suppose it could be possible that the shell you're using to call the script might be stripping out or escaping special characters like / and &. That said this does work fine in linux as demoed in my last comment.

Sorry it took so long.
I finally had a look at things and added some logging, and it turns out the group naming is fine. The issue is actually that a valid M3uItem is assumed to have a tvg-id value, but there are many things that don't have them - like live events or 24/7 channels. I removed that line from the is_valid check and it works as expected now.

No problem. Ah yes this makes sense now:
https://github.com/jjssoftware/m3u-epg-editor/blob/master/m3u-epg-editor.py#L55
This issue has been raised by someone else in the past an earlier version of the script:
https://github.com/jjssoftware/m3u-epg-editor/issues/9#issuecomment-392680932
As it stands this is by design behaviour but I might add a switch to enable channels with a blank / non present tvg-id attribute to be included in the output m3u in the future. I happily accept reasonable pull requests too ;)
I'm going to close this one now because it's not really a bug, it's by design behaviour and you appear to have found yourself a local workaround for the moment.

Hi, same issue here.
My workaround is downloading the m3u list with wget first and find and replace all tvg-id="" with tvg-id="dummy", this way m3u-epg-editor.py can pickup all channels.
It would be nice to have a command line switch like:
--no-tvg-id        Ignore missing or empty tvg-id tags
and optional
--no-epg           Skip epg processing
This would make m3u-epg-editor.py compatible with any IPTV provider.
Thanks.

I like your suggestions @spec1re. Your comment is a good example of a dry succinct feature request.
It's probably fair to say that it's now clear this is an issue that affects a fair few people. We have this issue that contains a couple of people affected and the original that showed a few other people affected.
On that basis I'm going to reopen this, switch this to a feature request and take a look at implementing your suggestions.

@jjssoftware thank you very much, your work is very much appreciated. 👍

Hopefully that should do it, two new optional arguments have been introduced:
--no_tvg_id / -nt and --no_epg / -ne
There's no need to specify any value for these two Boolean type arguments, the presence of these will mean they will be treated as "True" and they will work as described in the help:
--no_tvg_id, -nt      Optionally allow channels with no tvg-id attribute to be considered as valid channels
--no_epg, -ne         Optionally prevent the download of and the creation of any EPG xml data

If they're not there, the script will continue to work as it always has done.
The readme is also updated.
Please feel free to test / let me know if you see any issues.
Many thanks

Wow that was fast!
It looks like working fine here, no issues so far. Processing around 15.000 channels (incl. VoD) is just 2 seconds now.
Just one question more, how can I keep the original sort order of the channels? (If needed I can open a new issue.)
Thanks!

Sounds good @spec1re , thanks for the feedback.
So far as sorting goes there's a assumption at the moment that some sort of sorting is desired even if no specific custom sort order was specified via the --sortchannels / -s argument. When no custom sort order is supplied, channels are sorted into channel group / channel name order.
You could go down the road of adding a custom sort order to get your channels back into the same exact order they were originally in but I think you might be after a feature where no sorting is applied at all? If so I guess I could take the same approach and introduce some sort of --no_sort / -ns override argument.

--no_sort / -ns would be an excellent option. My m3u list have so many channels, resorting them would take ages.

ok no problem I'll take a look later this evening. Don't worry about creating another issue, I can just reference this one.

ok @spec1re see how you go with: --no_sort / -ns
As per the previous earlier two, there's no need to specify any value for this Boolean type argument, the presence of it will mean it will be treated as "True" and it will work as described in the help:
--no_sort, -ns        Optionally disable all channel sorting functionality

If not there, the script will continue to work as it always has done so far as sorting / default sorting goes.
The readme is also updated.
Please feel free to test / let me know if you see any issues.
Many thanks

This is perfect and works great!
Thanks a bunch! :)

No problem at all, decent features will benefit everyone and hopefully prevent future issues being raised.


Filipino Translation

Hello, I'd like to add Filipino Translations for Hacktoberfest. Please assign to me. Thanks

Hi @TheWhackFactory  . Add your PR that the repository is ready for Hacktoberfest 🎉

Bumped version 1.15.0


openxray: 730-july-preview -> 784-october-preview

Motivation for this change
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
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)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-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.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/355

Result of nixpkgs-review pr 102511 run on x86_64-linux 1

1 package built:

openxray

@FRidh thank you!


IS-114 sub-learning objectives

Make a list of sub-learning-objectives related to the introduction to the front-end programming. The learning objective covered is "Participate in systems development projects with a clear understanding of goals".


FE-147 add sentry for production readiness interim dagster

Why
Relevant ticket FE-147
This PR
Checklist

[X] Documentation has been updated as needed.

@bahill can we setup SENTRY_DSN as an env var in another PR?


Does not setup environments

Has yet to be implemented

Environments are now setup, but there IS still more to do with this! Pkg envs need to be loaded from the env files, dev.jl or prod.jl, and Toolips needs to be added by itself, which is just something that will change once the package is registered.


ISPN-11852 Create new RemoteCacheConfigurations in a Configuration

https://issues.redhat.com/browse/ISPN-11852

Thanks @tristantarrant

Paul has requested the ability to remove configurations in the Jira, but I think that should be handled as a separate issue so I have closed ISPN-11852 for now.


feat(core): add missing tx core to CML and CML to core conversions

Context
Add missing conversations to both  cmlToCore and coreToCml for all transaction properties in the current ledger era (Babbage).
Proposed solution
Added tx witness conversion (core to CML and CML to core) of:

redeemers
bootstrap (fixed)
datums (plutus_data in CML)
scripts (native, plutusv1, plutusv2)

Important Changes Introduced

extend tx witness set conversions in coreToCml and cmlToCore
extend tx test data in order to verify that the conversion works as expected from/to core/CML (covered in unit tests)

Commits are squashed


helm: Explore adding cert-manager (version >=1.9.0) as a chart dependency

What would you like to be added:
We recently added a helm chart in PR #1013. Unfortunately, cert-manager
does not support helm's dependency management feature (see above PR's
description for more information on that).
It was announced that cert-manager 1.9.0 (may) support this:
Helm: Adds a new namespace parameter which allows users to
override the namespace in which resources will be created.
This also allows users to set the namespace of the chart when
using cert-manager as a sub chart.
(https://github.com/cert-manager/cert-manager/pull/5141, @andrewgkew)

Refer to the release notes for more information:
https://github.com/cert-manager/cert-manager/releases/tag/v1.9.0
Why is this needed:
Instead of documenting cert-manager installation as a prerequisite,
we can have helm take care of that for us - making our users'
lives easier.
User story covered
As a user, I would prefer that the installation process be automated
as much as possible. This helps to avoid making mistakes that
introduce instability into my usage of the security-profiles-operator.
ps: Thank you to @tylerauerbeck for pointing out the new chart-manager
release that included this change.

/remove-lifecycle stale

/remove-lifecycle stale


Variable and parameter naming analyzers and fixes

This pull request adds two new rules:

SA1312 (VariableNamesMustBeginWithLowerCaseLetter) (fixes #1310)
SA1313 (ParameterNamesMustBeginWithLowerCaseLetter) (fixes #1311)

It also updates the documentation for SA1306 (FieldNamesMustBeginWithLowerCaseLetter) to explicitly state the deviation from StyleCop "classic".

Other than the question. Looks good. :+1:


Nested components and shared structure

According the the migration guide:

With Curi, when a nested route matches, only that route renders.

How to tackle the case of a fixed navbar in a parent component with injected components under the navbar? With React Router, it's possible to handle this by using this.props.children in the parent component because nested routes also render parent components.
Thanks for help, that library seems pretty cool, looking forward to using it!

Would you be able to include some (pseudo) JSX to show what you would do in React Router?
I'm taking a bit of a guess here about what your navbar is supposed to be, but one possibility would be to have your routes' body functions return an object instead of a component.
const routes = [
  ...,
  {
    name: 'Parent',
    path: 'parent',
    body: () => ({
      main: Parent,
      nav: [ParentNav]
    }),
    children: [{
      name: 'Child',
      path: ':child',
      body: () => ({
        main: Child,
        nav: [ParentNav, ChildNav]
      })
    }]
  }
];

The idea with that is that in your render function, you would pass response.body.nav to your navbar and it would render those components.
function render(response) {
  const { body } = response;
  const { nav, main: Main } = body;
  return (
    <div>
      <NavBar components={nav} />
      <Main />
    </div>
  );
}

Hopefully that answer is on the right track, but if not, I'd be happy to take a closer look if you can help me better understand what you're trying to do.

@pshrmn Thanks, that's what I was looking for! I just want the navbar to appear on each "view" and display a different child below depending on the current route, this is made possible by passing multiple arguments to the body function. Thanks for the cool library by the way! 👋🏼


calling a pre-defined openAI assistant

If I've already built an assistant in OpenAI, is it possible to use it for messages with django-ai-assistant?

Hi @ilikerobots , how is your assistant built? You mean an Assistant created via the OpenAI API? Or a Langchain agent?
If a Langchain agent, you can override methods like get_llm to provide the existing agent chain: https://vintasoftware.github.io/django-ai-assistant/latest/reference/assistants-ref/#django_ai_assistant.helpers.assistants.AIAssistant.get_llm
I believe Langchain can also use existing OpenAI API assistants. But we would have to check the docs on how to build a chain that uses the existing assistant. See: https://python.langchain.com/v0.1/docs/modules/agents/agent_types/openai_assistants/#using-existing-assistant
Then you can get the existing assistant and perhaps replace agent declaration here: https://github.com/vintasoftware/django-ai-assistant/blob/da8f104be31c2ef38f093c01920d75ee05b838c0/django_ai_assistant/helpers/assistants.py#L436

@fjsj , appreciate the comments.  I did mean a pre-defined OpenAI assistant, not a langchain agent.  I'll look into this, but langchain is all new to me so it's taking a while.  Feel free to close.

(btw, great job to those involved in this project: i'm deploying a help desk response assistant today using this)

Awesome @ilikerobots, thanks!
We plan to support pre-defined OpenAI assistants, so I will leave the issue open for now.
At least some documentation about this is necessary, if we don't change the library. But we may be able to do some matching via assistant ID and ensure we're using the pre-defined assistant from OpenAI.


Issue with Credential Scenario Step 4 - holder wallet not updated

When revoking the credentials for Acme, Jane Smith, or John Doe, the status is updated to Revoke on the qvi Issued Credentials for the qvi container, but the corresponding holder wallets still show the credential status as Valid.

@rc-provenant thanks for this.
We're seeing this intermittently and looking into the cause.

I've tried with fresh images and now, "Get Started" no longer works.

@rc-provenant we'll be sending out invitations to a Zoom workshop where we hope to work through these issues. In the meantime the only resolution we can offer is stop, delete, pull new containers. We're not seeing any infrastructure failures, and we test successfully the workflows ourselves each morning. I am sorry we can't offer a better update, hopefully getting together in the workshop will bring to light any underlying causes.

I’m back to the issue with Scenario 4 where the Revoke does not show in the Legal Entity’s (ACME) wallet.  Although when verifying the Legal Entity’s credential, the credential in the Legal Entity’s wallet now shows as Revoked.  The same issue exists with Jane and John, when their credentials are revoked their wallet still shows the credential as “Valid”; but in their case when verifying their credentials, both still show as “Valid”.

Thank you for taking the time to participate in the vLEI Beta software qualification program.
For any remaining open issues lodged during the qualification, the discussion during the deep dive session we ran at the conclusion of the beta qualification has provided answers to these issues.  GLEIF proposes to close these issues and asks you to reach out to your contact at GLEIF for a link to the recording.
The vLEI development team will continue to develop the software in preparation for the pilot phase of the vLEI development.  GLEIF would like to thank you again for the contribution of your feedback toward the development of the vLEI Beta software.


Static VMs are re-used if multiple benchmarks are included in the same command line

If a benchmark requires more VMs than the number of static VMs provided, PKB allocates VMs from a the cloud.
But when multiple benchmarks are provided on the command line, PKB only uses the static VMs on the first few benchmarks.  That is, if there 10 benchmarks each using one VM, and two static VMs are provided via the --static_vm_file flag, then the first two benchmarks will use a static VM and the rest will allocate one from the cloud.

This is really by design.  Not sure you want to fix this.

I would have expected that if one static VM was provided, it used at least one static VM per benchmark, not that it used that static VM only on the first benchmark.  That is, I'd think running with --benchmark=fio,iperf should be the same as running with --benchmark=fio and then --benchmark=iperf.


Use Hono; Add basic styling

Note: This PR depends on #1, #2, and #3. Once those are merged I'll rebase onto that. For the changes specific to this PR, see everything after Nov 3rd. I wrote the commits to be reviewable individually.
This PR doesn't make any changes in terms of raw functionality, but it does introduce some quality of life improvements. I've introduced hono which is a simple, express-like web application framework that's been picking up a lot of speed. It lets you use JSX for backend templates which reduces on the template string munging.
Aside from that, it (temporarily?) introduces pico.css which is a semantic html css library to just give some baseline styles without us having to be explicit about it. Not tied to it, but it's a nice QoL improvement.

It's worth mentioning ding from @surprisetalk. He'd mentioned he was working on it in LA. It's somewhat intended to be a replacement for the future of coding slack. Worth taking a look at its server impl because it uses a lot of the same tech as I'm proposing here.


[SvgIcon] Add the Material Icon Save Alt

Add the Material Icon "Save Alt".

Thanks for the contribution, but I don't think it's practical to add these piecemeal. We need google to update the material-design-icons github repo, or make the SVG icons available for bulk download in some other form.

For reference https://github.com/mui-org/material-ui/pull/11877.

@mbrookes Having a look at the project history, it's not clear the project is still maintained: issues & contributors. We might have to change the generation script to use https://material.io/tools/icons/ as the source of truth over npm.

@mbrookes @oliviertassinari Yes, that git repo appears me not currently effectively maintained...


pkg/checkpoint: Try kubelet secureClient, fallback to read-only

Change pod-checkpointer to first try to list pods via the Kubeletsecure (10250) endpoint, then fallback to the Kubelet read-only (10255) endpoint, before defaulting to an empty list of parent pods
Related: #1025

/assign @rphillips

I don't see one set in client-go rest by default. I could add one for say 15 seconds? More/less? k.secureClient.Get().AbsPath("/pods/").Timeout(15*t.Second).Do().Into(podList)

I've been testing with an image quay.io/dghubble/pod-checkpointer:55f0b95cf1471d8179b083c031f43a3a3bcabd0a with this and this.
On a typical bootkube cluster today (allows kubelet read-only, no ClusterRoleBinding for pod-checkpointer), the checkpointer falls back to the insecure client as usual.
E1126 07:21:31.817761       1 kubelet.go:55] failed to secure list local parent pods, fallback to insecure: Forbidden (user=system:serviceaccount:kube-system:pod-checkpointer, verb=get, resource=nodes, subresource=proxy)

On a cluster with --read-only-port=0, pod-checkpointer previously failed:
# previous
failed to list local parent pods, assuming none are running: Get http://<IP_ADDRESS>:10255/pods/: dial tcp <IP_ADDRESS>:10255: connect: connection refused

With this pod-checkpointer change:
# with ClusterRoleBinding, no error logs
NA
# without ClusterRolebinding, fallback to insecure, insecure is disabled
E1126 07:21:31.817761       1 kubelet.go:55] failed to secure list local parent pods, fallback to insecure: Forbidden (user=system:serviceaccount:kube-system:pod-checkpointer, verb=get, resource=nodes, subresource=proxy)
E1126 07:21:31.818357       1 kubelet.go:58] failed to insecure list local parent pods, assuming none are running: Get http://<IP_ADDRESS>:10255/pods/?timeout=15s: dial tcp <IP_ADDRESS>:10255: connect: connection refused

I think this shows the change doesn't regess any current behavior, but adds a way to support disabling the Kubelet read-only port.

coreosbot run e2e checkpointer

/approve

/lgtm

Pushed the new checkpoint image to quay (tag: 83e25e5968391b9eb342042c435d1b3eeddb2be1)


Full width divider

Divider should be full width in the container.
Browser metadata
Path:      /treasury?dao=eth:0x574f4Bc0ccEbeF9F5B946A13FF16f931c16De22B
Browser:   Firefox 125.0 on Mac OS 10.15
Viewport:  1518 x 912 @2x
Language:  en-US
Cookies:   Enabled

Open in BrowserStack

Open Deploy Preview · Mark as Resolved
Originally posted by @nicolaus-sherrill in https://github.com/decentdao/fractal-interface/issues/1578#issuecomment-2101062227

@mudrila Did I see this fix in one of your mobile PRs?

Closed via https://github.com/decentdao/fractal-interface/pull/1807


Adiciona Travis e Codecov

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@026e2e7). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff            @@
##             master      #9   +/-   ##
========================================
  Coverage          ?   0.00%
========================================
  Files             ?       1
  Lines             ?       2
  Branches          ?       0
========================================
  Hits              ?       0
  Misses            ?       2
  Partials          ?       0

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 026e2e7...5b7f5d0. Read the comment docs.


SVG automatic Pan onchange event

So I'm currently using panzoom andI'm stuck in this problem for almost two weeks now. So I have a massive SVG map. I provided a zooming and panning to the map using svg pan zoom. What I want to achieve is when I select an option in the drop down list, it will automatically pan to the selected area when the map is zoomed. I've tried every solution of panzoom that I think is related to my problem but it won't work. Thanks in advance. Please anyone help.

Hi @gitalvininfo, the library doesn't provide this functionality out of the box.
But this question looks like a duplicate of #212 which provides some code example for a potential solution. I'm going to close it in favour of that issue. Please feel free to comment/reopen if it's not the case.

Thanks bumbu. I appreciate your help.


Capabilities of Or tools

Hi,
I have 60,000 locations in a 300sq mile area. Is or tools capable of solving a vrp  solution with 100 vechicles?
Thanks for you help!

Without geographical or time based decomposition, no.
Le ven. 8 nov. 2019 à 19:06, majesticnavann<EMAIL_ADDRESS>a
écrit :

Hi,
I have 60,000 locations in a 300sq mile area. Is or tools capable of
solving a vrp solution with 100 vechicles?
Thanks for you help!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/google/or-tools/issues/1700?email_source=notifications&email_token=ACUPL3LRJWOPFUINN5AIXPLQSWTBTA5CNFSM4JK37I42YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HYA6WRA,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACUPL3K3ZNAGXOOOKM3SXBLQSWTBTANCNFSM4JK37I4Q
.

Sorry i do have lat and long for each point, is this possible?

The distance matrix of 60,000x60,000 floats alone is 115gb
On Fri, 8 Nov 2019, 20:23 majesticnavann<EMAIL_ADDRESS>wrote:

Hi, I have lat and long fir each point, is it possible with this? Many
thanks My VOG-L09. On O2.-------- Original Message --------Subject: Re:
[google/or-tools] Capabilities of Or tools (#1700)From: Laurent Perron <
<EMAIL_ADDRESS>google/or-tools<EMAIL_ADDRESS>majesticnavann thomaskelly75@gmail.com,Author<EMAIL_ADDRESS>geographical or time based decomposition, no.
Le ven. 8 nov. 2019 à 19:06, majesticnavann<EMAIL_ADDRESS>a
écrit :

Hi,
I have 60,000 locations in a 300sq mile area. Is or tools capable of
solving a vrp solution with 100 vechicles?
Thanks for you help!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<
https://github.com/google/or-tools/issues/1700?email_source=notifications&email_token=ACUPL3LRJWOPFUINN5AIXPLQSWTBTA5CNFSM4JK37I42YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HYA6WRA>,

or unsubscribe
<
https://github.com/notifications/unsubscribe-auth/ACUPL3K3ZNAGXOOOKM3SXBLQSWTBTANCNFSM4JK37I4Q>

.

—You are receiving this because you authored the thread.Reply to this
email directly, view it on GitHub, or unsubscribe.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/google/or-tools/issues/1700?email_source=notifications&email_token=AAXL5ET3BDNPAU2TE2GBFQTQSW4CFA5CNFSM4JK37I42YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDTDJ4A#issuecomment-551957744,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAXL5EWMMCVBDY6NLMNSAXDQSW4CFANCNFSM4JK37I4Q
.

Thanks, not a good idea then, i will cluster down first! Best wishes. My VOG-L09. On O2.-------- Original Message --------Subject: Re: [google/or-tools] Capabilities of Or tools (#1700)From: CervEdin<EMAIL_ADDRESS>google/or-tools<EMAIL_ADDRESS>majesticnavann thomaskelly75@gmail.com,Author<EMAIL_ADDRESS>distance matrix of 60,000x60,000 floats alone is 115gb
On Fri, 8 Nov 2019, 20:23 majesticnavann<EMAIL_ADDRESS>wrote:

Hi, I have lat and long fir each point, is it possible with this? Many

thanks My VOG-L09. On O2.-------- Original Message --------Subject: Re:

[google/or-tools] Capabilities of Or tools (#1700)From: Laurent Perron <

<EMAIL_ADDRESS>google/or-tools<EMAIL_ADDRESS>

majesticnavann thomaskelly75@gmail.com,Author<EMAIL_ADDRESS>

geographical or time based decomposition, no.

Le ven. 8 nov. 2019 à 19:06, majesticnavann<EMAIL_ADDRESS>a

écrit :

Hi,

I have 60,000 locations in a 300sq mile area. Is or tools capable of

solving a vrp solution with 100 vechicles?

Thanks for you help!

—

You are receiving this because you are subscribed to this thread.

Reply to this email directly, view it on GitHub

<

https://github.com/google/or-tools/issues/1700?email_source=notifications&email_token=ACUPL3LRJWOPFUINN5AIXPLQSWTBTA5CNFSM4JK37I42YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HYA6WRA>,

or unsubscribe

<

https://github.com/notifications/unsubscribe-auth/ACUPL3K3ZNAGXOOOKM3SXBLQSWTBTANCNFSM4JK37I4Q>

.

—You are receiving this because you authored the thread.Reply to this

email directly, view it on GitHub, or unsubscribe.

—

You are receiving this because you are subscribed to this thread.

Reply to this email directly, view it on GitHub

https://github.com/google/or-tools/issues/1700?email_source=notifications&email_token=AAXL5ET3BDNPAU2TE2GBFQTQSW4CFA5CNFSM4JK37I42YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDTDJ4A#issuecomment-551957744,

or unsubscribe

https://github.com/notifications/unsubscribe-auth/AAXL5EWMMCVBDY6NLMNSAXDQSW4CFANCNFSM4JK37I4Q

.

—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or unsubscribe.

It's a huge VRP. Try techniques to reduce the problem.
Combine locations together using clustering or split the problem up, looking only at certain regions or certain time


Cow: Watch theboredroomx.com

Cow requests the watch of the watch_keyword theboredroomx\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

theboredroomx\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Rejected by double-beep in Charcoal HQ. Reason: 'probably not spam'


Fix readme

and remove trailing whitespace
@Ergin008 please review

@Whoaa512 this is good. Thanks for the help!


Question about proof of acknowledgement

As said in this,

The storage location for each commitment is calculated as follows: assume that the slot of the commitments state variable is s and a ICS-23 commitment path is p, the storage location is keccak256(keccak256(p) . s).

Path of commitment and slot are used to calculate the storage location, which is the key in state trie of Ethereum. But according to the code,
function writeAcknowledgement(
		string calldata destinationPortId,
		string calldata destinationChannel,
		uint64 sequence,
		bytes calldata acknowledgement
	) external {
		...
		bytes32 ackCommitmentKey =
			IBCCommitment.packetAcknowledgementCommitmentKey(destinationPortId, destinationChannel, sequence);
		bytes32 ackCommitment = commitments[ackCommitmentKey];
		require(ackCommitment == bytes32(0), "acknowledgement for packet already exists");
		commitments[ackCommitmentKey] = keccak256(abi.encodePacked(sha256(acknowledgement)));
}

The default value of the storage location is zero.
I want to know if the relayer can claim that the value on the storage path is zero before the acknowledgement is written and obtain corresponding proof (like the key of proof is the storage location and the value is zero)? If it is possible, something wrong will happen in function onAcknowledgementPacket in app/20-transfer. Because zero is not equal toICS20Lib.KECCAK256_SUCCESSFUL_ACKNOWLEDGEMENT_JSON.
	function onAcknowledgementPacket(Packet.Data calldata packet, bytes calldata acknowledgement, address)
			external
			virtual
			override
			onlyIBC
		{
			if (keccak256(acknowledgement) != ICS20Lib.KECCAK256_SUCCESSFUL_ACKNOWLEDGEMENT_JSON) {
				_refundTokens(ICS20Lib.unmarshalJSON(packet.data), packet.source_port, packet.source_channel);
			}
		}

@michwqy Thanks for your question.
According to ICS-04, the commitment for acknowledgment is hash(acknowledgement), which is a non-zero value. The implementation is here: https://github.com/hyperledger-labs/yui-ibc-solidity/blob/v0.3.17/contracts/core/04-channel/IBCPacket.sol#L221
Therefore, even if the relayer submits a non-existence proof of commitment, the attempt fails because the corresponding acknowledgment cannot be given.

I'm not sure if I understand correctly. Assume the commit path like path = acks/p1/ch1/s1
, commitments[path] = 0 before the acknowledgement is written. Let the storage location is S, the relayer can get the proof where key is S, and value is 0. But the relayer can't construct the acknowledgement where sha256(acknowledgement) = 0 (maybe  keccak256((sha256(acknowledgement))) = 0). Is my understanding right?

@michwqy Thanks for the clarification. Yes, you are right.

Thanks. I will close this issue.


RHCLOUD-33423: Add updated protos and support for proto validation

Done:

Add updated proto files with validation rules.
Add protobuf validation dependency and plugins to parse validation rules and to generate validators.

Not done:

Client side request validation using the generated validators.

Notes:

New dependency added: build.buf.protoc-gen-validate. This is needed for 2 reasons: 1) to parse protos with validation rules (without an error) and 2) to generate validators. If we were never going to do 2, we could ensure that the dependency was excluded from the built jar (but with 2, the dependencies are needed).

/lgtm


[DONT MERGE] Handle item moves on SelectionModel / SelectingItemsControl

Quick and dirty PR to check if im going to fix the right stuff :P
Fixes issues with ListBox and other SelectingItemsControls that goes crazy when NotifyCollectionChangedAction.Move happens.

You can test this PR using the following package version. 11.0.999-cibuild0029573-beta. (feed url: https://pkgs.dev.azure.com/AvaloniaUI/AvaloniaUI/_packaging/avalonia-all/nuget/v3/index.json) [PRBUILDID]


Using Me for better requests

Issue
A.  You are missing a proper USER_AGENT
B. You are unable to pass the Authorization Bearer header and you wont be able to access private subs.
Solution
Subreddit::new_with_me(name: String, me:  &Me) having a new instance method that takes in Me. So proper headers can be used.
Ideas also to add with this.
Me#subreddit(name: String) -> Subreddit
Me#user(user: String) -> User
Allowing you to be able to create these structures easier with Me.
I would also suggest  moving https://github.com/halcyonnouveau/roux/blob/master/src/me/mod.rs#L111
This to the Subreddit Object and requiring a present Me object.  I think it would be more organized.

Sorry for the late response mate, I've been a bit swamped with work.

Subreddit::new_with_me(name: String, me: &Me) having a new instance method that takes in Me. So proper headers can be used.

Me#subreddit(name: String) -> Subreddit
Me#user(user: String) -> User

Yep, all these seem good to me. I have no problem with them.

I would also suggest moving https://github.com/halcyonnouveau/roux/blob/master/src/me/mod.rs#L111
This to the Subreddit Object and requiring a present Me object. I think it would be more organized.

I'm a little bit more unsure about this one. I'd prefer to have the oauth stuff away from the non-oauth. I get that adding a Me struct to Subreddit would make it oauth, but you should still be able to access everything in Subreddit without the Me.
Oauth implies user sessions and I'd think it would be easier for people to understand that there's only one place to get them.
Not a huge deal, I'll be willing to do it if there's a compelling enough reason.


Should indentation always stack?

I just ran across the following issue:
void testFunctionArguments() {
    "abC".any((Character c) => c.integerValue > 10);
    variable Integer i = 1;
    "1 2 fizz 4 buzz fizz 7 8 fizz buzz 11 fizz 13 14 fizzbuzz".split().every((String s) {
        value j = i++;
        if (j % 15 == 0) {
            return s == "fizzbuzz";
        }
        if (j % 5 == 0) {
            return s == "buzz";
        }
        if (j % 3 == 0) {
            return s == "fizz";
        }
        return s == j.string;
    });
}

Looks good, right? The formatter begs to differ, and instead outputs:
void testFunctionArguments() {
    "abC".any((Character c) => c.integerValue > 10);
    variable Integer i = 1;
    "1 2 fizz 4 buzz fizz 7 8 fizz buzz 11 fizz 13 14 fizzbuzz".split().every((String s) {
            value j = i++;
            if (j % 15 == 0) {
                return s == "fizzbuzz";
            }
            if (j % 5 == 0) {
                return s == "buzz";
            }
            if (j % 3 == 0) {
                return s == "fizz";
            }
            return s == j.string;
        });
}

It looks almost the same, but the anonymous function (the fizzbuzz checker) is indented one more level. Why? Because both the ( of every and the { of the function open a formatting context, each with one level of indentation.
The question is now: Is that okay?
Arguments for fixing it: Well, if it looks broke, fix it! Duh.
Arguments against fixing it: It would completely break my indentation model, and I don’t want to descend into the FormattingWriter yet again, and I hate it, and why can’t it be nice, and whine :-(
I can’t decide this issue myself, since I can’t possibly have a neutral point of view on this: I want nothing more than to say “WONTFIX”, and never have to change the architecture again, but if others think that this isn’t acceptable,  I might have to fix it.
Therefore: request for comments! This has never worked before, but if you’re reading this, please please PLEASE leave a comment. Just tell me if the second code looks acceptable or not. Please?

Note: with the resolution of #105, indentation in either direction can now stack only if it’s directly applied. This means that FormattingWriter now supports the IDE’s indentation mode, we’d just need to change FormattingVisitor to specify ifApplied instead of always for some indentations.


Resolve prebuilts for the installer repo for 6.0

The installer repo contains prebuilts as identified by the prebuilt report at artifacts\prebuilt-report\annotated-usage.xml in the Offline BuildLogs for any installer build.  These prebuilts need to be resolved by either a) conditioning out the code that includes the package, b) updating the package version to use the version that is built in source-build (using package version flow) or c) adding the package to SBRP.

This depends on #2251.


avoid Array.from if possible

Continuation of #863: if we can use array.map or array.slice instead of Array.from, do so because it’s faster. Supposedly. I didn’t actually check so this could be premature optimization. But this was also relatively easy, so… 🤷.

I tested a little bit. In Chrome this seems indifferent, but in Safari and FF it's 2x faster—and even 10x faster for typed arrays in Safari… (Also, it makes the code a bit nicer to read.)
One question though: slice is never called with the type parameter?

One question though: slice is never called with the type parameter?

Sure, but I wanted symmetry with map.


Auto Brace Complete editor setting is incorrectly described

Tested versions
4.3.stable
System information
macOS 15.0.1
Issue description
The editor setting text_editor/completion/auto_brace_complete description doesn't really explain what it currently does. I think it's working as intended, so the description should be changed to make it easier to find user that want to change this behavior:
Current implementation:

This doesn't mention that it also inserts a closing single or double quote, not just parentheses/braces
It says it completes braces during code completion, but it just inserts additional characters directly when typing and it seems to be completely unrelated to the more advanced code completion functionality.

A more accurate description could be something like
"If true automatically inserts a closing brace, parentheses or quote after the cursor when typing one of these characters"
Steps to reproduce
Take a look in the editor settings and compare this to how the setting works.
Minimal reproduction project (MRP)
Just editor needed

will be fixed by #97656


Fix for servers that don't support STAT command

Filezilla does not support STAT command please fix it


Unexpected Status Type of the Sub Tasks in CSS

Please check that this issue hasn't been reported before.

[X] I searched previous Bug Reports didn't find any similar reports.

Steps to reproduce
CSS snippets learned from styling guide
.task-list-item[data-task-status-type="TODO"] .task-due[data-task-due="today"] span,
.task-list-item[data-task-status-type="IN_PROGRESS"] .task-due[data-task-due="today"] span {
    background: #556B2F;
    border-radius: 10px;
    margin: 0px 5px;
    padding: 2px 8px 2px 0px;
}

Write mark down like this
Today is 2024-12-04
- [ ] Test1 📅 2024-12-04
	- [x] Sub Task 📅 2024-12-04 ✅ 2024-12-04

Well I think that none of them should be changed. If the sub tasks are done, they are done.
Expected Behavior
The Test1 task should be highlight by the way, I just don't know how to make it.

Current behaviour

Which Operating Systems are you using?

[ ] Android
[ ] iPhone/iPad
[ ] Linux
[ ] macOS
[X] Windows

Obsidian Version
1.77
Tasks Plugin Version
7.14.0
Checks

[X] I have tried it with all other plugins disabled and the error still occurs

Possible solution
Just a logical thing, not hard to fix. Thanks a lot!

Thanks for logging this.
I will have to experiment with this, but I think the behaviour is doing what the CSS says - and in fact the CSS will likely need to be updated for support of nested tasks.

Tasks 7.14.0
This is my test file:
- [ ] #task Test1 📅 2024-12-04
	- [x] #task Sub Task 📅 2024-12-04 ✅ 2024-12-04

```tasks
path includes {{query.file.path}}
show tree
```

And this is what I see - so the problem applies to both Reading Mode, and search results, when show tree is used...

Tasks 7.11.1 - before show tree changes
With pre-show tree code, I had to comment out that instruction, but the problem still exists in Reading Mode:

Tasks 3.0.0 - when this CSS feature was introduced
I had to change the test file to:

- [ ] #task Test1 📅 2024-12-04
	- [x] #task Sub Task 📅 2024-12-04 ✅ 2024-12-04

```tasks
path includes 3219
#show tree
```

And the Reading mode result is the same:

Summary
This isn't actually a new problem - it has existed since the 3.0.0 release on Apr 2, 2023...
As far as I recall, this is the first report of it.

As far as I can see from testing, the nested tasks inherit the styles of the outer tasks.
The only workaround I can find is to add specific styles for the completed tasks, which will be used in preference to the outer styles...
This seems to work with your example:
.task-list-item[data-task-status-type="TODO"] .task-due[data-task-due="today"] span,
.task-list-item[data-task-status-type="IN_PROGRESS"] .task-due[data-task-due="today"] span {
    background: #556B2F;
    border-radius: 10px;
    margin: 0px 5px;
    padding: 2px 8px 2px 0px;
}

.task-list-item[data-task-status-type="DONE"] .task-due[data-task-due="today"] span,
.task-list-item[data-task-status-type="CANCELLED"] .task-due[data-task-due="today"] span {
    background: unset;
    border-radius: unset;
    margin: unset;
    padding: unset;
}

Hi again @esm7 ... I would greatly welcome any suggestions on the above, if you have time, please....

As far as I can see from testing, the nested tasks inherit the styles of the outer tasks.
The only workaround I can find is to add specific styles for the completed tasks, which will be used in preference to the outer styles...
This seems to work with your example:
.task-list-item[data-task-status-type="TODO"] .task-due[data-task-due="today"] span,
.task-list-item[data-task-status-type="IN_PROGRESS"] .task-due[data-task-due="today"] span {
    background: #556B2F;
    border-radius: 10px;
    margin: 0px 5px;
    padding: 2px 8px 2px 0px;
}

.task-list-item[data-task-status-type="DONE"] .task-due[data-task-due="today"] span,
.task-list-item[data-task-status-type="CANCELLED"] .task-due[data-task-due="today"] span {
    background: unset;
    border-radius: unset;
    margin: unset;
    padding: unset;
}

Thanks! It works on my machine! This is a nice temporary fix with my example.

The problem is that the space operator between .task-list-item[data-task-status-type="TODO"] and .task-due[data-task-due="today"] can go many levels down the tree and apply to multiple tasks this way. My preferred solution here would be to selectively go down the element tree by adding > span, so further space operators won't reach the nested task:
.task-list-item[data-task-status-type="TODO"] > span .task-due[data-task-due="today"] span,

@claremacrae funny how only two days ago I thought that using the direct ancestor operator is very niche. I was not considering the case of nested tasks!

Oh! I see, thanks a lot! One more thing, I hope you guys could update this tutorial about styling. This will help the others who want to do similar things like me.

Thanks @esm7 - I had tried adding > before the original span in the CSS -  I hadn’t thought of adding a whole new span!
Yes, of course I will update the documentation - however  I expect other examples will also need updating, not just this one. So it will need a chunk of free time to do all the experimenting and editing.

Perhaps the best approach would be to keep the examples as they are, just add a note about the effect on nested tasks, with an example how to mitigate that.
Because:

I'm sure there are cases on which the inheritance of styling is a positive expected result,
The extra complexity would make it harder to understand the bigger ideas of how these snippets are built, while being irrelevant to a big portion of the users.

Thanks for the suggestion.
I’ll think about it.
I think the examples that style particular fields may merit having the span added to avoid them misleadingly highlighting other values. Will see what I can do.


Should not finalize the "ExecuteSelectorCommand" command on driver starting

Example (pseudo code):
  await t
    .click('a[target=blank]')
   .click('link on child page') // a few page redirects here
    .expect(('selector-on-child-page').textContent).ok()

The test execution report will contain the following error:
TypeError: Cannot read property '0' of null
    at DecodingTransformer.transform (C:\repos\testcafe\node_modules\replicator\index.js:279:27)
    at module.exports.Replicator.decode (C:\repos\testcafe\node_modules\replicator\index.js:565:24)
    at SelectorBuilder._processResult (C:\repos\testcafe\src\client-functions\client-function-builder.js:146:32)
    at SelectorBuilder._processResult (C:\repos\testcafe\src\client-functions\selectors\selector-builder.js:197:32)
    at re_executable_promise_1.default.fromFn (C:\repos\testcafe\src\client-functions\client-function-builder.js:141:25)
    at process._tickCallback (internal/process/next_tick.js:68:7)

Found in 'Login via Google' case.

Fixed in https://github.com/DevExpress/testcafe/commit/36337d3afcc2c2954530b1e5d8a271fef8ed5dbb


light client guide: concepts/vocabulary

Summary
Add documentation for the concepts and vocabulary for creating a light client. Should explain all the defined interfaces. Explanation of each of the functions within the interface will occur in followup documentation

For Admin Use

[ ] Not duplicate issue
[ ] Appropriate labels applied
[ ] Appropriate contributors tagged/assigned

The link in the description was pointing at a feature branch. I believe this is where we should look for the interfaces now.

I can take a stab at getting started on this. This should be included in "Overview" (page 1), right? And lay out some of the basics with descriptions of what each interface is used for.


[AH-35] Add Testing Library and cover with Unit Test

Description
React Testing Library is a common approach in favour of Enzyme as it encourages testing habit (user scenarios) instead of implementation details.
It is based on Testing Library which in addition includes other sort of testing (e.g. integration testing as extension for Cypress)
Notes
Link(s):
https://testing-library.com/
https://testing-library.com/docs/react-testing-library/cheatsheet/

Completed.
In addition Cypress was added with basic configuration for E2E tests support.


set_device_value in automation failing since 1.66 - device_address is invalid for dictionary value @ data['device_address']

I agree to the following

[X] I have read the documentation right now
[X] I have read the FAQs right now
[X] I am aware of the latest release notes
[X] I am aware that an integration that was installed via HACS also needs to be updated via HACS
[X] The Backend (CCU/Homegear/...) is working as expected, devices are taught in and are controllable by its own UI.
[X] I am running the latest version of the custom_component (and Home Assistant)

The problem
Hey,
Since the recent update to v1.66 my automation using set_device_value is failing, with the error message: "device_address is invalid for dictionary value @ data['device_address']" sounds like the address of the device is no longer valid. I'm using HmIP-eTRV-B-2 devices and want to set the window open/closed flag.
I'm getting the address via address: '{{ state_attr( climate_target, "address") }}' and using the service in my automation like this:
  - data:
      device_address: '{{ address }}'
      channel: 1
      parameter: WINDOW_STATE
      value: 1
    action: homematicip_local.set_device_value

Here is the trace of the step in the automation, when if last failed, just replaces some characters in the device-adress with Xs for privacy reasons, as i don't know if it should be public.
Ausgeführt: 29. September 2024 um 17:28:09
Fehler: device_address is invalid for dictionary value @ data['device_address']
Ergebnis:
params:
  domain: homematicip_local
  service: set_device_value
  service_data:
    device_address: 00399XXXXXX61C:1
    channel: 1
    parameter: WINDOW_STATE
    value: 1
  target: {}
running_script: false

If i switch back to 1.65 everything works as expected
What version of HomematicIP (local) has the issue?
1.66
What was the last working version of HomematicIP (local)?
1.65
What type of installation are you running?
Home Assistant OS
What type of installation are you running for your homematic backend?
CCU3
Which version of your homematic backend are you running?
No response
What hardware are you running for your system?
No response
Which config details do you use

[ ] TLS
[ ] callback data (see)

Which interfaces do you use?

[ ] Homematic IP
[ ] Homematic (Bidcos-RF)
[ ] Groups (Heating-Group)
[ ] BidCos-Wired (HM-Wired)

Diagnostics information (no logs here)
No response
Log file extract. Anything in the logs that might be useful for us? The log (Setting/System/Logs -> load full log) is the best source to support trouble shooting!
No response
Additional information
No response

00399XXXXXX61C:1  ist kein device_address!
00399XXXXXX61C ist eine device_address

danke für die flotte antwort.
das heißt dann aber, dass das attribute von dem durch das plugin angelegte climate object ist falsch.
das :1 hängt am address attribute meiner climate entity dran.

Der Adresstyp wurde bisher nicht validiert


nixos/test-driver: Specify /bin/sh shell when running a bourne shell script as the user

Motivation for this change
The test harness provides the commands it wishes to run in Bourne syntax.  This fails if the user uses a different shell.  For example, with fish:
machine.wait_for_unit("graphical-session.target", "alice")

results in
machine # fish: Unsupported use of '='. To run '-u`' with a modified environment, please use 'env XDG_RUNTIME_DIR=/run/user/`id -u`…'
machine # XDG_RUNTIME_DIR=/run/user/`id -u` systemctl --user --no-pager show "graphical-session.target"
machine # ^
machine # [   16.329957] su[1077]: pam_unix(su:session): session closed for user alice
error: retrieving systemctl info for unit "graphical-session.target" under user "alice" failed with exit code 127

Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
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 nixpkgs-review --run "nixpkgs-review wip"
[ ] 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)
[x] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@tfc

Defining the shell makes a lot of sense, but i would prefer explicitly pointing to a specific shell instead of assuming /bin/sh. Can you make it like --shell ${shellpackage-that-is-used-everywhere-already}/bin/sh?

We can assume /bin/sh to be around, and as we don't explicitly use any bashisms, this seems to be the right way to do this.

Is this expected to be runnable interactively? If yes, https://github.com/NixOS/nixpkgs/issues/1424 might probably apply if the terminal emulator is used inside a graphical session with OpenGL.

@7c6f434c this /bin/sh is only used as a shell for su, to then execute systemctl --user in a non-interactive fashion.

@7c6f434c this /bin/sh is only used as a shell for su, to then execute systemctl --user in a non-interactive fashion.

No, the question is not whether this uses interactivity, the question is whether this can happen while the user tries to use something like interactive REPL for debugging tests.

I'm still not sure if I understand the question correctly, sorry.
So far, the Machine.execute method (which is used under the hood) isn't able to be used interactively, also when using the interactive ptpython REPL.

So far, the Machine.execute method (which is used under the hood) isn't able to be used interactively, also when using the interactive ptpython REPL.

Oh, my fault, /bin/sh is inside the VM, not outside. Right, then /bin/sh and the Machine.execute environment have to be in sync inside VM, even if a switch is being tested.

@7c6f434c so you now agree with the changes proposed here?

Yes, I now fail to invent a problematic scenario, and I agree that in a non-Nix-expanded Python file using the store path to shell is nice but not free.

Thanks!


Add a example in README to show how to mock with fakefs

:+1: for this... I'm just about to pick over the commit.

Since from mock import patch is now from unittest.mock import patch in Python 3, it would be good to add this, but not required.
Fully approve - I would merge if I could.

@jamescooke Thanks for reviewing, I've updated my commit.

BTW, is this the "official" repo?

There isn't an official repo yet. See https://github.com/jmcgeheeiv/pyfakefs/issues/44


Passing arguments into need

Hi,
Great work on this, enjoying tinkering with it.
I have a question about using need/ fetchComponentDataBeforeRender().
In a container, what's the best way to pass in an argument with an action specified in need?
i.e. something like this won't work:
  static need = [
    fetchPage(id)
  ]

In my project I have an undetermined number of content items which I want to fetch and add to state only as and when they're requested, rather than all in one go.
The boilerplate doesn't have this issue as it fetches all topics in need.
Any suggestions about the best way to do it gratefully received! There's probably a really obvious solution I'm not seeing.
Cheers
Richard

Hey @ReallySmall ,
I think static need = [ fetchPage ] just points the the action inside actions/pages, and you have to specify the arguments to accept there. I'm 90% sure about that.
Unmodified fetchComponentDataBeforeRender uses  dispatch(need(params), so if you have any route params in react-router i.e. <Route path='posts/:id'> it would pass the wildcard id to your need.
you can also change around fetchComponentDataBeforeRender  arguments, for example
app/server.js
fetchComponentDataBeforeRender(store, renderProps.components, id, anyCustomData)
and then inside the api itself
export function fetchComponentDataBeforeRender(store, components, id, data) {
  const needs = components.reduce( (prev, current) => {
    return (current.need || [])
      .concat((current.WrappedComponent ? current.WrappedComponent.need : []) || [])
      .concat(prev);
    }, []);
    const promises = needs.map(need => need(store,id,data);
    return Promise.all(promises);
}

inside component
  static need = (store, id) => {
    return store.dispatch(loadPost(id));
  };

Thanks very much for the pointers @Epochi !
That's helped me zero in on the issue - as it turns out it was all actually working fine and it was just down to me making a really basic error. The params object was being passed in - and I was forwarding that object to the api route, which was just expecting a string. No wonder nothing ever came back.
Thanks again for the explanation, that's really clarified how it works for me.
Cheers
Richard


Minimum size for training

Hi Shihan Liu,
What is the reason there is a minimum input size for the model? In my experiments 192x192.
What would be needed to adapt the model to handle smaller sizes, eg 96x96?
Best regards,
Ramon

see params/train/train_settings.yaml
input_size: [672, 672]   # image input size for model
multiscale_range: 5      # real_input_size = input_size + randint(-multiscale_range, multiscale_range) * 32

so if you want to use a very small size, just set multiscale_range to zero


Add beautifier to HTML output

[ ] (Plugin) Add HTML source code preview (beautified) to plugin @ymherklotz
[ ] (Plugin) Add HTML generate beautified file to plugin (optional)

Live generated beautified HTML file would be useful, since you could open the file in a browser and view it as it updates.
Functions:

Open Preview
Open Source Code Preview
Toggle HTML File Generation

See My fork, branch create-html for the progress I made so far. Got it printing to an HTML file but no control over the filename.
For some reason sometimes the {{ include test.fmark }} stopped working so watch out for whether they work or not. I just updated VS code which could be the cause.

Don't think it's worth the effort making the CLI output pretty html, because you can just pass it through another CL tool to prettify it, so removed that from this issue.

Done but no control over html file name, just makes it in the same dir as the .fmark file. No HTML source code preview yet.

Source code preview is not really necessary.


unit tests

Unit test suite for each of the 3 modules is a must before #1

Approach
Operators
Operator tests should include every possible type combination:

every pair of types for assignments and binary operators
each of 7 available types for unary operators

Functions
Similarly, every supported function implementation should have tests for every argument type combination, including the optional arguments if available. Additionally, edge case values with unexpected conversions should be covered.
QA suite
While other unit tests should be short and of single responsibility, a suite of longer real-life scripts should be created to detect complex bugs/issues. Coverage limits for these are to be defined later.

Closed by b6936a3


[Bug]:  The code works well on the x86 Ubuntu server but fails on the ARM Ubuntu server.

Issue Type
Usability
HEU Version
sf-heu 0.5.1b0
OS Platform and Distribution
Arm Ubuntu 20.04
Python Version
3.9
Compiler Version
No response
Current Behavior?
I generated the public/private key pair on an x86 Ubuntu 20.04 server and used the public key on an aarch64 (Arm Cortex-A55) Ubuntu 20.04 server.
The code below works well on the x86 Ubuntu server but fails on the ARM server.
The traceback:
Exception in thread Thread-1:
Traceback (most recent call last):
  File "/home/user/miniconda3/envs/live/lib/python3.9/threading.py", line 980, in _bootstrap_inner
    self.run()
  File "/home/user/miniconda3/envs/live/lib/python3.9/threading.py", line 917, in run
    self._target(*self._args, **self._kwargs)
  File "/home/user/my_app/app.py", line 65, in activation
    slowfast_pred = encryptor.encrypt(heu_arr)
heu.phe.PheRuntimeError: [Enforce fail at heu/library/algorithms/paillier_float/internal/codec.cc:22] scalar.CompareAbs(pk_.PlaintextBound()) <= 0. integer scalar should in +/- 0, but get A7B46
Stacktrace:
#0 heu::lib::algorithms::paillier_f::internal::Codec::Encode()+0x7f82877e6c
#1 heu::lib::algorithms::paillier_f::Encryptor::Encrypt()+0x7f82875f24
#2 heu::lib::numpy::DoCallEncrypt<>()::{lambda()#1}::operator()()+0x7f825882c4
#3 std::_Function_handler<>::_M_invoke()+0x7f8286a1e4
#4 std::__future_base::_State_baseV2::_M_do_set()+0x7f82869ccc
#5 __pthread_once_slow+0x7fbc16b3b8
#6 std::_Function_handler<>::_M_invoke()+0x7f8286a654
#7 yacl::ThreadPool::WorkLoop()+0x7f8286ca40
#8 execute_native_thread_routine+0x7f8297d5b0
#9 start_thread+0x7fbc162624

The code:
from heu import numpy as hnp
from heu import phe

......

with open("public.key", "rb") as f:
    pk_buffer = f.read()

kit = hnp.setup(pickle.loads(pk_buffer))
evaluator = kit.evaluator()
encryptor = kit.encryptor()
encoder = phe.FloatEncoder(phe.SchemaType.ZPaillier)

......

                slowfast_pred = slowfast.predict(frames, bboxes)
                slowfast_pred = slowfast_pred.cpu()
                slowfast_pred = slowfast_pred.detach().numpy()

                heu_arr = hnp.array(slowfast_pred, encoder)
                slowfast_pred = encryptor.encrypt(heu_arr) # the line 65

The reason is that the enum value numbers of phe.SchemaType.xxxx are misaligned, causing the algorithm to not be invoked correctly at the lower level.
I think your environment might involve one machine being x86 and the other being ARM, and the number of schemas supported by x86 and ARM are different, leading to the sequence numbers of this SchemaType enum being different. If both sides are either ARM or x86, there should be no issue.
We will fix this problem shortly.

Please recompile and reinstall the code from the main branch on both sides.

Thank you very much, it’s working perfectly!
I compiled the latest main branch code of this project on servers with different CPU architectures into the following files and updated them on several service instances one by one.

sf_heu-0.6.0.dev0-cp310-cp310-manylinux_2_28_aarch64.whl
sf_heu-0.6.0.dev0-cp310-cp310-manylinux2014_x86_64.whl

The installation command is as follows:
pip install sf_heu-0.6.0.dev0-cp310-cp310-manylinux_2_28_aarch64.whl --force-reinstall

Then:

Delete the existing public and private keys
Generate new public and private keys
Distribute the new public and private keys to all aarch64 and x86_64 server instances
All instances are working correctly

PS:
Code for generating the public and private keys:
from heu import phe

ckit = phe.setup(phe.SchemaType.ZPaillier, 2048)

with open('./public.key', 'wb') as f:
    f.write(ckit.public_key().serialize())

with open('./secret.key', 'wb') as f:
    f.write(ckit.secret_key().serialize())

print("Done!")

Aha! Great!  I'm glad to hear this news.