Update clique.py: Add local Composite

Add local _ScaleComposite for use with the DWaveCliqueSampler.
Extends the ScaleComposite class to local _ScaleComposite by checking for per_qubit_coupling_range violation and rescales accordingly.
Fixes https://github.com/dwavesystems/dwave-system/issues/404

Add local _QubitCouplingComposite to scale problem according to the per qubit coupling range when that range is exceedeed.
Fixes https://github.com/dwavesystems/dwave-system/issues/404

Approach looks good. Can we add some tests? It should be possible to adapt the mock sampler and tests in https://github.com/dwavesystems/dwave-system/blob/master/tests/test_dwavecliquesampler.py to create a breaking case.

Codecov Report

Merging #417 (efb5461) into master (fb38541) will decrease coverage by 1.63%.
The diff coverage is 58.82%.

@@            Coverage Diff             @@
##           master     #417      +/-   ##
==========================================
- Coverage   92.11%   90.48%   -1.64%
==========================================
  Files          22       22
  Lines        1332     1366      +34
==========================================
+ Hits         1227     1236       +9
- Misses        105      130      +25

Impacted Files
Coverage Δ

dwave/system/samplers/clique.py
78.61% <58.82%> (-5.39%)
:arrow_down:

dwave/system/samplers/dwave_sampler.py
84.37% <0.00%> (-3.13%)
:arrow_down:

dwave/system/samplers/leap_hybrid_sampler.py
74.45% <0.00%> (-2.92%)
:arrow_down:

dwave/system/composites/embedding.py
95.85% <0.00%> (-1.19%)
:arrow_down:

Continue to review full report at Codecov.

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


Throw error if brave_electron_version is not set

instead of falling back to a very old version of chromium

I agree, I doubt anyone wants this as default behavior. Likewise, would be nice to have a note in the readme to add this!

1000000%, I've gone several days into developing with muon before I found this out. I know that electron-prebuilt might be replaced soon according to this, but even a note in the README would help.


Cache ElementwiseKernel kernel globally instead of per instance

Fixes #2469

Jenkins, test this please

Jenkins CI test (for commit 6b4df362f2cabfd1ace234cd218d7a94e43f3453, target branch master) failed with status FAILURE.

Can you verify that the test failures are not PR related?

At least some of them seem related. I'll fix them.

I've made a fix, but it may degrade performance.
I'll make a measurement.

Measured using https://github.com/niboshi/cupy-perf
No negative impact is observed.
Before this PR:
userkenel           :     8.661 us   +/- 0.294 (min:    8.378) us

This PR:
userkenel           :     8.514 us   +/- 0.345 (min:    8.265) us

perf_userkernel measures ElementwiseKernel calls repeatedly reusing a single instance.
Only showing CPU time.

Jenkins, test this please

Jenkins CI test (for commit 127c303406808da0501a0dda6cc07cba44e30304, target branch master) failed with status FAILURE.

Jenkins, test this please

Jenkins CI test (for commit 127c303406808da0501a0dda6cc07cba44e30304, target branch master) failed with status FAILURE.

I'll check the failures.

I once was able to replicate the failure 100% of the time, but now for some reason couldn't replicate it at all... even in docker with chainer-test.

@emcastillo This pull-request is marked as st:test-and-merge, but there were no activities for the last 3 days. Could you check?

@emcastillo Can you retrigger Jenkins to check if the failure is persistent?

Jenkins, test this please

Jenkins CI test (for commit 127c303406808da0501a0dda6cc07cba44e30304, target branch master) failed with status FAILURE.

pfnCI, test this please.

Jenkins CI test (for commit 127c303406808da0501a0dda6cc07cba44e30304, target branch master) succeeded!

Let me re-run jenkins to see if the failure before reproduces

Jenkins, test this please

Jenkins CI test (for commit 127c303406808da0501a0dda6cc07cba44e30304, target branch master) succeeded!

Lets merge, hope it wont blow up later 😅

Should it be backported as this is a bug? @niboshi @emcastillo

@kmaehashi Yes, let's do it.


improve subproj handling and deprecated target options

Exclude several libraries from build when we are included in a super-project (this is the case when someone only wants to use xrpl_core). Force several target params to be cache variables since they are now exposed as options.

👍

Confirmed that this fixes the issue I was having with the coverage build.

@ximinez Thanks for the quick review. I really think we need to get 1.1.0-rc1 out, so I'm inclinded to pass this and add other suggested improvements to another PR.

I'm fine with that. :+1:

In 1.1.0-rc1


Transpile to ES5

Hi, thank you so much for taking the time to implement this. I'm trying do to a test run, so I want to transpile, bundle and just <script> tag the library. I haven't done this in ages. Would a webpack config like this work:
var path = require("path");
module.exports = {
	mode: "production",
	output: {
		path: path.join(__dirname, "dist"),
		filename: "bundle.js",
		library: "grapheme-iterator",
		libraryTarget: "amd"
	},
    module: {
        rules: [
          {
            test: /\.m?js$/,
            exclude: /(node_modules|bower_components)/,
            use: {
              loader: 'babel-loader',
              options: {
                presets: ['@babel/preset-env']
              }
            }
          }
        ]
    },
    target: ['web', 'es5']
};

It should work, though note that it uses typed arrays so not every ES5 browser ever released will support it unmodified.

Thanks for the info.
Here's the result: https://gist.github.com/tehmaestro/37dc95dfb0565d8c618affde59a0ce43
If anyone wants to use it.


Organize imports inside

At the moment, this plugin successfully organizes imports inside component scripts, but fails to do so in <script> tags.
---
// These are organized
import { foo } from "foo";
import { bar } from "bar";
---

<script>
  // These are not organized
  import { foo } from "foo";
  import { bar } from "bar";
</script>

It would be nice if this plugin could organize both component script imports as well as <script> imports when formatting an .astro file.
When running "Organize imports" manually from VSCode with the cursor positioned inside the <script> section, VSCode organizes the <script> imports instead of the component script imports (messing up the indentation in the process).

Thanks for reporting this issue!
I'm currently tied up with some other commitments, so it might take me a bit longer to address this.

I'm not in a hurry or expecting anything, just stumbled across this in my hobby astro project and thought "it'd be nice if these inputs were sorted too" :D


WPF version not reported correctly when using ClickOnce

Describe the solution you'd like
It looks like the WPF analytics module is using the Assembly file version for "version" when viewing data in App Center.
Describe alternatives you've considered
I would like it to use the ClickOnce publish version, or better yet, let me set the version myself.
Additional context
ClickOnce is an installation technology for deployment of WPF apps.

@hamswan FYI
@moshegutman might be better to put this on SDK repo itself:
https://github.com/Microsoft/AppCenter-SDK-DotNet

@JakubOleksy Done!

ClickOnce was fixed in SDK 2.4.0
Manually set version feature request - #1313


This page is supposed to be for Azure Relay

[Enter feedback here]

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

ID: 8fe98352-c5c4-6ec4-7ff7-5de61943e47f
Version Independent ID: 1eba5da4-0123-d262-b106-1cccdd05297f
Content: Azure security baseline for Service Bus
Content Source: benchmark/azure/baselines/service-bus-messaging-security-baseline.md
Service: service-bus-messaging
GitHub Login: @msmbaldwin
Microsoft Alias: mbaldwin

@arunvijay808 Thanks for the feedback! We will review and update accordingly.

@arunvijay808 The previously named Service Bus Relay service is now called Azure Relay. More details here. The security baseline doc covers guidance from Azure Security benchmark 2.0 to Service Bus (which inherently also applies to Azure relay).

@msmbaldwin, Can you please share your thoughts on the shared feedback - should the title/content be modified to suit the new name - Azure relay?

.

Hi @arunvijay808, I am assigning this issue to content team for further review and modification, if required. Please let us know if you have any questions.

@arunvijay808 - Thanks for the feedback. I remove the link from the TOC. We will work on creating a security baseline article specific to Relay and publish it. For now, please check articles under Concepts -> Security and How To -> Security. Thanks.
#please-close


New Round Tx

Description:
The owner can submit a cosmos message transaction to force a new round.

note: not sure if this is what is being referred to on the SOW. I dont understand why a transaction has to be made to "inform providers of a new round". will need to establish who the "data provider" is (if it is on the cosmos network user or if it is on chainlink network)

Acceptance Criteria:

send a cosmos transaction to force a new round for every feed
emit an event (#15)

Ask chainlink team how they would like the event to be handled; more information around the event trigger.


fix: no longer writing response if identical

:tada: This PR is included in version 4.0.5 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Cannot find type 'NVActivityIndicatorViewable' in scope

After I updated my pods i am facing "Cannot find type 'NVActivityIndicatorViewable' in scope".

Dupe or #322


xsl

I need to style my xml document, but it's not possible to provide additional headers to the generated doc. I'll gladly create a PR for that. any interest?
The header needs to look like that:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="http://mysite.com/style.xsl" ?>

Hi @erwanjegouzo, have you found a solution to this issue? :-)

No one needs xml-stylesheet or everybody has solution?


Hintsvm cython interface

@lsc36 @iamyuanchung @tungen
Please help me review it and leave comment after you done so.
Thanks.

Looks ok to me.


Restore Backups

Solicito de su colaboración con el fin de poder identificar dentro del Storage Account creado por la plantilla de Company Communicator, donde son almacenadas las comunicaciones enviadas, dado que dentro de los contenedores que se encuentran data-funtion, funtion y prep-funtion, no se logra evidenciar de manera apropiada la carpeta donde son almancenadas las comunicaciones.
Adjunto imágenes  de referencia, la solución lleva implementada aproximadamente 6 meses con un envío de 30 comunicaciones.
Evidencias Backups Company.docx

Hi @gvelez83 ,
Thanks for raising the query. Please translate the same in English so that we would be able to help you out

again re post the peticion, regrads your help for this question

againt i repost the question in english, regrads your help with the question, about funtion of company comunicator

I request your collaboration in order to be able to identify within the Storage Account created by the Company Communicator template, where the sent communications are stored, given that within the containers that are data-function, function and prep-function, they are not manages to appropriately reveal the folder where the communications are stored.
I attach reference images, the solution has been implemented for approximately 6 months with a shipment of 30 communications.

Hi @gvelez83 ,
We are considering this as a duplicate to #1292  and can continue the discussion there. Closing out the issue here.


Feature request: Suppport for DbConnection.StateChange event handler

Relevant documentation
I think only the follwing needs support looking at DBConnection for sqlite

open -> closed
closed -> open

Implemented in https://github.com/Giorgi/DuckDB.NET/pull/221


Fixes #29, Fixes #31, Fixes #32

Fixes #29: I was getting an Error on Dataset pages that did not have any extras
Fixes #31: Added warning icon to Issues tab
Fixes #32: Modified auth.py to look for ckanext.issues.minimun_role_required variable in the configuration which specifies the minimum role a user has to have in order to interact with Issues (both via web UI and API)

hey, could you seperate fixes out into different pull requests? it's more difficult to review everything in one large chunk


Opening the Main.storyboard in Xcode makes the app hang in a newly created iOS project

Hello and thank you for Flutter 💙
It was brought to my attention in the Slack channel for Flutter that the latest Flutter version's Main.storyboard doesn't open in Xcode. It just beachballs. And I confirm that to be true. You can't open the default template Main.storyboard with the latest version of Xcode.
I did a diff between Flutter's default Main.storyboard and a fresh new Main.storyboard created by Xcode and here you can see the diff.

I sent a PR above to address this but unsure as to if that's the only Main.storyboard that needs to be fixed. Please review.

Hi @vandadnp, thank you for filing this issue. I tested this issue on the latest stable and master channel and it is reproducible.

flutter doctor -v
[✓] Flutter (Channel stable, 2.5.3, on macOS 11.6.1 20G224 darwin-x64, locale en-US)
    • Flutter version 2.5.3 at /Users/flo/development/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 18116933e7 (5 weeks ago), 2021-10-15 10:46:35 -0700
    • Engine revision d3ea636dc5
    • Dart version 2.14.4

[!] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/flo/Library/Android/sdk
    • Platform android-31, build-tools 31.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7281165)
    ! Some Android licenses not accepted.  To resolve this, run: flutter doctor --android-licenses

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 13.0, Build version 13A5212g
    • CocoaPods version 1.11.0

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2020.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7281165)

[✓] VS Code (version 1.60.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.27.0

[✓] Connected device (5 available)
    • SM G975U (mobile)          • R58M95MA95E                          • android-arm64  • Android 11 (API 30)
    • sdk gphone x86 (mobile)    • emulator-5554                        • android-x86    • Android 11 (API 30) (emulator)
    • iPhone 12 Pro Max (mobile) • 98CBBFB1-4069-4A28-B7F7-138911ACBE72 • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-15-0 (simulator)
    • macOS (desktop)            • macos                                • darwin-x64     • macOS 11.6.1 20G224 darwin-x64
    • Chrome (web)               • chrome                               • web-javascript • Google Chrome 93.0.4577.63

! Doctor found issues in 1 category.

[✓] Flutter (Channel master, 2.6.0-12.0.pre.738, on macOS 11.6.1 20G224 darwin-x64, locale en-US)
    • Flutter version 2.6.0-12.0.pre.738 at /Users/flo/fvm/versions/master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 09482cb80b (4 hours ago), 2021-11-16 23:42:34 -0500
    • Engine revision<PHONE_NUMBER>
    • Dart version 2.16.0 (build 2.16.0-14.0.dev)
    • DevTools version 2.8.0

[!] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/flo/Library/Android/sdk
    • Platform android-31, build-tools 31.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7281165)
    ! Some Android licenses not accepted.  To resolve this, run: flutter doctor --android-licenses

[✓] Xcode - develop for iOS and macOS (Xcode 13.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • CocoaPods version 1.11.0

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2020.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7281165)

[✓] VS Code (version 1.60.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.27.0

[✓] Connected device (5 available)
    • SM G975U (mobile)          • R58M95MA95E                          • android-arm64  • Android 11 (API 30)
    • sdk gphone x86 (mobile)    • emulator-5554                        • android-x86    • Android 11 (API 30) (emulator)
    • iPhone 12 Pro Max (mobile) • 98CBBFB1-4069-4A28-B7F7-138911ACBE72 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-15-0 (simulator)
    • macOS (desktop)            • macos                                • darwin-x64     • macOS 11.6.1 20G224 darwin-x64
    • Chrome (web)               • chrome                               • web-javascript • Google Chrome 93.0.4577.63

! Doctor found issues in 1 category.

Thank you

@mamuseferha @darshankawar thank you. Could I get some help in the PR please as to what the next stage is?

/cc @jmagman

This doesn't repro in Xcode 12.5, let me see if I can pinpoint exactly what Xcode 13 needs to make the IDE not hang...

Removed crash flags, the Flutter app works fine, it's an Xcode bug that reproduces opening a valid 12.5 storyboard.
From the PR https://github.com/flutter/flutter/pull/93774

This PR only a changes a single example, we would need to change all the templates used to create new Flutter projects, a migration to update existing projects, and then run that migration on all the example apps checked into the repo.
It also changes far more than is necessary to work around the Xcode bug (even a malformed Storyboard shouldn't make the app SPOD, and certainly not one like this that isn't malformed and works correctly in Xcode 12.5). A clean slate storyboard isn't a bad idea for the templates, but we would only want the minimum changed in the migration to minimize the risk of corrupting Storyboards that have been edited.

I will work on this now.

The fix at https://github.com/flutter/flutter/pull/94084 was reverted.

This no longer reproduces on Xcode 13.2.1.  I guess Xcode fixed the bug on their end.
@vandadnp can you confirm an Xcode upgrade fixes this?


Field becomes optional when value is any or unknown

const s = z.object({ x: z.unknown() })
type s = z.infer<typeof s>
// s has { x?: unknown } but should be { x: unknown }

I'd say this is actually behaving as intended. Currently Zod can't really differentiate between {arg: string | undefined} and {arg?: string | undefined}. When you pass a key schema S s.t. undefined extends infer<typeof S>, Zod will add the question mark. In this case undefined extends unknown (because everything does), hence the question mark. This also agrees with runtime behavior:
const schema = z.object({ x: z.unknown() });
schema.parse({}); // works

How does one write anything but something must be passed in and it cannot be undefined?

How does one write anything but something must be passed in and it cannot be undefined?

This is the best I've got:
const schema = z.object({
    field: z.custom((x) => x !== undefined),
  });

It would be really nice if we could define "any object" as a property (and it is a required property when it does schema validation).

Cool idea! Open to this as a PR. Just setting the "default shape" to {} should work, though you'll end up with an empty object every time unless you use .passthrough().
z.object().passthrough()

If you guys like me need to make sure the return type is compatible with existing interfaces, then you could do something like this:
object({
  field: custom<MyType>((val) => val !== undefined && val !== null),
})
// Or
object({
  field: object({}).passthrough().refine<MyType>((val): val is MyType => val !== undefined && val !== null),
})

Cool idea! Open to this as a PR. Just setting the "default shape" to {} should work, though you'll end up with an empty object every time unless you use .passthrough().

I've just added a PR which pretty much does exactly that (makes the shape an empty object and set the object to "passthrough". Its added as the type z.anyObject().

I've just added a PR which pretty much does exactly that (makes the shape an empty object and set the object to "passthrough". Its added as the type z.anyObject().

Isn't that the purpose of z.record?
Possible today:
z.record(z.unknown()) // don't care about key type.

Proposal:
z.record() // don't care about anything.

Cool idea! Open to this as a PR. Just setting the "default shape" to {} should work, though you'll end up with an empty object every time unless you use .passthrough().

I've just added a PR which pretty much does exactly that (makes the shape an empty object and set the object to "passthrough". Its added as the type z.anyObject().

What does it infer to? I'm almost certain it will infer to {}, which is the same as unknown and this will not correctly resemble empty objects. Actually, everything that extends an object will pass this from the inference point of view.
Of course, in reality, Zod is smart enough to let only objects pass. But if you then use this Schema as a function parameter validator, for example, Zod will parse the argument correctly, but TypeScript will not complain if you pass it a 2.
There are some things we can do to solve this:

Add a check on the type that generates the ZodObject output to check if the output is {}, in which case it should transform it to Record<string, never>—but I don't like this very much because we already have Record schemas.

You could intersection the empty ZodObject with ZodBrand so that it has a brand that will not interfere on the parsing, but now TS knows that I can't pass a 2 to a function argument.

What does it infer to? I'm almost certain it will infer to {}, which is the same as unknown and this will not correctly resemble empty objects. Actually, everything that extends an object will pass this from the inference point of view.

It infers to object - which is a standard TypeScript type for object and makes sense in this situation.
These type assertions seem to be correct to me:

Has this been resolved? Is so, I'd like to close this issue.

{ a: unknown } and  { a?: unknwon} are different

I am facing problem explained by @flex-hyuntae . Tried various incantations of workarounds, such as
z.custom<Required<any> | unknown>((x) => x !== undefined)

This works for any only, but adding unknown always seems to end up in an optional property. In my case the types are from a 3rd party library and I can't seem to work with them without basically just setting the parent object to z.any() and giving up validating.


Register STARTED and FINISHED views for RpcViews.

gRPC has already recorded stats for started and finished RPCs:
https://github.com/grpc/grpc-java/blob/4c483ef7a0434fd4a703fdeb9e5031a89fca89e3/core/src/main/java/io/grpc/internal/CensusStatsModule.java#L392

Codecov Report

Merging #986 into master will decrease coverage by 0.02%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master     #986      +/-   ##
============================================
- Coverage     81.28%   81.25%   -0.03%
  Complexity     1033     1033
============================================
  Files           173      173
  Lines          4637     4637
  Branches        431      431
============================================
- Hits           3769     3768       -1
  Misses          762      762
- Partials        106      107       +1

Impacted Files
Coverage Δ
Complexity Δ

...a/io/opencensus/contrib/grpc/metrics/RpcViews.java
68.18% <ø> (ø)
6 <0> (ø)
:arrow_down:

...census/implcore/trace/export/SpanExporterImpl.java
96.77% <0%> (-1.62%)
7% <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 9c5bfe8...ed6c2a4. Read the comment docs.


Create Release With SSL/TLS Support

OS
Windows / Linux / Mac
VERSION
v1.3.6
ISSUE DESCRIPTION
README indicates that there is SSL/TLS Support, but it has not been included in a release.
Can we get a release created that includes this feature? 🙌

v1.3.7 released


Users aren't prompted to save files

Files aren't marked as modified when they change, meaning that users are never encouraged to save the file on close.

See #1. It seems that we need to interact with the environment UndoManager before the document notices that there are changes and prompts us to save / discard, etc.
@Environment(\.undoManager) var undoManager

Fixed by adding undo manager support.


chore: update e2e tests with multi partitions

LGTM. only question I have is whether we should keep some tests the same with both single and multi-partition.

I have kept some tests with just a single partition, and a few tests with both single and multi partition.


Custom Lua scripts are not loaded in cluster mode

I created a local cluster on my macbook pro with 3-8 nodes using redis-cli and redis-server (From homebrew).
When I shutdown all nodes and re-create them (manually) - 9/10 runs this bug occurs:
const client = new IORedis.Cluster([
  {
    host: 'localhost',
    port: 7000,
  },
])

const scriptName = 'script1'
const script1 = 'return {KEYS[1]}'
client.defineCommand(scriptName, { numberOfKeys: 1, lua: script1 })
console.log(await client[scriptName]('aaaa', 'hi', console.log))

Error
(node:54658) UnhandledPromiseRejectionWarning: ReplyError: NOSCRIPT No matching script. Please use EVAL.
    at parseError (/Users/stavalfi/projects/singer/.yarn/cache/redis-parser-npm-3.0.0-7ebe40abcb-45dbcb05be.zip/node_modules/redis-parser/lib/parser.js:179:12)
    at parseType (/Users/stavalfi/projects/singer/.yarn/cache/redis-parser-npm-3.0.0-7ebe40abcb-45dbcb05be.zip/node_modules/redis-parser/lib/parser.js:302:14)
(Use `node --trace-warnings ...` to show where the warning was created)
(node:54658) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2)
(node:54658) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

(Very?) Bad Workaround
It took me a while to figure out how to fix it: I need to manually update all nodes about the script
const masters = client.nodes('master')
await Promise.all(
  masters.map(node => Promise.all([node.script('load', script1), node.script('load', persistMollyLiveBmss)])),
)

I'm not sure I can use this fix in production.

More info
Note: In non-cluster runs, all works great: using local,remote,docker redis-servers.
System:
    OS: macOS 10.15.1
    CPU: (12) x64 Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
    Memory: 675.51 MB / 16.00 GB
    Shell: 3.1.2 - /usr/local/bin/fish
  Binaries:
    Node: 14.15.4 - /var/folders/fh/lk3kyv9n29v3w36bqyv_y7d00000gn/T/fnm-shell-5135596/bin/node
    Yarn: 2.4.2 - /var/folders/fh/lk3kyv9n29v3w36bqyv_y7d00000gn/T/fnm-shell-5135596/bin/yarn
    npm: 6.14.10 - /var/folders/fh/lk3kyv9n29v3w36bqyv_y7d00000gn/T/fnm-shell-5135596/bin/npm

ioredis - 4.27.6 and 4.27.7

redis-cli 6.2.4
Redis server v=6.2.4 sha=00000000:0 malloc=libc bits=64 build=f6e7aafbcc3dc4bf

redis.conf for all nodes:
port <some port>
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly no
save ""

This could be caused by what I've described in the comment here: https://github.com/luin/ioredis/issues/1438#issuecomment-1025210992
Once a server restarts, it doesn't have the script anymore and the process only tries to reload them after 60s.

This accidentally got closed. #1499 would fix the behavior


History / changelog?

Now that it looks like ecs-cli-v2 has made it into preview - are you maintaining a history / changelog file anywhere? Or noting release notes in the github releases?
Thanks!

Hi @mwarkentin !
We don't have a CHANGELOG yet, but we're planning to add release notes to future GitHub releases so you can see what changed :)

Sounds good!


PR: Added a verification for the existence of the 'text/plain' key

Fixes #3564

Note: view is set to None instead of {} to avoid resetting the view currently present in the Variable Explorer.


Tasks hang when operating on writing Zarr-backed Dataset

What happened?
When writing a dataset to zarr, we sometimes see that the last few tasks hang indefinitely with no cpu activity or data transfer activity (as seen from the daskui). Inspecting the daskui always shows we are waiting on a task with a name like ('store-map-34659153bd4dc964b4e5f380dacebdbe', 0, 1).
What did you expect to happen?
For all tasks to finish and all taking approximately the same amount of time to complete. I also would expect worker saturation to have some effect and kick in a queue with xarray and map_blocks to zarr, but I don't see this behavior. I do see this behavior with the dask counterpart (example in code the extra section below).
Minimal Complete Verifiable Example
# task 1: make dataset
variables = [str(i) for i in range(36)]
dset = xr.Dataset(
    {
        v: (("x", "y"), da.ones((50000, 50000), chunks=(4096, 4096), dtype="float32"))
        for v in variables
    },
    coords={"x": range(50000), "y": range(50000)}
)

path = "gs://..."
dset.to_zarr(path)

# task 2: "preprocess" the dataset with map_blocks
rt = xr.open_zarr(path)
def f(block):
    # I have found copying helps reproduce the issue
    # and is often happening anyways within functions we apply
    # with map blocks e.g. .rio.clip, .fillna, etc.
    block = block.copy().copy()
    return block

# I could not reproduce without writing a region
region = {'x': slice(0,20000), 'y': slice(0,10000)}
subset = rt.isel(**region)
subset.map_blocks(f, template=subset).to_zarr(path + "-1", region=region)

MVCE confirmation

[X] Minimal example — the example is as focused as reasonably possible to demonstrate the underlying issue in xarray.
[X] Complete example — the example is self-contained, including all data and the text of any traceback.
[X] Verifiable example — the example copy & pastes into an IPython prompt or Binder notebook, returning the result.
[X] New issue — a search of GitHub Issues suggests this is not a duplicate.

Relevant log output
No response
Anything else we need to know?
My dask cluster is deployed with helm with (32) workers each with 1cpu and 4gb.
We often mitigate this issue (poorly) using environment variables to trigger worker restarts so long hanging tasks get rescheduled so the program can complete, but at the cost of the expected time to restart, which can slow down performance.
"DASK_DISTRIBUTED__WORKER__LIFETIME__DURATION": "8 minutes",
"DASK_DISTRIBUTED__WORKER__LIFETIME__STAGGER": "4 minutes",
"DASK_DISTRIBUTED__WORKER__LIFETIME__RESTART": "True",

In the mre above, we write to_zarr with region often because we often have to throttle the number of tasks submitted to dask.
Possibly relevant links:

https://github.com/dask/distributed/issues/391
https://github.com/fsspec/gcsfs/issues/379
https://github.com/pydata/xarray/issues/4406

note: I have tried to minimize the example even more with
array = da.random.random((250000, 250000), chunks=(4096, 4096)).astype("float32")
def f(block):
    block = block.copy().copy()
    return block
array.map_blocks(f).to_zarr("gs://...")

but I am not seeing the issue. I am seeing worker saturation taking some effect, which might be throttling file operations to gcs causing me to wonder why map_blocks().to_zarr() does not see the worker saturation effects and if that would help alleviate issues gcsfs is probably seeing.
Environment

INSTALLED VERSIONS
------------------
commit: None
python: 3.10.11 | packaged by conda-forge | (main, May 10 2023, 18:58:44) [GCC 11.3.0]
python-bits: 64
OS: Linux
OS-release: 5.15.0-1036-gcp
machine: x86_64
processor: x86_64
byteorder: little
LC_ALL: None
LANG: C.UTF-8
LOCALE: ('en_US', 'UTF-8')
libhdf5: 1.12.2
libnetcdf: None
xarray: 2023.5.0
pandas: 1.5.3
numpy: 1.23.5
scipy: 1.10.1
netCDF4: None
pydap: None
h5netcdf: None
h5py: 3.8.0
Nio: None
zarr: 2.15.0
cftime: None
nc_time_axis: None
PseudoNetCDF: None
iris: None
bottleneck: None
dask: 2023.6.0
distributed: 2023.6.0
matplotlib: 3.7.1
cartopy: None
seaborn: 0.12.2
numbagg: None
fsspec: 2023.6.0 # and gcsfs.version == '2023.6.0'
cupy: None
pint: None
sparse: None
flox: None
numpy_groupies: None
setuptools: 67.7.2
pip: 22.3.1
conda: None
pytest: 7.3.2
mypy: 1.3.0
IPython: 8.14.0
sphinx: None

We'll need some help from someone on the dask/distributed team it seems.
cc @fjetter

One thing I noticed right away in the "data generation task1", is that the following code runs for about ~4min
path = "s3://..."
write_dataset = dset.to_zarr(path, compute=False)

and is already writing all the metadata synchronously, i.e. my local client is writing one file after the other. Is this intentional? Computing, i.e. generating and writing the data only takes a fraction of time for me (and is successful)
(Note: As said, I ran this on AWS using a much larger coiled cluster of 50 m6i.large instances, i.e. that's 50x (8GiB + 2CPUs))
This is not what this issue is about but my sense is that you'll want this to be done in a dask task and not done synchronously.

About the reported problem, I could not reproduce this on AWS + Coiled.
If this is stuck in a store-map-XYZ task my suspicion is that the GCP backend is somehow missing an internal timeout or smth like that.
To diagnose this, I recommend opening the dask dashboard while you are in this stuck state and enter the Info panel (on the right)

This will show a list of workers like this

You will likely have many In-memory tasks everywhere. You should have only one Worker with one task in Processing. This is the worker that is stuck. Click on the worker name/address on the left side.
This will look roughly like this

The important bit is the righthand side with the one task processing. Click the green button Call stacks. which should show you a stack similar to
Key: ('f-5c61e17f47b2a74f5e7444675c1f5dc7', 0, 0)
File "/opt/coiled/env/lib/python3.10/threading.py", line 973, in _bootstrap self._bootstrap_inner()

File "/opt/coiled/env/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run()

File "/opt/coiled/env/lib/python3.10/threading.py", line 953, in run self._target(*self._args, **self._kwargs)

File "/opt/coiled/env/lib/python3.10/site-packages/distributed/threadpoolexecutor.py", line 57, in _worker task.run()

File "/opt/coiled/env/lib/python3.10/site-packages/distributed/_concurrent_futures_thread.py", line 65, in run result = self.fn(*self.args, **self.kwargs)

File "/opt/coiled/env/lib/python3.10/site-packages/distributed/utils.py", line 1517, in <lambda> executor, lambda: context.run(func, *args, **kwargs)

File "/opt/coiled/env/lib/python3.10/site-packages/distributed/worker.py", line 3053, in apply_function msg = apply_function_simple(function, args, kwargs, time_delay)

File "/opt/coiled/env/lib/python3.10/site-packages/distributed/worker.py", line 3089, in apply_function_simple result = function(*args, **kwargs)

File "/opt/coiled/env/lib/python3.10/site-packages/distributed/worker.py", line 2944, in execute_task return func(*map(execute_task, args))

File "/Users/fjetter/miniforge3/envs/coiled-benchmarks/lib/python3.10/site-packages/xarray/core/parallel.py", line 268, in _wrapper

File "/var/folders/h0/kd1gdptx7gzb6cbywplfrx1r0000gn/T/ipykernel_81835/1759722540.py", line 5, in f

This shows you what this task is currently doing. In my example, I just added a sleep in f but I suspect you will see a GCP API call at the very bottom of this stack.
Restarting the dask workers fixes this because it just reschedules the task again s.t. this API request is attempted again and is not timing out.
If this is all true, this is where your problem is and you need to open an issue with the GCP lib.

I am no longer able to reproduce 😢. I looked at monitoring last week and compared to today, but traffic/requests/etc all seem to be roughly the same. And I was testing in my personal temp bucket. I might be encountering some throttling or rate request limits on gcp side.
File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/threading.py", line 973, in _bootstrap self._bootstrap_inner()

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/threading.py", line 1016, in _bootstrap_inner self.run()

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/threading.py", line 953, in run self._target(*self._args, **self._kwargs)

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/distributed/threadpoolexecutor.py", line 57, in _worker task.run()

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/distributed/_concurrent_futures_thread.py", line 65, in run result = self.fn(*self.args, **self.kwargs)

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/distributed/utils.py", line 1471, in <lambda> executor, lambda: context.run(func, *args, **kwargs)

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/distributed/worker.py", line 3035, in apply_function msg = apply_function_simple(function, args, kwargs, time_delay)

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/distributed/worker.py", line 3071, in apply_function_simple result = function(*args, **kwargs)

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/distributed/worker.py", line 2926, in execute_task return func(*map(execute_task, args))

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/dask/array/core.py", line 4398, in store_chunk return load_store_chunk(x, out, index, lock, return_stored, False)

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/dask/array/core.py", line 4380, in load_store_chunk out[index] = x

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/zarr/core.py", line 1386, in __setitem__ self.set_orthogonal_selection(pure_selection, value, fields=fields)

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/zarr/core.py", line 1573, in set_orthogonal_selection self._set_selection(indexer, value, fields=fields)

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/zarr/core.py", line 1859, in _set_selection self._chunk_setitems(lchunk_coords, lchunk_selection, chunk_values,

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/zarr/core.py", line 2053, in _chunk_setitems cdatas = {key: self._process_for_setitem(key, sel, val, fields=fields)

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/zarr/core.py", line 2053, in <dictcomp> cdatas = {key: self._process_for_setitem(key, sel, val, fields=fields)

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/zarr/core.py", line 2145, in _process_for_setitem cdata = self.chunk_store[ckey]

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/zarr/storage.py", line 1397, in __getitem__ return self.map[key]

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/fsspec/mapping.py", line 143, in __getitem__ result = self.fs.cat(k)

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/fsspec/asyn.py", line 121, in wrapper return sync(self.loop, func, *args, **kwargs)

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/site-packages/fsspec/asyn.py", line 94, in sync if event.wait(1):

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/threading.py", line 607, in wait signaled = self._cond.wait(timeout)

File "/usr/mambaforge/envs/redwood-dev/lib/python3.10/threading.py", line 324, in wait gotit = waiter.acquire(True, timeout)

@dcherian or @fjetter any intuition why worker saturation has an effect for a single dask array with to_zarr and not an xarray dataset? If this is a gcs rate issue, that might be a nice way to help throttle things.
I suppose we can close this and I can figure out how to articulate this issue with gcsfs?

Other suspiciously similar issues:

https://github.com/fsspec/filesystem_spec/issues/1136
https://github.com/fsspec/filesystem_spec/issues/565


Build against Cake 0.22.0

Build against Cake 0.22.0 to support Cake versions >= 0.22.0

thanks @pascalberger,
I will try and get to it this weekend.

@larzw I think this should potentially be considered a breaking change, especially considering the .NET Framework version needs to be changed to 4.6

It's also possible to target Cake 0.21.1 for .NET 4.5 like I did here
https://github.com/cake-contrib/Cake.Incubator/pull/48/files#diff-c2f3210fd2a029ab440d1ed23e0e4f28R49

@pascalberger,
This is fixed now.


Build fails due to UglifyJS error

Description
When I'm running yarn build, my build fails due to UglifyJS error.
Expected behavior
Uglfing should work and build should not crash
Actual behavior
Error during compilation:
static/js/main.1202540e.js from UglifyJs
SyntaxError: Unexpected token punc «(», expected punc «:» [./~/print.js/src/js/browser.js:3,0]

There is problem with print.js lib that I'm using, but mentioned file seems to looks fine. That's why I'm curious what can I do and how can I fix this problem. While I'm running yarn start and testing in development mode everything works perfect without any warnings etc.
I don't know if this is related to CRA enough but if anyone can help me with this it'd amazing.
Environment

npm ls react-scripts (if you haven’t ejected<EMAIL_ADDRESS>node -v: 7.4.0
npm -v: 4.0.5
Operating system: macOS 10.11.6

EDIT: I've also updated react-scripts to 0.9.5 and error still occurs.

The problem is Uglify.js is not aware with es6 syntax. Judging from https://github.com/crabbly/Print.js/blob/master/src/js/browser.js#L13
print.js uses shorthand object method syntax, which non-es6+ aware Uglifyjs cannot comprehend and make the build fails.
This is why we should publish a compiled es5 to npm.
In the meantime, I suggest you to fork Print.js and convert the es6 syntaxes to es5 and use that as your dependency.

It's not consistent within this file so I'll try to send PR to print.js changing this to es5 syntax.
Thank you for fast response! 😃

I'm going to close this because it's not very actionable by us. If you eject, there's ways around this (update webpack config to process it by babel), but I wouldn't eject for something as trivial as this.
Let us know if you run into anything else. Thanks!

Thank you for your help 🙂

Oh no problem, I wish I could've been of more help!
Let us know if you need anything else. 😄

I've created PR to original library adding CommonJS build, so after PR getting merged anyone using CRA with print.js shouldn't have any problems with build.


cleanup: create k8s.io/mount-utils Mounter only once

Recently the k8s.io/mount-utils package added more runtime dectection.
When creating a new Mounter, the detect is run every time. This is
unfortunate, as it logs a message like the following:
mount_linux.go:283] Detected umount with safe 'not mounted' behavior

This message might be useful, so it probably good to keep it.
In Ceph-CSI there are various locations where Mounter instances are
created. Moving that to the DefaultNodeServer type reduces it to a
single place. Some utility functions need to accept the additional
parameter too, so that has been modified as well.
See-also: kubernetes/kubernetes#109676
Updates: #3246

Show available bot commands
These commands are normally not required, but in case of issues, leave any of
the following bot commands in an otherwise empty comment in this PR:

/retest ci/centos/<job-name>: retest the <job-name> after unrelated
failure (please report the failure too!)
/retest all: run this in case the CentOS CI failed to start/report any test
progress or results

@mergifyio rebase

@mergifyio rebase


RSS feature incomplete

Documentation does not give this subject adequate attention
Documentation should describe background so TXQs can reliably route to a target RXQ
Config processing does not support RSS options
RSS is not configured in the RXQs - it defaults

Working on this now.

Early indications are:

rte_eth_dev_rss_hash_conf_get does not work for AWS ENA. There is some noise about on this the amazon driver page
You cannot set or change the hash function. And code like this doesn't work at all
AWS ENA seems to hardware RSS to toeplitz
The good news is by merely setting the RXQ mask to 1 (RTE_ETH_MQ_RX_RSS_FLAG) you get RSS. As long the TX side varies the packets enough, the AWS NIC seems to see how many RXQs are configured to runs and spreads out delivery across the queues.

Therefore in this code set all I needed to do was set TEST_SERVER_DPDK_NIC_DEVICE_RX_MQ_MASK to 1 in scripts/reinvent_dpdk_udp_integration_test  to make the server side of the UDP demo work with RSS.


Changes for Java 8

Java 8 build

Any ideas to limit meta space size using -XX:MaxMetaspaceSize ?
would that be helpful to find memory leaks in our products?


Re-enable and fix acceptance test

All log and generated data is now properly archived with the job:
http://manhattan.ci.chef.co/job/chef-test/6/architecture=x86_64,platform=acceptance,project=chef,role=tester/artifact/chef-acceptance-data/
These changes were tested in the following ad hoc build:
http://manhattan.ci.chef.co/job/chefdk-test/183/architecture=x86_64,platform=acceptance,project=chefdk,role=tester/console
/cc @chef/engineering-services @adamedx @btm @mwrock @PrajaktaPurohit @ksubrama

👍

:+1:

HOLD OFF ON MERGE for a bit. While these changes are great. and we will merge. I want to make sure some other failures are cleared up (unrelated to this) before merging. Hope to be later today or tomorrow.


[UI] Name of tab "Гуртки" doesn't meets design

Environment: macOS Big Sur 11.5.1; Chrome version 97.0.4692.71
Reproducible: always
Preconditions
Follow the link https://oos.dmytrominochkin.cloud/#/
Log into the system as Service Provider 'Емейл’ =<EMAIL_ADDRESS>'Пароль’ = Cdby?rf95
Select «Мої гуртки» in the menu bar at the top right corner.
Steps to reproduce

Examine the tabs bar for the presence of the "Гуртки" tab in the SP Cabinet

Actual result
There is "Мої гуртки" tab

Expected result
There should be "Гуртки" tab

User story and test case links
User story: https://github.com/ita-social-projects/OoS-Backend/issues/174
Test case: https://jira.softserve.academy/browse/OS-240
Labels to be added
"Bug", Priority: low, Severity: trivial, Type UI.

bug has been fixed

bug has been verified


EOF routine assumes negative missing_value

Reported by Remik Ziemlinski on 1 Mar 2007 20:02 UTC
We have IPCCAR4 netcdf data from NASA/GISS that uses missing_value equal to
1.e+20f, which causes "eof_space" to fail in tallying values because the source
code below assumes the missing value would be negative by virtue of the GT
comparison operator.  This is a low priority, and we have a workaround to
replace the dataset's missing_value with -9999f, so this is just an FYI.
fer/efi/eofsubs.F:324
if (data(i,j).GT.bad_flag_dat) then ...
Script to reproduce the error (see attached data files):
! This will fail.
use orig.nc
set mem/size=400
SET REGION/X=-65:-1/y=-25:4
LET eof_xyfcn = eof_space(clim_tos,0.5)
SET VIEW ul
fill/l=1/TITLE="eof 1" eof_xyfcn
! This will work.
use works.nc
set mem/size=400
SET REGION/X=-65:-1/y=-25:4
LET eof_xyfcn = eof_space(clim_tos,0.5)
SET VIEW ul
fill/l=1/TITLE="eof 1" eof_xyfcn
Migrated-From: http://dunkel.pmel.noaa.gov/trac/ferret/ticket/1494

Comment by ansley.b.manke on 25 Sep 2013 23:32 UTC
This behavior is not present in the current EOFSVD funcions.

Attachment from<EMAIL_ADDRESS>on 1 Mar 2007 20:03 UTC
orig.nc
REPLACE THIS TEXT WITH UPLOADED FILE ./attachments/TRAC_1494_GIT_768/orig.nc

Attachment from<EMAIL_ADDRESS>on 1 Mar 2007 20:04 UTC
works.nc
REPLACE THIS TEXT WITH UPLOADED FILE ./attachments/TRAC_1494_GIT_768/works.nc


fixed README.md according to new rules, new stuff

Can one of the admins verify this patch?

Looks good to me, merging.


[SUPPORT] DMS partition treated as part of pk

/home/ec2-user/spark_home/bin/spark-submit --conf "spark.hadoop.fs.s3a.proxy.host=redact" --conf "spark.hadoop.fs.s3a.proxy.port=redact" --conf "spark.driver.extraClassPath=/home/ec2-user/json-20090211.jar" --conf "spark.executor.extraClassPath=/home/ec2-user/json-20090211.jar" --class org.apache.hudi.utilities.deltastreamer.HoodieDeltaStreamer --jars "/home/ec2-user/spark-avro_2.11-2.4.6.jar" --master spark://redact:7077 --deploy-mode client /home/ec2-user/hudi-utilities-bundle_2.11-0.5.3-1.jar --table-type COPY_ON_WRITE --source-ordering-field TimeCreated --source-class org.apache.hudi.utilities.sources.ParquetDFSSource --enable-hive-sync --hoodie-conf hoodie.datasource.hive_sync.database=redact --hoodie-conf hoodie.datasource.hive_sync.table=dmstest_multpk3 --hoodie-conf hoodie.datasource.hive_sync.partition_fields="sys_user" --hoodie-conf hoodie.datasource.hive_sync.partition_extractor_class=org.apache.hudi.hive.MultiPartKeysValueExtractor --hoodie-conf  hoodie.datasource.hive_sync.use_jdbc=false --target-base-path s3a://redact/my2/multpk3 --target-table dmstest_multpk3 --transformer-class org.apache.hudi.utilities.transform.AWSDmsTransformer --payload-class org.apache.hudi.payload.AWSDmsAvroPayload --hoodie-conf hoodie.datasource.write.keygenerator.class=org.apache.hudi.keygen.ComplexKeyGenerator --hoodie-conf hoodie.datasource.write.recordkey.field=version_no,group_company --hoodie-conf hoodie.datasource.write.partitionpath.field=sys_user --hoodie-conf hoodie.deltastreamer.source.dfs.root=s3a://redact/dbo/redact > multpk3.log
i do have https://github.com/apache/hudi/pull/1898 patched in this jar
Instead of getting 1 row per version_no,group_company combo, I am getting multiple rows per version_no,group_company combo, in fact i am getting 1 row per version_no,group_company,sys_user combo
How to make it not treat partition field as part of pk?
ie for each version_no,group_company combo, i want to get the latest row by TimeCreated (ie the source-ordering-field) and then partition on whatever sys_user that latest row has.

--hoodie-conf hoodie.index.type=GLOBAL_BLOOM --hoodie-conf hoodie.bloom.index.update.partition.path=true   adding those 2 flags seems to get the right row count in the target but can you confirm it will take the latest row by source-ordering-field ?

For your first question, since you are partitioning by sys_user you will likely get multiple rows (1 per sys_user). This is because the record keys are unique within a partition path and need not be unique across partition paths.
@nsivabalan could you help with the second part, where Global bloom is used ?

@nsivabalan : Please take a look when you get a chance.

@tooptoop4 : can you clarify what you mean by this.
ie for each version_no,group_company combo, i want to get the latest row by TimeCreated (ie the source-ordering-field) and then partition on whatever sys_user that latest row has.

But in general, yes, if you use global index with the update partition path set, you should not see any duplicates in your entire hoodie dataset.
I can try to illustrate with an eg. Lets say each row consists only 4 vals, v_no(version no), cmp (group_company), time_cr, sys_user.
Incase of regular index, combination of record keys and partition path forms unique keys.
If you are using regular index and ingest
v_1, c_1, t_1, u_1
v_2, c_1, t_1, u_1
v_1, c_1, t_1, u_2
v_1, c_1, t_1, u_3
This will result in 2 rows going to partition u_1, 1 row to partition u_2, and one row to u_3.
In 2nd batch of updates, lets say you ingest few more rows.
v_1, c_1, t_2, u_1
v_3, c_1, t_2, u_1
v_1, c_2, t_2, u_2
v_1, c_3, t_2, u_3
Here is the result
u_1:
v_1, c_1, t_2, u_1 (updated with latest value)
v_2, c_1, t_1, u_1
v_3, c_1, t_2, u_1 (insert from 2nd batch)
u_2:
v_1, c_2, t_2, u_2 (updated with latest value)
u_3:
v_1, c_1, t_1, u_3
v_1, c_3, t_2, u_3(insert from 2nd batch)
Incase of global index, only record keys are unique.
Lets see an example with global bloom, but with the update partition path config not set.
If 1st batch of ingest contains
v_1, c_1, t_1, u_1
v_1, c_2, t_1, u_1
v_2, c_1, t_1, u_2
v_3, c_1, t_1, u_3
result will be.
v_1, c_1, t_1, u_1
v_1, c_2, t_1, u_1
v_2, c_1, t_1, u_2
v_3, c_1, t_1, u_3
And 2nd batch of ingest contains
v_1, c_1, t_2, u_1 (updating with latest time)
v_1, c_2, t_2, u_2 (moving v1,c2 from u_1 to u_2). expectation is that, this will update U_1 only, since the config is not set. and hence new partition path i.e. u_2 will be ignored.
v_2, c_2, t_2, u_2 (new insert)
v_1, c_3, t_2, u_3 (new insert)
So, the result will be
v_1, c_1, t_2, u_1 (updated with latest time)
v_1, c_2, t_2, u_1 (updated with latest time even though incoming record was sent to u_2)
v_2, c_1, t_1, u_2
v_2, c_2, t_2, u_2 (new insert)
v_3, c_1, t_1, u_3
v_1, c_3, t_2, u_3 (new insert)
We can go the same with the config value set.
result from first batch:
v_1, c_1, t_1, u_1
v_1, c_2, t_1, u_1
v_2, c_1, t_1, u_2
v_3, c_1, t_1, u_3
And 2nd batch of ingest contains
v_1, c_1, t_2, u_1 (updating with latest time)
v_1, c_2, t_2, u_2 (moving v1,c2 from u_1 to u_2). expectation is that, this will insert a new record to u_2 and will delete corres record from u_1, since the config is set.
v_2, c_2, t_2, u_2 (new insert)
v_1, c_3, t_2, u_3 (new insert)
So, the result will be
v_1, c_1, t_2, u_1 (updated with latest time)
v_1, c_2, t_2, u_2 (updated with latest time and old record is deleted)
v_2, c_1, t_1, u_2
v_2, c_2, t_2, u_2 (new insert)
v_3, c_1, t_1, u_3
v_1, c_3, t_2, u_3 (new insert)

perfect, that is how I expect. perhaps the default should be global index? or documentation should be updated?
From coming from RDBMS background the PK is unique at table level not at partition level but reading below configs it is not clear that hudi default is different and I'm sure will trip up many newcomers to hudi:
"RECORDKEY_FIELD_OPT_KEY (Required): Primary key field(s). Nested fields can be specified using the dot notation eg: a.b.c. When using multiple columns as primary key use comma separated notation, eg: "col1,col2,col3,etc". Single or multiple columns as primary key specified by KEYGENERATOR_CLASS_OPT_KEY property.
Default value: "uuid"
PARTITIONPATH_FIELD_OPT_KEY (Required): Columns to be used for partitioning the table. To prevent partitioning, provide empty string as value eg: "". Specify partitioning/no partitioning using KEYGENERATOR_CLASS_OPT_KEY. If synchronizing to hive, also specify using HIVE_PARTITION_EXTRACTOR_CLASS_OPT_KEY.
Default value: "partitionpath""

@tooptoop4 : hudi is more of synonymous to hive/presto where partitioning is by default enabled. But we will see how to fix the phrasing. btw, can you point me to the page where you saw this?

@nsivabalan https://hudi.apache.org/docs/writing_data.html

Added Jira for doc update : https://issues.apache.org/jira/browse/HUDI-1279


Deploy Firewall Tutorial

Hello, I was following the steps in this tutorial but when I reached the last part of RDP into the virtual machine, it says my credentials did not work. I tried resetting password into the azure portal but it shows
Failed to reset password
Deploy failed with deploymentStatusCode (Failure)
May I know how can I troubleshoot further and solve this? Thank you in advance

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

ID: ac13cbf3-f230-7e85-d57d-cba3196a166c
Version Independent ID: f4f0c94a-5a43-94e2-d8e5-19cf167c188a
Content: Deploy & configure Azure Firewall using the Azure portal
Content Source: articles/firewall/tutorial-firewall-deploy-portal.md
Service: firewall
GitHub Login: @vhorne
Microsoft Alias: victorh

@Andy989824 , thank you for your query, We'll review this and get back to you shortly!

@Andy989824 , I understand that you are unable to reset your Azure VM's password and getting "Failed to reset password, Deploy failed with deploymentStatusCode (Failure)" error.
This error could occur for a number of reasons as below:

If the password requirement is not met when trying to reset it.
Refer : https://learn.microsoft.com/en-us/azure/virtual-machines/windows/faq#what-are-the-password-requirements-when-creating-a-vm-

If the VMAccess extension provisioning has failed.
If the VM Agent isn't running or is failing to report a Ready status to the Azure platform, then the extensions won't work correctly.
Refer : https://learn.microsoft.com/en-us/azure/virtual-machines/extensions/troubleshoot

If you VM is a domain controller, then you won't be able to reset the password using the generic steps via Portal.
If you lose the connection to the Windows domain controller, you will need to restore it from a domain controller backup.
Refer : https://learn.microsoft.com/en-us/troubleshoot/azure/virtual-machines/reset-rdp

Some additional troubleshooting steps:
https://learn.microsoft.com/en-us/troubleshoot/azure/virtual-machines/troubleshoot-rdp-connection
https://learn.microsoft.com/en-us/troubleshoot/azure/virtual-machines/redeploy-to-new-node-windows
If you still face issues with the VM password reset or RDP, I would recommend you to create a thread on the forums - Microsoft Q&A or Stack Overflow, as this issue is more VM specific which needs troubleshooting and not directly related to this doc feedback.
Once you post your issue on forums, it will have visibility across the community which is a better suited audience for such types of issues.
We are closing this issue for now. If there are further questions regarding this matter, please reply and we will gladly continue the discussion.

Hi @GitaraniSharma-MSFT , thanks for the reply.


RuntimeError: .../casadi/core/plugin_interface.hpp:417: Plugin 'newton' is not found.

I am a beginner Python battery worker. I encountered this problem today and  can't think of a way to solve it.

Does this work?
x = MX.sym('x',2); # Two states

# Expression for ODE right-hand side
z = 1-x[1]**2
rhs = vertcat(z*x[0]-x[1],x[0])

ode = {}         # ODE declaration
ode['x']   = x   # states
ode['ode'] = rhs # right-hand side

# Construct a Function that integrates over 4s
F = integrator('F','cvodes',ode,{'tf':4})

# Start from x=[0;1]
res = F(x0=[0,1])

print(res["xf"])

# Sensitivity wrt initial state
res = F(x0=x)
S = Function('S',[x],[jacobian(res["xf"],x)])
print(S([0,1]))

Thank you very much for your answer. I just found out the problem,just now. The casadi installed by pip is vulnerable. I downloaded it from the official website to solve the problem.
Thank you !!!!!

Thank you very much for your answer. I just found out the problem,just now. The casadi installed by pip is vulnerable. I downloaded it from the official website to solve the problem.
Thank you !!!!!

I met the same problem, but I found the installation method of casadi on the official website and also used pip. May I ask how did you install casadi on the official website


Large perf degradation for large scale unique key aggregation for streaming processing

Describe the situation

timeplus :) SELECT
                          ip_prefix, count() AS count
                        FROM
                          (
                            SELECT
                              ipv4_cidr_to_range(ip, 28).1 AS ip_prefix, bit_shift_right(ip, 24) AS shuffle_key
                            FROM
                              ip_rand
                          )
                        SHUFFLE BY
                          shuffle_key
                        GROUP BY
                          ip_prefix

.. 128416174 rows in set. Elapsed: 8.595 sec. Processed 67.57 million rows, 270.27 MB (7.86 million rows/s., 31.45 MB/s.)

vs
SELECT
  ip_prefix, count() AS count
FROM
  (
    SELECT
      ipv4_cidr_to_range(ip, 28).1 AS ip_prefix, bit_shift_right(ip, 24) AS shuffle_key
    FROM
      table(ip_rand)
  )
SHUFFLE BY
  shuffle_key
GROUP BY
  ip_prefix
SETTINGS
  max_events =<PHONE_NUMBER>0.

Query id: 9cf821f6-5942-45f2-8142-c214b2acb9c9

← Progress: 5.43 billion rows, 21.72 GB (62.32 million rows/s., 249.29 MB/s.)

How to reproduce

Which Proton server version to use
Which interface to use, if matters
Non-default settings, if any
CREATE TABLE statements for all tables involved
Queries to run that lead to slow performance

Expected performance

Additional context

This is a problem and needs more optimization


Update Composer dependencies (2021-03-20-00-11)

Visual regression test passed!
View the visual regression test report


Can't donate

Apparently something to do with where I live. Is there another way?

Sorry, only PayPal. If this does not work then what I suggest is that whatever you were going to donate to me you donate to a local charity instead.

I'll do that. Thanks for your work.


csi: look for subvolumepath instead of subvolumename

In case of ROX pvc, the subvolume name is different and is not listed in the backend as it is just a shallow volume and it links to the source path.
incase the source volume is delete the subvolme will be shown stale, but actually that is being used by the ROX pvc.
Soinstead getting the subvolumename to look for stale subvolumes, it is better to retrive the name from the subvolumepath.

Please investigate the CI, it is failing with:
waiting for the pvc clone to be in bound state

I'll rerun to see if it was intermittent though. LGTM after the CI passes.

@travisn  The CI seems to have passed, can you please check again?


add topics

I suggest adding the topics finite-elements, finite-element-method, fem in the About section.

Thanks for the suggestion.  It took me a long time to understand what you meant, but I finally figured it out :)


Query topicName does not work when using msTeams Protocol

Type of issue
Feature doesn't work (bug)
Feedback
If using msTeams: as the protocol handler in a deeplink that generates a chat, the query "topicName" is not recognized. It works as expected when using https: instead. In the docs i can't find a limitation for it. so it should be able to use topicName also when using  msTeams Deeplinks
Page URL
https://learn.microsoft.com/en-us/microsoftteams/platform/concepts/build-and-test/deep-link-teams#deep-link-to-start-a-new-chat
Content source URL
https://github.com/MicrosoftDocs/msteams-docs/blob/main/msteams-platform/concepts/build-and-test/deep-link-teams.md
Author
@v-npaladugu
Document Id
b6687ceb-6d67-b0b7-0797-b16d14e4bd97

@J-a-k-o-b ,
Thank you for your inquiry about your Teams app development issue!
We are checking the issue. We will get back to you shortly.

Hello @J-a-k-o-b ,
We have tested the scenario with msteams: and it is working fine on our end.
Could you kindly confirm if you are attempting the same? If possible, would you mind sharing the deeplink and a short video so that we can try it on our side as well?
Microsoft Teams version 24341.1300.3292.5164.
Deeplink-msteams:/l/chat/0/0?users=joe<EMAIL_ADDRESS>Reference Document-https://learn.microsoft.com/en-us/microsoftteams/platform/concepts/build-and-test/deep-links#protocol-handlers-in-deep-links

Hi @sayali-MSFT, it seems that I've had an encoding issue with the & . Sorry about the circumstances. It works as expected.

Hello @J-a-k-o-b ,
Good to hear that your issue is resolved now.
Additionally, we would appreciate it if you could share your valuable feedback via the Microsoft Teams Developer Community Response Feedback link?

We are closing this issue for now, please feel free to reopen it, if required.


Mitogen website out of date (release notes, documentation, etc)

Looks like Mitogen release notes and official documentation hasn't been updated for ages: https://mitogen.networkgenomics.com/changelog.html still displays "v0.3.0 (unreleased)", even though 0.3.3 has been released months ago.

this is really anoying to not knowing what has been changed

Sitrep and brain dump

https://mitogen.networkgenomics.com is hosted in a Netlify account, built from an out of date branch
Access to that account can't be delegated to members of mitogen-hq organisation
With some code fixes (https://github.com/mitogen-hq/mitogen/commit/6aa4fd3573cf4a081017c19c4cc726fbc27d8853, https://github.com/mitogen-hq/mitogen/commit/63457b4866b5017b9ec4cd664d73aecad0bac5e7) I was able to generate https://spiffy-croissant-696d93.netlify.app/ in my own Netlify account. This is a PoC, throwaway URL.
David is willing/able to repoint the DNS once that effort is ready
I also tried using GitHub Pages instead (https://github.com/mitogen-hq/mitogen/commit/a744f4d4cfaf04fa60eed49b1014746b46806f31) currently visilble at https://moreati.github.io/mitogen/. This is a PoC, throwaway URL.

A new Netlify account is the more likely outcome. I don't think I can make GHP work without the /mitogen path component.

Fixes from PR #1026 have been merged into docs-master branch. Both https://spiffy-croissant-696d93.netlify.app/ (my Netlify account) and https://mitogen.networkgenomics.com/ (@dw's account) have rebuilt with it. The Mitogen website now reflects latest released (and unreleased) code.

https://mitogen.networkgenomics.com/ansible_detailed.html now points directly to release 0.3.4, and https://mitogen.networkgenomics.com/changelog.html shows recent changes.


Does MetadataService really need the external Activate filter chain? And there is no filter option to disable it.

[x] I have searched the issues of this repository and believe that this is not a duplicate.
[x] I have checked the FAQ of this repository and believe that this is not a duplicate.

Environment

Dubbo version: the 3.0 branch of source code
Operating System version: Mac M1
Java version: 1.8

Optional Solution
1. It's just fine
Do nothing.
2. Disable external @Activate filter for org.apache.dubbo.metadata.MetadataService
In the solution, we consider MetadataService as Internal serivcie, so we forbid user intercepting it.
We can archive it in ProtocolFilterWrapper#export and  ProtocolFilterWrapper#export methods like isRegistry did.
// => org.apache.dubbo.rpc.cluster.filter.ProtocolFilterWrapper

@Override
public <T> Exporter<T> export(Invoker<T> invoker) throws RpcException {
    if (UrlUtils.isRegistry(invoker.getUrl())) {
        return protocol.export(invoker);
    }
    return protocol.export(builder.buildInvokerChain(invoker, SERVICE_FILTER_KEY, CommonConstants.PROVIDER));
}

@Override
public <T> Invoker<T> refer(Class<T> type, URL url) throws RpcException {
    if (UrlUtils.isRegistry(url)) {
        return protocol.refer(type, url);
    }
    return builder.buildInvokerChain(protocol.refer(type, url), REFERENCE_FILTER_KEY, CommonConstants.CONSUMER);
}

3. Add filter option for MetadataService as provider and consumer do.
If  MetadataService really needs the external Activate filter chain, but I'm doubtful about it.

I think solution 2 is better and could even be considered entirely as an Internal service

I will submit a PR after Dubbo 3.0.3 release.

I will submit a PR after Dubbo 3.0.3 release.

We're doing something similar in the tri protocol. Add some internal services, such as health checks, reflections, etc., and now it's the practice to use proxy to generate invoker, put it in the service repository, and put it in the pathresolve

Yep,  we need something like a whitelist or annotation to identify which services are internal services.

Yep, we need something like a whitelist or annotation to identify which services are internal services.
But I'm not sure whether the multi-instances feature will break some conventions, so just wait for the 3.0.3 release.

I think we can consider implementing an internal service creation process instead of creating from serviceconfig. This is because I do not have this class at the rpc layer.

implementing an internal service creation process instead of creating from serviceconfig

What's the benefit against the cost? The original purpose was only to guarantee the safety of internal service, and moreover ProtocolFilterWrapper have already implemented some feature which is similar to whitelist.
// => org.apache.dubbo.rpc.cluster.filter.ProtocolFilterWrapper

@Override
public <T> Exporter<T> export(Invoker<T> invoker) throws RpcException {
   // => Here, DON'T wrap with filter chain
    if (UrlUtils.isRegistry(invoker.getUrl())) {
        return protocol.export(invoker);
    }
    return protocol.export(builder.buildInvokerChain(invoker, SERVICE_FILTER_KEY, CommonConstants.PROVIDER));
}

@Override
public <T> Invoker<T> refer(Class<T> type, URL url) throws RpcException {
    if (UrlUtils.isRegistry(url)) {
        return protocol.refer(type, url);
    }
    return builder.buildInvokerChain(protocol.refer(type, url), REFERENCE_FILTER_KEY, CommonConstants.CONSUMER);
}

This is another problem. In fact, I put forward this idea because of the consideration of the internal services of the current protocol, there are no things in the serviceconfig of the RPC layer, and the implementation is not elegant. Metaservice is currently initialized in the bootstrap. In fact, these problems will not be encountered, but all internal services cannot be initialized in the bootstrap, right?

implementing an internal service creation process instead of creating from serviceconfig

What's the benefit against the cost? The original purpose was only to guarantee the safety of internal service, and moreover ProtocolFilterWrapper have already implemented some feature which is similar to whitelist.
// => org.apache.dubbo.rpc.cluster.filter.ProtocolFilterWrapper

@Override
public <T> Exporter<T> export(Invoker<T> invoker) throws RpcException {
   // => Here, DON'T wrap with filter chain
    if (UrlUtils.isRegistry(invoker.getUrl())) {
        return protocol.export(invoker);
    }
    return protocol.export(builder.buildInvokerChain(invoker, SERVICE_FILTER_KEY, CommonConstants.PROVIDER));
}

@Override
public <T> Invoker<T> refer(Class<T> type, URL url) throws RpcException {
    if (UrlUtils.isRegistry(url)) {
        return protocol.refer(type, url);
    }
    return builder.buildInvokerChain(protocol.refer(type, url), REFERENCE_FILTER_KEY, CommonConstants.CONSUMER);
}

You're right about this. I agree to do so

@EarthChen

In fact, these problems will not be encountered

It's common that users add @Activate to their self-defined filter, such as sentinel.

all internal services cannot be initialized in the bootstrap

As far as I know, internal services like Metaservice are just normal services that can be described by ServiceConfig.
If you are sticking to separate it from ServiceConfig, maybe  @AlbumenJ @chickenlj  can answer your question and make a decision.

Related to #8666


Support for Map Style

When we were rolling our own implementation of a wrapped MapView in Compose we were able to set the map style options when the map was first created so that we could have a dark map style in dark mode (normal mode just had a string of [].
E.g.
val mapStyleOptions = MapStyleOptions(stringResource(id = R.string.map_style))
AndroidView({ mapView }, modifier = modifier) {
    scope.launch {
        val map = mapView.awaitMap()
        map.setMapStyle(mapStyleOptions) // Set style for dark mode

I can't see how we can do this with the new GoogleMap Composable function. Are there any plans to support this?

@barry-irvine Please take a moment to fill out this short survey. Thank you!
This is an automated message, feel free to ignore.

up

Okay. I think I've worked it out now:
val mapStyleOptions = MapStyleOptions(stringResource(R.string.map_style))
val mapProperties by remember {
    mutableStateOf(
        MapProperties(
            mapStyleOptions = mapStyleOptions
        )
    )
}

@barry-irvine this was very helpful!
In case you want to use the raw folder for custom styles, this code will work:
val context = LocalContext.current

// Put your custom_google_maps_style.json in the Raw folder
val properties by remember {
    val mapStyleOptions: MapStyleOptions = MapStyleOptions.loadRawResourceStyle(
        context,
        R.raw.custom_google_maps_style
    )
    mutableStateOf(
        MapProperties(
            mapStyleOptions = mapStyleOptions
        )
    )
}

GoogleMap(
    modifier = modifier.fillMaxSize(),
    properties = properties
)


Use Case: Deploy new process

On the client side: create a deploy command and publish to route
on the server side: receive command and use fluent deployment api to publish process

done with ProxyBuilder(context).endpoint("direct:deploy").build()
fixed with 49feef8f68672d5d89c8881997f0971e15ef6e14


Upgrade to DotNet 6

https://dotnet.microsoft.com/platform/upgrade-assistant

done - need to remove null warnings


Scroll bar should not overlap content

A Scroll Bar Should not Overlap A Component's Content
Describe the bug
When a ScrollViewer scroll bar is displayed, it overlaps the component's content.
This is unexpected behaviour, potentially leading to information being hidden.
Steps to reproduce the bug
I added a GridView component to an UWP Page, similar to this:
<Page>
  <GridView ItemsSource="{x:Bind CdList}">
  ...
  </GridView>
</Page>

When I change the window size, the GridView's vertical scrollbar partially hides/overlaps the rightmost items in the GridView before GridView wraps the items appropriately:

Expected behavior
The ScrollViewer's ItemPresenter should be a sibling of the ScrollViewer's scroll bars, so, as soon as any of the scroll bars is displayed, the ItemPresenter size should shrink appropriately to spread across only the area left/above the scroll bars.
Scroll bars are supposed to appear outside the presenter area, not within.
Version Info

Windows 10 version
Saw the problem?

October 2020 Update (xxxxx)
Yes

May 2020 Update (19041)

November 2019 Update (18363)

May 2019 Update (18362)

October 2018 Update (17763)

April 2018 Update (17134)

Fall Creators Update (16299)

Creators Update (15063)

Device form factor
Saw the problem?

Desktop
Yes

Xbox

Surface Hub

IoT

When a ScrollViewer scroll bar is displayed, it overlaps the component's content.
This is unexpected behaviour, potentially leading to information being hidden.

In classic desktop scenarios, yes, it's expected for the scroll bar to be to the right of the content and never overlap. If you are coming over from WPF this is strange behavior for sure.
However, remember UWP was designed to support mobile devices first. Mobile devices are very limited in horizontal size. This is why the mobile convention soon became for scroll bars to appear on top of content and automatically switch between a 'traditional' and minimized 'panning' view. Actually, Apple I believe was the first to design scroll bars that behaved this way on the iPhone and everyone just followed that idea. Scroll bars are now expected to automatically hide themselves when not scrolling and only show a small semi-transparent indicator.
So I disagree that it is unexpected -- it is expected and necessary from a mobile standpoint. It is also the latest design convention. It may be best to simply set the Padding of the GridView (to 18px I believe) and push the content inward for your case.

I see. Alright, given this may be a heritage stemmed from mobile devices with small display dimensions, it still is unnecessary. The explanation you provided gives the reason for this behaviour to be wrong:
If a scoll bar is hidden, then

Centered content, for example, ought to be truely centered, not shifted to the left by 16px. This is particularly true for devices with narrow display estate.

Hiding scroll bars is an Apple peculiarity. Windows Settings provide an option not to hide scroll bars ("Settings > Accessibility > Automatically hide scroll bars in Windows"). Hiding scroll bars is an incarnation of information hiding. It's a usability flaw that may only be tolerated in leisure applications. Otherwise it'd be hiding that there is additional information available, which would be a reason for filing a lawsuit if, for instance, this would occur on a page containing Terms of Use.

It's not really hiding information with the default settings. The traditional scroll bar is only visible when the pointer moves over it directly. Otherwise, it is the collapsed view. Here is how it was intentionally designed to function:

While you can say that is counterintuitive to you, it is not counterintuitive by modern cross-platform standards. Yes, it's true this thinking came originally from mobile-first applications but it has stayed around and users don't find it too confusing. Additionally, from a design standpoint, it simply looks better. You will have a very hard time convincing the Microsoft design team this is an issue.
In your case, yes, you can customize the scrollbar style so it is always visible -- also in Windows Settings as you found. Doing so is outside the normal use-case and will then require you to add padding as I recommended above. You may also re-template to avoid the concerns and get the ScrollViewer to behave exactly as it did in WPF or WinForms.
Overall though this is really not a bug and your app will need to be designed to handle the case when scroll bars are always shown in the traditional view if set in settings. The design team will need to comment one way or the other if you wish to pursue this further.

On the contrary: Professionals working on a desktop machine don't use mouse or touch screen navigation. They are using keyboard navigation. Doing so, the scroll bar never appears:
https://developercommunity.visualstudio.com/idea/993700/dont-hide-scroll-bars.html
So, it's indeed a case of information hiding.

The List View Items should be adding padding onto the right hand side, so no text gets hidden when the overlay scrollbar animates in.  This will distinguish the good UI from Lazy UI design.

If you'd add padding to a List View item, then why should you be hiding scroll bars in the first place? That doesn't make sense.

Hidden scrollbars look better from a design standpoint and are the latest convention.

Maybe. But still, that doesn't mean it's a meaningful convention per se.
A hidden scroll bar hides valuable information: the information that there's more content to come. That's a fact that cannot be denied.
Just to give an example from modern life: you won't find any desktop application on Windows outside of UWP that's using hidden scroll bars. That would be too risky. No-one would risk receiving claims from companies missing information due to lack of visual cues about valuable content.

I understand your point and it's a fair point especially when scrollbars are completely hidden when the pointer is no longer over the scroll area. Microsoft also partially agrees with you considering the system setting exists to always show them.
It was still considered acceptable for the reasons mentioned above though and most people have adapted to the change.

@RBrid and @anawishnoff FYI

@anawishnoff can you take a look at this, or, if you aren't the right person, pass it along to whoever is?

Just like to bring this thread back to attention.

Do not close


Feature charts: Add longhorn 1.2.5 chart in 2.6

Longhorn has a coming release 1.2.5 which will be released by end of June so we need to add this new release in the feature charts along with the coming Rancher 2.6.x.
If the release date can't catch the upcoming Rancher release, we will request OOB release then.

Add 1.2.5 LH chart in feature chart 2.6 - Cluster Manager/Catalog

cc @khushboo-rancher @yasker @MKlimuszka @SheilaghM @deniseschannon @kaxing @meldafrawi @yasker

The chart PR is ready for review. https://github.com/rancher/charts/pull/2037/
@rebeccazzzz Please help drive the OOB release w/ @prachidamle . Thanks.

The chart PR has been merged. @innobead

Thanks @prachidamle !

Validated the chart 1.2.5 with Rancher v2.6.8 - LGTM


When a type load fails, Windsors throws a NullReferenceException as opposed to a TypeLoadException

I just hit this problem recently:
When calling  DiContainer.Resolve(), I received a NullReferenceException, and took quite some time to figure out why.
It turned out that my installer failed to copy one of my .dlls.
In a similar case the .Net Framework throws a more specific TypeLoadException, which would have been helpful in this case too.
Castle.Core version: 4.4.1
Castle.Windsor version: 5.0.1
.Net Framework 4.5.2

@balintn22 can you please provide a sample project with the error for replication?


Move sentence and explain constructor rules better in Classes.md

The text did not make sense with the sentence about calling super() between a sentence that leads into an example (with a colon) and the example.
This issue was introduced in this commit: https://github.com/Microsoft/TypeScript-Handbook/pull/81/commits/d0fa4643d39af583045da6752c4dab34812efcc3

:+1: I like the changes. We don't care much about commits, so just leave them as-is.

@sandersn  I've brought the pull request back to just moving the sentence based on discussion for a now outdated diff with @mhegazy. Perhaps we can move forward with integrating this less-controversial change which is clearly needed and then discuss other incremental enhancements to the constructor explanation in another issue?

Sure, sorry about the wild goose chase. Thanks for your patience on this one.

@sandersn Thanks for merging the commit. I learned more about TypeScript and ES6 in the process of working on this, so the chase was good exercise. :-)
Also, sometimes when things are challenging to document, that means part of a design could be improved. So, perhaps TypeScript itself will improve further from the issue opened on relaxing constructor rules, which in turn would make it easier for us to improve the constructor documentation.


The PDA address cannot be transferred, what should I do?

PDA address cannot transfer out lamports,  what should I do?  This contract program setting is really uncomfortable.
If it can be like EVM' solidity features, it will be very convenient and developers will also like it very much.
`
// ...
@mutableAccount(pdaAccount)
@mutableSigner(sender)
function mint(string memory text) external returns(bool) {
    // ...
    // Here is working
    SystemInstruction.transfer(tx.accounts.sender.key, tx.accounts.pdaAccount.key, _mint_fee);

    bool failure = true;
    if (failure)  {
        SystemInstruction.transfer(tx.accounts.pdaAccount.key, tx.accounts.sender.key, _mint_fee / 2);
    }

    return true;
}

@mutableSigner(sender)
function for_back() external returns(bool) {
    address pda_account = get_pda_account();
    return true;
}

// ...

`

What error do you have when you execute your contract?

What error do you have when you execute your contract?

Execution failed and instruction missing

Can you provide us with a minimal reproducible example of your error containing a Solidity contract, Typescript code and the command to execute?
From the Solidity code you provided I cannot see any problem, so there might be an issue in how you are creating the PDA.
When I asked the error message, I wanted to know exactly what your terminal says. instruction missing is not an error Solana can produce, and I guess you wanted to say account missing.

Can you provide us with a minimal reproducible example of your error containing a Solidity contract, Typescript code and the command to execute?
From the Solidity code you provided I cannot see any problem, so there might be an issue in how you are creating the PDA.
When I asked the error message, I wanted to know exactly what your terminal says. instruction missing is not an error Solana can produce, and I guess you wanted to say account missing.

`
import {try_find_program_address} from 'solana';
import "./lib/system_instruction.sol";
@program_id("F1ipperKF9EfD821ZbbYjS319LXYiBmjhzkkf5a26rC")
contract sol_nft {
uint64 private _mint_fee = 1 *<PHONE_NUMBER>;
uint64 private lucky_awards = 5 *<PHONE_NUMBER>;

mapping(uint => address) private _tokenOwners;

@space(1024 * 8)
@payer(payer)
constructor() {
    print("Hello, World!");
}

function get_pda_account() public view returns(address) {
    (address addr,) = try_find_program_address(["sol_nft"], address(this));
    return addr;
}

@mutableAccount(pdaAccount)
@mutableSigner(sender)
function mint(string memory text) external returns(bool) {
    address sender = tx.accounts.sender.key;
    uint256 tokenId = uint256(keccak256(abi.encodePacked(text)));
    require(_tokenOwners[tokenId] == address(0), "Inscription key duplicated");

    print("signer.sender={}".format(sender));
    _tokenOwners[tokenId] = sender;

    // Current signer send to PDA account mint fee
    SystemInstruction.transfer(tx.accounts.sender.key, tx.accounts.pdaAccount.key, _mint_fee);

    uint randomNumber = uint256(keccak256(abi.encodePacked(address(this), block.number, block.timestamp, sender, tokenId))) % 100;

    if (randomNumber > 50) {
        // lucky awards
        // from PDA acount send to current signer account
        SystemInstruction.transfer(tx.accounts.pdaAccount.key, tx.accounts.sender.key, lucky_awards);
    }

    return true;
}

}
`
`
import * as anchor from "@coral-xyz/anchor";
import { Program } from "@coral-xyz/anchor";
import { SolNft } from "../target/types/sol_nft";
import * as borsh from "borsh";
describe("sol_nft", () => {
// Configure the client to use the local cluster.
const provider = anchor.AnchorProvider.env();
anchor.setProvider(provider);
const dataAccount = anchor.web3.Keypair.generate()
const wallet = provider.wallet;

const program = anchor.workspace.SolNft as Program<SolNft>;

it("Is initialized!", async () => {

    let tx, programIx

    console.log( "wallet.address=", wallet.publicKey.toBase58() )
    console.log( "dataAccount.address=", dataAccount.publicKey.toBase58() )
    console.log( "wallet.before=", await provider.connection.getBalance(wallet.publicKey, { commitment: "confirmed" }) )

    tx = await program.methods
      .new()
      .accounts({ dataAccount: dataAccount.publicKey })
      .signers([dataAccount])
      .rpc({ commitment: "confirmed" })
    console.log("tx1=", tx)

    console.log("wallet.after=", await provider.connection.getBalance(wallet.publicKey, { commitment: "confirmed" }) )

    let pdaAccount = await program.methods
      .getPdaAccount()
      .accounts({ dataAccount: dataAccount.publicKey })
      .view()
    console.log("pda_account=", pdaAccount.toBase58())

    // Cannot send out lamports from the PDA to mutable signer account, Execute failure
    tx = await program.methods
      .mint("hello")
      .accounts({ dataAccount: dataAccount.publicKey, pdaAccount })
      .rpc({ commitment: "confirmed" })

    console.log("tx2=", tx)

});

});
`

You've declared your solidity function like this:
@mutableAccount(pdaAccount)
@mutableSigner(sender)
function mint(string memory text) external returns(bool)

When you call it from Typescript, you must pass the accounts in the call:
tx = await program.methods
      .mint("hello")
      .accounts({ dataAccount: dataAccount.publicKey,
                          pdaAccount: pdaAccount,
                          sender: YOUR_SENDER_HERE})
      .signer([SENDER_KEYPAIR])
      .rpc({ commitment: "confirmed" })

When you transfer tokens out of a PDA, you must sign the transaction with the PDA seeds. You'll need to modify SystemInstruction.transfer, so that the external call receives your seeds here:
    if (randomNumber > 50) {
        // lucky awards
        // from PDA acount send to current signer account
        SystemInstruction.transfer(tx.accounts.pdaAccount.key, tx.accounts.sender.key, lucky_awards);
    }

There is no way we could make this look like Ethereum, because Ethereum does not have PDAs or seeds. We are open for suggestions if you can think of a better way to handle PDAs more closely to Ethereum.

try_find_program_address(["sol_nft"], address(this))

The code cannot continue to execute at this line and seems to have reached a deadlock. This is the function that creates the PDA address try_find_program_address(["sol_nft"], address(this));
What do I need to do to be able to transfer money and carry seeds? Is there any sample code that I don't know how to write?
Samples: Is it correct?
SystemInstruction.transfer{seed: bytes("sol_nft")}(tx.accounts.pdaAccount.key, tx.accounts.sender.key, lucky_awards);

try_find_program_address(["sol_nft"], address(this))

There is no deadlock in your program. try_find_program_address calls create_program_address iteratively until it can find an off-curve address: https://edge.docs.solana.com/developing/programming-model/calling-between-programs#program-derived-addresses. That function is slow for the blockchain and often used directly in Typescript.

The code cannot continue to execute at this line and seems to have reached a deadlock. This is the function that creates the PDA address try_find_program_address(["sol_nft"], address(this));
What do I need to do to be able to transfer money and carry seeds? Is there any sample code that I don't know how to write?
Samples: Is it correct? SystemInstruction.transfer{seed: bytes("sol_nft")}(tx.accounts.pdaAccount.key, tx.accounts.sender.key, lucky_awards);

No, it is not. Here is an example: https://github.com/valory-xyz/autonolas-registries/blob/2ce07e89e070230675727cf9c91d223d5f8e8ada/integrations/solana/contracts/SystemInstruction.sol#L57-L66

That’s it! thank you so much! I've been looking for it, thank you sooooooooooo much! ! !


Fleet IDE Support

Add the Fleet IDE to the Daytona IDE list.
If the SSH connection can be set via the Fleet CLI, we could solve this similarly to VS Code.
More info can be found here:
https://www.jetbrains.com/help/fleet/install-on-a-remote-machine.html

/bounty $100

/attempt #1001

/attempt #1001

@akhill10 are you still on this?

Yeahh ! Testing few things out. Will mark it ready for review after I am done with testing

Yeahh ! Testing few things out. Will mark it ready for review after I am done with testing

Alright.


Implemented LibSCEP GetCRL

work in progress, the following known problems exist:

when looking up the issued certificate the issuer name is not considered
(only serial number). this is due to a bug in LibSCEP.
Crypt::LibSCEP::create_crl_reply_wop7 does not handle errors properly,
leading to freeing of unallocated memory and a resulting segfault

Coverage increased (+3.6%) to 48.742% when pulling a5585d12d008c18e21cd393595bbb41049c0b26d on mbartosch:feature/libscep-getcrl into 1a483a39d1af6158844f90f76497bd1d218b0b56 on openxpki:release/v2.


Intake

Intake ideas

bare minimum extension half a tile
max extension should only be one tile max

3 main grabbing ideas

claw
side rollers (bennefit of centering)
top down roller

Random idea

make it offset for cycling from bucket due to how field is structured, less movement would be needed

https://drive.google.com/file/d/16pY2o-AI32QQMUqpbcSkL976ApIZk1p5/view?usp=drive_link
https://drive.google.com/file/d/15CgS3h90axSpMLBP9xsHopG8bGpqgMJW/view?usp=drive_link
https://drive.google.com/file/d/1xfal_sp3z6guyiXjoOe6IDXQhvIbpKD1/view?usp=drive_link
Ethan F. + Gian - Top-down roller intake testing w/ funnel for centering

https://drive.google.com/file/d/16pY2o-AI32QQMUqpbcSkL976ApIZk1p5/view?usp=drive_link
Ethan S. + Cameron + Erick - Side roller intake, two sets for centering

https://drive.google.com/file/d/16NDgVqlQM1P7j6Wb3oTZvZbjZaoVHEFq/view?usp=sharing
Side Roller (Car Wash) Intake:

Two sets of rollers, one for initial intake, and then one to reorient it.
Main inconsistencies were a result of the nature of the prototype (cardboard... eg. in the video, we noticed better results after taping the cardboard). Keep in mind that there is still some inconsistency due to the rollers not being locked in place.
In future iterations, it is likely that we would decrease the size of the first set of rollers.
This design may not be the most optimal because having multiple sets of rollers increases points of failure and more parts are needed for implementation.
When observing this intake's most optimal runs, it is extremely fast.

(Ethan S. + Cameron + Erick + Mariya [with some discussion with Gian later])

Link to summarized intake ideas: https://docs.google.com/document/d/1AwJEi2_UoQM0G6PpzjqCMNelnguDJZk6yCiNc0I_mA0/edit?usp=sharing

Passive Claw Intake:
https://drive.google.com/file/d/1ZJFUr8hI4QSVKqmm2m3pkx-jAn8XPDdV/view?usp=sharing
This is the first prototype of the passive claw idea, CAD by @GianBangayan.
What Works:

The initial grabbing of the sample works well.

What Needs Improvement:

When placing the sample on the bar, the claw needs more force on the sample to ensure that it takes more force from the bar pushing on the sample to release it. This flaw is demonstrated in the video.
The living hinges on the claw may wear down over time. This can even be seen through the "wiggle test" in the video, and was noticed even more later on.

There is already another iteration in progress.

For the side roller solution, one of the key benefits is that upon intake the sample is aligned.   My question is, is alignment a key requirement?? If so, why?

My perspective is that although the orientation of the samples is still important later on (when placing the samples into the bucket because we want to maximize space), it's not needed during intake. I think it's actually better to do this somewhere in the transfer. For example, in both mine and @GianBangayan's ideas (refer to #6), the orientation is fixed in the transfer. If we do this then we won't need the second set of rollers on the intake, which means fewer parts that can malfunction/break, less complexity, and less weight. Also, I feel like since the intake has to extend out, it's going to be more vulnerable compared to the rest of the robot. That just makes it more fragile, so we definitely want simplicity regarding the intake.

@GianBangayan intake sketch

@Ethan-Selvarajah thoughts on how to align the sample post-intake/pre-intake?


Tunneling socket issue, status code 502

Environment

Extension version: 0.14.0
VSCode Version: 1.43.0
OS: Windows 10 Pro

Steps to Reproduce

Corporate network with proxy and a Github Enterprise repository, repo authentication uses SSH key
Installed extension
No PR is visible

Output
[Info] GitHubServer> No response from host https://github.[   ].com/[   ]/[   ]-repo: tunneling socket could not be established, statusCode=502
[Info] No remote with name 'origin' found. Please update your 'githubPullRequests.remotes' setting.
[Info] No remote with name 'upstream' found. Please update your 'githubPullRequests.remotes' setting.

Git remote
λ git remote -v
origin<EMAIL_ADDRESS> ].com:[   ]/[   ]-repo.git (fetch)
origin<EMAIL_ADDRESS> ].com:[   ]/[   ]-repo.git (push)

Environment variables
http_proxy and https_proxy is set to the same proxy.
VSCode config

Http: Proxy: set manually to the proxy
Http: Proxy Strict SSL: disabled
Http: Proxt support for extensions: on

duplicate of https://github.com/microsoft/vscode-pull-request-github/issues/701


RDF import via /store endpoint fails when data contains a camel case prefix

Describe the bug
Bad request returned 400 when using /store endpoint with valid RDF data.
To Reproduce
Steps to reproduce the behavior:

Oxigraph version -the most recent one: 0.3.14
Here's the cURL to reproduce the bug. The result is 400 with message: "unexpected character 'U' on line 3 at position 5"
curl --request POST \ --url http://localhost:7878/store \ --header 'Content-Type: text/turtle' \ --header 'graph: http://time.example/data' \ --data '@prefix xsd: <http://www.w3.org/2001/XMLSchema#> . @prefix baseUrl: <http://example.data/event/>. baseUrl:89d6654f-f6fa-4253-8a1c-04cbefc1c0a7 baseUrl:id "89d6654f-f6fa-4253-8a1c-04cbefc1c0a7"; baseUrl:startDate "2022-08-25"^^xsd:date; baseUrl:endDate "2022-08-28"^^xsd:date. '

4.Here's cURL with a lowercase prefix with the same data which works OK
curl --request POST \   --url http://localhost:7878/store \   --header 'Content-Type: text/turtle' \   --header 'graph: http://time.example/data' \   --data '@prefix xsd: <http://www.w3.org/2001/XMLSchema#> . @prefix base: <http://example.data/event/>. base:89d6654f-f6fa-4253-8a1c-04cbefc1c0a7 base:id "89d6654f-f6fa-4253-8a1c-04cbefc1c0a7"; base:startDate "2022-08-25"^^xsd:date; base:endDate "2022-08-28"^^xsd:date. '

Hi! Thank you for trying Oxigraph and sorry for that. There is indeed a parser bug. It parses wrongly baseUrl as the keyword base + the unrecognized string Url. I just wrote a fix for that: oxigraph/rio#128
--header graph: X won't work with Oxigraph. You need to add this parameter to the URL query: http://localhost:7878/store?graph=X.

I have released v0.3.15 that should fix this bug?

Hi! Thank you for fixing it so quickly! Me and my teammates are using Oxigraph for some proof-of-concepts and so far we really like the experience and performance.
Thanks,
Piotr


wasm :shrug:

One or more of the commits in this PR do not match the code submission policy, please check the lint_commits CI job for more details.


Use safe_path crate instead of our original secure_join

Our secure_join had a bug and did not work perfectly with K8s. It did not take into account the case where the symbolic destination is an absolute path.
https://github.com/cyphar/filepath-securejoin/blob/64536a8a66ae59588c981e2199f1dcf410508e07/join.go#L97-L99
Thus there are many cases where secure_join should be considered; it would be more worthwhile to use safe_path, which kata-container makes, and mature this one.
Fix: https://github.com/containers/youki/issues/1890
https://docs.rs/safe-path/latest/safe_path/

Codecov Report

Merging #1911 (95ab49a) into main (dcc13ff) will decrease coverage by 0.23%.
The diff coverage is 100.00%.

:exclamation: Current head 95ab49a differs from pull request most recent head 04b4892. Consider uploading reports for the commit 04b4892 to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1911      +/-   ##
==========================================
- Coverage   67.19%   66.97%   -0.23%
==========================================
  Files         126      126
  Lines       14288    14164     -124
==========================================
- Hits         9601     9486     -115
+ Misses       4687     4678       -9