Array of unions incorrect assertion

Bug Report
📝 Summary
Write a short summary of the bug in here.

Typia Version: 5.3.0-dev.20231127-2
Expected behavior: Error is returned for the invalid value/type of a nested parameter in the array of types union
Actual behavior: Success

Array of union type doesn't get validated properly. As soon as array is wrapped around a singular type (rather than a union of types) - validation works as expected. Even though TypeScript highlights the issue when the data is constructed manually, it would be great to validate the data during the runtime and get the same error (for cases when data is received via an API).
⏯ Playground Link
https://typia.io/playground/?script=JYWwDg9gTgLgBDAnmYBDOAzKERwERIqp4DcAUGQKYAeksclAdgK64DqAKspXAN5kBIAIJwAvPiF4ANIIBCY-LOmCAwgrwrlAXwo068QjzYBRajAA8HBY0oA3SlAB8YwUNMwycL3AA+cWe6e3n4qgQJ+HORUtNAG3HBssqgAzpSWzuL8AsAAJgBccMkwUMCMAObkAoYFkWRaUXqxCPFslgxmTDnJCVxglBkJSanpcABkgiZmDTH0TKxwQr08WQAa6ivKAgCa6lubAFrq+9q6M3F9C+4KWdU93AB0QpWoBVlV3AWL3JUCAMYAFsAADY5KBMT5QKCoRDmQQCAStTgPWSOOHhBLmJF9e4qVHwxyVep1ab6ZoXAJma6CW5Yyj3WSVABGrzhAOBoPBC0h0Nh8IRS3paL8tJxcIJgiJRNOpLmuBUAGlSjk+IIAPIAOWM6g1xk2HDYqvU+tVeoAEgAlYxa8R4DgWq0naKkwxwUKUzLUj53bEqSq-FnwgDWSoKCqVhLGcAAFHC3kGQ67FYwcvcdT94WyQWDGBCoTDWmj4SLZIX0SKVIXHOL4V4dPC-HGBMHk6Gkynjem-oCs5yhNz85iBSjqwJa3CG4Xm-lE0r7nbLcZO5mOTmuXnMYOHriR2OBABKchSp1NX4QRhFOA5VAwF4YkVCAZZXIFPAARk2NIFQhkAlvb1uXzYisP5duy2YFAA2mija3K+IHws++AAEybHyOTAMkYBAtC6qoCAlAvuhmHYYgcCMHhlCoQIWggQAuj+NHEhQp7nvAYLdOIhBoPctioECuTXmkiJflWUZXjeB5kCxyQQECdJAhAZRRuxB5AA
💻 Code occuring the bug
import typia from "typia";

export enum WType {
	A = "A",
	B = "B",
	C = "C",
}

export type WExt<T = never> =
	AExt
        | BExt
        | CExt
	| T;

export type WBase<T> = {
	id: string;
	type: T;
};

export type W<T extends WType> = WBase<T> &
	WExt;

export enum AType {
	X = "X",
	Y = "Y",
	Z = "Z",
}

export type AExt = {
	type: WType.A;
	a: {
		type: AType;
		children: Array<
			W<WType.B>
			| W<WType.C>
		>;
	};
};

export type BExt = {
	type: WType.B;
	b: {
		children: Array<
			WType.B
			| WType.C
		>;
	};
};

export enum CKind {
	ONE = "ONE",
	TWO = "TWO",
	THREE = "THREE",
}

export type CExt = {
	type: WType.C;
	c: {
		kind: CKind;
	} & (
		{
				kind: CKind.ONE;
				children: Array<W<
					WType.B
					| WType.C
				>>;
		  }
		| {
				kind: CKind.TWO;
				children: Array<W<WType.B>>;
		  }
		| {
				kind: CKind.THREE;
				children: Array<W<WType.C>>;
		  }
	);
};

export const data: W<WType.A> = {
	id: "1",
	type: WType.A,
	a: {
		type: AType.X,
		children: [
			{
                                 // **Highlighted by the TypeScript**: Type 'number' is not assignable to type 'WType.B | WType.C'.(2322)
                                 // main.ts(17, 2): The expected type comes from property 'type' which is declared here on type
                                 //'(WBase<WType.B> & BExt) | (WBase<WType.C> & CExt)'
                                 //(property) type: number
				type: 1,
				id: "2",
				displayName: "display name",
			},
		],
	},
};

const res = typia.validate<W<WType.A>>(data);
console.log(res);

The expectation for the $input.a.children[0].type to be reported as of the invalid type (same as typescript does at compilation time). Currently the success is returned. Interestingly if WTypeExt.a.children type is changed to Array<W<WType.B>> (i.e. removing the union) the validation works as expected.

Hard to understand the type. Can you reproduce it with much simpler type?

@samchon please let me know if this is any better
https://typia.io/playground/?script=JYWwDg9gTgLgBDAnmYBDOAzKERwERIqp4DcAUGQKYAeksclAdgK64DqAKspXAN5kBIAIJwAvPiF4ANIIBCY-LOmCAwgrwrlAXwo068QjzYAeDg2owmAEwDOcTtwB8C-gOBWAXHBswowRgDm5AKGXhzkWnAAZHAAFEIAohZwAD5wsknwaSqZAJTkVLTQBtxwicnirqH2XGCUAHRCwahergIAxgAWwAA2VlBMXkJQUKiIxoICAiYOdfWyjpMCaTO1DSqLU47BWhEFesUIpRkVfILVsw2ywQBGrbtkD4X6R3VwOadV3F6X9SrB7XujwKz0O7QgjB8cCsqBgLXsxl+QmclUE7i8eAAjMoQt8atxGjIBPC2l1ev1BnAANpLNpTaqYolTNyefAAJhxUy0TIAukTucCKODIfABnZxIQ0PUAG6oHruWGURGItaNRyOWIwuH5MjCmwQHoNHoQAKxMX5IA

The combination of union and intersection type comes as never type at TypeScript compiler API now.
Need additional investigation.

@samchon thank you! I will also try to dig through Typia code on my side

It is because type property is duplicated in both W and AExt | BExt | CExt types.
When such duplicated property exists in the intersection type, TypeScript compiler API considers it as never type. I know it is a typical bug, but not possible to fix it by myself. I'll report to TypeScript repo with more investigations, but cannot sure when the TypeScript team fixes it. Until that, I think you should be careful in that case.
import typia from "typia";

export namespace WType {
	export type A = "A";
	export type B = "B";
	export type C = "C";
}

export type W<T extends WType.A | WType.B | WType.C> = {
	id: string;
	type: T;
} & (AExt | BExt | CExt);

export type AExt = {
	a: {
		children: Array<
			W<WType.B>
			| W<WType.C>
		>;
	};
};

export type BExt = {
	b: {};
};

export type CExt = {
	c: {}
};

export const data: W<WType.A> = {
	id: "1",
	type: "A",
	a: {
		children: [
			{
				type: 1,
				id: "2",
			} as any,
		],
	},
};

const res = typia.validate<W<WType.A>>(data);
console.log(res); // prints failed.

@samchon thank you for such a quick turnaround!
Very weird because Typescript itself picks it up. Didn't expect for the compiler API to be so different

Will you try this type? @GoogleFeud

Will you try this type? @GoogleFeud

I think that the W type here is the culprit. You are trying to make W a discriminated union but this isn't really the way to do it. Here is a version that works in both ts-runtime-checks and typia.

@samchon not sure why this issue was closed given there is no resolution.
@GoogleFeud Subjectively it may seem like a culprit to you, however we have a strong use-case to construct types this way and Typescript allows us to do it so. If you have issues with supporting this case in your library, please let us know - we will be happy to assist.
On a side-note, pushing the guilt of not being able to support a legit use-case back on the user is just rude though.

Ah, I'm sorry but mis-closed with wrong flag.
This issue is not fixable, so that close as not planned.


Maximum call stack size exceeded on rc3

import { Provider } from 'react-redux';
import { Router, browserHistory } from 'react-router';
import { Route, IndexRoute } from 'react-router';
import CoreLayout from 'modules/core/views/CoreLayout';
import IndexView from 'modules/core/views/IndexView';

ReactDOM.render(
  <Provider store={store}>
    <Router history={browserHistory}>
      <Route path="/" component={CoreLayout}>
        <IndexRoute component={IndexView}/>
      </Route>
    </Router>
  </Provider>,
  document.getElementById('root')
);

You have webpack misconfigured to use . as a root for resolving imports. Don't do that.

Not sure I understand what you mean? This error only showed up when using rc2 and above.
This is what I assume you are talking about in my webpack.config, which is pretty common, no?
resolve: {
    root: path.join(__dirname, 'src'),
    extensions: ['', '.js', '.jsx'],
    modulesDirectories: ['lib', 'node_modules']
  }

The 'lib' in modulesDirectories is no good. It means that
require('warning')

In react-router/lib/warning ends up requiring itself, not the npm warning package.

Thanks!


What is the function for it?

updated the readme. let me know if you need more.

Thanks very much!


Dual monitor with different resolutions

I have a 1080p secondary monitor and a 1440p main monitor, the blur effect when entering the password is creating a black line at 1920px width, https://imgur.com/a/OQrE9lb
If you can let me know where in the src files the blur effect is located i can try to sort it out myself as you probably can't test this
Also while i'm at it, an option to disable the blur would be nice

the background is the native resolution of my monitor, do you get monitor width/height anywhere in the code? it could be scanning my second monitor

I don't manage monitor width/height, it's html/css it's done normally, i also have dual screen and a 1920*1080 background and it works, i don't really understand, what does it looks without blur ? (on the clock screen)

https://imgur.com/a/NOa2yAG
from what i've seen the blur itself shouldn't have this effect, not sure what could be causing it

removed the blur class assignment and built the theme, the black bar is gone, the filter is causing it

It's extremely strange, looks like a bug in webkit itself.
New version of web greeter is using qt-webview, definetely better but currently definetely more stable.
I'll add an option to disable blur, until i do you should clone, delete the line and rebuild using (requires Node.JS) npm i && npm run build, then copy everything from the dist/ folder to /usr/share/lightdm-webkit/themes/litarvan/
I'll let this issue open until i add the option, but i'll then close it as it's a webkit bug


Define the Warehouse Controller service vocabulary (ontology)

We should define what kind of configuration does the service hold but also which OSLC services are defined.
We would need to use the graphical modelling tools from Lyo for this exercise in order to be able to generate the service code (for now). The TTL file similar to the ontology file for PDDL put together by @eanevul and @likelion  can be generated from the model. The reverse operation needs some extra development on the Lyo side, but is totally feasible (we would need the latter in order to "import" the PDDL ontology into Lyo Toolchain Designer and be able to produce the resources that correspond to the shapes defined there) – see #52.
@konstantino this is a step towards producing an early prototype of the Warehouse Controller.

From @eanevul:

what is configuration information? Is it which objects are active and the outline of the warehouse, OR it includes also capability information of the dynamic objects?

What do you think, @likelion?

I think configuration is only an enumeration of actual devices (names and types) in a particular warehouse instance. Their capabilities come from the capability metadata service.

Perhaps we can find some OSS solution implementing ISO 11179 eg
https://github.com/srdc/semanticMDR for the capability metadata service.
On Sun, 15 Oct 2017 at 18:22, Leonid Mokrushin<EMAIL_ADDRESS>wrote:

I think configuration is only an enumeration of actual devices (names and
types) in a particular warehouse instance. Their capabilities come from the
capability metadata service.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/EricssonResearch/scott-eu/issues/53#issuecomment-336722817,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAD83u7P4u9wr4dngmp4P-cfTkH58-Xvks5ssjFYgaJpZM4P2DIn
.

--
–Andrew.


fix: Project description has html tags in it in project cards

What does this PR do and why?
Closes JB-712 : Project description has html tags in it in project cards
Screenshots or screen recordings
If applicable, provide screenshots or screen recordings to demonstrate the changes.
Acceptance checklist

[ ] I have evaluated the Approval Guidelines for this PR.
[ ] (if relevant) I have tested this PR in all supported browsers.
[ ] (if relevant) I have tested this PR in dark mode and light mode (if applicable).

Current dependencies on/for this PR:

main

PR #3969   👈

This comment was auto-generated by Graphite.


[keyboard manager] Per-keyboard keys redefining

Description of the new feature / enhancement
It would be great if it were possible to redefine keys per keyboard
Scenario when this would be used?
I have a laptop without a ≣Menu key so I using the Keyboard manager to redefine Right control to Menu key. I often use the laptop with external full size keyboard and when I press Ctrl (Right)+Enter shortcut in messengers for "send" action it also opens a context menu:
https://github.com/microsoft/PowerToys/assets/1235286/48c47edf-2bb1-471e-b689-dcba5687d06f
Supporting information
No response

/dup #1460


Support async channel open and channel reuse

This addresses: https://github.com/trinsic-id/sdk/issues/179
@romanlevin thoughts?

Ignore Windows failures, that's being tracked separately (works on my windows machine)
https://github.com/trinsic-id/sdk/issues/242


Port argrel{extrema, max, min} to cupyx.scipy.signal from cusignal

See https://github.com/cupy/cupy/issues/7403
Depends on https://github.com/cupy/cupy/pull/7640

/test mini

/test full

/test full

/test full

Thanks, @andfoy!


adds changes for constructing types/constraints programmatically

Issue #23, #14
Description of changes:
This PR works on changes for implementation of a public facing API for constructing types/constraints programmatically.
Changes:

Adds implementation of new public facing API IslType, IslConstraint, IslTypeRef (stored in isl module)
Renames Type to TypeDefinition
Renames current TypeRef to IslTypeRef
Creates a TypeRef which has a TypeId and reference to TypeStore
Bug fix for self referencing types using parent information stored in TypeStore
TypeDefinition field name is changed to be an Option to store both anonymous and named types
doc comment changes

As discussed offline, we should add some unit tests for the following conversions:

OwnedElement to Isl* types
Isl* types to a Schema (and TypeRef)
OwnedElement to Schema/TypeRef (doesn't need to be exhaustive as its the sum of the above parts, but it would be good to demonstrate the API.)


Wire up to a platform for contributing translations

This is a followup to #275. After we have that basic framework for using translated strings in the UI, we'll want to set things up so that Zulip's volunteer translators can contribute translations.
The obvious direction to go for this would be to wire things up to Transifex, which is what we use for zulip-mobile and for Zulip web, desktop, and server. But… the format the Dart ecosystem supports for internationalized messages is ARB, and Transifex does not support ARB.
If we were determined to stick with Transifex, we could build tooling to work around that — ARB files appear to be just JSON with some reasonable schema, so it shouldn't be hard to translate ARB to some other format and back. But we've independently been wanting to move off Transifex, to a more open platform like Weblate. So probably this will involve moving to a new service.
TBD how to handle that from a project-management perspective. Some thoughts:

The end state should be that the whole Zulip project is using a single translation service, be that Weblate or something else. We should avoid dragging on for a long period (like many months) on two services, or migrating and then finding ourselves migrating again — those are likely to be a burden on our translation contributors.

Translating zulip-flutter may not need to block on migrating the whole Zulip project, though. It might instead serve as the pilot, followed by migrating the rest of the project. We'll just want, when we commit to a service for zulip-flutter, to be confident that we will then be able to migrate the rest of the project there without too much further fuss.

So in particular before we broadly ask our translators to go start translating on a new service, we'll want to have poked around both to understand exactly how we want it set up for zulip-flutter, and also to understand the setup we'll want for other parts of the project at least well enough to convince ourselves that there won't be any dealbreakers later.

One quirk in Dart's package:intl which we might have to handle when we go to implement this issue: for number/plural forms, the package expects forms named =1 and =0 when it actually means the behaviors whose standard names are one and zero. See:

https://github.com/dart-lang/i18n/issues/31
https://github.com/dart-lang/i18n/issues/21

So it's likely that Transifex or whatever other platform we use will emit one and zero forms, and we'll have to write a bit of code to translate them to =1 and =0 as part of the process of syncing them down from there into our repo.


Bulk actions in datasets and maps revised and fixed

We have revised the conditions that make options appear or appear as disabled in the bulk actions menu. In short, actions that appear should be related to all selected visualizations, and if there is any shared visualization selected that prevents any action, this should appear as disabled.
Acceptance
Make sure these are the actions that appear when selecting several visualizations.
https://docs.google.com/spreadsheets/d/1aXLj6CqqsF4ESqjFa-F0kDzttgO8x_WIKrqA1K6y9XE/edit#gid=0
Related Issue
https://github.com/CartoDB/product/issues/228
https://github.com/CartoDB/product/issues/256

Retest this please

Retest this please

Retest this please


[5.3][Function Builders] Fix a function builder crash due to constraint generation failures

This crash was fixed in a recent refactoring on master (#32221). This change takes one line from that refactoring which records whether or not there was an error when generating constraints for a pattern binding decl in a function builder.
Tests are cherry-picked from #32607
Resolves: rdar://problem/59856491

@swift-ci please test


Fix/28946 Mentioning an email with double @ sign results in an invalid email mention

Removed the + quantifier from the userMentions regex because this resulted in all the @ signs being matched when a mention had multiple preceding @ signs.
For example, the match looked like this<EMAIL_ADDRESS>and clicking it showed a user with<EMAIL_ADDRESS>as their email in the RHP. Trying to message this user then resulted in an error because their email address was invalid.
With this change, the match now looks like this<EMAIL_ADDRESS>which is a valid email, so the user can now be messaged without errors.
Please Note: I've altered the linking below slightly in accordance to this comment because doing it this way assigns the correct people to review.
Fixed Issues
$ https://github.com/Expensify/App/issues/28946
$ https://github.com/Expensify/App/issues/28946#issuecomment-1750185844
Tests

What unit/integration tests cover your change? What autoQA tests cover your change?
What tests did you perform that validates your changed worked?

QA

What does QA need to do to validate your changes?
What areas to they need to test for regressions?

I have read the CLA Document and I hereby sign the CLA

There are a lot of lint errors unrelated to my PR after running npm run grunt watch in ExpensiMark-HTML-test.js.

Some of these are from sections of code that have existed for quite a while, so I'm assuming some errors can be ignored.
There are currently no lint errors present in the code I added.

recheck

Hmm...I don't think I should have been assigned to this PR as I wasn't a part of the issue. Re-assigning.

Please Note: I've altered the linking below slightly in accordance to this https://github.com/Expensify/expensify-common/pull/607#issuecomment-1821707573 because doing it this way assigns the correct people to review.

I think the automation just isn't set up for this repo. Either way no biggie


Uninstall Clarification

Hello,
After a successful run, I want to uninstall the PBSK15 software. Do I uninstall normally through settings, or is there a way to uninstall through the command console? I'm asking because I don't want to mess anything up.
On a brighter note, the website worked perfectly. You should be very proud of yourself :D
Looking forward to hearing your reply,
Thanks.

Sorry for the fairly late response, but if you look in your app list, and open the PBSK15 folder, there is a program in there called "PBSK15 Uninstaller".


Publish to terraform

@sl1pm4t great to see that you published this to the terraform registry!
https://registry.terraform.io/providers/terraform-kops/kops/latest

I'm going to keep my provider at https://registry.terraform.io/providers/clayrisser/kops/latest just so I can iterate and make changes without effecting this project. I will consider this repo to be the stable version.

I had trouble getting the Terraform registry to detect this org and repo. In the end I used my alternate GH account @mattaerial  to sign in and publish the provider.


Add support for inclusive naming

Description

Adds the cluster_manager_timeout parameter, deprecating master_timeout
Adds the /_cat/cluster_manager endpoint, deprecating /_cat/master
Correctly handle the cluster_manager node role in the discovery logic
Updates the documentation of the WithLocal methods to use cluster-manager terminology.

Issues Resolved
Resolves #121
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@dblock @VachaShah @wbeckler This looks good to me, bar the one flaky integration test and whitesource CVE that I'm not sure are relevant here.

Please open an issue for the flaky test failure in https://github.com/opensearch-project/opensearch-go/actions/runs/3012819413/jobs/4841298373?

Please open an issue for the flaky test failure in https://github.com/opensearch-project/opensearch-go/actions/runs/3012819413/jobs/4841298373?

@dblock Looks like Vacha already encountered and created an issue for it: https://github.com/opensearch-project/opensearch-go/issues/163


Ripul handoo/relationships/pod template

Notes for Reviewers
This PR Adds

Relationship between Pod Template and other Kubernetes resources.

Signed commits

[x] Yes, I signed my commits.

Working Proof of this PR.
https://github.com/meshery/meshery/assets/107461226/73ce3ecf-381d-4043-9c8a-7fc2dfe8aee5

Note: Spreadsheet Updated. ✅

@MUzairS15 what does something like this PR mean in terms of our ability to visually represent both a Deployment component with a PodTemplate component inside of it?
Better yet, what does this mean for the user who started designing with a Pod (PodTemplate), then decided to rollup to a Deployment?


cbl_flutter:installBinaries

Using vs_code on Windows 10. Simply can't build a project.
From the doc page it seem like I need the cbl_flutter dependency. Is there any other way to get the binaries and where do I put them?
build output:
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':cbl_flutter:installBinaries'.
> A problem occurred starting process 'command './tool/install_binaries.sh''

Hi @natgross, I'm sorry you're running into this issue.
You're right, you need cbl_flutter to include the binaries in the app build, but support for downloading them has not been implemented yet on Windows.
There really isn't a good/simple workaround at the moment because cbl_flutter is a Flutter plugin which does a bit more than just downloading the binaries.
The work to resolve this issue is being tracked in #62.

A fix for cbl_flutter has been published in version 0.4.0+1.


feat(clients): add zod

Due to the demand, I add the new client zod 🎉.
Thanks to @stijnvanhulle, who previously did the implementation. I hope it's ok for you I took what you did as a starting point.

@aodinok you have custom validation or using something like yup?

We are using yup at the moment

If I do the same for yup would it work for you?

I think the problem with this schemas would be that it is hard to modify/extend them.
In most of the cases you probably will want to make validation more strict in some places or add different custom messages to the schemas (e.g. intl) but if we export the schema per model without exporting basics (e.g. minLength value or even schema per prop) it will be pretty hard to extend the schemas.

Probably a mix of both would be great

Yeah exactly. Basics plus model schemas - and then you can use whole model schema when needed or basics with custom schema.
No need to build yup specifically for us. I'm happy to contribute using your example for zod when I will have some spare time. Thanks a lot for adding this 👍

@anymaniax Sure, no problem. Started with this a couple of months ago but that only included Zod schemas for component.schemas and not for the different API calls. Thanks for finishing this :)

@stijnvanhulle from what I saw it's based on pathItem. Which is great for a first version. I would like to split by schema but before the v7 it's not possible I need to refactor the config and the output system by package first.

@aodinok I have something like this right now

This is cool! Thanks for letting me know. I think we will be able to use this for our use case.

I think we have a good enough first version I will merge this

@anymaniax Is it possible to create a new version so we can start playing around with the Zod integration?

just git clone the branch from github directly, good idea to check it out. I ran it and had a few issues, I'll try to open an issue.

Hello guys, @stijnvanhulle I did an alpha version you can try it with @orval/alpha. @sirtimbly I did a lot of fixes for the zod client yesterday and will try to release a patch version today

@stijnvanhulle @sirtimbly  just published Orval 6.13.1


Change accepted file types based on feedback

This also makes the message for what file types are acceptable in the information reveal dynamic.  It was a static message that now will not need to be changed if the file types, etc change again.
Based on feedback on this ticket: https://www.pivotaltracker.com/story/show/186854106

Good point. I added this ticket: https://www.pivotaltracker.com/story/show/186916542


Allow albums to reuse another album's wallpaper

I don't really feel like restructuring the media folder yet - better to keep this in mind for #70.
But as seen in hsmusic/hsmusic-data#211, album wallpapers/backgrounds can end up being quite heavyweight files, occasionally unavoidably (it's often displayed at massive size, so is more sensitive to low-resolution JPEG artifact upscaling).
In cases where two albums share a wallpaper, those have to be saved (and requested!) as separate assets, currently. There should be a field for snagging the asset from another album's media folder, so it only needs to be requested once.
Prolly Reuse Wallpaper Asset: Psycholonials EP 1 or such.

We're closing this in favor of #545!


add a getcachedclient for extension mocking

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

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.ResourceManager


Fixing bounds issues in scales calculations

Added flag to make sure the view's bounds are updated before the min and max scales are set.

Can you tell me How to reproduce this bug?


Update docker compose version output to latest

Proposed changes
Update docker compose version output to latest version of docker compose.
Related issues (optional)

@MouadBH thanks for your PR. This page changed in the meantime and the reference to the latest is now dynamic.


chat: display status indicator for pals

If a ship is known in the pals state, we display a status indicator similar to the one in the original pals interface. Tooltip displays the tags/lists for that pal, if outgoing.
Since we already have the pals data (for use in leap), this is simply the addition of an indicator component.

Be careful, baby's first new-groups PR.

This placement is so good, exactly what I'd personally expect 🙏
@Fang- are you amenable to a custom icon being developed for pals here? I won't take offense if you'd rather keep them, just thinking about overall legibility and modularity of this little area.
Right now (from the looks of the image, I haven't run this locally) it appears as though these badges are being treated similarly to the role badges, as text or an image within a div with padding. I'd gently encourage us to consider what a visual element here that makes full use of the "element space" looks like, with no padding, using all ~16pt of the vertical height.

I'm open to whatever Tlon would do here, because I'm implementing this as a Tlon employee, not a paldev spy (for the record (; ). I just used the svgs from the pals ui because I didn't have anything better on hand, would be open to whatever we have that looks better.
(But, if we don't have anything ready to go, maybe better to just merge and update the visuals later?)

@Fang- Agree — let's merge this (it's amazing), and I'll create a task to track a more dialed-in tlon-specific implementation of the pals icons


Skype group chat messages do not reach LUIS

There seems to be some wierd stuff going on between my Bot and LUIS framework
From my 1:1 conversation with Bot, LUIS works nicely and messages reach it (I can also see it from the LUIS logs)
But with My group chat that I created and also added Bot to it, from there the messages dont reach LUIS. Or atleast they dont seem to reach the correct one. I have tried to delete the whole LUIS app and create the new one but nothing. ALso I have tried resetting various PrivateConversationData, ConversationData and UserData variables but nothing.
If I post the exact same message to the 1:1 chat of Bot or via the groupChat, on both occasion I get back the first Intent as "None" from LUIS, but the Intent Scores are different. For me it seems that the groupChat still reaches some old LUIS App I used and got stuck
Is it somehow possible to check that?

Is there a a way that this LUIS AppId I specify in my dialog header gets "stuck" somewhere and it uses the old one?

I presume you're using the Node SDK?
@Stevenic is the LUIS AppId serialized as part of the dialog state in Node?

no, I'm using C#. But something is totally weird with it. When I type my question into 1:1 chat, it returns with the intent I created in Luis and all is ok.  But when I type exact same question to my groupchat, where the bot also is (with the @botname prefix) then it still ends up in Luis None flow somehow

The LuisDialog has a reference to a LuisService which stores a LuisModelAttribute, and I believe these are all serialized with the dialog stack state, so if you changed LUIS AppIds, it's possible it's pointing to the old one.  Retraining and republishing a LUIS model should not change the AppId though.
In a group conversation, the dialog stack state would be stored in the per user in conversation data store:
https://github.com/Microsoft/BotBuilder/blob/master/CSharp/Library/Dialogs/DialogModule.cs#L155
which if you changed the code that selected the LUIS model while adding members to the group, I suspect that different users could get different models.
Each user could reset their own state with " /deleteprofile" though.

The problem is that I wanst able to send the " /deleteprofile" command properly into the Skype groupchat. In 1:1 the /deleteprofile works nicely. Is there some other way to clear out this dialog stack state programmatically?

It seems that "stuck" somewhere else than user in coversation state. If I add a new participant to the conversation, then indeed it WORKS for the new participant (duh). But for me it is not, pointing to some other LUIS probably.
But this is also weird, that even If I create a totally new chat with the Bot, It still fails for my user. I would expect the new chat Id is totally different and everything is recreated.

+1 Same issue. I am using Node SDK.

You need a space before the slash in the " /deleteprofile" so it's not interpreted natively by the channel.
This is how "/deleteprofile" is implemented, which shows you how to clear the state programmatically:
https://github.com/Microsoft/BotBuilder/blob/aaf86d7b0542c8e2758bf14baa6b7cc67291e390/CSharp/Library/Dialogs/DeleteProfileScorable.cs#L57

@liiver could you log the url being called for the LUIS service and compare them between group and individual chat?  You can register a proxy ILuisService that logs the url before making the call, for example.

The problem is that " /deleteprofile" only seems to work for me in 1:1 skype conversation
In group chat I am unable to make the command work. Sending command like "@Botname /deleteprofile" ends up just in a regular LUIS "None" intent and not an actual deletion.
Unfortunately I am unable to get data from ILuisService. I am not so familiar with interfaces in C# so I dont really know how to implement this stuff. Any code examples in this case would be appreciated.

any ideas on sending " /deleteprofile" to Skype group chat?

Is https://github.com/Microsoft/BotBuilder/issues/1276 a more specific description of this issue?

Basically yes, that the main issue of it.
Secondary issue of "on switching LUIS app, group messages still go to old one" also exists, but I overcame it for now with registering a new bot

@liiver In group conversation cases on Skype, you have @botid in the text of the incoming activity when your bot is getting the message. As a result the DeleteProfileScorable regex might not match depending on how the bot is mentioned.
I recommend removing the @botid mention from the message using the following helper: https://github.com/Microsoft/BotBuilder/blob/5cf71c742f27d89e9dbc4076f850122bd6edac11/CSharp/Library/Microsoft.Bot.Connector/ActivityEx.cs#L131 before posting it to the bot. For example, you can write a  IPostToBot and register it as the most outer one with the DialogModule that removes the bot`s mentions from the activity.Text before positing it to the bot.

I created a middleware to preprocess the messages and remove all the mentions for the time being.
However, I think a bot will be useful if it is able to receive messages without mention. This will allow the bot to jump into the conversation whenever the intent is within the scope of the bot.
e.g. If a group of people try to figure out where to go for dinner, it will be nice if the bot can jump in and provide recommendations.

@liiver sorry for the offtopic, but how to add the bot to the group chat? When I click to the "Add People" button I see only regular accounts, not bots. (ps my bot is not published, but 1:1 conversation works well, also with private chat with Bot I can add people to conversation)

I think its not enabled by default. In botframework.com, you have to edit your Skype Channel. And from there enable Group messaging. Then it should appear in the list when you click Add people. I think I had the same issue in the beginning.

@liiver I have already enabled this setting but nothing helps. PS my bot is not published


I got a lhv whoes  frontend mode is blockdev ,but has a iscsi session,why this happen?

Question

Suggest to use https://github.com/longhorn/longhorn/discussions to ask questions.

Environment

Longhorn version:1.4.1
Kubernetes version:1.23.9
Node config

OS type and version openeuler 4.18.0-3<IP_ADDRESS>.pol.x86_64
CPU per node:
Memory per node:
Disk type:
Network bandwidth and latency between the nodes:

Underlying Infrastructure (e.g. on AWS/GCE, EKS/GKE, VMWare/KVM, Baremetal):

Additional context
Add any other context about the problem here.
iscsiadm -m session
tcp: [30] <IP_ADDRESS>:3260,1 iqn.2019-10.io.longhorn:pvc-340feaeb-6d23-40a7-b9af-41fdbf571e6e (non-flash)
kubectl describe lhv -n longhorn-system pvc-340feaeb-6d23-40a7-b9af-41fdbf571e6e
Name: pvc-340feaeb-6d23-40a7-b9af-41fdbf571e6e
Namespace: longhorn-system
Labels: longhornvolume=pvc-340feaeb-6d23-40a7-b9af-41fdbf571e6e
recurring-job-group.longhorn.io/default=enabled
setting.longhorn.io/remove-snapshots-during-filesystem-trim=ignored
setting.longhorn.io/replica-auto-balance=ignored
setting.longhorn.io/snapshot-data-integrity=ignored
Annotations:
API Version: longhorn.io/v1beta2
Kind: Volume
Metadata:
Creation Timestamp: 2023-05-08T08:56:17Z
Finalizers:
longhorn.io
Generation: 35
Managed Fields:
API Version: longhorn.io/v1beta2
Fields Type: FieldsV1
fieldsV1:
f:status:
.:
f:actualSize:
f:cloneStatus:
.:
f:snapshot:
f:sourceVolume:
f:state:
f:conditions:
f:currentImage:
f:currentNodeID:
f:expansionRequired:
f:frontendDisabled:
f:isStandby:
f:kubernetesStatus:
.:
f:lastPVCRefAt:
f:lastPodRefAt:
f:namespace:
f:pvName:
f:pvStatus:
f:pvcName:
f:workloadsStatus:
f:lastBackup:
f:lastBackupAt:
f:lastDegradedAt:
f:ownerID:
f:pendingNodeID:
f:remountRequestedAt:
f:restoreInitiated:
f:restoreRequired:
f:robustness:
f:shareEndpoint:
f:shareState:
f:state:
Manager: longhorn-manager
Operation: Update
Subresource: status
Time: 2023-05-08T08:56:17Z
API Version: longhorn.io/v1beta2
Fields Type: FieldsV1
fieldsV1:
f:metadata:
f:finalizers:
.:
v:"longhorn.io":
f:labels:
.:
f:longhornvolume:
f:recurring-job-group.longhorn.io/default:
f:spec:
.:
f:Standby:
f:accessMode:
f:backingImage:
f:baseImage:
f:dataLocality:
f:dataSource:
f:disableFrontend:
f:encrypted:
f:engineImage:
f:fromBackup:
f:frontend:
f:lastAttachedBy:
f:migratable:
f:migrationNodeID:
f:nodeID:
f:numberOfReplicas:
f:replicaAutoBalance:
f:restoreVolumeRecurringJob:
f:revisionCounterDisabled:
f:size:
f:snapshotDataIntegrity:
f:staleReplicaTimeout:
f:unmapMarkSnapChainRemoved:
Manager: longhorn-manager
Operation: Update
Time: 2023-05-10T06:43:43Z
Resource Version: 16705555
UID: bfe2521d-0808-4e8f-9de6-6d8afbd02296
Spec:
Standby: false
Access Mode: rwx
Backing Image:
Base Image:
Data Locality: disabled
Data Source:
Disable Frontend: false
Disk Selector:
Encrypted: false
Engine Image: proxy.harbor/local-xdr/longhorn-engine:v1.4.1
From Backup:
Frontend: blockdev
Last Attached By:
Migratable: false
Migration Node ID:
Node ID: dmoc-fc73fb8e9abd
Node Selector:
Number Of Replicas: 3
Recurring Jobs:
Replica Auto Balance: ignored
Restore Volume Recurring Job: ignored
Revision Counter Disabled: false
Size:<PHONE_NUMBER>0
Snapshot Data Integrity: ignored
Stale Replica Timeout: 30
Unmap Mark Snap Chain Removed: ignored
Status:
Actual Size:<PHONE_NUMBER>2
Clone Status:
Snapshot:
Source Volume:
State:
Conditions:
Last Probe Time:
Last Transition Time: 2023-05-08T08:56:17Z
Message:
Reason:
Status: False
Type: toomanysnapshots
Last Probe Time:
Last Transition Time: 2023-05-08T08:56:17Z
Message:
Reason:
Status: True
Type: scheduled
Last Probe Time:
Last Transition Time: 2023-05-08T08:56:17Z
Message:
Reason:
Status: False
Type: restore
Current Image: proxy.harbor/local-xdr/longhorn-engine:v1.4.1
Current Node ID: dmoc-fc73fb8e9abd
Expansion Required: false
Frontend Disabled: false
Is Standby: false
Kubernetes Status:
Last PVC Ref At:
Last Pod Ref At:
Namespace: xdrsec
Pv Name: pvc-340feaeb-6d23-40a7-b9af-41fdbf571e6e
Pv Status: Bound
Pvc Name: alpha-app-data-10001001
Workloads Status:
Pod Name: alpha-app-10001001-dbddd86d-7j6hv
Pod Status: Running
Workload Name: alpha-app-10001001-dbddd86d
Workload Type: ReplicaSet
Pod Name: alpha-app-10001001-taskmanager-2-3
Pod Status: Running
Workload Name: alpha-app-10001001
Workload Type: Deployment
Last Backup:
Last Backup At:
Last Degraded At:
Owner ID: dmoc-fc73fb8e9abd
Pending Node ID:
Remount Requested At: 2023-05-31T08:30:02Z
Restore Initiated: false
Restore Required: false
Robustness: healthy
Share Endpoint: nfs://<IP_ADDRESS>/pvc-340feaeb-6d23-40a7-b9af-41fdbf571e6e
Share State: running
State: attached
Events:
Type Reason Age From Message

Hello @shaolila, even when using the block device frontend, the Longhorn engine exposes itself as an iSCSI target and workloads communicate with it via an iSCSI initiator. iSCSI is always involved when using Longhorn.


Better readability of SubnetInfo.toString()

Added missing newline to SubnetInfo.toString() for better readability.

Done differently in git master.


'null' cast type

Added 'null' cast type to cause any falsy values to be set to null (i.e. instead of 0 in an integer database field).

This breaks everything.


update docs and fix .readthedocs build

coverage: 95.821%. remained the same
when pulling d6badf7c648cf14351573b24f4e3e31d86766d01 on feature/fix-docs-build
into 748fb64c15b45cff33fe54c6b028e2db84392c85 on main.


Add delivery summary view

Description
Nowhere near as pretty as what is currently on https://wcrp-cmip.org/cmip7-task-teams/forcings/, but might be easier to maintain while we wait for a front-end interested person.
Checklist
Please confirm that this pull request has done the following:

[x] Documentation added (where applicable)
[x] Changelog item added to changelog/

@znichollscr looks good to me, other than the CI check failure below - looks like HTML pages are not up-to-date

Preview here (screenshot below): https://input4mips-controlled-vocabularies-cvs--111.org.readthedocs.build/en/111/database-views/input4MIPs_delivery-summary_CMIP6Plus.html

looks good to me, other than the CI check failure below - looks like HTML pages are not up-to-date

Oops, fixed now so will merge


Filter doens't work on synonyms in Oracle

System information:

Operating system (distribution) and version: Windows 10 version 20H2 Build 19042.804
DBeaver version: <IP_ADDRESS>102141704
Additional extensions

Connection specification:

Database name and version: Oracle database 12c
Driver name: Oracle Client 12 - <IP_ADDRESS>.0 - oracle.jdbc.OracleDriver library <IP_ADDRESS>
Do you use tunnels or proxies (SSH, SOCKS, etc)? No

Describe the problem you're observing:
Filter doesn't work on Synonyms in Oracle
Steps to reproduce, if exist:
Open a database connection
Type (part of) an existing trigger in the  filter
Open synonyms => all synonyms visible, not only the ones matching the filter

Include any warning/errors/backtraces from the logs

Implemented:

verified


Missing image in https://www.tensorflow.org/api_docs/python/tf/gather

System information
n/a
Describe the problem
https://www.tensorflow.org/api_docs/python/tf/gather includes an image, https://www.tensorflow.org/api_docs/images/Gather.png, but this does not exist.  Gather.png doesn't seem to exist anywhere in the TF repository.

I think this has already be fixed by this commit: https://github.com/tensorflow/tensorflow/commit/7c3ad6569611aac36fd2527030bf98fb8756919f
Seems that the tensorflow.org does not update.

Hi, the website still appears not to have been updated, and so the issue I reported still manifests.
Can we leave this open until the website is updated?  Or if there's a bug for the fact that we don't update the website frequently enough, I'd be OK dup'ing this to that one.

Sure.
@wolffg @martinwicke on tensorflow.org refresh rate.

Website has been updated. Closing this.


Add .gitignore to default project scaffold

Would be nice if projects shipped with a best-practice .gitignore file.

@atrauzzi can you log this in the https://github.com/aspnet/Tooling/issues repo? That's where we track tooling/template issues. Thanks!

Done! https://github.com/aspnet/Tooling/issues/74


hsr: add support to HSR/PRP interface

Please notice that HSR and PRP interface are represented by the same driver [1]. In order to decide the protocol to be used by the HSR interface the protocol field was added. By default, the protocol used is HSR.
Example:
---
interfaces:
  - name: hsr0
    type: hsr
    state: up
    hsr:
      port1: eth1
      port2: eth2
      supervision-address: 70:FF:76:1C:0E:8D
      multicast-spec: 40
      protocol: prp

[1] https://lwn.net/Articles/826386/

This cannot be merged until the nispor PR is merged and there is a release

And I see the random failure on ERROR at setup of test_auto_manage_linux_ignored_ports recently on the CI, maybe it is worthy to take a look at it as a separate task (I can create the jira issue to track this).

And I see the random failure on ERROR at setup of test_auto_manage_linux_ignored_ports recently on the CI, maybe it is worthy to take a look at it as a separate task (I already created the jira issue to track this).
input = None, capture_output = False, timeout = None, check = True
popenargs = (['ip', 'link', 'add', 'dummy2', 'type', 'dummy'],)
kwargs = {'close_fds': True, 'env': None, 'stderr': -1, 'stdout': -1}
process = <Popen: returncode: 2 args: ['ip', 'link', 'add', 'dummy2', 'type', 'dummy']>
stdout = b'', stderr = b'RTNETLINK answers: File exists\n', retcode = 2

It seems that the cleanup of some previous tests fails to remove dummy2 interface.

Should be fixed now.

There is a bug on kernel side and nispor is reporting multicast_spec always zero. The multicast spec is being set correctly on supervision_address so it is working fine. The bug is just on the reporting of the property.
I am creating a patch for the kernel but it is something that will take time. In order to workaround it, we parse the value directly from supervison_address.

The test failing is because the image needs to be rebuild.


Create documentation on website

Move documentation from README to https://maccy.app/docs

Make sure to document steps in #125.


fix: DataGrid Resizable Columns not working if inside PullToRefresh

🐛 Bug Report
If, inside a pulltorefresh component, we add a Datagrid with resizable columns, this will not work as expected (it will resize the wrong column, etc)

💻 Repro or Code Sample
https://github.com/microsoft/fluentui-blazor/assets/36199751/c3b0787b-6b67-47a7-b97a-5ecf6cba570d
https://github.com/microsoft/fluentui-blazor/assets/36199751/8709c80a-c691-4926-96de-d9d5ba7b3c31

🤔 Expected Behavior
as the one without PullToRefresh

😯 Current Behavior

💁 Possible Solution

🔦 Context

🌍 Your Environment

OS & Device: [e.g. MacOS, iOS, Windows, Linux] on [iPhone 7, PC] Any
Browser [e.g. Microsoft Edge, Google Chrome, Apple Safari, Mozilla FireFox] Any
.NET and Fluent UI Blazor library Version [e.g. 8.0.2 and 4.4.1] NET 8, FluentUi 4.6.1

I don't think this is a scenario we are going to support. PullToRefresh is meant for simple content structures like a listbox or set of divs. Not for something complex like the DataGrid. Besides, when used on the desktop, it uses an emulation for touch. I'm guessing that is where the issue is coming from


start error

Issue description
1.open firefly
2.a error window
3. it cant input only one  PIN ,cusor can't auto move to next position
4. I  move cusor in mouse one by one
5. input correct PIN, but report password error
Firefly version
1.2
OS details
windows
Can the issue be reliably reproduced?
Yes
Steps to reproduce the issue
1.open firefly
2.a error window
3. it cant input only one  PIN ,cusor can't auto move to next position
4. I  move cusor in mouse one by one
5. input correct PIN, but report password error
...
Expected behaviour
login success
Actual behaviour
I can‘t login firefly
Errors
App Version: 1.2.0
platform: win32
platformVersion: 10.0.17134
platformArchitecture: x64
cpuCount: 4
totalMem: 3979.2 MB
freeMem: 1403.2 MB
userPath: C:\Users\GoodLuck\AppData\Roaming\Firefly
Error Type: Main Unhandled Promise Rejection
Error: Uncaught Error: net::ERR_CONNECTION_TIMED_OUT

Do you use a VPN or work PC?

I don't use vpn ,it pop error.when i use vpn，it doesn't pop error.
but i can only input the first PIN，i must move to the next one with mouse. (pic 1)
i input sex correct PIN, it still tell me password is wrong.(pic 2)
------------------ Original ------------------
From: MiKeF05 @.>
Date: Sun,Dec 19,2021 9:45 PM
To: iotaledger/firefly @.>
Cc: goodluck518 @.>, Author @.>
Subject: Re: [iotaledger/firefly] start error (Issue #1741)
Do you use a VPN or work PC?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you authored the thread.Message ID: @.***>

@goodluck518 What do you mean with you can only input first PIN? When you login to your profile you need the PIN. Once you are in the profile you need the password to unlock your wallet if you use a normal software profile.

I figure it out.
It's weird.
Firstly, iput a arbitrary char,then delete it. After that,input six arbitrary chars.The six chars won't be diplayed.Finally, input my password.
I can login my accout ,but i don't know why it like this.
Anyway,it really works.
Thank you very much！
在 2021-12-24 19:16:45，"MiKeF05" @.***> 写道：
@goodluck518 What do you mean with you can only input first PIN? When you login to your profile you need the PIN. Once you are in the profile you need the password to unlock your wallet if you use a normal software profile.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you were mentioned.Message ID: @.***>

Okay great. Would be good if you close this issue.

Everything goes well!


Hydrate function cannot work with string[] or number[]

Steps to reproduce:

Set these options:

{
  ...
  gutters: ['CodeMirror-linenumbers', 'CodeMirror-lint-markers'],
}

Render your component
Make component to be rendered again so componentWillReceiveProps is called
hydrate is called
Options comparison is called

Actual result:
['CodeMirror-linenumbers', 'CodeMirror-lint-markers'] !== ['CodeMirror-linenumbers', 'CodeMirror-lint-markers'] and this.editor.setOption is called with the same options.
Expected result:
Same arrays of simple values sould be compared gracefully so no unnecessary setOption is executed.

@alexgoncharwix - if you'd like to submit a PR that would be great otherwise will close this one in a few days


UTM HV installed via TrollStore 2 does not run any VMs, displays error saying running VMs is not supported when iOS is unmodified

Describe the issue
UTM HV version 4.4.4 installed via TrollStore 2.0.7 displays an error when launched that reads "Your version of iOS does not support running VMs while unmodified. You must either run UTM while jailbroken or with a remote debugger attached." I thought UTM-HV does not require a jailbreak, the iOS compatibility table specifically lists HV as "Non-jailbroken iOS version (TrollStore)", so I'm not sure why this error message is being displayed. I understand that hypervisor requires M1 but I have that disabled in all of my VMs. Attempting to run any VM will result in a black screen whereas the same VM files can boot normally in UTM SE.
Configuration (required)

UTM Version: UTM HV 4.4.4
OS Version: iPadOS 16.1
Device Model: iPad Mini 6th generation
Is it jailbroken (name jailbreak used)?: Non-jailbroken
How did you install UTM?: TrollStore 2.0.7

Duplicate of #5216


Handle Redirection or Navigation Post App Deployment in JupyterLab iframe

Reference Issues or PRs
Fixes #508
What does this implement/fix?
Put a x in the boxes that apply

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds a feature)
[ ] Breaking change (fix or feature that would cause existing features not to work as expected)
[ ] Documentation Update
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no API changes)
[ ] Build related changes
[ ] Other (please describe):

Testing

[x] Did you test the pull request locally?
[x] Did you add new tests?

Screenshots

Any other comments?

Added new success page with link to open app in new tab
Updated applicable pages to direct to this page when headless

@jbouder This looks great! The only thing I noticed locally is that when I click on the Deploy App button, it redirects to the bottom of the success page - I then have to scroll up to see the message (see the attached GIF). As it's largely a blank screen, this can be a little confusing for users.
Is it possible/in scope to redirect to the top of the success page?

Confirmed that this is now working locally. Thanks @jbouder!


[release-v1.31] Increase probes timeout for calico components

Description
This changeset increases k8s liveness and readiness probe period and timeout for various Calico components. Before this change, most of the components are using k8s default TimeoutSeconds (1s) and PeriodSeconds (10s). These defaults cause some components to become unhealthy quickly and got restarted by k8s engine, especially under a busy cluster or with long running tasks.
We have tuned period and timeout seconds as follows:

liveness probe: bump timeout to 5s and period to 60s. One component will be restarted after it fails to response for 3 minutes (with default FailureThreshold 3).
readiness probe: bump timeout to 5s and period to 30s. One component will be removed from service after 1.5 minute (with default FailureThreshold 3).
certain components (like fluentd or elasticsearch) will have a longer timeout, period, and/or failure threshold.

Pick https://github.com/tigera/operator/pull/2746 into release v1.31 branch.
For PR author

[ ] Tests for change.
[ ] If changing pkg/apis/, run make gen-files
[ ] If changing versions, run make gen-versions

For PR reviewers
A note for code reviewers - all pull requests must have the following:

[ ] Milestone set according to targeted release.
[ ] Appropriate labels:

kind/bug if this is a bugfix.
kind/enhancement if this is a a new feature.
enterprise if this PR applies to Calico Enterprise only.

/merge-when-ready delete-branch

OK, I will merge the pull request when it's ready, leave the commits as is when I merge it, and delete the branch after I've merged it.

I'm sorry but I failed delete the branch after merging the pull request.


Better error handling of devices without container support

Describe the feature
Installing and starting the docker-acap on a device without container support gives this output in the system log,
[ ERR ] acapctl: code 1: ../git/src/util.c:454: Failed running "systemctl restart --quiet 'sdkdockerdwrapper.service'"
[ WARNING ] acapmanager: acapmanager-dbus.c:1109 Failed to start dockerdwrapper
[ WARNING ] acapmanager: acapmanager-dbus.c:381 acapctl error 1: Internal error, contact maintainer.

which doesn't explain what the problem is.
A quick way to get more information in the system log would be to check for container support in postinstall script and print an error message. This will probably not stop the output above but could give additional information that container support is missing on this device.
A better way could be to not even install the application, but uncertain how much work it would involve.
Added value
I think it would be valuable to have a better handling when the device lacks container support

Is there a list of supported devices?

Hi @david-molnar-oculai
Supported devices can be found on the Axis.com Product Selctor page, by selecting container support under Hardware platform in the menu on the left.


Request: Show 404 errors for all resource file types

Description
Currently the extension will report 404s thrown for missing CSS and JavaScript resources.
However the extension does not report 404s for missing HTML files (ex. Polymer) or images.
Value added
Reporting 404s thrown for all resources will assist developers in identifying missing/deprecated links to all critical resources.
This would be of assistance during development and in QA.

There is option Ignore missing images & etc files error that is enabled by default. Did you tried to disable it?

Regarding handling errors for some missing HTML files. Sometime it's not possible technically, but to be sure, I need some live example for tests. Please attach link of page where 404 error of some resource file is not handled by JSEN, then I can try to fix it.

My apologies. I scanned through the options and somehow missed the option Ignore missing images & etc files error.
I only noted the missing HTML 404 when developing with Polymer/Web Components. Other than that scenario I don't think it's likely to run into HTML imports. If if I find a live example I will let you know!
Thanks for your time and assistance. Feel free to close.


Angular 13: SyntaxError: Cannot use import statement outside a module

After updating to<EMAIL_ADDRESS>I keep getting this error in my jest tests (application itself works fine):
C:\dev\prj\Angular13Test\node_modules\@ngx-translate\core\fesm2015\ngx-translate-core.mjs:1
    ({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,jest){import * as i0 from '@angular/core';
                                                                                ^^^^^^

    SyntaxError: Cannot use import statement outside a module

      1 | import { Component } from '@angular/core';
    > 2 | import {TranslateService} from '@ngx-translate/core';
        | ^
      3 |
      4 | @Component({
      5 |   selector: 'app-root',

      at Runtime.createScriptFromCode (node_modules/jest-runtime/build/index.js:1728:14)
      at Object.<anonymous> (src/app/app.component.ts:2:1)

Any idea what the issue might be?
I also created a simple new Angular project, added ngx-translate + jest and added the TranslateService in the constructor of the AppComponent. It has the same issue.

You will hav to update to the new version of jest angular preset (currently it's  11.0.0.rc2) as angular libs are now ESM only

I'm using "@angular-builders/jest": "^13.0.0-beta.1" which uses jest-angular-preset, They use 11.0.0.rc1 at the moment, but 11.0.0.rc2 has the same issue.

Apparently this module needs to be excluded in jest using transformIgnorePatterns as explained here:  https://github.com/thymikee/jest-preset-angular/issues/1149#issuecomment-963506942.

Great, I'll try to add a note about that


⚠ Bofrost.be has degraded performance

In 04ea3af, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1514 ms

Resolved: Bofrost.be performance has improved in 5f6254c.


Update manifests/x/xanderfrangos/twinkletray/1.14.1/xanderfrangos.twinkletray.locale.en-US.yaml

Fixes an issue where this package has multiple different monikers
Microsoft Reviewers: Open in CodeFlow

[Policy] Reset Labels


Guide for installing Kubeflow on EKS does not work

This guide (https://www.kubeflow.org/docs/aws/deploy/install-kubeflow/) currently does not work. The step  ${KUBEFLOW_SRC}/scripts/kfctl.sh generate platform creates a template using ksctl.io/v1alpha4 which is not compatible with the newest version of eksctl .
The generated template needs to be manually changed to ksctl.io/v1alpha5.
Yesterday, after making that change the rest the worked, except that kubectl get ingress -n istio-system produces an blank in the ADDRESS column. That prevents you from performing the next steps unless you do manual port forwarding.
Today I tried this again, and now the ${KUBEFLOW_SRC}/scripts/kfctl.sh apply k8s command doesn't even run through, failing with:
ERROR find objects: RUNTIME ERROR: Unexpected type null, expected array
        vendor/kubeflow/aws/istio-ingress.libsonnet:(199:12)-(202:6)    object <anonymous>
        <extvar:__ksonnet/components>:41:17-29  thunk from <object <anonymous>>
        vendor/kubeflow/aws/istio-ingress.libsonnet:204:45-48   thunk from <function <anonymous>>
        lib/ksonnet-lib/v1.12.6/k.libsonnet:96:24-29    thunk from <function <anonymous>>
        lib/ksonnet-lib/v1.12.6/k.libsonnet:97:36-41    thunk from <function <anonymous>>
        lib/ksonnet-lib/v1.12.6/k.libsonnet:97:27-42    function <anonymous>
        lib/ksonnet-lib/v1.12.6/k.libsonnet:96:13-30    function <anonymous>
        vendor/kubeflow/aws/istio-ingress.libsonnet:204:26-50   function <anonymous>
        <extvar:__ksonnet/components>:41:3-30   object <anonymous>
        vendor/kubeflow/application/application.libsonnet:104:21-31     thunk from <object <anonymous>>
        vendor/kubeflow/application/application.libsonnet:104:12-32     object <anonymous>
        vendor/kubeflow/application/application.libsonnet:(99:32)-(110:13)      function <anonymous>
        <std>:235:50-62 function <anonymous>

        <std>:762:38-46 thunk from <thunk from <function <aux>>>
        <std>:815:34-35 function <anonymous>
        <std>:762:24-47 thunk from <function <aux>>
        <std>:762:9-57  function <aux>
        <std>:763:5-28  function <anonymous>
        <std>:815:5-46  function <anonymous>
        ...
        vendor/kubeflow/application/application.libsonnet:207:30-77     object <anonymous>
        vendor/kubeflow/application/application.libsonnet:374:9-25      thunk from <thunk from <object <anonymous>>>
        <std>:762:38-46 thunk from <thunk from <function <aux>>>
        <std>:815:34-35 function <anonymous>
        <std>:762:24-47 thunk from <function <aux>>
        <std>:762:9-57  function <aux>
        <std>:763:5-28  function <anonymous>
        <std>:815:5-46  function <anonymous>
        vendor/kubeflow/application/application.libsonnet:(372:11)-(385:6)      object <anonymous>
        <extvar:__ksonnet/components>:15:19-31  thunk from <object <anonymous>>
        vendor/kubeflow/application/application.libsonnet:387:36-39     thunk from <function <anonymous>>
        vendor/kubeflow/common/util.libsonnet:206:34-37 thunk from <function <anonymous>>
        lib/ksonnet-lib/v1.12.6/k.libsonnet:96:24-29    thunk from <function <anonymous>>
        lib/ksonnet-lib/v1.12.6/k.libsonnet:97:36-41    thunk from <function <anonymous>>
        lib/ksonnet-lib/v1.12.6/k.libsonnet:97:27-42    function <anonymous>
        lib/ksonnet-lib/v1.12.6/k.libsonnet:96:13-30    function <anonymous>
        vendor/kubeflow/common/util.libsonnet:206:15-39 function <anonymous>
        vendor/kubeflow/application/application.libsonnet:387:26-40     function <anonymous>
        <extvar:__ksonnet/components>:15:5-32   object <anonymous>
        During manifestation

I would recommend that someone goes through this guide again from start to finish and ensures that all steps are working.

/cc @Jeffwan

@karlschriek Thanks for reporting this issue.
We recently have one PR merged into upstream and brings a bug here.
Please check https://github.com/kubeflow/kubeflow/pull/3302.  You can manually change value in ${KUBEFLOW_SRC}/${KFAPP}/ks_app/vendor/kubeflow/aws/istio-ingress.libsonnet this file before it merged.
For eksctl version problem, we talked with eksctl team and add backward compatibility in next release. I have a PR (https://github.com/kubeflow/kubeflow/pull/3280) pending for this change as well. At the same time, I will submit a PR to add some notes in documentation.

@karlschriek  Please have another try. I tested it and it's working well now.

Yes, this works thanks. There is however no guarantee that it won't break because of some other upstream change. Wouldn't it make sense to change this guide to work with specificly defined versions of ekctl, kfctl etc. rather than using master?

@karlschriek The original plan was use 0.5 branch as stable branch and new coming changes are against master. At the same time, I am working on golang version and it will be release soon and we will change to that version and get ride of libs management. Let me double check schedule, if that's going to be available soon, we will do a doc upgrade. If it comes later, I will change documentation to   against 0.5.

Thanks @Jeffwan and @karlschriek It looks as if this issue is solved for now. I'll close it, but please do re-open it if there's still work to be done at this time.
/close


fix missing link

when I clicked "adaptive app" link in https://flet.dev/docs/getting-started/custom-controls,
I got to https://flet.dev/docs/getting-started/custom-controls/adaptive-apps#custom-adaptive-controls, which was a wrong link.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Fix for missing initialState in reducer.normalize

Attempts to use reducer.normalize as documented would result in the following error:
Uncaught TypeError: Cannot read property 'myField' of undefined

I've some unit tests and a fix that sets initialState in reducer.normalize

I :heart: PRs with tests and with a lower number than the issue they fix. Excellent work, @jimpick. :+1:

v1.6.8


Confusing instructions

If you just follow the portal instructions deploying policy on AKS will error out with AKS-AzurePolicyAutoApprove is missing as an error. Please modify the example so that # Feature register: enables installing the add-on
az feature register --namespace Microsoft.ContainerService --name AKS-AzurePolicyAutoApprove is actually put as mandatory after following the portal registration steps.

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

ID: 70f6ba62-b758-3eeb-f58f-5a7d1255dcf6
Version Independent ID: f8800998-e090-bd76-8d8a-5b57f9c1fde9
Content: Learn Azure Policy for Azure Kubernetes Service - Azure Policy
Content Source: articles/governance/policy/concepts/rego-for-aks.md
Service: azure-policy
GitHub Login: @DCtheGeek
Microsoft Alias: dacoulte

@advoicu Thanks for your comment. We are actively investigating and will get back to you shortly.

#reassign:DCtheGeek

@advoicu Thanks for the feedback. This appears to be a result of the Azure Policy for AKS feature being rolled out across the regions still.  If your region says that the feature is required, it  hasn't gotten the update yet. Adding @RamyasreeChakka for confirmation and the updated list or regions.  What region were you doing this in?
@MicrosoftDocs/azure-cxp-triage #in-progress

@advoicu Thanks for trying out. After registering the feature flag, ContainerService resource provider should be re-registered in the subscription in order to propagate the changes. We identified the 2nd step is missing on portal side and the changes will be deployed soon to portal.
Also as @DCtheGeek mentioned above, changes are rolling out region by region. Please verify your cluster region is listed in deployed regions here https://github.com/Azure/AKS/issues/1529

@advoicu Thanks for pointing this out! Since it's being fixed in portal and the list of deployed regions was linked in @RamyasreeChakka comment, I'm going to close this issue.
@MicrosoftDocs/azure-cxp-triage #please-close


Add black to CI [wip]

What does this PR do?
Closes #482.
I'll close this PR if we decide to introduce yapf instead of black in the linked issue.
Before submitting

[ ] Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
[ ] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure your PR does only one thing, instead of bundling different changes together?
[ ] Did you make sure to update the documentation with your changes?
[ ] Did you write any new necessary tests? [not needed for typos/docs]
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] If you made a notable change (that affects users), did you update the CHANGELOG?

PR review

[ ] Is this pull request ready for review? (if not, please submit in draft mode)

Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.
Did you have fun?
Make sure you had fun coding 🙃

Closing as we introduce yapf instead of black.

Closing as we introduce yapf instead of black.


A Gauge metric not working?

Hi all,
I've tried to create one gauge metric within a small Python project:
# at file level
m = Gauge('m', 'Number of ...')
...

# some 'init' section
m.set(0.0)
...

# setting to a new value somewhere within a code
m.set(new_value)
...

However, when I get metrics (via GET .../metrics) the value of the metric m is stil zero (0.0):
# HELP m Number of ...
# TYPE m gauge
m 0.0

I've done some small tests and I've found a strange thing as follows:
From the snippet
...
print("BEFORE m._samples(): {}".format(m._samples()))
m.labels(l='x').set(alive)
print("AFTER m._samples(): {}".format(m._samples()))
...

I've got the output:
BEFORE m._samples(): (('', {}, 0.0),)
AFTER m._samples(): (('', {}, 1.0),)

What am I missing?
Some system info:
$ pip3 list --user
...
prometheus-client (0.4.2)
...
Xubuntu:
$ lsb_release -a
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.5 LTS
Release:        16.04
Codename:       xenial
$

NB Other metric (a Counter one) works as expected.

I can't reproduce this, can you show a full minimal program?

I can't reproduce this, can you show a full minimal program?

Hi Brian,
I've checked my code again and found some hidden typos, :-/.
So everything works as expected now.
Sorry for disturbing you,
haw.

No problem.


#90 Substitute URL string with Uri class

Closes #90

Wow, well done. I was expecting this would be harder :)


Add footer social links and email signup

@oznekenzo this is the slack email signup that we discussed yesterday for inspiration for our footer email signup.

Much better! Let's try a few more tweaks, then good to go!

remove the background on the input and button, leaving outlines
change button to say "Subscribe"

Ah then nm, wouldn't worry about it, this looks good enough for now then! @oznekenzo


feat:added support to the Observability DA to create COS resources in a different account to the Observability resources

Description
Added new variables as:

ibmcloud_cos_api_key: API key for creating COS in a different account.
use_existing_cos_resource_group: Boolean to use an existing COS resource group.
cos_resource_group_name: Name of the resource group for COS.
skip_icl_cos_auth_policy & skip_at_cos_auth_policy: Control IAM policies for Cloud Logs and Activity Tracker to access COS.

Updated code logic as:

Provider dynamically switch between ibmcloud_api_key and ibmcloud_cos_api_key when COS is in a different
account.
Provision COS in a different account and manage resource groups as needed.
IAM policies for Cloud Logs and Activity Tracker to access COS, with an option to skip policy creation.
Support cross-account COS setup for Log Analysis and Activity Tracker with dependencies and a delay.

Testing:
Tested the following 4 cases , successfully passing all 4.

KMS and COS in different accounts.
Only COS in a different account.
Only KMS in a different account.
Both KMS and COS in the same default account.

Issue: https://github.com/terraform-ibm-modules/terraform-ibm-observability-da/issues/166
Release required?

[ ] No release
[ ] Patch release (x.x.X)
[x] Minor release (x.X.x)
[ ] Major release (X.x.x)

Release notes content

Run the pipeline
If the CI pipeline doesn't run when you create the PR, the PR requires a user with GitHub collaborators access to run the pipeline.
Run the CI pipeline when the PR is ready for review and you expect tests to pass. Add a comment to the PR with the following text:
/run pipeline

Checklist for reviewers

[ ] If relevant, a test for the change is included or updated with this PR.
[ ] If relevant, documentation for the change is included or updated with this PR.

For mergers

Use a conventional commit message to set the release level. Follow the guidelines.
Include information that users need to know about the PR in the commit message. The commit message becomes part of the GitHub release notes.
Use the Squash and merge option.

I have made code changes and currently  testing cross-account support of COS creation using @Ak-sky's sub-account,

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

@maheshwarishikha @Khuzaima05 Test is failing:
TestRunExistingResourcesInstances 2024-10-10T10:52:56Z logger.go:66: │ Error: Invalid function argument
TestRunExistingResourcesInstances 2024-10-10T10:52:56Z logger.go:66: │
TestRunExistingResourcesInstances 2024-10-10T10:52:56Z logger.go:66: │   on main.tf line 24, in locals:
TestRunExistingResourcesInstances 2024-10-10T10:52:56Z logger.go:66: │   24:   existing_kms_guid           = var.existing_cos_kms_key_crn == null ? var.existing_kms_instance_crn != null ? element(split(":", var.existing_kms_instance_crn), length(split(":", var.existing_kms_instance_crn)) - 3) : tobool("The CRN of the existing KMS is not provided.") : element(split(":", var.existing_cos_kms_key_crn), length(split(":", var.existing_cos_kms_key_crn)) - 3)
TestRunExistingResourcesInstances 2024-10-10T10:52:56Z logger.go:66: │     ├────────────────
TestRunExistingResourcesInstances 2024-10-10T10:52:56Z logger.go:66: │     │ while calling tobool(v)
TestRunExistingResourcesInstances 2024-10-10T10:52:56Z logger.go:66: │
TestRunExistingResourcesInstances 2024-10-10T10:52:56Z logger.go:66: │ Invalid value for "v" parameter: cannot convert "The CRN of the existing
TestRunExistingResourcesInstances 2024-10-10T10:52:56Z logger.go:66: │ KMS is not provided." to bool; only the strings "true" or "false" are
TestRunExistingResourcesInstances 2024-10-10T10:52:56Z logger.go:66: │ allowed.
TestRunExistingResourcesInstances 2024-10-10T10:52:56Z logger.go:66: ╵

Please address as a priority. Thanks

/run pipeline

/run pipeline

I have deleted few targets, running pipeline again . It should get pass now.

All tests for the instances variation have passed, and since this PR is not touching any code in the agents variation, Im proceeding with merge here.
--- PASS: TestInstancesInSchematics (859.47s)
--- PASS: TestRunExistingResourcesInstances (548.16s)

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

GitHub release
v1.18.0

Your semantic-release bot :package::rocket:


zts-svccert

support explicitly specify ip to generate SAN cert

Thank you for submitting this pull request, however I do not see a valid CLA on file for you. Before we can merge this request please visit https://yahoocla.herokuapp.com/ and agree to the terms. Thanks! :smile:

@wcpan
please remove the chagne on line 212 which breaks the gofmt check:
[INFO]  	transport := &http.Transport{
[INFO] -		Proxy:                 http.ProxyFromEnvironment,
[INFO] +		Proxy: http.ProxyFromEnvironment,
[INFO]  		ResponseHeaderTimeout: 30 * time.Second,
[INFO]  	}

#566 address the changes in this PR.


DepthOcclusion limited to 8 m.

The current implementation of the DepthOcclusion functionality uses still the old limitation of the DepthAPI, which is only around 8 m. With a newer Release of ARCore the new max range is around 65 m

For me, these 2 lines should be modified:
https://github.com/SceneView/sceneview-android/blob/880c9dfbe34a4be159928c8037e88236a612a3a3/arsceneview/src/main/java/io/github/sceneview/ar/camera/ArCameraStream.kt#L280
https://github.com/SceneView/sceneview-android/blob/880c9dfbe34a4be159928c8037e88236a612a3a3/arsceneview/src/main/java/io/github/sceneview/ar/camera/ArCameraStream.kt#L285

You can create a pull request with the proposed changes.

https://github.com/SceneView/sceneview-android/pull/199

@AdrienBotrel
Great! Thank you for your contribution!

This issue can be closed now

Merged in main


Improve Dockerfile

@williamboman, actually, what is the benefit of moving the Dockerfile from the root dir to a lounge/ subdir?

@williamboman, actually, what is the benefit of moving the Dockerfile from the root dir to a lounge/ subdir?

I think putting Dockerfiles within directories that match the image name is neat, makes it easier to add additional images to the repo in the future as well.

@williamboman, assign me to the PR when it is ready for review and merge :-)

I'm working on some additional stuff, adding dont merge for now

@williamboman, ping? :)

👍


import modular CommonCrypto header if available

With Xcode 10 and swift 4.2 the CommonCrypto library seems to have gotten its long awaited modular header. So if it is available we do not need the Objective-C Bridging header anymore. It suffices to import the RNCryptor.swift file in a project. It is even possible to paste the content of the main file RNCryptor.swift into a swift playground on the iPad and you can then use all the Encryption/Decryption functionalities in the Playground.
With this change the project compiles normally on MacOS Xcode 10 and Swift 4.2 and all Tests still pass. I could not check linux build - but as the proven solution of importing Cryptor if the CommonCrypto headers are not found is used in the else if branch it should be ok.
Thank you Rob for this fantastic repository. I am thrilled that I can now use it standalone and even in swift playgrounds for iPad.

@rnapier is there any intention on having this merged in at some point?

Thank you for the PR!


Changed CommandServiceConfig constructor to public

Changed CommandServiceConfig constructor to public, so that it can be instantiated by projects implementing the library... so that commands can be registered.

This is unnecessary, you can look at this example on how to do it properly. 0.9.x is soon to be phased out, as 1.0 is nearing Beta. At this stage of 0.9.x's lifespan, I think this serves no good.

Oh great. Yeah I saw this documentation after the fact. http://rtd.discord.foxbot.me/en/legacy/features/commands.html
Thanks


@path function

Implement the function '@path' that converts a string or a list to a "path" to be followed to reach an element in a tree structure. E.g '@path(table, "/a/b")'.

Covered by the [] operator.


Is it possible to change the icons on the right side of task pane?

When I have multiple add-in task panes open, a new icon group appears on the right side of the task pane, as shown in the image below.

Is it possible to change the icons on this new tab?
Additional information:

On the ribbon, an image is assigned to each task pane. The image definition for sizes 16, 32, and 80 is included in the manifest.
The manifest contains a definition for a default add-in icon like this: <IconUrl DefaultValue="icon.png" />

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

ID: 50a89144-ac19-b28e-2842-5e2cbdb1cb00
Version Independent ID: cb59df19-9c22-de2c-0c46-7a1403312987
Content: Build your first PowerPoint task pane add-in - Office Add-ins
Content Source: docs/quickstarts/powerpoint-quickstart.md
Product: powerpoint
Technology: add-ins
GitHub Login: @o365devx
Microsoft Alias: o365devx

Hi @donlawatch,
Thank you for raising this question. @Rick-Kirkham, can you please assist?

Yes. You can change this. It is defined the IconUrl in element in the manifest. Just set the value of that element to the URL of the icon you want. Then re-sideload the add-in. You may have to Clear the Office cache to get Office to use the new icon file.
I'll update the docs to note this. In the meantime, since we're tracking it internally, I'll close this.

Hi @Rick-Kirkham
A URL value for IconUrl has already been set in the manifest file. The icon appears in the installed version of PowerPoint, but it does not appear on the right side of the task pane in the web version.

Installed version

Web version

A difference between in behavior between platforms is usually a bug. I suggest that you create an issue in the office-js repo. Give it a title that indicates the feature is broken in Office on the web.


trying to insert (store) a new resource via the api

I was able to get a simple but functioning REST API going by following all the tips and pointers available at this October's forum thread (http://octobercms.com/forum/post/how-to-building-restful-api), even with JWT authentication added to the whole thing, but now that I'm trying to insert a new resource via the API, it is not working. It's a simple "movies" resource with an auto-incrementing ID along with a couple other very simple columns, but upon issuing a properly authenticated POST request, this is what I get in return:
"SQLSTATE[HY000]: General error: 1364 Field 'title' doesn't have a default value (SQL: insert into watchlearn_movies_movies () values ())"
And here is the request:
POST /api/v1/movies HTTP/1.1
Host: tests029.app
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOjEsImlzcyI6Imh0dHA6XC9cL3Rlc3RzMDI5LmFwcFwvYXBpXC9hdXRoZW50aWNhdGUiLCJpYXQiOjE0NzkzMjQ4OTMsImV4cCI6MTQ3OTMyODQ5MywibmJmIjoxNDc5MzI0ODkzLCJqdGkiOiI4ZWZlZmExYmZkNGIzM2FiYjQ4MjJkMTlmZjY5NzAwZiJ9.8tJwehbN9cKRWCX_v-s1bvyvzHLqNFCMj7wVgvOhV9g
Content-Type: application/json
Cache-Control: no-cache
Postman-Token: 084fc61e-0f96-3d43-c6af-7d10330b5534
{
"title": "Movie Inserted Via REST",
"description": "This movie has been inserted via a REST request",
"year": 2016,
"slug": "movie-inserted-via-rest"
}
Oddly, all fields and their corresponding values are being ignored when it comes to building the SQL statement.
Maybe you can make something out of this.

Apparently, making the following edit inside RestController's store() method fixes the problem:
public function store()
{
    //$data = post();
    $data = Request::all();

    ...
}

But I'm not sure if this is the proper way to fix this.

Request::all() too can be used. Not a problem. I’m not sure why yours is failing.
I can help you with this but it would take a while. I’m presently engrossed with some project work.
Here’s some code from the old project where I made this work.
In routes.php
    // Routes that come with authorized token
    Route::group(['before' => 'jwt-auth'], function()
    {
      Route::get('me', function () {
          $user = LoginUtils::getUserFromToken();
          return Response::json($user);
        });
    });

This was for Facebook login.
In Plugin.php
    public function register()
    {
        $alias = AliasLoader::getInstance();
        $alias->alias('JWTAuth', 'Tymon\JWTAuth\Facades\JWTAuth');

        App::register('Tymon\JWTAuth\Providers\JWTAuthServiceProvider');
        App::register(‘Mohsin\FacebookLogin\Providers\JWTServiceProvider');
    }

And JWTServiceProvider.php had:

class JWTServiceProvider extends ServiceProvider
{
    /**
     * Register the service provider.
     *
     * @return void
     */
    public function register()
    {
        $this->registerMiddleware('jwt.auth', 'Tymon\JWTAuth\Middleware\GetUserFromToken');
        $this->registerMiddleware('jwt.refresh', 'Tymon\JWTAuth\Middleware\RefreshToken');
    }

    /**
     * Helper method to quickly setup middleware.
     *
     * @param string $alias
     * @param string $class
     */
    protected function registerMiddleware($alias, $class)
    {
        $this->app['router']->middleware($alias, $class);
    }
}

I hope yours has something of this sort. If so it should work fine. If you still cannot figure it out, it it possible for you to zip and email this plugin? I can take a look in any spare time and write back the solution. Upload somewhere and email it to me. Otherwise, I think it may take a while to figure out why you are facing the issue.


Update the content of the About Page on Weavly website

Please update the following sections on the about page: https://weavly.org/about/

[ ] Change the text in the "Who we are section" to this:
Weavly is a collaborative effort between the Inclusive Design Research Centre, IRIS Institute, and the Bridges Canada. This project is funded by the Innovation, Science and Economic Development Canada’s Accessible Technology Program.

[ ] Add one more tile for the IRIS institute and include:

Blurb: [TBD]

Image: [TBD]

link to their website: https://irisinstitute.ca/

[ ] Change the text in the "Connect" section to this:
Please email the project leads at the Inclusive Design Research Centre and the IRIS institute if you’d like to be part of this conversation.

@sepidehshahi any updates on the blurb and image?

No @chosww I'm still waiting for Colin to share that content


Incorrect display of cyrillic

Some skills in russian localization are translated, their names contain cyrillic.

Go to toolbox settings > Open Settings Folder
Download https://github.com/HasKha/GWToolboxpp/raw/dev/resources/Font_Cyrillic.ttf and put into this folder
Restart toolbox

Let me know if this sorts it

Thanks a lot, problem solved.


Stream manager performance improvement

Joint work with Maosong Fu.

@congwang and @maosongfu - CI is failing.

👍

Can you briefly describe how you improved the performance? Can we have some numbers that shows the performance difference?

@objmagic Added detailed descriptions for major changes and performance improvement.

@congwang @maosongfu - looks like all the tests passed, should we go ahead and merge it?

@congwang - is this completed?

This looks good to me. :+1:


Adding timeout to PipeablePage.waitForURL

I wonder where waitForLoadStateChange(predicate, timeout) async throws should live.
It powers both waitForLoadState() (which in turn powers page.goto) and waitForURL(predicate)
On the one hand, it's generic enough to be part of the PageLoadState and it simply provides syntactic sugar over its subscribeToLoadStateChange method that uses a callback. it's a higher-level method of the same functionality.
On the other hand, if it's there, then PageLoadState exposes two ways to do the same thing (wait on an event -- through callback and through await / async), which maybe isn't so bad.
So leaning towards 1/ and this PR is doing that implementation, but lacking tests on the new method. Which are TBD before this is ready for review

On the other hand, if it's there, then PageLoadState exposes two ways to do the same thing (wait on an event -- through callback and through await / async), which maybe isn't so bad.

Agree. Looks good there...


BUG: session_write_close(): Failed to write session data using user defined save handler. Localised with suggested fix

Hi
ISSUE
I've been getting this ongoing warning / error: "session_write_close(): Failed to write session data using user defined save handler".
This has been intermittent but ongoing, ie. every 5 reloads or so.
TESTING
After checking session_write_close, output buffering, all instances of session_start()/etc I only STUMBLED onto the source of this issue, after updating my error handling function AND turning output buffering off in php.ini to get specific visibility over previously suppressed warnings, which exposed a range of issues in "system\libraries\Session\Session.php".
The issues listed below are mostly related to "ini_set()" with one each for session save handler and session_start after headers sent. NOTE: I am aware that these issues are triggered by the output buffering being off, BUT there is some relationship between these items in the session handler, the errors received when the buffer is off, and the save_handler issues.
That is, after commenting each of these out and turning the output buffering back on (4096), the "session_write_close(): Failed to write session" cleared up.
My concern is that these lines are supposed to be doing something useful and commenting out lines is not a solution, just a method to troubleshoot.
QUESTIONS

Are there any known issues from changes relating to session in php 8.0 / 8.1+ ?
Are there any known latent issues or conflicts for the custom session handling function of CI 3?
As this is an intermittent issue, I suspect it's a race issue which would be impossible for me to properly localise and resolve. Do you have any suggestion for a fix that is more consistent with underlying causes like changes to php in v8?

Potential Fixes ? (big question mark)
Adding a test to the ini_set lines.. something like..

!session_id()  ?  ini_set('session.name', $params['cookie_name']) : 0;

would this fix be consistent with the code? is ini_set only supposed to be set prior to initiation of session and therefore a session test works well?
or alternately..

ini_get('session.name')  ?  ini_set('session.name', $params['cookie_name']) : 0;

do I need to ensure a session name has been set irrespective of session state?
or is it both?

!session_id()  && ini_get('session.name')   ?  ini_set('session.name', $params['cookie_name']) : 0;

Please let me know what approach would be the healthiest least downstream unintended consequence fix.
Thanks
SUMMARY OF FINDINGS

these lines were in the following functions: _configure(), __construct(), _configure_sid_length()..
in __construct() there's a test to only run lines if is_php('5.4').. I am currently using php 8.1.17, and wondering if perhaps this test is limited to php 5 to 7, but v8 or v8.1 causes issues?

ERRORS AND CODE
__construct()
:: CommonHelper Error Logger (set_error_handler section) ::--> [2] session_set_save_handler(): Session save handler cannot be changed after headers have already been sent on line 110 in file ..\Session.php

  	session_set_save_handler($wrapper, TRUE);  //where $wrapper = new CI_SessionWrapper($class);

:: CommonHelper Error Logger (set_error_handler section) ::--> [2] session_start(): Session cannot be started after headers have already been sent on line 138 in file ..\Session.php

  session_start();

_configure()
:: CommonHelper Error Logger (set_error_handler section) ::--> [2] ini_set(): Session ini settings cannot be changed after headers have already been sent on line 304 in file ..\Session.php

           ini_set('session.name', $params['cookie_name']);

:: CommonHelper Error Logger (set_error_handler section) ::--> [2] session_set_cookie_params(): Session cookie parameters cannot be changed after headers have already been sent on line 335 in file ..\Session.php

            'samesite' => $params['cookie_samesite']

:: CommonHelper Error Logger (set_error_handler section) ::--> [2] ini_set(): Session ini settings cannot be changed after headers have already been sent on line 356 in file ..\Session.php

          ini_set('session.gc_maxlifetime', $expiration);

:: CommonHelper Error Logger (set_error_handler section) ::--> [2] ini_set(): Session ini settings cannot be changed after headers have already been sent on line 366 in file ..\Session.php
:: CommonHelper Error Logger (set_error_handler section) ::--> [2] ini_set(): Session ini settings cannot be changed after headers have already been sent on line 367 in file ..\Session.php
:: CommonHelper Error Logger (set_error_handler section) ::--> [2] ini_set(): Session ini settings cannot be changed after headers have already been sent on line 368 in file ..\Session.php
:: CommonHelper Error Logger (set_error_handler section) ::--> [2] ini_set(): Session ini settings cannot be changed after headers have already been sent on line 369 in file ..\Session.php
// Security is king

  ini_set('session.use_trans_sid', 0);
  ini_set('session.use_strict_mode', 1);
  ini_set('session.use_cookies', 1);
  ini_set('session.use_only_cookies', 1);

:: CommonHelper Error Logger (set_error_handler section) ::--> [2] ini_set(): Session ini settings cannot be changed after headers have already been sent on line 427 in file ..\Session.php

         ini_set('session.sid_length', $sid_length);

TESTING UPDATE:
I think I've managed to reliably replicate the issue, but it's a bit non-standard. Following these steps:

php.ini .. turn off output buffering
; output_buffering=4096
output_buffering=Off

restart apache / server

reload the page a couple of times, which will result in the ini set errors mentioned above

php.ini .. turn on output buffering
output_buffering=4096
; output_buffering=Off

restart apache / server

reload the page once or twice and the error appears.

Once I was able to get this error to appear more reliably, I then did the following:

remove/comment out session_start(); on line 138 in file ..\Session.php

I then repeated the test several times above with no occurrences of the of the "session_write_close(): Failed to write session data" error.
I can't be super sure due to the intermittent nature of this issue, but it appears to be resolved with that line removed. The problem is, do I need session_start(); on line 138 in file ..\Session.php ? is this something that php 8+ takes care of automatically? is it because there is some other instance of session_start() somewhere else that my global find hasn't uncovered?

RESEARCH OF POSSIBLE CAUSE
per https://stackoverflow.com/questions/34117651/php7-symfony-2-8-failed-to-write-session-data
Make sure the write method of your session handler returns bool - true on success.
The php session_set_save_handler documentation doesn't mention this. It is however mentioned in the SessionHandlerInterface documentation:
The return value (usually TRUE on success, FALSE on failure). Note this value is returned internally to PHP for processing. PHP7 is more strict with session handling for custom session handlers. Symfony's custom session handler for its write method is, for whatever reason, returning false. Previously this did not trigger an error but now it does. In earlier versions of PHP, returning nothing did not result in an error. Since PHP 7.0, returning nothing results in the error: Warning: session_write_close(): Failed to write session data (user). Please verify that the current setting of session.save_path is correct (/tmp).
https://stackoverflow.com/questions/37707905/php7-symfony-3-1-0-vagrant-failed-to-write-session-data
"Any adjusting of ini-Files in /etc/php/7.0/ wasn't neccessary (those files have still default values only)."

SOLUTION
https://stackoverflow.com/questions/61947392/codeigniter-why-cant-i-access-a-session-set-from-a-controller-in-another-cont

php.ini, change:
; session.auto_start=0
session.auto_start=1

Results: Bug resolved.
COMMENTS

Updates in php 7+ cause the the saving of session handler to respond differently to a FALSE. When using php 5.3+, this wasn't a problem as the errors were ignored. This aligns with many similar changes to php which no longer ignore errors.
The underlying root error appears to stem from a session closing or being overwritten, perhaps due to conflicts in sesion_start() calls. For some people it's occurred when calling multiple controllers simultaneously, although that wasn't my case.
One coder mentioned these issues started when changing to php-fhm, so it could be the way the underlying php operates sessions differently with the new service.
Adding session auto start into the php.ini ensure that the session re-starts if it accidentally fails or stops for whatever reason, and the bubbling up of this ensures that the errors in the custom session function do not occur.

HOWEVER, that still means the custom session handler is lacking adequate handling to a FALSE response from the SessionHandlerInterface.
I understand CI3 is retired. It still works well for me, so I am not interested in migrating to CI4, but I will make some customised changes to the session handling class to better deal with FALSE coming from the session handler.
If anyone at CI central has some ideas on how to best do this, please let me know
Thanks

Stop me if I'm wrong, but I think I've resolved the source of this issue.. and it took me most of the day.. because ya know.. it's not my code.
I traced this: session_set_save_handler($wrapper, TRUE);
to this: _ci_load_classes($driver)
to this: CI_Session_database_driver()
to this: $this->_failure
to this: Session_database_drive _>  __construct(  -> function write(
..then added a few bug check points into the code and discovered that the write() function does indeed have a bug.. it's returning FALSE when it should be returning TRUE.
the reason being this:

protected $_row_exists = FALSE;
there is nothing that sets $_row_exists to TRUE, if it is indeed true.
your code only tests if (isset($this->_session_id) && $session_id !== $this->_session_id) .. ie. it only tests if the row is false and then runs a few things afterwards, but never tests if this condition is TRUE to switch $_row_exists to TRUE.

SOLUTION
Either set default protected $_row_exists = TRUE and consistently ensure in each function that this is set to false if rows don't match .. OR add: if (isset($this->_session_id) && $session_id == $this->_session_id) {  $_row_exists = TRUE; }
Personally i prefer the latter as I'm not sure what knock-on effects would result from changing the default value
Ya welcome!

Stop me if I'm wrong, but I think I've resolved the source of this issue.. and it took me most of the day.. because ya know.. it's not my code.
I traced this: session_set_save_handler($wrapper, TRUE);
to this: _ci_load_classes($driver)
to this: CI_Session_database_driver()
to this: $this->_failure
to this: Session_database_drive _>  __construct(  -> function write(
to this: if ($this->_db->insert($this->_config['save_path'], $insert_data))
When a new line is inserted, it should return 1, and if I was to run ->db->insert_id(), i would get the primary key.. but for some reason when I run this insert in various ways, the returned response is 0. I've tested $this->_db->insert_id(), and still get 0. I tested it with $this->_db->affected_rows() and I get 1.
As a result, even though a line IS ADDED, it returns 0, and causes this snippet to be skipped:
if ($this->_db->insert($this->_config['save_path'], $insert_data))
{
$this->_fingerprint = md5($session_data);
$this->_row_exists = TRUE;
return $this->_success;
}
SOLUTION
     $this->_db->insert($this->_config['save_path'], $insert_data);

//       if ($this->_db->insert($this->_config['save_path'], $insert_data))
if ($this->_db->affected_rows())
{
$this->_fingerprint = md5($session_data);
$this->_row_exists = TRUE;
return $this->_success;
}

@gidzr can't reproduce
php 8.1.17 (8.1.2 also) + nginx 1.18.0 + mysql 8.0.34
$config['sess_driver'] = 'database';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 24 * 3600;
$config['sess_save_path'] = 'ci_sessions';
$config['sess_time_to_update'] = 3600;

show create table ci_sessions:
CREATE TABLE `ci_sessions` (
  `id` varchar(128) NOT NULL,
  `ip_address` varchar(45) NOT NULL,
  `timestamp` int unsigned NOT NULL DEFAULT '0',
  `data` blob NOT NULL,
  KEY `ci_sessions_timestamp` (`timestamp`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4

is_php is CodeIgniter's function, it checks if your php version >= passed parameter string:
https://github.com/bcit-ci/CodeIgniter/blob/3.1-stable/system/core/Common.php#L63
check your php + db driver logs (looks like you have issues with inserting values into db - mb deadlock?)
https://github.com/bcit-ci/CodeIgniter/blob/3.1-stable/system/libraries/Session/drivers/Session_database_driver.php#L404

@gidzr
could you please provide more config data, e.g., php.ini settings, config.php, controller code, environment (webserver os db), etc.?

Is it related to this @bunglegrind https://github.com/bcit-ci/CodeIgniter/issues/5703 ?

@bunglegrind Is it related to this #5703 ?

No idea. I was never able to reproduce the issue.

@bunglegrind  and @jamieburchell  - thanks for checking in and keeping up with this..
I'll look into the linked issue and retest, but will not have time until year-end. But I'll certainly aim to get back to this.