Can't assign type though it is on both branches of conditional type

Bug Report
🔎 Search Terms
both sides conditional type assignable
🕗 Version & Regression Information

This changed for the better between versions 4.2.3 and 4.3.5 and back between 4.4.4 and 4.5.5
Nightly version at time of testing: v5.0.0-dev20221111

⏯ Playground Link
Playground link with relevant code
💻 Code

const demo = function<B extends boolean>(
	myBool: B,
	definedValue?: string
) {
	//Error ts(2322): Type 'undefined' is not assignable to type
	//'B extends false ? undefined : string | undefined'.
	let keyValue : (B extends false ? undefined : (string | undefined)) = undefined;
	if(myBool) {
		keyValue = definedValue;
	}
}

const tinyDemo = function<B extends boolean>(myBool: B) {
	//Error ts(2322): Type 'number' is not assignable to type 'B extends true ? number : number'.
	let myVar : (B extends true ? number : number) = 5;
}

🙁 Actual behavior
Errors as noted, plus one on the conditional assignment in the first example.
🙂 Expected behavior
If a variable has a conditional type but type T is on both sides of the conditional, I should be able to assign type T to that variable regardless of which branch of the conditional applies.
Cross-links
https://github.com/microsoft/TypeScript/pull/30639 is an older PR which claims to fix an issue that sounds a lot like this, and that was merged 3/11/21 - it looks like that was for 4.3 which changed things for the better.  Restoring that fix might be a step in the right direction. (There is still an error in the conditional assignment, where the conditional type should be narrowable to allow that assignment, but that might be separable as a different issue.)
https://github.com/microsoft/TypeScript/pull/46429 is another PR merged over a year ago, just ahead of version 4.5. The issue reappeared somewhere in the 4.5 range, so it's possible that this PR was the cause of the regression.  The issue still exists in the latest version.
In some cases, where the types on each side of the conditional are complex constructed types, it might be harder to figure out if T is in fact assignable to both sides of the conditional. However, these examples use primitives, so that's clearly not the source of the issue.

Reading through the linked issues it appears that the behavior added in #30639 was deliberately reverted in #46429 due to problems with performance/excessive type instantiations.

Actually it looks like this is fully intentional and documented:
https://devblogs.microsoft.com/typescript/announcing-typescript-4-5/#restrictions-on-assignability-to-conditional-types

TypeScript no longer allows types to be assignable to conditional types that use infer, or that are distributive. Doing so previously often ended up causing major performance issues. For more information, see the specific change on GitHub.

B extends false ? undefined : (string | undefined) is distributive because it operates on a naked type parameter B.

The top of #46429 states:

With this PR, a source type S is assignable to a target type A extends B ? C : D when

The conditional type is not distributive, or is distributive but A is never referenced in C or D, and
B has no infer positions, and
S is assignable to C (except if A never assignable to B for any instantiation), and
S is assignable to D (except if A is always assignable to B for any instantiation).

All four of those conditions appear to be met in the examples. A is never referenced in C or D since C and D are primitive, B (from that PR) has no infer keyword (being the primitive false), and S is assignable to both C and D.  Thus, it seems like the intention was to have this working even after that PR.

(and for whatever it's worth, I am definitely not in favor of the TS practice of rolling out breaking changes on semver-feature version number bumps.)

(and for whatever it's worth, I am definitely not in favor of the TS practice of rolling out breaking changes on semver-feature version number bumps.)

TS doesn’t follow semver.

TS doesn’t follow semver.
It clearly does not, but it just looks like it does, leading people to be confused.
Documenting the breaking change with a pointer to more information led by a description suggesting the use case at hand should still work leads to more confusion!

Otherwise, it seems to me that the intent was to have this working even after that PR, and if the execution doesn't match then that's a bug which should be fixed.

but it just looks like it does, leading people to be confused.

Where does it look like that?

It's still not clear what this is a duplicate of.

Which Issue is this one tagged as a duplicate of? Tagging it as a duplicate of an already-closed-as-fixed issue, where the fix was undone by a subsequent PR that stated an intention to have something like this still work, would be a pretty disappointing outcome of ensuring it's never fixed.

What are we supposed to do with issues that don't seem to be fixable? Leaving them open forever means that the open issue count grows without bound, commingling impossible work with approachable work and confusing the status of what is available to be done. The process is here to manage our workload and track things that need doing, not to be an ever-growing list of sources of incompleteness in the type system, of which there will always be an infinite number of.

The issue was fixed before and I think it can be fixed again, and the regression does not appear to be intentional based on the description in the PR which leads one to believe this case should still work after that PR.  I'd categorize this as a fixable regression bug introduced by the second PR and put it on the backlog for a change that can lead to it working again.


[SC-4] open application ports

Allow SC users to open ports by selecting an application that will run
on the instance. The idea is to set ingress rules based on default ports
required by certain applications.  Deviating from the default application
ports would be a more custom setup which may require using the scicomp
provisioner

@zaro0508 This is an interesting idea, but we need to discuss how this fits with our other plans for offering other products.


Improve decoupling among the functionalities in Classes.

[x] Separate functionalities in the VueClass.

Extracted console warning to a standalone method.


Consider animating pose-switching on held objects

When a held object switches its grab-point, the object instantly snaps to the new grab-point. Instead the object may wish to interpolate (both position and angle) to the new grab-point. The ranged-grab and grab-point-switch could use a similar transform-interpolation approach.

this would come in handy for a lot of reasons besides the obvious to complement the latest addition of the pose switch added by malcolm
one would be to give a better visual feedback for when grabbing things
and b to possibly path the way for something more interesting in the future by already exposing this right now
on a side note:
am just worried if we use this on a global scale that it would impact performance, so please correct me if am wrong here
but i think it should be restricted so either by using a tickbox or by using it on special items

A solution here would be to change our blend tree to blend between 4 poses: The old open and close poses and the new open and close poses.
We can keep the blend value between old open and close fixed to the value it was at when the grab points switched, and introduce an extra blend value that blends between old and new.
So our logic when the open/close poses changes becomes:

copy open/close to old open/close poses
copy current blend value to old blend value
set new open/close poses
Lerp blend old to new from 0.0 to 1.0


spec: wrong statement about numeric operators

The spec says:
Arithmetic operators apply to numeric values and yield a result of the same type as the first operand.
This seems to be in contrast with other rules that hold and don't depend on the operands' order, namely:
if the operands of a binary operation are different kinds of untyped constants, the operation and, for non-boolean operations, the result use the kind that appears later in this list: integer, rune, floating-point, complex. For example, an untyped integer constant divided by an untyped complex constant yields an untyped complex constant.
and
Except for shift operations, if one operand is an untyped constant and the other operand is not, the constant is converted to the type of the other operand.
For a concrete example, see http://play.golang.org/p/CrwpUYEQvo

Note that this talks about "untyped" constants - they have no actual Go type (for instance, a 100 digit integer constant is an integer constant but there's no actual Go type of which it would be a member). That is, there's no rule here conflicting with typed operands because untyped constants are not typed.
There are TODOs to clarify/simplify the explanations around untyped constants and how they are involved with expressions, but as is it's not wrong.

Still, if we are talking about typed values, it's required that both variables are of the same type (you get a compile time error otherwise). Nowhere else in the spec I could find something indicating that the first operand determines the type more than the second operand. If not technically wrong, the statement in question is still misleading.
(or am I missing something?)

I think you missed the shift operations.

Yeah, the shift operators have their own rule, but saying arithmetic operators yield a result of the same type as the first operand (without talking specifically about shift) doesn't seem to make sense at all.

Or come up with an example where the the first operand is more important than the second in determining the type of the result, I can't see that (could be a limitation of mine :)

@robzan8: @minux is correct - the wording was chosen such that shift operators fit in neatly. Note that (untyped constants aside), operands of arithmetic operators must be of the same type - with the notable exception of shifts. The wording is fine.
There's always different ways to phrase this, and we are not claiming this is the best way. But as is it's correct.
Here's your example:
var x int
var s uint
...
result := x << s
...

The type of result is the type of x, not the type of s. That is, the type of the left operand is the one that's relevant.
Please drop further discussion of this here. If you have a better suggestion that doesn't conflict elsewhere in the spec, please send a change. Thanks.

Oh I see that. The type of the operands must always be the same, except for shift, in which case it's determined by the first, so let's say it's always determined by the first. You can see why it can be misinterpreted, right? I'd say:
Arithmetic operators apply to numeric values of the same type.
Then add a few words for the shift operator. Anyway your call. And sorry if I posted back here, I'm not familiar with the procedure for sending changes :)

http://tip.golang.org/ref/spec#Operators:
"For other binary operators, the operand types must be identical unless the operation involves shifts or untyped constants."
This applies to all operators, including arithmetic operators. The spec does not repeat everything all over the place just as a reminder.


Reloading an EnvFilter in tokio-trace-fmt

I'm trying to use the filter reloading introduced in #45, but get stuck with cannot infer type for N, for example with:
let subscriber = FmtSubscriber::builder().with_filter_reloading().full().finish();
let reload_handle = subscriber.reload_handle();
reload_handle.reload(EnvFilter::from_default_env())

which gives:
|                     match reload_handle.reload(EnvFilter::from_default_env()) {
|                                         ^^^^^^ cannot infer type for `N`

(But N cannot be specified because of impl Into)
Am I missing something?

Does
reload_handle.reload::<default::NewRecorder>(...);

work?
I think it may be worth looking at changing the type signature for EnvFilter to make this a little less confusing. The filter interface (like most of the other crates in the tokio-trace-nursery repo) is still in a prototype state. I can look into improving this API.

A quick update: I've opened #64, which should fix this. I've included your sample code as a test in that branch, and it now compiles. Thanks for reporting this!

I successfully tested #64, thanks for the fix! (and thanks a lot for tokio-trace!)

@amousset my pleasure, glad it was easy to fix. Thanks again for the bug report. #64 is now on master!


zig build faid with zig 0.13.0

encounter following error while building arocc:
/home/chien/arocc/build/GenerateDef.zig:53:45: error: root struct of file 'Build.Step' has no member named 'MakeOptions'
fn make(step: *Step, options: std.Build.Step.MakeOptions) !void {
                              ~~~~~~~~~~~~~~^~~~~~~~~~~~
/usr/lib/zig/std/Build/Step.zig:1:1: note: struct declared here
id: Id,
^~
referenced by:
    create: /home/chien/arocc/build/GenerateDef.zig:36:23
    build: /home/chien/arocc/build.zig:155:24
    remaining reference traces hidden; use '-freference-trace' to see all reference traces

I am running Fedora 40 on wsl2 x86_64

Aro tracks Zig master; 0.13.0 will not work. You can grab a nightly master build from the official download page, or with zigup master, or similar.

thanks


[feature request] optional purgecss integration as part of CSS compression

As the title state, it'd be nice to handle all optimisations from within this tool

There is astro-purgecss https://github.com/codiume/orbit/tree/main/packages/astro-purgecss but I haven't used so I can't recommend.

I use that already but I like the idea of it all being packaged up in one compress plugin :)

Will make it happen.


Feature request: Implement ros_control velocity_based velocity_controller

I believe this is supported by the ros_control hardware_interface of the kinetic-devel refactor.
Some recent discussion about this can be found in #218.


Error while displaying the smiley emoji

Description
Replacing the emoji code by emoji.

@Aniruddhmuley2001 yes working fine in this PR.

Thank You!


added cors

Added cors
Configured currently to accept from all origins. should be updated better later.

LGTM


Create ome-zarr from hdf5 container

We have a test-dataset which contains all raw data (including metadata files) of a CV acquisition packaged into an hdf5 container. We should test if we can use this as input to our ome-zarr converter.

Also try to extract from zip container, and compare performance.


webview zooming with volume keys

I thought this could be handy and could make it easier to navigate in large files, diffs, gists.

Thanks for the feature. :)


feat: support set connection options

Codecov Report
Attention: Patch coverage is 61.05769% with 81 lines in your changes missing coverage. Please review.

Project coverage is 77.30%. Comparing base (1b2f232) to head (7a8b68e).

Files with missing lines
Patch %
Lines

controller/ws/tmq/tmq.go
10.52%
30 Missing and 4 partials :warning:

controller/rest/restful.go
58.97%
13 Missing and 3 partials :warning:

controller/ws/ws/query.go
67.34%
13 Missing and 3 partials :warning:

plugin/opentsdb/plugin.go
50.00%
4 Missing and 2 partials :warning:

tools/ctools/block.go
60.00%
6 Missing :warning:

plugin/influxdb/plugin.go
50.00%
2 Missing and 1 partial :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##              3.0     #366      +/-   ##
==========================================
- Coverage   77.36%   77.30%   -0.07%
==========================================
  Files         143      143
  Lines       17868    18001     +133
==========================================
+ Hits        13823    13915      +92
- Misses       3264     3291      +27
- Partials      781      795      +14

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Alias field name

Why this feature is required (specific use-cases will be appreciated)?
this feature will make it easier to write code by taking an example of the documentation
https://adonisjs.com/docs/4.1/lucid#_setvisiblesethidden
we could alias to a field name
User.query ().setVisible ({ firstname: name }).fetch ()

with that we would have user.name instead of user.firstname
Have you tried any other work arounds?
I found nothing about it in the documentation
Are you willing to work on it with little guidance?
Yes!

you refer to do that?
User.query ().select('firstname AS name').setVisible (['name']).fetch ()
understand!

Will close it for now, since it's not a feature that stops someone from using the package. Maybe I can improve it once I have less workload.


downloads/faq: remove blockchain.raw

current version on getmonero:

71697681675 Feb 23  2023 blockchain.new

benefits of this PR:

reduction in resources for getmoneros server (bandwidth/disk usage)
make people verify their own blockchain / decentralisation / reduced liability for getmonero , or any other buzzwords that may support this
often times users run into problems when beginning with an imported blockchain or it simply prolonged their suffering before seeking help

Possible use case for importing blockchain.
https://monero.stackexchange.com/a/14286/12826

Use case: "run a node without validating whole Monero blockchain? This can be useful for who wants to run a node on slower disks like HDDs."
description of flag --dangerous-unverified-import here

Blindly trust the import file

Nodes who have not validated the blockchain, who download from a central source, are not good for the network, so i don't see this as a use-case we should support. If a large majority of the network where weak HDD machines that have been essentially propped up by importing a non-verified blockchain then during times of huge transaction volume / spam they would crumble.


Protecting Backup and Import screen

Fixes #1514

@ChintanRathod Crash bug:

Create a new wallet.
Click on backup the wallet, and click on the 12 words in the correct order.
Where you get the 'upgrade my key', click back (Flow error: you should return to the settings page, not go to the intermediate page).
Click back again (see flow error above - should only need to click 'back' once), to go to the settings page.
From settings page, click on 'Upgrade key security' - crash.

Once you get to BackupKeyActivity the BackupFlowActivity should terminate, so that there's no intermediate screen.

@JamesSmartCell Ok. Got the flow. I will check and make the appropriate flow fix.


[Enhancement] Mask Request / More Company

Hello, firstly I just wanted to say I love your mod. It's worked nearly perfect for me since the beginning, I just have one small nitpick. I'm sure you've gotten this request before or had it in mind somewhere. When someone is using the dog model, being turned into a Mask does not keep you as a dog, it turns the model back into a regular player. How difficult would it be to apply this mod to Mask spawns? In other words, when the player as a dog gets turned into a Mask, they stay a dog. Or alternatively, in the rare times that a Mask can spawn independently, it can spawn as a dog. Lastly, how difficult would it be to add support for the More Company cosmetics? The masks currently float above the dog model as if they had a normal head. Thank you for reading.

Hi!
Both of these are possible, but I'm busy with other projects now, so tbh I don't think I'll ever do these, sorry!

Hi there! I've made a fix for the MoreCompany cosmetics issue in this PR! While we wait for the original to get updated/published, feel free to try the fix through my fork of this mod here!
I'm definitely interested in taking a stab at the masked enemy fix in the future, too!


Cnx 9501 agis highlighting loaded elements

Save LayerURI instead of speckleId to Receive ModelCard, so selection/highlight method can find the layers in the host app
Add Table of Content (TOC) selection as well, because non-feature layers and Mulltipatch feature layer selections will not be visible on the canvas. Also, there might be multiple layers with the same shapes but different properties, just canvas selection might not be helpful

@KatKatKateryna slowness on the selection fixed now?

it is


'Functional Groups' button isn't highlighted in black color when the user chouse FG to add on canvas

Steps to Reproduce

Launch Ketcher.
Click the 'Functional Groups' button.
Chouse any FG and click the 'OK' button.

Expected behavior
'Functional Groups' button is highlighted in black color when the user chouse FG to add on canvas.
Actual behavior
'Functional Groups' button isn't highlighted in black color
Desktop:
OS: Windows 10
Browser: Chrome Version 93.0.4577.63, Firefox Version 92.0, Microsoft Edge Version 93.0.961.47

Release/2.4 Closed as fixed.


build process has ~ 2 tests that fail

i ran the build , and i noticed a couple of tests failed
bxbot-xml-datastore:test
Tests
com.gazbert.bxbot.datastore.config.engine  3 1 0 0.660s 66%
com.gazbert.bxbot.datastore.config.exchange
Class
com.gazbert.bxbot.datastore.config.engine.TestEngineConfigurationManagement  3 1 0 0.660s 66%
com.gazbert.bxbot.datastore.config.exchange.TestExchangeConfigurationManagement
i am running on windows using latest stable release

Hi Larry thanks for letting me know. I mostly develop on linux/osx, so
could be an OS thing - will take a look on my work Windows machine on
Monday. Guess you can @ignore the tests to get a build in the meantime.
Will keep you posted.
-- sent from my phone --
On 25 Feb 2017 11:42 a.m., "Larry Smith"<EMAIL_ADDRESS>wrote:

i ran the build , and i noticed a couple of tests failed
bxbot-xml-datastore:test
Tests
com.gazbert.bxbot.datastore.config.engine 3 1 0 0.660s 66%
com.gazbert.bxbot.datastore.config.exchange
Class
com.gazbert.bxbot.datastore.config.engine.TestEngineConfigurationManagement
3 1 0 0.660s 66%
com.gazbert.bxbot.datastore.config.exchange.TestExchangeConfigurationManag
ement
i am running on windows using latest stable release
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/gazbert/bxbot/issues/48, or mute the thread
https://github.com/notifications/unsubscribe-auth/AGM1tnMmw92B6uw3TLNMJqFO-Pg88_iFks5rgBOwgaJpZM4ML_SL
.

Added fix to close config loading/saving input/output streams. The bot was getting away with this on Linux/OSX, but running the xml-datastore unit tests on Windows highlighted the issue - thanks to @datasmithtech for spotting this.


Add list of installed Cordova platforms to ionic info (if Cordova plugin is present)

When people use Ionic with Cordova, their problems with Ionic (or whatever they implemented) often boil down to the Cordova version but also the Cordova platform version(s) they are using. Too old cordova-android breaks Gradle or Android Tools, too old cordova-ios breaks... everything.
Right now we can only tell them to run cordova platform list. It would be great if the list of installed Cordova platforms could also (optionally, if the Cordova plugin is present) be output inside ionic info.

Easy enough. Great idea.


chore: use nebula sense to generate sn-table-ext

miss sn-table-ext in the packing
https://unpkg.com/browse/<EMAIL_ADDRESS>add module": "core/esm/index.js" to fix Error: "export 'useId' (imported as 'React') was not found in 'react'" after upgrading" (https://github.com/mui/material-ui/issues/29860)

we need this included in the package right? So we need to include the sense script somewhere where we build?

we need this included in the package right? So we need to include the sense script somewhere where we build?

Yes, correct. I will do that. Thanks

@Caele would be great if you can have a look so we get the bundling correct once and for all :)


ci: tag codecov uploads with CI matrix vars

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (05d153c) 69.90% compared to head (7ce6255) 65.88%.

Additional details and impacted files

@@            Coverage Diff             @@
##             main     #431      +/-   ##
==========================================
- Coverage   69.90%   65.88%   -4.03%
==========================================
  Files          43       43
  Lines        2462     2462
  Branches      525      525
==========================================
- Hits         1721     1622      -99
- Misses        575      668      +93
- Partials      166      172       +6

see 5 files with indirect coverage changes


[Template] Create a GCP architecture template

Current Behavior
Currently for new users we do not have enough starter templates that they can use as introductory material.
Desired Behavior
We want to create a GCP architecture template to allow new users to understand how they can create a GCP architecture diagram with Kanvas. So we'd want contributors to not just create a design template but also add tips or notes they think a new user would need if they are starting out with little to no context of the capabilities Kanvas offers.
Implementation
Make sure you use Kanvas to create this template and keep the template private.

[ ] Provide a brief overview of what this template does and can help with, maybe highlight a usecase
[ ] Add a template that can be directly copied and used instantaneously
[ ] Add a step by step process to create this template
[ ] Once the design is completed, publish it and share the private link with our team, or tag us in the comment component to receive feedback.

Acceptance Tests

Template has been submitted for publishing to the catalog and accepted; is published and available in the Meshery Catalog.
We are in need of well annotated and described templates like this one.

Mockups
This FigJam template can be used for recreating the GCP architecture Template
Perks
By contributing to this task, your efforts will have a lasting impact! Once published, your design will be cloned and used by countless users as a go-to starting point for creating GCP architecture  in Kanvas. You'll not only help newcomers understand the platform but also see your work adopted widely by the community. Plus, as a token of appreciation, you'll receive a special shoutout, recognising your valuable contribution. Your effort won’t go unnoticed—you're directly helping shape the experience for future users!

Contributor Guides and Handbook

🛠 Meshery Build & Release Strategy
📚 Instructions for contributing to documentation

Meshery documentation site and source

🎨 Wireframes and designs for Meshery UI in Figma
🙋🏾🙋🏼 Questions: Discussion Forum and Community Slack

@SAHU-01 Do you mind having a look here? -> https://playground.meshery.io/extension/meshmap?mode=design&design=ceb548ec-a63e-4d50-8844-74ae4d08399c


Add missing givenName, familyName in Android module

Thanks for your PR, can you add this in the README ?

I've updated the README.md :)

Thanks for your PR!


Leaving dock area in ranges in inspector releases mouse

Godot version
14e1f36e614686f3fea0c74fac3624d1027dd5cc
System information
Windows 10
Issue description
When dragging a slider in the inspector, the mouse is released if it falls outside of its dock area:

From what I could test it seems to affect all uses of EditorSpinSlider.
Steps to reproduce

Add this script to a node:

extends Node

@export_range(0, 1) var x : float

Drag the mouse outside of the dock area without releasing the mouse

Minimal reproduction project
Should be easy enough to reproduce without one, I can however provide one if needed

dupe of #64695?

@Zireael07 Similar but I dont think so, that one was very specific to the TileMap editor, this one seems to affect everything that uses a range on the inspector.

Dragging the slider has a different behavior than dragging in the text box above the slider which uses mouse capture to permit infinite dragging in either direction. For usability purposes I think they should both have the same behavior as it took me a while to figure out why sometimes I can drag the value outside of the sliders range while other times being constrained by it (by accidentally clicking on the slider instead of the text box).

Duplicate of #63544, allegedly fixed in #63598.

Closing as duplicate of https://github.com/godotengine/godot/issues/63544


client sync fails around 30k blocks

Describe the bug
On a fresh sync (from block height 0), a CompactBlockRange request may fail without a meaningful error.
To Reproduce
Steps to reproduce the behavior:

pcli view reset
RUST_LOG=h2=info,debug pcli view sync

You may have to run this process several times. It didn't fail for me every time, but it did the first time.
Expected behavior
Client syncs fully to current height, and subsquent sync action syncs only single-digit blocks, those created since the initial sync request.
Screenshots
❯ /opt/penumbra/v0.58.0/pcli view sync
Scanning blocks from last sync height 0 to latest height 57172
[2m] ██████████████████████████████████████████████████   57172/57172   218/s ETA: 0s

❯ /opt/penumbra/v0.58.0/pcli view sync
Scanning blocks from last sync height 28268 to latest height 57197
[1m] ██████████████████████████████████████████████████   28929/28929   479/s ETA: 0s

In the first action, the sync actually stopped at 28268, with the progress bar jumping to 100% when it stopped. on the second action, it correctly resumed from the 28268 checkpoint, and finished on the next sync.
Additional context
We suspect the problem is related to changes in #2867. It may be related to timeouts in the pd worker queue, or it may be related to load-balancing changes in the reverse proxy setup in front of the grpc ports.

It may be related to timeouts in the pd worker queue, or it may be related to load-balancing changes in the reverse proxy setup in front of the grpc ports

To isolate the source of the timeout, I temporarily removed the LB setup fronting the RPC services, reverting to previous behavior of using only fn-0's RPC services to back the HTTPS endpoint. The sync operation still failed just shy of 30k blocks. I'm therefore confident it's the new pd timeout logic that's causing the problem.
I am however a bit puzzled as to why a 0-30k block sync fails, but a subsequent sync post-failure from 30k to 100k completes fine. See details below for example failures.

multiple pcli sync attempts

attempt 1, with default testnet config
❯ pcli view sync
2023-08-14T15:13:10.408386Z  INFO pcli::opt: using local view service path=/home/conor/.local/share/pcli/pcli-view.sqlite
2023-08-14T15:13:11.307379Z  INFO penumbra_view::worker: starting client sync
Scanning blocks from last sync height 0 to latest height 101587
Error: Sync processed exited before expected number of blocks were received; made it to 28382/101587. Try syncing again.

❯ pcli view sync
2023-08-14T15:15:59.616879Z  INFO pcli::opt: using local view service path=/home/conor/.local/share/pcli/pcli-view.sqlite
2023-08-14T15:15:59.896555Z  INFO penumbra_view::worker: starting client sync
Scanning blocks from last sync height 28442 to latest height 101616
[1m] ██████████████████████████████████████████████████   73174/73174   1011/s ETA: 0s

attempt 2, with default testnet config
❯ pcli view sync
2023-08-14T15:18:39.816225Z  INFO pcli::opt: using local view service path=/home/conor/.local/share/pcli/pcli-view.sqlite
2023-08-14T15:18:40.303643Z  INFO penumbra_view::worker: starting client sync
Scanning blocks from last sync height 0 to latest height 101644
Error: Sync processed exited before expected number of blocks were received; made it to 28337/101644. Try syncing again.

attempt 3, with modified config, setting only 1 node to back rpc endpoint
❯ pcli view sync
2023-08-14T15:44:14.745766Z  INFO pcli::opt: using local view service path=/home/conor/.local/share/pcli/pcli-view.sqlite
2023-08-14T15:44:16.514053Z  INFO penumbra_view::worker: starting client sync
Scanning blocks from last sync height 0 to latest height 101911
[1m] ███████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░   23101/101911  217/s ETA: 6m
Error: Sync processed exited before expected number of blocks were received; made it to 28024/101911. Try syncing again.
❯ pcli view sync
2023-08-14T15:46:35.914326Z  INFO pcli::opt: using local view service path=/home/conor/.local/share/pcli/pcli-view.sqlite
2023-08-14T15:46:36.205857Z  INFO penumbra_view::worker: starting client sync
Scanning blocks from last sync height 28036 to latest height 101936
[1m] ██████████████████████████████████████████████████   73900/73900   1003/s ETA: 0s

attempt 4, with modified config, setting only 1 node to back rpc endpoint
❯ pcli view sync
2023-08-14T15:49:31.901128Z  INFO pcli::opt: using local view service path=/home/conor/.local/share/pcli/pcli-view.sqlite
2023-08-14T15:49:32.362112Z  INFO penumbra_view::worker: starting client sync
Scanning blocks from last sync height 0 to latest height 101966
Error: Sync processed exited before expected number of blocks were received; made it to 28337/101966. Try syncing again.
❯ pcli view sync
2023-08-14T15:52:12.733425Z  INFO pcli::opt: using local view service path=/home/conor/.local/share/pcli/pcli-view.sqlite
2023-08-14T15:52:13.014474Z  INFO penumbra_view::worker: starting client sync
Scanning blocks from last sync height 28342 to latest height 101994
[1m] ██████████████████████████████████████████████████   73652/73652   953/s ETA: 0s

I temporarily removed the LB setup fronting the RPC services

Temporary changes reverted, blessed testnet config back in place:

The green-only period shows the duration of the temporary change.

Nice, I think the lowest hanging fruit route is to remove the request-response timeout, add DEBUG-level log these on the server, make sure that clients get a help tonic::Status message from the server so that they can implement retry-logic. I wasn't able to replicate this on a full node syncing against testnet with a client running on a simulated degraded connection (bandwidth, packet loss, and latency), but i'm confident we will get to the bottom of this eventually.

We released v0.58.1 with just the changes from #2929, and unfortunately the issue persists:
❯ pcli view sync
2023-08-14T20:57:06.923982Z  INFO pcli::opt: using local view service path=/home/conor/.local/share/pcli/pcli-view.sqlite
2023-08-14T20:57:07.405426Z  INFO penumbra_view::worker: starting client sync
Scanning blocks from last sync height 0 to latest height 105166
Error: Sync processed exited before expected number of blocks were received; made it to 28533/105166. Try syncing again.

I also made sure to reproduce the error on a node running outside the cluster, on v0.58.1, that was fully synced with the chain. So we can confidently conclude that any cluster-based LB solutions are not the cause of this failure; running pd with the --grpc-auto-https option is sufficient to reproduce in my testing.

I saw this in the logs:
: "2023-08-14T21:11:19.787450Z DEBUG grpc{remote_addr=<IP_ADDRESS>:44382}:compact_block_range{start_height=0 end_height=0 keep_alive=true}: pd::info::oblivious: client did not poll compact block stream for 1s,

Resolved by  #2932.


add devtool utilities

Changes

Add LICENSE file.
Add bump-my-version with make version and make VERSION=<...> bump utilities to self-update release versions.
Add more metadata to pyproject.toml.
Adjust README.md with updated references and release version indicators.
Add CHANGES.md to record version updates.
Add dev dependencies to pyproject.toml for testing the package (install with pip install ".[dev]").
Remove requirements.txt in favor of all dependencies combined in pyproject.toml.

Shall we merge this?

@dchandan

Shall we merge this?

I'm working on the CI to make sure it runs the test successfully.
Will merge right after it does.

@dchandan @huard
Everything works except python 3.12 that needs https://github.com/xarray-contrib/xncml/pull/57


Housekeeping release

fix typo in codemeta.json

coverage: 87.862% (-0.3%) from 88.195%
when pulling 5677189fad9034ef1b4ff403333292522bb078ad on INM-6:release_1.0.0
into 11bd23ad81e7069f57c052982dd50f72d4de6b58 on NeuralEnsemble:master.


Release dotnet-sdk-extensions-testing 1.0.18-alpha NuGet package

What NuGet package do you want to release?
dotnet-sdk-extensions-testing
What is the new version for the NuGet package?
1.0.18-alpha
Auto-generate release notes?
Yes
Custom release notes?
No response

/retry-nuget-release


Jimp.prototype.write: Option to provide/keep MIME type regardless of file extension

I use Jimp to resize uploaded images and want temporary files to have no extension in order to make maintenance and deletion easier. For that reason, I needed Jimp to be capable of accepting an optional MIME type parameter in the write method.
Use of the augmented method is documented.
Since there were no tests for the write method and I wasn't sure how to handle functional tests including the file system, I didn't write any.
I didn't update the version number.

closing in favor of #403 also this is a breaking change. at the moment we don't plan on making any breaking changes


heroModule disappearing under /top, /new, /day etc. views

heroModule added via hook from a custom package, not visible when view is changed

heroModules seem to work for me. Can you share a link to your codebase?


DRILL-7547: Support credentials store for mongo connections

DRILL-7547: Support credentials store for mongo connections
Description
This uses the hadoop Configuration.getPassword method to retrieve the
username and password for mongo connections.  This allows the user to
supply credentials or credential store configuration in core-site.xml
instead of inlining the credentials in the storage plugin configuration
that is stored in ZooKeeper.
Refer to the CredentialProviderAPI document for more information about
how credential provider plugins work.
Documentation
Defining Credentials in the Drill core-site.xml File
To configure the mongo username and password in Drill's core-site.xml file, navigate to the $DRILL_HOME/conf or $DRILL_SITE directory, and rename the core-site-example.xml file to core-site.xml. Insert your mongo username and password as shown in the following example:
   <configuration>
       <property>
           <name>drill.exec.store.mongo.username</name>
           <value>drill</value>
       </property>
       <property>
           <name>drill.exec.store.mongo.password</name>
           <value>secretpassword</value>
       </property>
   </configuration>

Remove any username and password from your mongo storage plugin configuration if you do this.
Notes

as with the S3 plugin you can configure an external credentials provider.  Refer to those docs for details
if you have added mongo storage plugins setup, replace "mongo" in the property name with the name of the storage plugin you are configuring

Testing
JUnit tests and manual test.

@dobesv Thanks for this!  Once this is approved, can you update the Mongo Storage Plugin info on the gh-pages branch for the main Drill website?

A question and a comment:

What happens if the user has multiple mongo storage plugins?  Are the creds carried over to all of them?  If a user specifies creds in the storage plugin config does it overwrite the config file?

This isn't for this PR, but would it make sense for us to do this for other storage plugins that are not likely to have multiple instances?  Kudu, HBase or Hive for instance?

What happens if the user has multiple mongo storage plugins?  Are the creds carried over to all of them?  If a user specifies creds in the storage plugin config does it overwrite the config file?

The configuration key is based on the plugin name, actually.  mongo is the default name for the storage plugin, but if you had another one named mongo-prod you would set drill.exec.store.mongo-prod.username.
If the connection string already has credentials, this will not replace them.

This isn't for this PR, but would it make sense for us to do this for other storage plugins that are not likely to have multiple instances?  Kudu, HBase or Hive for instance?

I think it is an OK approach for any plugin that has credentials currently stored in ZooKeeper.  Note that the key I use is based on the plugin's name so you can setup multiple.

@arina-ielchiieva Great catch on the core-site.xml location, I totally thought I had put that in the test resources before, such a silly mistake.  Hooray for code reviews!
I think I addressed your other comments as well, and I did a bit of research and added some more detail to the core-site-example file.  The credentials provider system is actually pretty powerful once you get into it.

LGTM, +1


Pass GCP project ID into gRPC metadata header

https://github.com/istio/istio/issues/20133
https://github.com/istio/istio/issues/22011

cc @bianpengyuan

@JimmyCYJ: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

gencheck_istio
46d6a8b728742417aaaacba9f636f7abd5f9b176
link
/test gencheck_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@JimmyCYJ: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

gencheck_istio
0b288e919386bc03a057898d41dd80b819a079fc
link
/test gencheck_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@JimmyCYJ: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

gencheck_istio
c7ec193a20f07383630a113c7347efd53910c2bc
link
/test gencheck_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest


My greatest contribution to open source:

:neckbeard:

how did you do that almost unclickable title

@Wqrld I've copied it from #1532 :joy:
It's a  sequence -- left-to-right override character and a soft-hyphen.

Awesome!!! Way to go!

Let's merge this!
Oh wait...

Closing the PR so that it doesn't show up on the list of my PRs anymore :D


PR Dev to UAT 07/05/2019

Coverage decreased (-0.009%) to 34.586% when pulling e008e8cd54512be944193f6ee803a5bc582fc14e on dev into 302b15ebb2728dc5b8b78264f1b9565aa279b264 on uat.


nuget install for UWP

A follow on from'MapClicked does not fire'  I found that creating a simple maptest, the Mapclicked fires in Android and Ios - but I am working with UWP also for desktop and Win10 phone - where mapclicked does not work.
After installing TK.custommap into the solution, a reference to TK.Custommap.dll appears in the UWP project BUT there is no reference to TKCustommap.UWP.dll it in UWP project. Therefore the map defaults to XamFormsMap and therefore doesn't fire mapclicked.
The sample solution creates its own TK.CustomMap.UWP.dll and I have simply put in a reference to that compiled dll - this allows the mapclicked to fire correctly on UWP (proving that its the absence of TK.custommap.UWP causing the problem) but of course one has to change the dll depending on whether compiling for Desktop or ARM. (yes I should be able to import the raw code of the assemblies from the sample into my Project but I get so many errors, one loses the will to live)- I have tried to limit the import to just the TK.Custommap.UWP project - this reduces the errors on dlls not found but produces an apparently unrelated error 'Conflicting values for resource file ....Xamarin.forms.platform.uap.TabbedPagestyle.xbf' makepri     ARgghhhh - i didn;t touch anything to do with a tabbed page!!!!!
Is there any chance the nuget package could install the appropriate TK.custommap.UWP in the first place??
Alternatively any suggestions how and what(classes)   I should import from the sample solution in order to avoid practically every reference showing a warning and saying package not installed or producing seemingly unrelated rubbish?

Sorry, not much time recently. (I say that a lot actually)
UWP is not included in the NuGet yet because it is still in development. There will be a pre-release of 2.0 with UWP support when Xamarin.Forms 2.4 goes stable, at least that is what I planned. Also stated here.

Torben many many thanks - I've been messing around with monotouch and Android since xamarin was Novell and my current gripe is that one spends most of ones time trying sort out obscure errors in VS. - hence the efrustration creeping in.  I came upon your stuff and I find your style and explanation so so straightforward and easy to grasp. The product is superb. Look forward to the UWP edition - I can live with my workaround for now


Questions about quick start

Thanks for this project.  I like it. Thanks for your work.
I did this.
  # Settings.
    dir=/srv/test
    proj=vuecrudx

  mkdir -p $dir
  cd $dir
  git clone https://github.com/ais-one/vue-crud-x.git $proj
  cd $proj
  cd example-spa

  # -------  edit .env  ---------
  cp .env-sample .env
  # -------  edit .env  ---------

  # -------  edit .env  ---------
  cp ../backend/.env-sample ../backend/.env
  # -------  edit .env  ---------

  npm i
  npm run build-rest
  npm run init-db
  npm run start

It seems to work for many things. I can login and create a book, etc.
I get errors in the console. See pics.

Are the errors normal?
Did I do something wrong?
Why does it show the  "find error. network error. failed to fetch" after about 5 minutes?

After seeing the note in the .env-sample file, I changed it to the following..
  cp .env-sample .env.development
  cp ../backend/.env-sample ../backend/.env.development

I edited the env files as follows
Front..
VUE_APP_API_URL=http://<IP_ADDRESS>:3000
# VUE_APP_WS_URL=ws://<IP_ADDRESS>:3001
VUE_APP_WS_URL=

Back..
API_PORT=3000
# WS_PORT=3001
WS_PORT=

I still get the same errors.

Hi,
If you are on local machine
Frontend:
VUE_APP_API_URL=http://<IP_ADDRESS>:3000
VUE_APP_WS_URL=ws://<IP_ADDRESS>:3001
Backend:
API_PORT=3000
WS_PORT=3001
If not replace the <IP_ADDRESS> with your IP. check that the ports are not blocked...

Hi,
I found a bug in the backend regarding websockets. am fixing it and it will be in the next release

Resolved in 0.2.5
https://github.com/ais-one/vue-crud-x/pull/77


"Provided schema does not match table" when running the fs-bq-schema-view script

Extension name: firetore-bigquery-export (the gen-schema-views script)
Extension version<EMAIL_ADDRESS>latest `gen-schema-views script´ (I´ve also tried with 0.4.2)

We're updating our schema, and after deleting the previously generated views (as instructed by #423 and #646) running npx @firebaseextensions/fs-bq-schema-views fails with the following output:
{"code":400,"errors":[{"message":"Provided Schema does not match Table audit-backend:audit.audit_schema_fields_changelog. Cannot add fields (field: old_data)","domain":"global","reason":"invalid"}],"response":{"headers":{"alt-svc":"h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000,h3-Q050=\":443\"; ma=2592000,h3-Q046=\":443\"; ma=2592000,h3-Q043=\":443\"; ma=2592000,quic=\":443\"; ma=2592000; v=\"46,43\"","cache-control":"private","content-encoding":"gzip","content-type":"application/json; charset=UTF-8","date":"Wed, 16 Nov 2022 17:21:45 GMT","etag":"338qmb/WriADWLSvCyjq2w==","server":"ESF","transfer-encoding":"chunked","vary":"Origin, X-Origin, Referer","x-content-type-options":"nosniff","x-frame-options":"SAMEORIGIN","x-xss-protection":"0"}},"message":"Provided Schema does not match Table audit-backend:audit.audit_schema_fields_changelog. Cannot add fields (field: old_data)"}
Provided Schema does not match Table audit-backend:audit.audit_schema_fields_changelog. Cannot add fields (field: old_data)

The script does create the audit_schema_fields_changelog view with most of the fields (it apparently stops while trying to add the old_data field), but it does not create the other one.
I've updated the schema a couple of times in the past following the exact same procedure without any issues. I'm using the exact same command as before:
npx @firebaseextensions/fs-bq-schema-views \
  --non-interactive \
  --project=audit-backend \
  --dataset=audit \
  --table-name-prefix=audit \
  --schema-files=./fields.json

I've also explicitly set the version to the previous one (npx<EMAIL_ADDRESS>with the same result

Same issue, same situation. Done this several times over the past few months and it worked, but I should mention that this time I'm trying to delete a column from the view.

Same here as well. I deleted the created schema and tried with v0.4.2 and v0.4.1 - same error

Thanks! added to the board for consideration, will look into this

Same issue there -
I have tried to upgrade extension via Firebase Console to 0.1.27 (oldData is mentioned for this release as "added feature" - whatever it is - as there are no docs) - upgrade went ok, then I deleted both views in BQ, run again npx scripts...
Unfortunately the same error

Please track the above for any updates.
Although not the best workaround, removing the old_data column before generating any schemas could be a potential short term workaround?

same issue here 🙏 looking forward for fix

Facing same issue.

An update has been added and published for this issue.
Please use to the latest version 0.4.4.
Source: https://www.npmjs.com/package/@firebaseextensions/fs-bq-schema-views)

Im trying to add a new field to the schema, but facing same issue, even with the last version 0.4.4
{"code":400,"errors":[{"message":"Provided Schema does not match Table [..._changelog]. Cannot add fields (field: fbid)","domain":"global","reason":"invalid"}]
}

Im trying to add a new field to the schema, but facing same issue, even with the last version 0.4.4
{"code":400,"errors":[{"message":"Provided Schema does not match Table [..._changelog]. Cannot add fields (field: fbid)","domain":"global","reason":"invalid"}]
}

It worked for me, but I recreated the entire view instead of trying to add columns to an existing one as per the issues I listed on the OP. I also had to exicitly set it to 0.4.4 for it to work, but that was right after the fix was released, maybe that's no longer the case.

I see
I didn't try removing the current views,
Actually, its a lot of work to link the new view with the current reports in the data studio
I hoped we can bypass it somehow

As long as you recreate the views with the same name you won't need to relink anything on data studio: when you reconnect the data source it should recognize the updated schema (at the very least it has always worked that way for me)

Thanks, I did and it works, you right

@gustavorochakv @FakhruddinAbdi
Can you confirm that this is still an issue with the latest version.
Previously, I am assuming that you would not need to recreate the views when introducing a new field? But this is now a consistent issue?

Yes, it is still an issue with updating the schema directly
It doesn't allow to update the schema, instead, you have to remove the view manually, then run the script to recreate it

@gustavorochakv @FakhruddinAbdi
Can you confirm that this is still an issue with the latest version.
Previously, I am assuming that you would not need to recreate the views when introducing a new field? But this is now a consistent issue?

Yes, it is still an issue with updating the schema directly It doesn't allow to update the schema, instead, you have to remove the view manually, then run the script to recreate it

When I created this issue the error was happening even when recreating the views.  This was fixed with 0.4.4. I haven't tried to introduce a new field without recreating the views on 0.4.4.

@dackers86 yeah still an issue with the latest version
Provided Schema does not match Table XXX_changelog. Cannot add fields (field: moderated)"

I am still getting this error with 0.4.7. It would be great if one could update (add/delete columns) existing schemas without manually deleting the tables, or if we could have an option in the CLI to delete the existing tables when recreating the schema views.


crypto_box_keypair

This makes it easy for JS clients to generate public and secret keys for crypto_box_* which can be used with sodium-native or any other implementation.

Looks good thanks! Minor nitpick: can you rename x and y to pk and sk?

Renamed in the last commit.

LGTM


Add resource packaging/validation for static ios libs

Need to include add -Wl,-no_adhoc_codesign to LDFLAGS for apple target compilations in order to ensure all static libs are reproducible.
May need to also include -Wl,-no_uuid as well.


Load and Localize

Hi,
I have some questions about the LoadMapAndLocalize action.
I tried it several times and found it quite hard to correctly pinpoint the location with the prior guess of the pose, so the map would not load (The best result I got was circa 1.5m radius around the correct position).
Am I doing something wrong or do I really have to know my position this close to load a map? I would have expected, that it maybe takes more time if the guess is not too good, or takes more landmarks than the current into account.
I found this parameter, but it seems, this is still in development:

This seems to include, what i would hope for. Are there current plans to implement this?
Kind regards and thanks in advance

We're working on this feature, but we don't have any updates on when it will be delivered. Could you try using a feature in your task environment to align the start of your mapping and then re-align the robot there during the load map stage?

First of all: Thanks for your work :) I really like the packages and combination with VSLAM, Nvblox and nav2.
Unfortunately I don't have such a feature. Our goal is to load a map into a electronic travel aid for visually impaired people, so we cant guarantee a "starting position" as you would have with an AGV for example and as it would be needed to localize with the "load and localize" function, if I understood correctly.
Could the isaac_ros_map_localization package be of use with a stereo camera, instead of a lidar?
And a small heads up: This does not really concern you at nvidia directly as it is more of a Intel topic, but we had problems with the auto exposure not working together with the laser_emitter_on_off function of the realsense splitter on a Realsense D435.
Kind regards

The isaac_ros_map_localization package is currently lidar-only, and it will not work with a stereo camera. We're working on speeding up the LoadMapAndLocalize action to make it feasible for you to run a grid search over multiple candidate initial guesses.
If you're experiencing issues with the RealSense camera, you may be able to find better support for it on the Intel forums. Note that the RealSense splitter we provide is explicitly designed to support simultaneous usage of VSLAM and Nvblox; if you're only using one of the two, you may be able to avoid the problem by removing the splitter from your graph entirely.


Need to setup tests and coverage

There's currently only 2 tests, we should setup more tests and c8 coverage so that we can be more confident in dependabot updates.

replaced by #70


拉取数据失败时弹出提示

What problem does this feature solve?
N/A
What does the proposed API look like?
N/A

There will be a loading indicator at the south-east corner of the page in order to show the current state of ajax. It will also indicate the error if there's any, and provide a way to show the error (e.g. using a dialog).


Automated PR checks

[ ] Python type checking
[ ] Python unit tests
[ ] Scala compile
[ ] Scala unit tests

@rohit507 I'm merging this now because it's pretty useful but do take a look at the workflow code post-merge
@tengisd this fixes a case-sensitivity issue in one of your tests - the tests probably ran fine on Windows because Windows is case-insensitive, but it fails on the GitHub Linux environment.


REDUX-LOGIC (TypeError: Cannot read property 'toString' of undefined.)

Hello,
I’m using redux-logic 0.15.0 and I’m getting the following error:
•	TypeError: Cannot read property 'toString' of undefined.
I debugged the createlogic and createlogicmiddleware JavaScript files and found out that the following createlogicmiddleware function is returning type undefined to the stringifyType function in utils.js.  The field Tranform has a value of undefined if it’s not used.  Below is my redux logic.  Let me know if you need anything else or have come across this issue before.
Createlogicmiddleware:
function naming(logic, idx) {
if (logic.name) {
return logic;
}
return _extends({}, logic, {
name: 'L(' + stringifyType(logic.type) + ')-' + idx
});
}
My Logic:
import { createLogic } from 'redux-logic';
import * as appConfig from '../../appConfig';
import actionTypes from '../actions';
import { actions } from '../actions';
import { IOption } from '../../models/IOption';
import { IEnvironmentDropDownState } from '../../store/state/IEnvironmentDropDownState';
const getEnvironmentOptionsLogic = createLogic({
cancelType: actionTypes.GET_ENVIRONMENT_OPTIONS_CANCEL,
latest: true,
name: 'GetEnvironmentOptions',
processOptions: {
dispatchReturn: true,
failType: actions.getEnvironmentOptionsFail,
successType: actions.getEnvironmentOptionsSuccess,
},
type: actionTypes.GET_ENVIRONMENT_OPTIONS_INPROGRESS,
validate({ getState, action }, allow, reject) {
const state: IEnvironmentDropDownState = getState();
if (!state.options.length) {
allow(action);
} else {
reject();
}
},
async process({ httpClient }) {
  return await httpClient.get(appConfig.GetEnvironmentsURL).then((response: IOption[]) => response);
},

});
export default [
getEnvironmentOptionsLogic,
];
Robert Johnson
IT Engineer

I had this problem as well and the problem was that I exported an array of logics instead of the logic itself. I see you did this as well, so depending on how you apply this logic in the middleware, you might have the same issue:
export default [
  getEnvironmentOptionsLogic,
];

should be:
export default getEnvironmentOptionsLogic;

Kevin, I just tried your solution and it fixed my typescript error.  THANK YOU VERY MUCH for the quick response and resolution.  I have been trying to resolve this for the past three days and I really appreciate your feedback.  Have a happy and safe 4th of July.

@robertqjohnson: while this is a nice sentiment, I doubt if @kschiffer celebrates American Independence, since I believe he is German living in Amsterdam :-)
SideBar: @kschiffer, lest you think I am a stalker, I was researching your website.  Very Nice!  I am unfamiliar with .tpl template files ...  Is this part of NunJuncks?  Have you ever researched the react static site generator called Gatsby?  Just curious.

@robertqjohnson Cool that you like my website :).
Indeed these are nunjuck files – I know gatsby but I think it can be a little overkill for small sites. I like to be in full control, especially for small websites so I decided to more or less go from scratch and use a simple templating engine that just fit my basic needs.
As far as Static Site Generators go, I can also recommend Hugo a lot.

Before closing this issue, it seems like there is an opportunity to improve redux-logic.
If I understand the issue, createLogicMiddleware() is erroring out in a very obscure way, while interpreting in invalid client input parameter.  If this is correct, it seems like the library should perform better type checking, emitting a more appropriate error ... say this:
***ERROR*** createLogicMiddleware(): unexpected input ... expecting Logic[]

Instead of this:
TypeError: Cannot read property 'toString' of undefined.

What say you: @Jeffbski, @robertqjohnson, @kschiffer

Definitely agree. I had to dig quite a bit into my debugger to understand the issue. A more helpful error message would make troubleshooting a lot easier.

Thanks for bringing this up. Yes, we can certainly improve the validation in createLogicMiddleware which would hopefully have helped catch this error sooner.

I'll reopen so I remember to add more validation.


fix: update imports

Summary
Added missing imports of util , getItentifier, createResolver and Verifier

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Display badges with approved and pending count

On the issuer control center overview badges are added that show the number of pending and approved credentials.

@frederikrothenberger why is this in draft?

@frederikrothenberger why is this in draft?

When testing the PR, I've noticed two potential issues:

the counts of pending/approved are displayed for all issuers and all users (not only for the "owned" issuers), hence a potential privacy issue
the counts are not refreshed after requesting a credentials, hence could be misleading

So we decided to keep these changes on hold, until you're back @lmuntaner 😄

Hehe, ok, I understand. I'll add it to my todo list.

@przydatek @frederikrothenberger I pushed one commit.

the counts of pending/approved are displayed for all issuers and all users (not only for the "owned" issuers), hence a potential privacy issue

I fixed this.

the counts are not refreshed after requesting a credentials, hence could be misleading

This is because we don't have sockets nor we poll the issuer information. Users must refresh the page to see the updated data. I believe this is ok in a demo environment. What do you think @frederikrothenberger @przydatek ?

@frederikrothenberger @przydatek I have updated the PR adding the same emoji as in the requester view.
It's also worth mentioning that the membership data wouldn't leak even if we render it because the members are only visible to the issuer of the credential. The backend doesn't return this data if who makes the call is not the issuer.


Syntax highlighting error in ABAP code

I am unable to recognize the error.

Hi there, could you please link to that code snippet so I can have a look at it myself?
Also since I'm not familiar with ABAP, are you using https://marketplace.visualstudio.com/items?itemName=larshp.vscode-abap for highlights?

Sure, here it is https://help.sap.com/doc/abapdocu_750_index_htm/7.50/en-US/index.htm

There is nothing I can do about this, the parser for ABAP just seems to be pretty poor, sorry.
Everything that shows up as green gets interpreted as string.interpolated.abap when I'm using larshp.vscode-abap, I don't know which extension you're using, but that one seemingly has similar problems.


support distributed dataframes in evaluate

Hey!
Following discussion #802, would it be possible for method evaluate from utilsforecast.evaluation to work in the distributed environment?
Thanks a lot!

Just leaving a note here as this would be a great feature to have!


Database of Modern Exhibitions (DoME)

https://arthist.net/archive/21168
https://exhibitions.univie.ac.at/info/database
The database covers – as comprehensively as possible – catalogues of exhibitions of modern art by European artists between 1905 and 1915, but only in relation to paintings and drawings (including watercolours and monotypes). Sculptures, prints, applied / decorative / graphic art, etc. are not included (these entries are listed uniformly as “other medium”, they have no link to an artist record and no further information has been entered on them). The database contains approx. 1,300 exhibitions, 13,000 artists and 200,000 catalogue entries.

Duplicate of #78


Updated about and personal pages.

LGTM!

PEPE WON BIG

Looks good to me! go ahead and merge it

Approved. Ship it. :shipit:

🚢 LGTM SHIPIT


refactor: Migrate away from grpc_utils namespace

Fixes #1261

This change is

google/cloud/spanner/internal/database_admin_stub.cc, line 49 at r1 (raw file):
Previously, devjgm (Greg Miller) wrote…
FYI, these unqualified calls to MakeStatusFromRpcError() will use ADL. That may be OK. but qualifying them with google::cloud:: would avoid the ADL and make their location clear. It was previously not using ADL. Not a huge deal either way.
I'll let you decide if you'd like to change anything.

Blah. I'm happy to go either way as long as we're consistent - LMK what you think.
Some calls (in other files) were already using grpc_utils::MakeStatusFromRpcError() which turned into an unqualified call in this CL, so I decided to make them all look the same - but I didn't consider ADL, I was only thinking about the enclosing namespace ::google::cloud.

google/cloud/spanner/internal/database_admin_stub.cc, line 49 at r1 (raw file):
Previously, devjgm (Greg Miller) wrote…
I'm happy with whatever you decide. I don't know if we have or need a hard rule for this. In general, I think the heuristic that I tend to use is that an unqualified function call is likely defined in the same file or at least the same namespace as what I'm calling. But if the function is in some other namespace, I'd expect some namespace qualification. I would probably perl -p -i -e 's,MakeStatusFromRpcError,google::cloud::MakeStatusFromRpcError,g' **.{h,cc} in this case. But if that makes things too inconsistent with other things we're doing, then I'm happy to go w/ consistency until we decide otherwise.
Up to you. Whatever LGTM.

Having been bitten before by ADL with make_unique<>, I'll change it.
I think we should have a guideline, just for the sake of consisistency - in the old code we were mixing the two, even within the same file. Of course without a clang-tidy it's going to be easy to do that again. I don't see a clang-tidy about ADL, I wonder if such a thing would be feasible to do and useful, or if it would have too many false positives - it would probably have to be disabled for operators at least.


ERROR: Unable to extract uploader id

Checklist

[x] I'm reporting a broken site support issue
[x] I've verified that I'm running youtube-dl version 2021.12.17
[x] I've checked that all provided URLs are alive and playable in a browser
[x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[x] I've searched the bugtracker for similar bug reports including closed ones
[x] I've read bugs section in FAQ

Verbose log
youtube-dl --verbose -i https://youtu.be/qTUeAzxEgSE
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', '-i', 'https://youtu.be/qTUeAzxEgSE']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.10.11 (CPython) - macOS-12.6.6-x86_64-i386-64bit
[debug] exe versions: ffmpeg 4.4.4, ffprobe 4.4.4
[debug] Proxy map: {}
[youtube] qTUeAzxEgSE: Downloading webpage
ERROR: Unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/youtube_dl/YoutubeDL.py", line 815, in wrapper
    return func(self, *args, **kwargs)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/youtube_dl/YoutubeDL.py", line 836, in __extract_info
    ie_result = ie.extract(url)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/youtube_dl/extractor/common.py", line 534, in extract
    ie_result = self._real_extract(url)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/youtube_dl/extractor/youtube.py", line 1794, in _real_extract
    'uploader_id': self._search_regex(r'/(?:channel|user)/([^/?&#]+)', owner_profile_url, 'uploader id') if owner_profile_url else None,
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/youtube_dl/extractor/common.py", line 1012, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
youtube_dl.utils.RegexNotFoundError: Unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

Description
It is not possible any more to save video. It's always leads to the Error "Unable to extract uploader id". It is reproducible also with older videos already saved.

#30839 !

Switching to yt-dlp works. I didn't find this in FAQ before opening the issue. Can be closed with reference to https://github.com/ytdl-org/youtube-dl/issues/31530

This is why you were asked to read the pinned issue where your problem is listed as known issue linked to #31530.


[JOSS] git repository contains unnecessary files

There are a handful of __pycache__ folders and .DS_Store files scattered around the repository.  Since these are unnecessary and essentially just clutter, I suggest removing them and creating a .gitignore file to prevent them from coming back.
Cross-reference: https://github.com/openjournals/joss-reviews/issues/4443

Thank you for your valuable comment! We followed your suggestions and added a .gitignore file.


[UI] install dev environment, bower install get errors

When installing the dev environment of rancher UI， get some errors
cmd: bower install
errors:
bower ECMDERR       Failed to execute "git ls-remote --tags --heads git@github.com:westlywright/ember-shortcuts.git", exit code of #128 Warning: Permanently added the RSA host key for IP address '<IP_ADDRESS>' to the list of known hosts. Permission denied (publickey). fatal: Could not read from remote repository.  Please make sure you have the correct access rights and the repository exists.

Additional error details:
Warning: Permanently added the RSA host key for IP address '<IP_ADDRESS>' to the list of known hosts.
Permission denied (publickey).
fatal: Could not read from remote repository.

Workaround for now is to edit the source to be https://github.com/westlywright/ember-shortcuts.git#v0.0.9

@superseb thanks, I try it now.


The mining pool installation guide.

Dears,
I am writing a guide for MiningPoolEngine installation on  Ubuntu 16.04LTS version as following.
Is there anything should I added here?
MiningPoolEngine_Guide.txt
-------------- Contents ---------------------
0. Update and install of Ubuntu Linux patches

Inatllaiton a Microsoft .NET SDK
1.1 Register the trusted Microsoft signature key:
1.2 Register the Microsoft Product feed
1.2.1 Ubuntu 14.04
1.2.2 Ubuntu 16.04
1.2.3 Ubuntu 17.04
1.3 Install .NET SDK

Intallaiton a PostgreSQL
2.1 Create a Postgres Database
2.2 Import a Database Schema

Installation a each coin daemon cores
3.1 Bitcoin (BTC, BCH)
3.1.1 Add a PPA repository
3.1.2 Create a .bitcoin folder on your home
3.1.3
3.3 DASH
3.4 Dogecoin
3.5 Ethereum (ETH,ECC)
3.6 GobalToken

Download and build a MiningPoolEngine
4.1
4.2
4.3
4.4
4.5

Running a MiningPoolEngine
-------------- End of Contents ------------------

Regards,
John Ahn

Looks good for a first draft. 👍

Note that this draft looks like for standalone installation. If I have some time later, I would add how to use Docker container to run the pool instead. (Because using docker image is much simpler and faster.)

sorry for this question ,
but i need help for this , i followed up this guild to build miningcore
first there is some syntax error but i figure it out  , that was hard :D
but now i am stuck with this
[2017-12-14 10:17:34.8146] [I] [ShareRecorder] Online  [2017-12-14 10:17:34.9669] [I] [ApiServer] Launching ...  [2017-12-14 10:17:35.3326] [I] [ApiServer] Online @ <IP_ADDRESS>:4000  [2017-12-14 10:17:35.3500] [I] [PayoutManager] Online  [2017-12-14 10:17:35.3768] [I] [PayoutManager] Processing payments for pool eth1  [2017-12-14 10:17:35.5033] [I] [eth1] [Pool] Launching ...  [2017-12-14 10:17:35.7662] [I] [eth1] [Ethereum Job Manager] Launching ...  [2017-12-14 10:17:35.9856] [E] [PayoutManager] [eth1] Payment processing failed System.Net.Sockets.SocketException (0x80004005): Connection refused    at Npgsql.NpgsqlConnector.Connect(NpgsqlTimeout timeout)    at Npgsql.NpgsqlConnector.<RawOpen>d__139.MoveNext() --- End of stack trace from previous location where exception was thrown ---    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)    at Npgsql.NpgsqlConnector.<Open>d__136.MoveNext() --- End of stack trace from previous location where exception was thrown ---    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)    at Npgsql.ConnectorPool.<AllocateLong>d__24.MoveNext() --- End of stack trace from previous location where exception was thrown ---    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)    at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()
at System.Runtime.CompilerServices.ValueTaskAwaiter1.GetResult()    at Npgsql.NpgsqlConnection.<Open>d__28.MoveNext() --- End of stack trace from previous location where exception was thrown ---    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)    at Npgsql.NpgsqlConnection.Open()    at MiningCore.Persistence.Postgres.ConnectionFactory.OpenConnection() in /home/sh/miningcore/src/MiningCore/Persistence/Postgres/ConnectionFactory.cs:line 43    at MiningCore.Extensions.ConnectionFactoryExtensions.Run[T](IConnectionFactory factory, Func2 action) in /home/sh/miningcore/src/MiningCore/Extensions/ConnectionFactoryExtensions.cs:line 47
at MiningCore.Payments.PayoutManager.d__12.MoveNext() in /home/sh/miningcore/src/MiningCore/Payments/PayoutManager.cs:line 114
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at MiningCore.Payments.PayoutManager.d__11.MoveNext() in /home/sh/miningcore/src/MiningCore/Payments/PayoutManager.cs:line 95    at Npgsql.NpgsqlConnector.Connect(NpgsqlTimeout timeout)
at Npgsql.NpgsqlConnector.d__139.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Npgsql.NpgsqlConnector.d__136.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Npgsql.ConnectorPool.d__24.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()    at System.Runtime.CompilerServices.ValueTaskAwaiter1.GetResult()
at Npgsql.NpgsqlConnection.d__28.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Npgsql.NpgsqlConnection.Open()
at MiningCore.Persistence.Postgres.ConnectionFactory.OpenConnection() in /home/sh/miningcore/src/MiningCore/Persistence/Postgres/ConnectionFactory.cs:line 43
at MiningCore.Extensions.ConnectionFactoryExtensions.Run[T](IConnectionFactory factory, Func2 action) in /home/sh/miningcore/src/MiningCore/Extensions/ConnectionFactoryExtensions.cs:line 47    at MiningCore.Payments.PayoutManager.<UpdatePoolBalancesAsync>d__12.MoveNext() in /home/sh/miningcore/src/MiningCore/Payments/PayoutManager.cs:line 114 --- End of stack trace from previous location where exception was thrown ---    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)    at MiningCore.Payments.PayoutManager.<ProcessPoolsAsync>d__11.MoveNext() in /home/sh/miningcore/src/MiningCore/Payments/PayoutManager.cs:line 95 [2017-12-14 10:17:36.0067] [I] [eth1] [Ethereum Job Manager] Waiting for daemons to come online ...  [2017-12-14 10:17:46.0159] [I] [eth1] [Ethereum Job Manager] Waiting for daemons to come online ...
and i don't know what to do , @calvintam236 @jeong760 @oliverw

The exception means that the connection to the database failed.

I’m sorry to ask i know you have lot to do , but could you tell me how to solve what ? 😌

@8bitidea are you sure your database is online?

@oliverw @calvintam236  yes it was that database i connected it with wrong ip , and parity need to run manually ,i am running the parity on classic network and waiting it to finish sync and will connect the miners to test it out,  it was my mistake , sorry guys and thank you very much for this

@8bitidea No excuses needed. Everyone has to start somewhere :)

have  video installation guide ?

Did u have any guide for Ubunutu 20.04?


[SPARK-27562][Shuffle]Complete the verification mechanism for shuffle transmitted data

What changes were proposed in this pull request?
We've seen some shuffle data corruption during shuffle read phase.
As described in SPARK-26089, spark only checks small  shuffle blocks before PR #23453, which is proposed by ankuriitg.
There are two changes/improvements that are made in PR #23453.

Large blocks are checked upto maxBytesInFlight/3 size in a similar way as smaller blocks, so if a
large block is corrupt in the starting, that block will be re-fetched and if that also fails,
FetchFailureException will be thrown.
If large blocks are corrupt after size maxBytesInFlight/3, then any IOException thrown while
reading the stream will be converted to FetchFailureException. This is slightly more aggressive
than was originally intended but since the consumer of the stream may have already read some records and processed them, we can't just re-fetch the block, we need to fail the whole task. Additionally, we also thought about maybe adding a new type of TaskEndReason, which would re-try the task couple of times before failing the previous stage, but given the complexity involved in that solution we decided to not proceed in that direction.

However, I think there still exists some problems with the current shuffle transmitted data verification mechanism:

For a large block, it is checked upto  maxBytesInFlight/3 size when fetching shuffle data. So if a large block is corrupt after size maxBytesInFlight/3, it can not be detected in data fetch phase.  This has been described in the previous section.
Only the compressed or wrapped blocks are checked, I think we should also check thease blocks which are not wrapped.

This pr complete the verification mechanism for shuffle transmitted data:
Firstly, crc32 is choosed for the checksum verification  of shuffle data.
Crc is also used for checksum verification in hadoop, it is simple and fast.
During shuffle write phase, after completing the partitionedFile, we compute
the crc32 value for each partition and then write these digests with the indexs into shuffle index file.
For the sortShuffleWriter and unsafe shuffle writer, there is only one partitionedFile for a shuffleMapTask, so the compution of digests(compute the digests for each partition depend on the indexs of this partitionedFile) is  cheap.
For the bypassShuffleWriter, the reduce partitions is little than byPassMergeThreshold, so the cost of digests compution is acceptable.
During shuffle read phase, the digest value will be passed with the block data.
And we will recompute the digest of the data obtained to compare with the origin digest value.
When recomputing the digest of data obtained, it only need an additional buffer(2048Bytes) for computing crc32 value.
After recomputing, we will reset the obtained data inputStream, if it is markSupported we only need reset it, otherwise it is a fileSegmentManagerBuffer, we need recreate it.
So, I think this verification mechanism  proposed for shuffle transmitted data is efficient and complete.
How was this patch tested?
Unit test.

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

@squito  Could you help to review this?

@attilapiros @srowen

HI @turboFei thanks for posting this.  Have you looked at SPARK-26089 yet?  That actually addresses two out of your three concerns:

only check the first maxBytesInFlight/3 bytes.
need additional memory.

I'm not saying there is not value here -- that change does not handle the 3rd one "only detect the compressed or wrapped data."  I also have always worried about whether it really makes sense to rely on the the codec to detect corruption, so using a digest could also make sense.  But, this is a large change, so the case should be made clearly.

@ankuriitg

oops, I just noticed you actually used that jira for this change.  So clearly if we were going to do this, you should open another jira and explain the case for having a checksum.  or also happy to hear if there is some mistake in the change already committed for SPARK-26089: https://github.com/apache/spark/commit/688b0c01fac0db80f6473181673a89f1ce1be65b

oops, I just noticed you actually used that jira for this change. So clearly if we were going to do this, you should open another jira and explain the case for having a checksum. or also happy to hear if there is some mistake in the change already committed for SPARK-26089: 688b0c0

Thanks, I will open another jira and make the case clearly.

@squito I have created a new jira[SPARK-27562] and describe the schema.

@jerryshao

@cloud-fan Could you help to review this? I think this pr can guarantee the accuracy of shuffle data transmission.

Can one of the admins verify this patch?

This seems to be a quite useful feature in heavy load production environment. We're also suffering from such shuffle issue, I think this is a valuable improvement.
@turboFei will you continue to work on this PR? If so, I'm going to reopen and help to review it.

This is a nice feature. We need to think about how to integrate it with the batch shuffle fetch though.

I will try to finish it. Please help reopen it, thanks.

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Not sure why this PR is closed again, I'm gonna reopen it. @turboFei seems there's  lots conflicts in code, can you please bring this to the latest?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

I will.

It seems that we have to recompute the digest when fetching continuous blocks data.

The behavior of bot is strange, have created a new pr, https://github.com/apache/spark/pull/28525


NEXT-8594 - Delete/archive orders

When creating test orders it would be nice to be able to delete those again. But when deleting orders it will create a gap in the number series. In some countries this could mean legal issues since you are not able to explain those gaps. Especially when orders are fulfilled.
Therefore I suggest to have both a Delete and a Archive functionality:
Delete order - Only allowed if no invoice or shipment is created. Order gets completely deleted.
Archive order - Allowed even though there is an shipment or invoice created.
If archived the order won't be visible in the order grid, but will be able to be shown through a "show archived orders" filter which can be set somewhere in the order grid.
This will clean up the regular order grid, but give the ability to always find and explain the missing gaps in number series.
I also found reference to this feature here:
https://issues.shopware.com/issues/NEXT-7008
https://issues.shopware.com/issues/NEXT-6721

Hello,
thank you for creating this issue.
I have opened a ticket on our Issue Tracker for you. See the ticket link: https://issues.shopware.com/issues/NEXT-8594
Please use this ticket to track the state of your issue.

Interested

Interested


Loading 3d model in Content Editor isn't working

It seems that in Content Editor the local webserver used for render didn't serve all files in Media directory, see image with console :

There is multiple retries in the widget source code, that why multiple FileError appears.
If someone has an idea of how file can be serve directly in Content Editor webserver, it would be nice !

how did you open the console of the Content Editor Window?

as fas as i can see, the dae file is loaded after a redirect.
The problem seems to be, that threejs loaders do not handle redirects correctly (Handle redirects in loaders)