Use the cleaned in content in the uwu command

Relevant Issues

https://discordapp.com/channels/267624335836053506/635950537262759947/1284217021634187341

Description
This is a small change, the cleaned content was not used in the uwu command.
Did you:

[x] Join the Python Discord Community?
[x] Read all the comments in this template?
[x] Ensure there is an issue open, or link relevant discord discussions?
[x] Read and agree to the contributing guidelines?

Thanks!


Real time webcam performace issue

Hi, it is a great project , i am really thankful for it.
i want to know how can i improve its fps when i am running it in webcam. Right now, i am getting only 1 or 2 fps. Please tell me how can i improve it for real time purpose.

Duplicate of #142


Implement erfcx

Implement erfcx.

Jenkins, test this please.

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


[Bug]: Before it is disabled, the library can still be selected by setting the library again for the project's librarian

ODC version
ODC 4.3.0
OB version
no related
What happened?
The disabled user was the librarian of the project before it was disabled, and after the disabling user, set the librarian of the project again, click OK, and the save can still be successful

What did you expect to happen?
A disabled user is a librarian of a project before being disabled, and after being disabled, a librarian for the project is set again, and the disabled user should not be a librarian of the library again
How can we reproduce it (as minimally and precisely as possible)?
The disabled user was the librarian of the project before it was disabled, and after the disabling user, set the librarian of the project again, click OK, and the save can still be successful
Anything else we need to know?
No response

Fixed In Commit 062b0f234e2debe9408d924e796e477a722a9d16
------
畅晚
Thu Jun 6 16:18:36 2024 +0800

pass


[ 10.0-20170814 POS ] Can not close POS session cause of account

I created a new POS with Cash control but I can not close it, It always shows a warning like this:
You cannot use this general account in this journal, check the tab 'Entry Controls' on the related journal.
I'm using Cash as Payment method
I tried to disable Cash Control but still can not close it
Please show me the way!

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Do you think that some of our modules leads to this problem?


Cannot read property 'getChildren' of undefined

Issue Id: 2ea4075c-d1fa-4ea4-ebfe-bab442c4d84dVersions - 1.9.0Stack TypeError: Cannot read property 'getChildren' of undefined/vs/workbench/parts/debug/electron-browser/debugHover.ts#L189:19 (getChildren)/vs/workbench/parts/debug/electron-browser/debugHover.ts#L207:58 (doFindExpression)    at Array.map (native)/vs/workbench/parts/debug/electron-browser/debugHover.ts#L207:40 (map)vs/workbench/electron-browser/vs/base/common/winjs.base.raw.js#L1566:0 (onComplete)/vs/workbench/parts/debug/electron-browser/debugHover.ts#L207:4 (then)/vs/workbench/parts/debug/electron-browser/debugHover.ts#L168:18 (findExpressionInStackFrame)/vs/workbench/parts/debug/electron-browser/debugEditorContribution.ts#L195:27 (showAt)/vs/workbench/parts/debug/electron-browser/debugEditorContribution.ts#L77:60 (showHover)/vs/base/common/async.ts#L629:8 (runner)

Over 4500 occurrences since 1.9.

The worst is that the hover crashes and does not show a value in some cases (due to that not a candidate imho). Are those on 4500 different machines?

The ratio between machines and occurrences is approximately 1:9.


Respect image entrypoint in play kube

Before we ignored an entrypoint specified in an image, which lead to crashes when a user assumed the entrypoint would be used
Signed-off-by: Peter Hunt<EMAIL_ADDRESS>

/approve

LGTM
@giuseppe @vrothberg @mheon @TomSweeneyRedHat @baude PTAL

/lgtm


create-react-app build - Failed to minify src/utils/normalizeKey.js

In an ejected create-react-app, I want to use localforage.
In the development server, everything worked right away - I did not need to use noParse.
When I try to yarn build however, something strange happens:
$ node scripts/build.js
Creating an optimized production build...
Failed to compile.

Failed to minify the code from this file:

        ./node_modules/localforage/src/utils/normalizeKey.js:4

Read more here: http://bit.ly/2tRViJ9

error An unexpected error occurred: "Command failed.

The funny thing is that it's a /src/ file! I have no idea how why that is imported by webpack there. The "main" field in localforage's package.json clearly points to dist/localforage.js.
So, that's basically the issue. Sorry for not providing more details, however there's a simple workaround:
import localforage from 'localforage/dist/localforage';

Then webpack has no doubts and it works.

Yes, this is because of #805. Because we are an ES6-based project we recently added the field mainFields that webpack will use to include the file.
Unfortunately it seems our use of template strings in that file causes Webpack builds to fail; our config on addons-frontend had to be changed not to use this import.
It appears it may be causing issues. I wonder if it's better to revert that changes and allow people to include the src file directly if they choose in their own webpack config. 🤷♂

The newly-released 1.7.1 should fix this, sorry about that!

1.7.1 does fix it. Thanks!


Support Postgres new upsert feature 'ON CONFLICT'

www.postgresql.org/docs/9.5/static/sql-insert.html#SQL-ON-CONFLICT

In the interest of bumping this item, it should be noted that Postgres 9.5 was released today.

Is this supported for MySQL for ON DUPLICATE UPDATE?

Is the feature postgresql upsert feature supported? If yes, can we get examples?

The feature is technically supported, but not in a great way. The lines from @jinzhu's change, https://github.com/jinzhu/gorm/commit/c9dfd80959ef31311810835abeaaf5d07131089c#diff-04c6e90faac2675aa89e2176d2eec7d8R265, are true in that the sql produced is correct, but you'd need to extend "ON CONFLICT" there to specify the behavior you wanted, such as "ON CONFLICT (id) UPDATE SET name = $1, address = $2". Then, it'd only work if we can rely on the 'interpolation' of those variables into the SQL.
I needed upserts, and ended up writing the insert sql myself and using Exec. It also means batch upsert is out of the question; I have it running in a loop for each record.

I wasn't sure Postgres supported upserting multiple rows at once, so I looked into it. Looks like you can use the EXCLUDED alias in the DO UPDATE clause, so this is an option:
db.Set("gorm:insert_option", "ON CONFLICT (name) DO UPDATE SET code = EXCLUDED.code").Create(&products)
// INSERT INTO products (name, code) VALUES ('name', 'code'), ('another name', 'another code') ON CONFLICT (name) DO UPDATE SET code = EXCLUDED.code;

@calebthompson, @jinzhu using your example, I attempted both upserting multiple rows at once, as well as one at a time and executing raw SQL.
Attempting to upsert multiple at once looked like the following:
	db.Set("gorm:insert_option", "ON CONFLICT (user_id, tenant_id, date) DO UPDATE SET completion = EXCLUDED.completion,total_activities = EXCLUDED.total_activities").Create(&rows)

This results in the following error:
panic: reflect: call of reflect.Value.Interface on zero Value

goroutine 245 [running]:
reflect.valueInterface(0x0, 0x0, 0x0, 0xc4203e9801, 0xc4203e98f0, 0x0)
	/usr/local/Cellar/go/1.8.3/libexec/src/reflect/value.go:930 +0x1fa
reflect.Value.Interface(0x0, 0x0, 0x0, 0x0, 0x1)
	/usr/local/Cellar/go/1.8.3/libexec/src/reflect/value.go:925 +0x44
github.com/commercialtribe/etl/vendor/github.com/jinzhu/gorm.createCallback(0xc420362200)
	/Users/eirwin/Source/Repos/go/src/github.com/eirwin/etl/vendor/github.com/jinzhu/gorm/callback_create.go:68 +0x2ee
github.com/eirwin/etl/vendor/github.com/jinzhu/gorm.(*Scope).callCallbacks(0xc420362200, 0xc420163100, 0x9, 0x10, 0x12)
	/Users/eirwin/Source/Repos/go/src/github.com/eirwin/etl/vendor/github.com/jinzhu/gorm/scope.go:821 +0x4c
github.com/eirwin/etl/vendor/github.com/jinzhu/gorm.(*DB).Create(0xc4203b2090, 0x1425580, 0xc4202acbe0, 0x143fba0)
	/Users/eirwin/Source/Repos/go/src/github.com/eirwin/etl/vendor/github.com/jinzhu/gorm/main.go:407 +0x86

The attempt at upserting single record at a time looks like the following:
for _, row := range rows {
   l.db.Set("gorm:insert_option", "ON CONFLICT (user_id, tenant_id, date) DO UPDATE SET completion = excluded.completion,total_activities = excluded.total_activities").Create(&row)
}

This results in the following error
(pq: column excluded.completion does not exist)

Any ideas what could be causing this, or how I can fix it?
I would prefer to be able to accomplish upsert of multiple rows.

@jinzhu, any guidance here?

Any updates?
If gorm would not going to support this (for example because maybe it's a non-standard SQL statement, or other databases have no equivalent), please state it explicitly.

Any changes?

UPSERT wanted

I wasn't sure Postgres supported upserting multiple rows at once, so I looked into it. Looks like you can use the EXCLUDED alias in the DO UPDATE clause, so this is an option:
db.Set("gorm:insert_option", "ON CONFLICT (name) DO UPDATE SET code = EXCLUDED.code").Create(&products)
// INSERT INTO products (name, code)
//   VALUES
//     ('name', 'code'),
//     ('another name', 'another code')
// ON CONFLICT (name) DO UPDATE SET
//     code = EXCLUDED.code;

For the Set Values:
https://github.com/jinzhu/gorm/blob/712c4655605f094d283047501ae613db9c798850/callback_create.go#L60-L79
https://github.com/jinzhu/gorm/blob/712c4655605f094d283047501ae613db9c798850/callback_create.go#L119-L120

var fields []string
for _, field := range tx.NewScope(Session{}).Fields() {
	if field.Name != "AccountID" && field.Name != "InvoiceID" {
		if field.IsNormal && !field.IsIgnored {
			fields = append(fields, fmt.Sprintf(
				"%v = excluded.%v", field.DBName, field.DBName,
			))
		}
	}
}

var session = &Session{
	ID:         utils.EnsureUUID(s.Get("sessionUUID")),
	RemoteAddr: &r.RemoteAddr,
	UserAgent:  utils.StringPtr(r.UserAgent()),
	Referer:    utils.StringPtr(r.Referer()),
	Method:     &r.Method,
	URL:        utils.StringPtr(r.URL.String()),
}

tx.Preload("Account", "Invoice").Set(
	"gorm:insert_option", fmt.Sprintf(
		"ON CONFLICT (id) DO UPDATE SET %s", strings.Join(fields, ", "),
	),
).Create(session)

s.Set("sessionUUID", session.ID)

@KellyLSB Nice trick and this will do for now, but that'd be nice to have this feature in the ORM directly


Consolidate randbats movesets

And add trial random battle levels

We recently just got a bunch of movesets, but the levels should be helpful. Can you pull down the most recent changes and just update the levels?

We recently just got a bunch of movesets, but the levels should be helpful. Can you pull down the most recent changes and just update the levels?


Where's is the simple TSQL script for creating the CacheTable

Hi team,
There's a TableName parameter to define the table used by SQLCache.
I searched online, it seems I have to call DNX commands somehow to create tables. and there's other document about how to make DNX ready. I think it is too complex and unnecessary.
I guess the script for table (maybe some stiredprocedures and triggers) must be very straightforward. could you provide the whole TSQL for creating the table and other database objects in a file on github? So developers can simply run it by themselves?
Cheers
Gary

Have you looked at this : https://github.com/aspnet/Announcements/issues/43

I did, I'm using VS2015 and don't have dnu in my dos command window, and according to the link below there are different steps to run DNX so I can run dnu (correct if I'm wrong here)
http://blogs.msdn.com/b/sujitdmello/archive/2015/04/23/step-by-step-installation-instructions-for-getting-dnx-on-your-laptop.aspx
My questions is it easier for developer just run whatever the TSQL you are using in the command directly on SQL Server?  I guess it is going to create one table and a few indexes. It should be a easy run right?
Why not just put the TSQL on the source control.?

Hi friends, Any progress on this?

We currently do not have separate tsql files which setup the table and indexes. But you can take a look at the following: https://github.com/aspnet/Caching/blob/dev/src/Microsoft.Framework.Caching.SqlConfig/SqlQueries.cs

The SQL statement works. However I changed nvarchar(900) to varchar(450)
CREATE TABLE _AspNetCache(
Id varchar(450)


TensorFlow Lite image_segmentation example for iOS doesn't build

URL(s) with the issue:
https://github.com/tensorflow/examples/tree/master/lite/examples/image_segmentation/ios
Description of issue (what needs changing):
The README must be provided with an explanation of how to change the settings of the project. At the moment I have problems adjusting the development team ("Signing").
Error message: No profile for team 'Rob De Putter (Personal Team)' matching 'Wildcard' found: Xcode couldn't find any provisioning profiles matching 'GPC87JXMXD/Wildcard'. Install the profile (by dragging and dropping it onto Xcode's dock item) or select a different one in the Signing & Capabilities tab of the target editor.

Could you check if the Wildcard provisioning profile that you're using contains your Development Team identity correctly? This article might help:
https://medium.com/ios-os-x-development/ios-code-signing-provisioning-in-a-nutshell-d5b247760bef


Add SVD to jax.random.multivariate_normal

I would like to request an update on the jax.random.multivariate_normal function to accommodate SVD in addition to Cholesky decomposition. This request is made based on two reasons: (1) To match the recent api on Numpy in https://numpy.org/devdocs/reference/random/generated/numpy.random.Generator.multivariate_normal.html (2) The numerical issues I've faced using Cholesky method for dimensions larger than 10, where the issues were fixed with using SVD.

Hello @mattjj !
I took a look at history commits and believe jax.random.multivariate_normal used Cholesky decomposition only to simplify API.
I would like to get your opinion about this issue :)

Hello @mattjj !
I took a look at history commits and believe jax.random.multivariate_normal used Cholesky decomposition only to simplify API.
I would like to get your opinion about this issue :)

Related code:
https://github.com/google/jax/blob/6c8fc1b031275c85b02cb819c6caa5afa002fa1d/jax/_src/random.py#L693-L695

Related code:
https://github.com/google/jax/blob/6c8fc1b031275c85b02cb819c6caa5afa002fa1d/jax/_src/random.py#L693-L695

This seems like a good idea to me! Thanks for the super clear explanation @SetarehAr. I didn't know this could help with numerical issues.
@minoring are you interested in working on this? If not, I can take a stab at it.

This seems like a good idea to me! Thanks for the super clear explanation @SetarehAr. I didn't know this could help with numerical issues.
@minoring are you interested in working on this? If not, I can take a stab at it.

Yes, let me handle this issue ;)

Yes, let me handle this issue ;)

Hi @mattjj I believe this issue have been solved!

Hi @mattjj I believe this issue have been solved!

Thank you, @minoring !

Thank you, @minoring !


Add angular.js style guide

Add a style guide that helped me with angular.js
What does this PR do?
Add Resource
For resources
Description
Added a useful angular.js style guide from Todd Motto
Why is this valuable (or not)?
It's a short and understandable guide
How do we know it's really free?
It's an Open Source Github-Project
Checklist:

[ x ] Not a duplicate
[ x ] Included author(s) if appropriate
[ x ] Lists are in alphabetical order
[ x ] Needed indications added (PDF, access notes, under construction)

Thanks, and welcome to free-programming-books!


Fix app update electron

There is one issue here.. basically to run the tests successfully clipboard.js needs to have electron in the package.json deps, however, adding electron into the deps messes up the npm run start because electron-prebuilt provides electron to the bootstrapped app.
As it currently is the test are passing with the code committed but the npm run start command will fail if you pull this and run it since electron is included in the package.json.


IExternalState block difficulty is now BigInteger

This is the AVM's external state interface.

For some reason the commits are listed in the wrong order in this PR view. Better to look at it directly on the branch. The difference is that c7bc053 comes before 6d901ad (this is the final commit), that's all.


Improve PromQL parser performance by making it non-concurrent

Before this commit, the PromQL parser ran in two goroutines:

The lexer goroutine that splits the input into tokens and sent them over a channel to
the parser goroutine which produces the abstract syntax tree

The Problem with this approach is that the parser spends more time on goroutine creation
and synchronisation than on actual parsing.
This commit removes that concurrency and replaces the channel by a slice based buffer.
Benchmarks show that this makes the parser up to 7 times faster than before.
Signed-off-by: Tobias Guggenmos<EMAIL_ADDRESS>Benchmark results (based on the #6355): https://gist.github.com/slrtbtfs/24a4d92de43ad4ae871714840dab2d76

Thanks!
I didn't even know we were doing this, it doesn't make sense to me at all.

Yeah, I think it was based on Rob Pike's goroutine+channel-based lexer+parser design (https://www.youtube.com/watch?v=HxaD_trXwRE), which didn't really care much about performance. Not that it matters too much here either way given how little time is spent in this code path in general.

Thanks for the quick merge and the pointer to the talk.

Not that it matters too much here either way given how little time is spent in this code path in general.
For Prometheus itself it doesn't. When just using the normal PromQL engine benchmarks this gets indeed lost in the noise.

However, for the language server, when working with large YAML files with thousands of PromQL expressions, the parser performance starts to matter.

That's a good point. And generally totally for getting rid of this weird artefact :)


Add line matching support

Instead of simply matching file names, check to see if the line number
in the stacktrace was modified in a given commit.
This should add more signal to java stacktraces since they don't include
code snippets.

LGTM


Any Plan for Restart strategies Like PM2

Applications are automatically restarted on auto exit.
But option to configure extra restart strategies will be very helpful like:

Restart app at a specified CRON time
Restart app when files under a folder have changed
Restart when app reach a memory threshold
Restart when app reach a CPU threshold

[ ] Restart app at a specified CRON time
[c] Restart app when files under a folder have changed
[ ] Restart when app reach a memory threshold
[ ] Restart when app reach a CPU threshold

Looking forward to the new version with this features

Cron could be done via crontab or using Bree, similarly you could do the memory/cpu restarts using a Bree job as well, which itself could be run via cron.  Node allows you to send SIGINT or SIGUSR2 for example to a process, so this feature isn't necessarily needed.

I'm still considering adding it during winter break when I have a substantial period of time to add it.


Add SELinux support with an optional loadable policy

I ran into some problems with SELinux denying logrotate permissions to actually rotate the logs on CentOS 6. This optional loadable policy should fix that.
Default behaviour is to not load the policy, so there will be no surprises for users who upgrade.

Hey, any progress on this one? Thanks!

I've resynced my fork so it this PR no longer conflicts with master. However the CI builds are now failing, but it looks like it's a problem with the tests rather than the code itself. Something about a Rubocop config?

Hi @djjudas21, could you please rebase after https://github.com/voxpupuli/puppet-logrotate/pull/63 got merged? We recently migrated this module to Vox Pupuli.

@djjudas21 I suspect you're trying to manage custom folders in /var/lib like /var/lib/something/*?  If this is the case the correct way would be to create a custom policy for the something folder and grant permissions for logrotate.
Anyway - if you still think it's a good idea to allow logrotate_t to manage var_lib_t then I suggest you ask to include this in upstream (but I don't think they wil agree with you):
For Fedora (is also the RHEL/CentOS upstream): https://github.com/fedora-selinux/selinux-policy-contrib/blob/rawhide/logrotate.te (malinglist<EMAIL_ADDRESS>For the refpolicy (anything not Fedora based): https://github.com/TresysTechnology/refpolicy-contrib/blob/master/logrotate.te (mailinglist: http://oss.tresys.com/mailman/listinfo/refpolicy)

We're not managing any log files anywhere other than /var/log and we haven't changed any SELinux contexts, either - so I'd be surprised if this isn't affecting other people too.
However, I do agree that permitting logrotate_t to manage var_lib_t is probably a bad idea, so I'll keep my SELinux policy local and put it in a profile insteed. Cheers :+1:

@djjudas21 var_lib_t isn't a type configured in /var/log:
$ sudo semanage fcontext --list | grep /var/log | grep var_lib_t

i'd recommend then to run restorecon -rv /var/log to reset selinux labels and investigate what caused wrong labels inside /var/log


tendermint v0.34.24

This PR brings Juno current with the latest release of tendermint.

@faddat Do we have to talk with the Skip team before doing such upgrades to tendermint? Since they maintain a custom version. Didn't know if this could conflict & cause extra headache for them

@Reecepbcups -- since this is for v12, I think this is skip-fine.
I'll also update in an issue about skip overall, I have ideas, very similar to what Dimi mentioned.

Talked with Barry tonight, TM upgrades are fine in the future.
Was a one off proto issue between versions (state breaking for Skip protocol, but not underlying TM). So we should be good


Idea/FeatureRequest: HTML - Grouping Resources by API Group with Descriptions

Firstly, thank you again for creating cty :-)
In this Szenario I use it to generate HTML documentation from a folder of CRDs.
To improve the user experience further, especially for end-users who have to navigate through numerous CRDs, it would be helpful to introduce a feature that allows the grouping of resources by their API Group in the documentation
Feature Request
Grouping by Kind
It would be incredibly beneficial if cty could automatically group the resources by their kind within the output html documentation. This would help provide thematic differentiation based on API groups (e.g., com.aws.services, com.azure.services, etc.).
Descriptions for Groups
An even more user-friendly enhancement would be to allow custom descriptions for each of these groups. This additional context will help end-users understand the purpose and scope of each group better.
Potential Implementation

Configuration File: Support for an additional configuration file that contains these group descriptions. The file could be structured in a way where each API group can have a brief description assigned to it.
Example format:
apiGroups:
  - name: "com.aws.services"
    description: "Resources related to AWS services"
  - name: "com.azure.services"
    description: "Resources related to Azure services"

Hello. Thanks for the idea! :)

Grouping by Kind

I believe this is already happening right? The versions are groupped under their KIND:

I like the idea of a potential configuration file though. :)

of course you are right - I thought of ApiGroups, but wrote Kind

So basically if you would have multiple things under the AWS api group those would be grouped by the API group such as, AWSCluster and Infrastructure or something and then inside that would be multiple kind groups for versions,
Is that correct?

Would something like this be okay?
apiGroups:
  - name: "com.aws.services"
    description: "Resources related to AWS services"
    files: # files and folders can be defined together or on their own
      - aws1_crd.yaml
      - aws2_crd.yaml
    folders: # everything under this folder would be put under the configured category
      - aws1
      - aws2
  - name: "com.azure.services"
    description: "Resources related to Azure services"
    files:
      - azure1_crd.yaml
      - azure2_crd.yaml

This would help a lot in creating the right groups and all. If a configuration file is not defined, then we would just fall back on kind for groupping.


Software Composition Analysis (SCA) via Devtron

Summary
We are considering using Devtron as an SCA tool, which can scan code/images and notify us of any vulnerabilities in our code. Devtron already provides a mechanism to scan Docker images, and to identify CVEs. We are looking at it to serve the following purposes:

Inventory of all open source softwares used in a repo.
License compliance.
Security Vulnerabilities (CVEs).

Motivation
There are some orgs who have worked in this field. We can take inspiration from their solutions to build it inside Devtron.
E.g. AboutCode, Owasp, Fossology
AB#450

This is now supported, hence closing


Focus does not go into react blob explorer panel when clicking on tab for the panel

Have two react blob explorer open
For each, click in whitespace so focus is lost
Click on tab for whichever is not showing

Expect: focus is un-lost and set to something, ideally the toolbar (that is prior behavior)
Actual: focus is not un-lost

In 1.30.2, we only do this for (the old) blob explorer and queue explorer. ADLS Gen2, File Share explorers, Disks and Table explorers don't automatically focus the first enabled toolbar button.

I merged a fix for this issue in Blob Explorer (Gen2 as well since they will be using one explorer). This still need to be fixed in

[ ] File Share
[ ] Queue
[ ] Table
[ ] Blob Containers
[ ] App Configuration


Please add a license to this repo

First, thank you for sharing this project with us!
Could you please add an explicit LICENSE file to the repo so that it's clear
under what terms the content is provided, and under what terms user
contributions are licensed?
Per GitHub docs on licensing:

[...] without a license, the default copyright laws apply, meaning that you
retain all rights to your source code and no one may reproduce, distribute,
or create derivative works from your work. If you're creating an open source
project, we strongly encourage you to include an open source license.

Thanks!

DONE. I have added an APL 2.0 license to this project.


Explicit re-render of a field when clicking a button

I have a complex component with many form elements (it's not a Symfony form).
When I change <select> and <input> elements, the page re-renders as expected. But then, I have this other element:

The input text is a live prop and I only want the page to re-render when the user clicks on the related button.
I can't do that. I read the docs and followed this: https://symfony.com/bundles/ux-live-component/current/index.html#lazy-updating-on-change-of-a-field
So, I applied the <input data-model="on(change)|coupon"> syntax. It almost works:

When you type the coupon code, the page doesn't re-render
When you click on the button, the page re-renders
BUT ... there's an edge-case: you change the contents of the coupon input and don't click on the button ... you change other input and then the coupon is applied to that re-render. It's strange because two different things are changing at the same time

I'd need something like this:
<input data-model="on(click=couponButton)|coupon">
Thanks!

Hey Javier!
What about:
<input data-model="norender|coupon">
<button
    data-action="live#$render"
>Apply</button>

I think this will work. And if it does, yay! Then the question will be: how can we update the docs to make this more obvious.

Ryan, you are a genius 🙇  Your suggestion worked beautifully.
Yes, I'd love to see this "magic action" mentioned somewhere in the docs. Thanks!

Cool :) #1574


VLAZ: Watch shivayogaashram.com

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

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

Approved by Jeff Schaller in Charcoal HQ


'Remove hand area' remains after removing hand area

'Add / Remove hand area' menu item must be switched after adding or removing hand area.  It does not after removing hand area.

This also fixes removed hand area being mysteriously reappear after certain action.


test alibaba cloud

this is a test pr

/package

/arm-ttk

/hello

/package

/package

/package

/package

/package

/package

/package


feat(gamescope): prepare to start tracking upstream + cleanup

Spring cleaning (in the fall) for gamescope. Remove all extraneous patches and prepare for dropping the remaining ones as the lua config system solidifies.
Previous launch arguments were preserved. The external display arg was modified to only lie to Steam instead of messing with gamescope and --force-external-orientation was modified to act as --force-orientation to avoid early session changes.

Unfortunately, external patch did not cooperate with steam breaking the fps slider. So it had to go as well. Oh well.

Added the ability to enable the refresh rate slider while VRR is on for the Ally with the flag --enable-vrr-modesetting.


Bulk writes to the trie store

Writes to the trie must be as efficient as possible.  Currently every time a (Key, StoredValue) pair is written to the trie, there are many intermediate PointerBlocks and ExtensionNodes that are written.  The final state root hash does not contain a reference to these, however.  A more efficient solution is to write them in bulk.  This can be done by constructing a recursive intermediate structure.

This is implemented here: https://github.com/dwerner/casper-node/pull/17


Create generator for Preflight Packages

Add a command (e.g. preflight package generate) that generates the skeleton of a package so it is easier for a user to get started writing its own package.

This no longer applies, since preflight-packages are now part of the server-side.


CrystalBallManager

Additional tests will obviously be required

Yeah this looks great. Can you add one FightRequest test and some tests to isCrystalBallZone etc? In fact, maybe those functions should move to this new manager.
ckb in the forums suggested a proxy record property of turn and monster per $location, which I thought sounded like a nice idea also.

#318 is also waiting for some good tests of FightRequest.  I'm inclined to uses @gausie' smost recent work as a model for future test.  Basically capture the "right" html and then load it and test for the right things to happen.

#318 is also waiting for some good tests of FightRequest. I'm inclined to uses @gausie' smost recent work as a model for future test. Basically capture the "right" html and then load it and test for the right things to happen.

Doing this for most fight requests would most likely be bloat for those test files. Could there be a dedicated location to store that html?

You can store the HTML wherever you want - check recent tests for gnomeAdv
On Sun, 12 Dec 2021 at 18:15, Frederic Gagnon @.***>
wrote:

#318 https://github.com/kolmafia/kolmafia/pull/318 is also waiting for
some good tests of FightRequest. I'm inclined to uses @gausie
https://github.com/gausie' smost recent work as a model for future
test. Basically capture the "right" html and then load it and test for the
right things to happen.
Doing this for most fight requests would most likely be bloat for those
test files. Could there be a dedicated location to store that html?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kolmafia/kolmafia/pull/332#issuecomment-991945484,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABL4LU22VKH7RAWFJI64STUQTRFJANCNFSM5J33NJ4Q
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You can store the HTML wherever you want - check recent tests for gnomeAdv
…
On Sun, 12 Dec 2021 at 18:15, Frederic Gagnon @.***> wrote: #318 <#318> is also waiting for some good tests of FightRequest. I'm inclined to uses @gausie https://github.com/gausie' smost recent work as a model for future test. Basically capture the "right" html and then load it and test for the right things to happen. Doing this for most fight requests would most likely be bloat for those test files. Could there be a dedicated location to store that html? — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#332 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABL4LU22VKH7RAWFJI64STUQTRFJANCNFSM5J33NJ4Q . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

(this sure would have been a nice use for https://kolmafia.us/threads/responsemakingutilities.26848/ ... (._. ) )
(i.e. providing a shortcut to make mock fight.php html, without having to save everything...)

I don't mind at all saving the whole HTML page. In fact on balance I'd probably rather we do so to catch weird edge cases. Unless you're talking about something else?

no, that was pretty much it.
I was/am aiming to make it so that the builder would even allow us to cover these edge cases, by having defaults that can be overriden (for example, the content of the combat action bar, end of fight familiar actions, previous round messages...)

no, that was pretty much it. I was/am aiming to make it so that the builder would even allow us to cover these edge cases, by having defaults that can be overriden (for example, the content of the combat action bar, end of fight familiar actions, previous round messages...)

I commented over there.  My concern is a framework that is so complex that it needs its own tests.

Please don't build an HTML builder

All this needs now is a few FightRequest tests. Thanks!

I'll put an announcement on the forums about this pref changing and then merge this today


Push Notifications are not working in certain cases

I have problem when using FCM in both Android and iOS. All instructions in the document are all set (including APN key or certificates, Linked Frameworks, Capabilities).
I've checked .json and .plist and Android Logcat / iOS Xcode logs and reinstalled the SDK and pressed Force Resolve many times, am I doing something wrong? Do I have to upgrade Firebase SDK Version to latest?
Environment
Xcode version: 11.4
Deployment Target: 9.0
Firebase Component: Analytics, Crashlytics, Messaging
Project A : Firebase Unity SDK 6.3.0, dotnet4, Unity 2018.4.2f1
Project B : Firebase Unity SDK 6.4.0, dotnet3, Unity 2017.4.25f1
Symptoms
Project A --> Push Notification works perfectly fine in all devices in Android, but can't receive any notifications in any device in iOS.
Project B --> Version Number is 4.6.2 (in my application) Push Notification works only in test notifications in Android, but if I put target user condition into "Version Number includes 4.6.2", the console saids number of potential users is 0 and can't receive any messages. In iOS, some devices worked perfectly (tested with iOS 13.4, iPadOS 13.3) but some device (tested with iOS 11.2) receives only test messages.
here is the code (same in two projects)
// Initialize FirebaseApp(Analytics), Firebase Crashlytics, Firebase Cloud Messaging
        public void Init()
        {
            Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task => {
                var dependencyStatus = task.Result;
                if (dependencyStatus == Firebase.DependencyStatus.Available)
                {
                    // Create and hold a reference to your FirebaseApp,
                    // where app is a Firebase.FirebaseApp property of your application class.
                    // Crashlytics will use the DefaultInstance, as well;
                    // this ensures that Crashlytics is initialized.
                    Firebase.FirebaseApp app = Firebase.FirebaseApp.DefaultInstance;

                    // Set a flag here for indicating that your project is ready to use Firebase.
                    FirebaseCloudMessagingInit();
                }
                else
                {
                    UnityEngine.Debug.LogError(System.String.Format(
                    "Could not resolve all Firebase dependencies: {0}", dependencyStatus));
                    // Firebase Unity SDK is not safe to use here.
                }
            });
        }

        #region Firebase Cloud Messaging (FCM)
        private void FirebaseCloudMessagingInit()
        {
            FirebaseMessaging.TokenReceived += OnTokenReceived;
            FirebaseMessaging.MessageReceived += OnMessageReceived;
        }

        public void OnTokenReceived(object sender, TokenReceivedEventArgs token)
        {
            Debug.Log("Received Registration Token: " + token.Token);
        }

        public void OnMessageReceived(object sender, MessageReceivedEventArgs e)
        {
            Debug.Log("Received a new message from: " + e.Message.From);
        }
        #endregion

There are no problem receiving FCM token. I can get these kind of log in both two projects and both two OS:
FCM: Initialize Firebase Messaging

(Filename: ./Runtime/Export/Debug.bindings.h Line: 45)

2020-04-18 16:24:00.503460+0900 MY_APP_NAME[10008:3410473] FCM: Using FCM senderID MY_APP_ID_NUMBER
FCM: Using FCM senderID MY_APP_ID_NUMBER

(Filename: ./Runtime/Export/Debug.bindings.h Line: 45)

2020-04-18 16:24:00.504485+0900 MY_APP_NAME[10008:3410473] FCM: Retrieve registration token
FCM: Retrieve registration token

(Filename: ./Runtime/Export/Debug.bindings.h Line: 45)

Received Registration Token: fMrekdxbYTc:APA91bEHbMw4pguqiyn0FW2SmcN89Kh81D1m0AxDCjvrCS2K5ebT5mL4L-HxwceKbwFaWmdcFRxT6IGDv-ZEPvw6O6CgXIlVQdqZjjLGP1pbN8YkuN_yroEOaOkyZpayVETZ35lUYnYp
Firebase.ExceptionAggregator:Wrap(Action)
Firebase.AppUtil:PollCallbacks()
Firebase.Platform.FirebaseHandler:Update()

in iOS, this log appears in front of FCM Initialization
2020-04-18 16:24:00.443321+0900 MY_APP_NAME[10008:3410850] 6.5.0 - [Firebase/Core][I-COR000003] The default Firebase app has not yet been configured. Add `[FIRApp configure];` (`FirebaseApp.configure()` in Swift) to your application initialization. Read more: https://goo.gl/ctyzm8.
2020-04-18 16:24:00.451102+0900 MY_APP_NAME[10008:3410679] 6.5.0 - [Firebase/Analytics][I-ACS023007] Analytics v.60004000 started
2020-04-18 16:24:00.451246+0900 MY_APP_NAME[10008:3410679] 6.5.0 - [Firebase/Analytics][I-ACS023008] To enable debug logging set the following application argument: -FIRAnalyticsDebugEnabled (see http://goo.gl/RfcP7r)
2020-04-18 16:24:00.451982+0900 MY_APP_NAME[10008:3410473] [Crashlytics] Version 3.13.4 (143)
2020-04-18 16:24:00.482570+0900 MY_APP_NAME[10008:3410671] 6.5.0 - [Firebase/Messaging][I-FCM001000] FIRMessaging Remote Notifications proxy enabled, will swizzle remote notification receiver handlers. If you'd prefer to manually integrate Firebase Messaging, add "FirebaseAppDelegateProxyEnabled" to your Info.plist, and set it to NO. Follow the instructions at:
https://firebase.google.com/docs/cloud-messaging/ios/client#method_swizzling_in_firebase_messaging
to ensure proper integration.
2020-04-18 16:24:00.487815+0900 MY_APP_NAME[10008:3410850] [Crashlytics:Crash:Reports] Packaged report with id '988093e633f84cda89bb8e80c1df8552' for submission
2020-04-18 16:24:00.502435+0900 MY_APP_NAME[10008:3410473] FCM: Initialize Firebase Messaging

@Soundpiercer I am facing the same issue, did you resolved it?


NetworkX is broken in Python3.9

Disconnect-islands does not load because of a python error. The error message "CRITICAL    Error in plugin disconnected-islands : NetworkX module is required and missing. Please install it manually by executing, in a Terminal: sudo easy_install networkx. Then restart QGIS."
Even though the NetworkX module is installed, it errors our with a message "ImportError: cannot import name 'gcd' from 'fractions' (/usr/lib64/python3.9/fractions.py)" when it attempts to load the Networkx module. From what I understand, the math.gcd() function was changed in 3.9.

This seems to have been fixed in networkx : https://github.com/networkx/networkx/pull/2861


High-level code review before GA

Before we GA the aws lambda extension, we should have an experienced Go engineer from another team (preferably the apm server team) review the codebase.

@elastic/apm-server team please conduct a high level review. The goal is to agree on a GA ready state of the code.
I suggest we put some focus points on the review:

[ ] are errors properly handled
[ ] any kind of deadlocks or unexpected blocking on channels; are channels closed while still consumed, etc.
[ ] handling of incoming data
[ ] handling of outgoing requests to apm-server
[ ] general data structs (allocations, references, ..)
[ ] e2e test coverage
[ ] unit test coverage

This is not expected to be included as go module in other programs, therefore reviewing public interfaces etc. has less priority. The cli is written in nodejs, therefore please ignore this part in the golang review.

If someone needs an overview of the code structure before doing a review, please let us know.

I've just started looking in the logsapi package, and how it is used, and here are some initial thoughts:
If you're not familiar with it already, I'd suggest having a look through https://github.com/golang/go/wiki/CodeReviewComments. This is followed in many Go projects, to the point that some linters have checks for the rules. You might have a bad time if you want to turn on linting later on.
Some more detailed code docs would be great. As I'm not familiar Lambda internals, or the Logs API, it wasn't clear to me what the HTTP listener was for. Linking to the relevant parts of https://docs.aws.amazon.com/lambda/latest/dg/runtimes-logs-api.html may be helpful to future readers.
Does everything that is exported need to be exported? Having a minimal public interface helps clarify which parts are implementation details, and which parts are relevant to consumers. e.g. should users of this package care about the different protocols? I realise @simitt said "This is not expected to be included as go module in other programs, therefore reviewing public interfaces etc. has less priority.", but I still think it's important for future maintainers.
The Logs API docs state:

We also recommend setting up the local HTTP listener or the TCP port before subscribing to receive logs.

It appears that this is not being done. In main.go, subscription is happening first, and then a listener is created and finally started: https://github.com/elastic/apm-aws-lambda/blob/b010fd9a5d77d89d8b48a0e679985ee81db96a94/apm-lambda-extension/main.go#L83-L98
Is there any reason this couldn't be abstracted away? Something like:
package logsapi

// Subscribe subscribes to the Lambda Logs API, sending log events to out until ctx is cancelled.
func Subscribe(ctx context.Context, extensionID string, eventTypes []EventType, out chan<- LogEvent) error

Internally, Subscribe would create an HTTP server (before making the subscribe request) and run it until ctx is cancelled. You might also want to listen on an ephemeral port to avoid any surprises with running multiple subscribers: listen on "sandbox.localdomain:0", and extract the ephemeral port from the net.Listener.Addr().
In main.go, there can be a panic if the "runtimeDoneSignal" channel is closed (e.g. due to "AgentDoneSignal" being signalled), and then a RuntimeDone log event is processed:
https://github.com/elastic/apm-aws-lambda/blob/b010fd9a5d77d89d8b48a0e679985ee81db96a94/apm-lambda-extension/main.go#L170
https://github.com/elastic/apm-aws-lambda/blob/b010fd9a5d77d89d8b48a0e679985ee81db96a94/apm-lambda-extension/main.go#L204
Do you need to explicitly close that channel? It looks like you could just allow it to be garbage collected.

Is it ok to not explicitly close a channel and just allow it to be garbage collected? I thought it was good practice to close a channel?

As a general rule, it's OK to not explicitly close it.

https://github.com/elastic/apm-aws-lambda/blob/86a442cf2afc1df16a30795e5a790a4c67a616e4/apm-lambda-extension/extension/apm_server.go#L39-L59
Should those log.Printf be return err? If the compression fails, what's in buf?
Also, you could avoid some overhead in the case where ContentEncoding != "" by doing something like this:
var r io.Reader
if agentData.ContentEncoding != "" {
    r = bytes.NewReader(agentData.Data)
} else {
    encoding = "gzip"
    buf := bufferPool.Get().(*bytes.Buffer)
    defer func() {
        buf.Reset()
        bufferPool.Put(buf)
    }()
    gw, err := gzip.NewWriterLevel(buf, gzip.BestSpeed)
    if err != nil {
        return err
    }
    if _, err := gw.Write(agentData.Data); err != nil {
        log.Printf("Failed to compress data: %v", err)
    }
    if err := gw.Close(); err != nil {
        log.Printf("Failed write compressed data to buffer: %v", err)
    }
    r = buf
}

https://github.com/elastic/apm-aws-lambda/blob/86a442cf2afc1df16a30795e5a790a4c67a616e4/apm-lambda-extension/extension/client.go#L108-L111
You should move the defer before the status code check. Always close the response body if Do returns a nil error. Same applies in other methods in this file. A lot of the code is repeated: maybe define a helper function which sends a request to a specified path, and decodes the body into a given interface{}?

https://github.com/elastic/apm-aws-lambda/blob/86a442cf2afc1df16a30795e5a790a4c67a616e4/apm-lambda-extension/extension/route_handlers.go#L41-L50
Check error first, otherwise the req.Header.Set calls will panic if there's an error as req will be nil. Also, if there's an error, should the handler return a 5xx error status code?
https://github.com/elastic/apm-aws-lambda/blob/86a442cf2afc1df16a30795e5a790a4c67a616e4/apm-lambda-extension/extension/route_handlers.go#L53
The response body isn't being closed.
https://github.com/elastic/apm-aws-lambda/blob/86a442cf2afc1df16a30795e5a790a4c67a616e4/apm-lambda-extension/extension/route_handlers.go#L89-L90
Would it be possible to stream the client's request body to apm-server, rather than reading it into memory?
I'm also wondering if this approach of using channels is necessary, or if the extension could be simplified by using https://pkg.go.dev/net/http/httputil#ReverseProxy? You could set a Director to do compression and tracking of in-flight requests so you can flush.

Is it ok to not explicitly close a channel and just allow it to be garbage collected? I thought it was good practice to close a channel?

As a general rule, it's OK to not explicitly close it.

That sounds similar to the deprecated Java finalizers that can close resources on GC. If it does work in a similar way, is it really a best practice?

Go also has  https://pkg.go.dev/runtime#SetFinalizer. Using this tends to be discouraged. I wouldn't say they're the same.
Channels don't actively consume any resources except their memory. Once they're no longer referenced, that memory can be garbage collected. If something were waiting for the channel to be closed, it couldn't be garbage collected. So it depends on the concurrency patterns, but in this case there's nothing using the channel's closure as an event.

[ ] Turn on linter
[ ] Some more detailed code docs
[ ] Setting up the local HTTP listener or the TCP port before subscribing to receive logs
[ ] Abstract logsapi Subscribe function
[ ] listen on an ephemeral port to avoid any surprises with running multiple subscribers: listen on "sandbox.localdomain:0", and extract the ephemeral port from the net.Listener.Addr()

[ ] just allow runtimeDoneSignal channel to be garbage collected in main.go
[ ] Should those log.Printf be return err? If the compression fails, what's in buf? in apm_server.go
[ ] avoid some overhead in the case where ContentEncoding != "" in apm_server.go
[ ] client.go You should move the defer before the status code check. Always close the response body if Do returns a nil error. Same applies in other methods in this file. A lot of the code is repeated: maybe define a helper function which sends a request to a specified path, and decodes the body into a given interface{}?
[ ] route_handlers.go Check error first, otherwise the req.Header.Set calls will panic if there's an error as req will be nil. Also, if there's an error, should the handler return a 5xx error status code?
[ ] route_handlers.go The response body isn't being closed. Line 53
[ ] Would it be possible to stream the client's request body to apm-server, rather than reading it into memory?
[ ] I'm also wondering if this approach of using channels is necessary, or if the extension could be simplified by using https://pkg.go.dev/net/http/httputil#ReverseProxy? You could set a Director to do compression and tracking of in-flight requests so you can flush.

@axw Would you like to review the PRs that I'm opening to address your comments? I've opened two so far and there will be a few others.

Spoke this morning with @simitt and @axw, we're all cool with this to go GA

Any concerns for closing this issue now and creating new ones when issues are identified in the future?

No concerns, please feel free to close this. Thanks!

Closing, as issues are opened for the remaining two minor points (linter and code docs)


bundle outdated alias

very frequent alias

That alias is not duplicated with existence aliases
Looking good :smile:

@sachin21 why it is not merged?)

We have to wait for collaborator merging.
Cc: @robbyrussell

thnx!


Graupner HoTT SUMD/SUMH Receiver Protocol added

Graupner HoTT SUMD/SUMH Receiver Protocol added.

Nice! I need to work out why the CI test failed, but its looking pretty good.

Awesome, applied!


Commands with an invalid selector should return a non-zero exit code

Bug report
yabai -m window --focus 0 prints invalid window id specified '0'. and exits with exit code 0, indicating success. Instead, it should exit with anything but 0.
The same applies for similar commands.

Unable to reproduce. This is what I see:
~ yabai -m window --focus 0                                    22:25
invalid window id specified '0'.
~ echo $?                                                      22:25
1
~                                                              22:25

Issue was on my end, was missing setopt -o pipefail. Sorry for this.


Exporting the mbed SDK causes the HTTP request to hang

When trying to export the mbed SDK the request hangs and eventually returns a 504 gateway error, never sending the expected zip file. This has also been reported on the issue tracker of the mbed website as issue 35, but no response was ever given.
I mostly tested this with the LPC1768 and EFM32 USB-enabled Happy gecko platforms and the GCCARM and Zip archive toolchains, but no combination seems to work.
Is there an other way to get a specific build, as described in the mbed.bld file of a project, of the mbed SDK for a specific platform without using the online compiler? Checking out the complete mercurial repo or downloading the zip file of the prebuilt SDK is pretty inefficient since it contains binaries for all the available targets.

That issue tracker should be disabled, or just redirected here. Anyway, this relates to website. There's https://developer.mbed.org/forum/bugs-suggestions/.
I closed the issue under mbed lib you referenced above.
cc @screamerbg @stephenpaulger Could you please help out?

There seems to be a report on this issue on the forum as well. There might be more, but I have not found out how to search on that forum yet...
According to @sg- this should have been fixed about a moth ago, but it is still very much broken.

I can confirm, I am getting for zip 504 gateway error. However this is not website tracker. I notified the web team, and for the future, please report it here https://developer.mbed.org/forum/bugs-suggestions/

It has been reported here, even though IMO the description is not that clear: https://developer.mbed.org/forum/bugs-suggestions/topic/26128/


chore(deps): update ci dependencies

This PR contains the following updates:

Package
Type
Update
Change

common-dev-assets

digest
6c05643 -> b1e90d1

github.com/google/uuid
require
minor
v1.3.1 -> v1.4.0

github.com/terraform-ibm-modules/ibmcloud-terratest-wrapper
require
patch
v1.23.12 -> v1.23.13

terraform-ibm-modules/common-pipeline-assets
action
patch
v1.18.1 -> v1.18.2

Release Notes

google/uuid (github.com/google/uuid)
v1.4.0
Compare Source
Features

UUIDs slice type with Strings() convenience method (#133) (cd5fbbd)

Fixes

Clarify that Parse's job is to parse but not necessarily validate strings. (Documents current behavior)

terraform-ibm-modules/ibmcloud-terratest-wrapper (github.com/terraform-ibm-modules/ibmcloud-terratest-wrapper)
v1.23.13
Compare Source
Bug Fixes

Fix diff order (#686) (5f768a2)

terraform-ibm-modules/common-pipeline-assets (terraform-ibm-modules/common-pipeline-assets)
v1.18.2
Compare Source
Bug Fixes

fix notify bug (#580) (171179c)

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

/run pipeline

:tada: This PR is included in version 1.5.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


iOS export configuration needs better validation

Godot version:
3.1 beta
OS/device including version:
macOS Mojave, Xcode
Issue description:
I've got a project that I'd like to export to iOS. The project can be found here: https://github.com/Krumelur/GodotTesting/tree/godot31_issue_24866
The export itself succeeds and I end up with an Xcode project file.
Deploying the project to a device fails with an error saying:
"App installation failed - No code signature found."
The reason is that no signing certificate is selected but cannot be selected. My assumption is that there is some Xcode project file compatibility issues. See video for details.
Steps to reproduce:
See videos for details. It will show exactly what I'm doing:
https://www.youtube.com/watch?v=5tXRo7uRPFE

Open the project referenced above
Export to iOS
Try to deploy in Xcode

Minimal reproduction project:
see above

CC @bruvzg - I think some of these items have been implemented since then, is the current state good enough to close this issue or is there more validation that could be done?


Remove Clustering

In order to remove properly the clustering parts of PBxplore without losing the code, I offer this procedure :

[x] Create 2 branches called clust_R and clust_python as clone of the current master
[x] Remove all R clustering from master (already done here: https://github.com/HubLot/PBxplore/commit/d56759f010de2f693b9ef41f33de7e5bed026ffa)
[x] Put @jbarnoud's work (#106) into clust_python branch.

For the record, I have a PR ongoing to remove clustering. I plan to
submit it before the end of the month. In addition to the removal of the
code, the PR removes the tests, the doc, and the examples.
Indeed, the current code should be kept in a separate branch.
On 11-10-16 15:24, Hub wrote:

In order to remove properly the clustering parts of PBxplore without
losing the code, I offer this procedure :

Create 2 branches called /clust_R/ and /clust_python/ as clone of
the current /master/
Remove all R clustering from master (already done here:
HubLot@d56759f
https://github.com/HubLot/PBxplore/commit/d56759f010de2f693b9ef41f33de7e5bed026ffa)
Put @jbarnoud https://github.com/jbarnoud works (#106
https://github.com/pierrepo/PBxplore/pull/106) into
/clust_python/ branch.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/pierrepo/PBxplore/issues/136, or mute the thread
https://github.com/notifications/unsubscribe-auth/ABUWuiK8FdDL8D8KLi90yb-we3yCMRAdks5qy44rgaJpZM4KTn8T.

done in #143


Add or ~> 4.0 for :phoenix_html

add phoenix_html dependency to also support the latest 4.0 version and make typeid compatible with phoenix 1.7.11

your change has been published in 0.5.3


Release BERT based recognizer package

We have the local BERT model and the recognizer implementation around it.  We should push to 100% for how we are going to release/document it.
[enhancement]

This work is not tracked in Git.


Adds Glossary links for Bounce Types: Bounce/Blocked

Description of the change:
Adds anchor tags to Glossary terms for Bounce/Blocked, from the Webhook "Bounce" event
Reason for the change:
Bounces event example shows: "Bounce/Blocked/Expired", but doesn't explain what those differences are.
Link to original source: (Unsure what to put here)

Closes #2734
@ksigler7

 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.

Hello @duncanleung,Thanks again for the PR! We want to show our appreciation by sending                                              you some swag. Could you please fill out                                              this form so we can send it to you? Thanks!                                             Team SendGrid DX


get-related test case example seems to rely on internal implementation

This Issue relates to the discussion started here.
I noticed that get would introduce the same tension with find that it's currently occurring between find and at (on v1) that is, throwing an error. Maybe I am missing some context that justifies the choice and I'd be glad to know more. Further I try to explain why this would seem odd to me.
The docs example suggest a usage of get (note that the example uses getComponent but it's listed under get):
test('get', () => {
  const wrapper = mount(Component)
  expect(() => wrapper.getComponent('p')).toThrowError()
})

the assertion does not seem to describe that a p Component is not supposed to be there (to exist)
it is rather testing the library internal implementation or at least hardly depending on (the knowledge of) it

For sure using the library requires knowing the API but it should not require knowledge of the internal implementation and this last one should not be the target of a client test. Now,

the signature of get suggests it returns a DomWrapper
TypeScript would suggest the same
similarity with find (stated in the docs) would suggest the same
there are only two places I can find to know that get throws an error: the source code and the examples is the code.

I might be wrong and happy to review my thoughts but the source code (which is internal implementation) should not generally be the source of my tests, even less the subject of them. As for the docs, part of my point is that this example should not be there, as it suggests relying on the internal implementation of the method.
If replying to this gets too big, I'ma happy to open an Issue fo this in the v2 repo.
Thanks a lot for your time 🙏 really appreciate it.

I agree, this example is bad. I am surprised to even see this in the docs.
I think it should read like this:
test('get', () => {
  const wrapper = mount(Component)

  wrapper.get('span') //=> found; returns DOMWrapper
  wrapper.get('[data-test="span"]') //=> found; returns DOMWrapper, fails if no matching element is found
})

Basically:

always use get except when you as asserting something doesn't exist
in that case use find + exists combo

Can you update the docs?

@lmiller1990 oh, just saw the reply, thanks! I'll take care of the docs 💪

I agree with @lmiller1990 , the docs should not have this usage.
We used to have different signatures in TS that reflected more what was happening. find used to return VueWrapper | ErrorWrapper whereas get returned VueWrapper. So it was clear that when calling find you might have an error. It's indeed weird to have the exact same return type now 🤔 @lmiller1990 I think it was lost when we introduced the proxy createWrapperError but maybe we lost a bit too much info in the signatures? WDYT?

+1 at "dunno how we did end up here", and it is possibly due to… me 😂

always use get except when you as asserting something doesn't exist. in that case use find + exists combo

This is it 👌
Thank you for rising this up! 👐

Introducing the proxy createWrapperError does appear to make the types less specific. The createWrapperProxy definitely makes the codebase cleaner and easier to work on, though, which I think is valuable.
I wonder if we have both (using createWrapperProxy, but also better types).

@lmiller1990 @cexbrayat @afontcu thanks all for the feedback.

get was removing the need to add non-null assertions in your test code: wrapper.find('h1')!.text() vs wrapper.get('h1').text() (note the ! with find).

I see. I'm not being able to tell the difference at the moment trying few examples in the code base but I might miss something so not sure. Glad to have more insight here, if you want and have time.
Getting back to the API, the PR for the docs is out.
TL;DR
To make the docs suggestion consistent, I would also suggest to patch the return type of get with something like this:
type NonexistentDomWrapper<T extends Element> = Omit<DOMWrapper<T>, 'exist'>;

get<K extends keyof HTMLElementTagNameMap>(
  selector: K
): NonexistentDomWrapper<HTMLElementTagNameMap[K]>
get<K extends keyof SVGElementTagNameMap>(
  selector: K
): NonexistentDomWrapper<SVGElementTagNameMap[K]>
get<T extends Element>(selector: string): NonexistentDomWrapper<T>
get(selector: string): NonexistentDomWrapper<Element> {
  const result = this.find(selector)
  if (result instanceof DOMWrapper) {
    return result
  }
  throw new Error(`Unable to get ${selector} within: ${this.html()}`)
}

(naming inspired by this debate).
Note: this will still throw but it prevents from using exists, given we want to discourage its usage paired with get.
Longer explanation
A note. Introducing the suggestion (always use get except when you are asserting something doesn't exist) is a good rule of thumb but I think it stil can be misleading in three ways:

given how the current signature is placed, TypeScript won't complain if you use exists
it does not exclude that you can still use get if you want to assert something does exist
formally is not 100% correct, as vue-test-utils cannot actually say that something does not exist; the library has only the exists verb

Let me try elaborate with an example:
Given this code:
const wrapper = shallowMount({});

const fExist = wrapper.find('p').exists();
const gExist = wrapper.get('p').exists();

Assuming no p exist, as per point 1), TypeScript would not complain about calling exists on both though one invocation will throw an error.
Assuming p exists, as per point 2), I can actually use get and exists (which is not excluded by the rule of thumb stated above) but then comes 3): I cannot actually use find to say something does not exist. I can of course use find and exist in a test library assertion to say that exist would return false (or true).
But here's te thing, why should I be able to do:
expect(wrapper.get('p').exists()).toBe(true);

and not:
expect(wrapper.get('p').exists()).toBe(false);

If I'm not able to do the last one, I shouldn't be able to do the former one as well, thence my suggestion above.
WDYT? 😄

@AngeloGulina I completely agree that the typings are misleading here and should be better 👍
Your proposition makes sense, maybe I would built it the other way, with get returning DomWrapper and find returning DomWrapper & { exists } or a better name, but that's a minor details. Anyway I like your proposition 👌
We are kind of circling back to the proposition of @afontcu of just having get('p') and exists('p') (and remove find that doesn't bring much except for compat with VTU v1) :)

Should we just add exists then? We need to keep find for a few reasons:

you might want to assert 3 of some element are rendered. We don't have a getAllComponents like we have findAll and findAllComponents (should we have this?)
backwards compat (that's fine though, we could just recommend against using it in docs)

I think now is probably a good time to sort this out once and for all. I see 3 cases we need to solve, and it'd be nice to have 1 "official" way to do things:

getting a DOM element or component you know exists and doing something with it
asserting something exists
asserting something does not exist

If we add exists, we can solve all three very easily:

wrapper.get('#el').trigger(...)
wrapper.get('#el') (implicitly asserting that the element exists)
expect(wrapper.exists('#doesnt-exist')).toBe(false) (you could also use exists for the above assertion if you like to be explitic)

I wonder if ErrorWrapper is a good ideal still. It let's us have very nice error messages, but also makes some things a little complex (like find never returning a falsy value).
I would welcome improvements here; we should definitely be clear on what we want to change before we do so, though.

Thanks all for this great discussion.
TL;DR

find should not be replaced by exist
ErrorWrapper should be kept (maybe renamed, for find to EmptyWrapper)
get should throw in the non-existing case but should not admit exist in the existing one;

The longer explanation:

I see 3 cases we need to solve...

I agree this is a compelling reason for having an API that makes the user capable of asserting (non-)existence.

... having get('p') and exists('p') (and remove find... )

Though I see no compelling reasons to have exists replacing find for a very naive argument: it forces the user to a counter-intuitive API, that is reversed in comparison to how exist is used in ordinary language.

... find never returning a falsy value

I agree that find never returning falsy values can be odd but I'd say that get as well does not return them: when something is not there, it throws. But there's a (justified) difference between the two...

I wonder if ErrorWrapper is a good ideal still...

It's funny that I started this discussion thinking get should be more similar to find but I'm now convinced of the contrary 😄  I'm not a native English speaker so I might be wrong but I'll try:

in ordinary language we use find and get differently: if I ask you to find me X in the closet, there's an implication that you might not find X; if I ask you to get me X in the closet, there's an implication that X should be there or we might say that it corresponds to if you find X, get X;
the docs already reflect this by stating the rule only use find when you want to assert things do not exist;
the code already reflects this rule by having find and get behaving differently;

What I propose:

in respect to 1): get correctly implies an element should exist so that if we cannot get something (because it's not found), we should signal an error occurred;
in respect to 2): we should generalise it by saying only use find for asserting existence of things;
in respect to 3): we should enforce the behaviour by removing the possibility to call exists on the result of get (either by using the Omit strategy or the augmentative one) and maybe in the future by adding a throw annotation for the type;
in respect to ErrorWrapper, I do think it is a good idea; it somehow resembles a (Maybe) Monad, a great abstraction to avoid breaking the flow. I might only suggest that find could return an Empty- and not an Error- Wrapper as not finding something (point 1)) is actually not an error. But this is minimal as what's exposed to the user is the behaviour and not the naming.

I hope I was capable to explain myself enough.

I thought about this a little more and I am worried things are going to get more complicated. I'll keep my comment as short as possible. My TL;DR is while the API could probably be more intuitive (as explained very well above by @AngeloGulina), my main priority will always been a stable API and as few breaking changes as possible.

find should not be replaced by exists

Agreed. Intuitive or not, this is how it has worked for years and now is not the time to change it.

ErrorWrapper should be kept (maybe renamed, for find to EmptyWrapper)

Agreed again for the same reason as above. I don't see very much benefit in adding more complexity with an additional wrapper, though.

get should throw in the non-existing case but should not admit calling exist in the existing one

Are you saying we cannot do wrapper.get('#blah').exists? I guess it there is no real point to call exists on a get call - I am not sure we should prevent this though. get returns a wrapper so why not let people call all the usual wrapper things (we could have a useful warning here, explaining they do not need to).

as a last resort, if introducing a verb for the wrapper for asserting existence, I would suggest to use contains
only in the last case, remove exist from everywhere else

We actually has contains until recently and deprecated it with the reasoning as "just use find or get". I wonder if this was a bad decision. The goal was to have "one way of doing things" and since you can accomplish this with find + exists, contains was removed. Maybe this was a bad decision? 🤷♂

@lmiller1990 as I agree on all the rest you said, I'll just reply to:

Are you saying we cannot do wrapper.get('#blah').exists?

Exactly, that's what I'm proposing.

get returns a wrapper so why not let people call all the usual wrapper things...

Because get does not always return a wrapper (find does even in the falsy cases) and there's no explicit hint for this in the code. That's why, unless opting for a Either-like strategy, I would just prevent it use in the get cases (which would also comply to the recommendation in the docs).

We actually had contains until recently and deprecated it with the reasoning as "just use find or get"...

I didn't mean to propose reintroducing contains. I think find + exists is enough.
Ultimately, I don't want to push this so hard so I'm fine if you don't see any actionable point here. Just wanted to make clear the reason I proposed to change get signature.

I understand now that I took day away and came back. I think it makes sense that get should not allow exists. Non TS users might find this surprising (we need a good warning). Man, I wish we didn't have so many ways to find/get components, lol.
Ok, so we agree that getComponent/get should not have exists. Is there a actually implement this without making the codebase a lot more complex? I am not super strong in terms of TS, I am guessing we need to just change the return type of get to be some kind of wrapper with all the other methods except get? Can we use a fancy Omit or Pick or something (I think I saw those used for this kind of thing before).

Great @lmiller1990!
I think we are on the same page here, yes. Related to fancy TS, I made a proposal here (name of the type can be changed of course).
What do you think?

If it works, it works.
Is there some way to not have it show up in TS hints, but also show a nice warning for regular JS users, such as "You called exists on the result of <get/getComponent>. This method will raise and error if no element is found, so there is no need to call exists".
I feel like a non TS user might be confused... "exists is undefined? why?". Not having exists on get calls is certainly more correct, but we should also make sure we deliver a great DX (a technical correct solution is not always a great DX).
I am still in favor of improving this part of the API for sure! Sorry this is taking a while to figure out, I have been burnt making impulsive decisions with the API in the past (which is why we have get, find, AND findComponent).

@lmiller1990 sorry for the delayed feedback - just got back from holidays.
I will prepare a PR for this so we can move the discussion there, also on the possibile hint for the user.
Regarding the taking a while part, there's abs no problem about it 😄 I enjoyed the quality of discussion and collaboration a lot.

@lmiller1990 sorry it took some times for such a small change. PR is out.
Couple things:

I tried to search for the hint solution but TS does not provide that (AFAIS)
the change will only affect TS users; JS users won't see any difference in their code
DX will be much better for TS users, as the code now reflects the official recommendation
DX will be the same for JS uers

Resolved in #91


Boon khai early stopping

When you added a new program / programs , put a cross on the  OS that you have test it on

(Example: [ X ] Windows  )
[  ] Windows
[  ] Linux Ubuntu
[  ] Mac
[  ] Others  (State here -> xxx )
Assign a reviewer to review your code.

@evanyeohboonkhai kenghooi has changed the grammar in the solution file, please change it in training file then the PR is ready to be merge.


Sanitize external resources to attributions in input file

External resources to attributions in the input file might contain faulty paths (folders without trailing slashes). We sanitize the paths of ResourcesToAttributions based on the files and folders contained in the resource tree.

Performance with the large input file from ORT seems good.


Update harness security md

Fixed spelling
Removed '/' and added OR
Signed-off-by: Smriti S<EMAIL_ADDRESS>

Preview environment: https://ci.pr.harness.io/pr-746


facet grid axis labels are None

The dim names on this plot are not showing up (e.g. None is not right, it should be x and y):
data = (np.random.random(size=(20, 25, 12)) + np.linspace(-3, 3, 12)) # range is ~ -3 to 4
da = xray.DataArray(data, dims=['x', 'y', 'time'], name='data')
fg = da.plot.pcolormesh(col='time', col_wrap=4)

This comes up in facetted plots when you don't supply x and y labels explicitly. We should be able to infer these automatically from the data array dimensions, though.

I'll tag the fix for this onto #608.  It should be simple and it will allow me to rework the logic in _infer_xy_labels().

If the dimensions are A, B, C, and the call is da.plot.pcolormesh(col='B') then it seemed a little ambiguous to assign x='A', y='C'. So another option would be to raise an exception here.

closed via #608.


Some cleanup to the HandConstraint* scripts

This change cleans up some unneeded code and improves consistency.

Merge Radial and Ulnar/default in the HandConstraintPalmUp switch as they performed idential code.
Replace instances of == Handeness with IsHand().  ex: == Handedness.Right -> IsRight()

/azp run

/azp run


Add donut graph for object status. Fixes #246

@mjgiarlo is there anything further here?

I think this can go in now.


Adding a top level entry and four tests for datastore clusters.

Hey midacts, awesome job on this!  I left a few comments in the files themselves.  One thing I did want to ask about was the file naming scheme.  DSC is short Datastore Cluster and Desired State Configuration, so using that in the file names may be a little confusing.  For now I just looked at the code.  It looks like it will work, but I'll try to get it downloaded / tested as well.  Thanks for submitting this!

Good catch.
I had been testing with clusters and knew I couldn't do $cluster |
get-datastorecluster.
I can modify and test the code and then go from there.
Thanks for the review.
On Mar 30, 2017 8:27 AM, "Jon Needham"<EMAIL_ADDRESS>wrote:

@jonneedham commented on this pull request.
In Vester/Private/Template/VesterTemplate.Tests.ps1
https://github.com/WahlNetwork/Vester/pull/112#discussion_r108912078:

@@ -70,6 +70,7 @@ ForEach ($Test in $TestFiles) {
'vCenter'    {$cfg.vcenter.vc}
'Datacenter' {$Datacenter}
'Cluster'    {$Datacenter | Get-Cluster -Name $cfg.scope.cluster}

           'DSCluster'  {Get-DatastoreCluster -Name $cfg.scope.dscluster}

Should the datastore cluster object be piped in from $Datacenter? If an
end user specifies a $Datacenter, I believe with the way this is currently
written, you'll get all datastore clusters, not just datastore clusters for
a particular datacenter.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/WahlNetwork/Vester/pull/112#pullrequestreview-29976323,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADxtkP5a8KdFAmx35LMIavtpcXsWzazVks5rq5-bgaJpZM4Mt4Zq
.

the file naming scheme. DSC is short Datastore Cluster and Desired State Configuration
That is an excellent point. I didn't really like naming it like that either. I'll make those modifications.

Also, I really don't like the 'DScluster', but 'DatastoreCluster' seemed too long and was going to cause me to have to do more formatting to the file.
Should we keep it 'DScluster' or go with 'DatastoreCluster'?

I'm fine with DSCluster. s/o to @jonneedham for the initial review.
:shipit:


Windows Terminal (Preview) crashes with wrapped text

❗ N.B. This issue has also been reported via Feedback Hub link https://aka.ms/AAa8g4n (video/screenshots have been uploaded; posted 2 months ago, but still no resolution)
Environment
Windows build number: 10.0.19042.0
Windows Terminal version: 1.5.3242.0

Any other software?
Windows Terminal version: 1.4.3243.0

Steps to reproduce

Open new Windows Terminal tab or window (using Windows Powershell in this case)

Paste a long text string WITHOUT pressing ENTER.
For example, this  string (H/T http://powershell-guru.com/): Get-ChildItem -Path C:\Demo -Filter *.cs | Rename-Item -NewName {[System.IO.Path]::ChangeExtension($_.Name, ".kt")}
Any long string of ASCII characters should also reproduce issue: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-
The text will soft wrap in a standard Windows Terminal configuration (12pt text)

Press backspace and begin deleting the text.

Expected behavior
The cursor should move up a line. Windows Terminal should not crash.
Actual behavior
Windows Terminal crashes just before the cursor moves up a line, or in other words, just before the character where the text is wrapped.
NOTE: This only appears to happen when there is one tab open.

Updated title to make clear that this issue occurs with both the regular and preview releases of Windows Terminal.

Updated title to make clear that this issue occurs with both the regular and preview releases of Windows Terminal.

Weird, I can't get this to repro, but maybe the feedback hub link will have more info in it.

Weird, I can't get this to repro, but maybe the feedback hub link will have more info in it.

Hmm. Are you using any assistive technology software?
/cc @calos-zamora this is a crash at UiaTextRangeBase.cpp:422 - comparing the start anchor of a range with the viewport.
I wonder if a caller can hang onto an old text range from a buffer before it was resized and have it 'splode on them.

Hmm. Are you using any assistive technology software?
/cc @calos-zamora this is a crash at UiaTextRangeBase.cpp:422 - comparing the start anchor of a range with the viewport.
I wonder if a caller can hang onto an old text range from a buffer before it was resized and have it 'splode on them.

@DHowett Yes, I am. I'm using built-in Magnifier, configured via the Windows 10 Ease of Access Settings (%windir%\system32\magnify.exe)

I'm not sure if this information is pertinent, but I have scaling turned on: I typically use two displays - my primary, laptop screen and an external monitor. As a consequence of vision problems, I have found it necessary to set scaling to 125% on the built-in display.

I will try to see if resetting the Ease if Access Settings to their defaults makes/turning off Magnifier affects the reproducibility of this crash.

@DHowett Yes, I am. I'm using built-in Magnifier, configured via the Windows 10 Ease of Access Settings (%windir%\system32\magnify.exe)

I'm not sure if this information is pertinent, but I have scaling turned on: I typically use two displays - my primary, laptop screen and an external monitor. As a consequence of vision problems, I have found it necessary to set scaling to 125% on the built-in display.

I will try to see if resetting the Ease if Access Settings to their defaults makes/turning off Magnifier affects the reproducibility of this crash.

Triaging this into v2 since we have a line of code identified. Thanks!

fwiw the original LOC:
https://github.com/microsoft/terminal/blob/d29d72e1e023491800b6a03bc226c35e5f9ec240/src/types/UiaTextRangeBase.cpp#L422
is now:
https://github.com/microsoft/terminal/blob/68294f863d2adfafd6937324486b499fea73b8ab/src/types/UiaTextRangeBase.cpp#L849
which is in UiaTextRangeBase::GetBoundingRectangles

FYI, I could reproduce the crash in the debugger just by typing until I reached the right margin (obviously this is with the screen magnifier on). Seems to be the same thing as backspacing from a wrapped line. Either way, what's happening is the startAnchor X coordinate exactly matches the RightExclusive boundary of the bufferSize viewport, and thus is technically out of range. As a result, the CompareInBounds method triggers a FAIL_FAST exception.
https://github.com/microsoft/terminal/blob/fb597ed304ec6eef245405c9652e9b8a029b821f/src/types/viewport.cpp#L357-L359
As for why it's out of range, I'm guessing that might be a side effect of how the terminal handles delayed wrap in the last column.

Super interesting that using the magnifier tiickles this bug. Kind of unfortunate for low vision folks who need a little help :)
At least now I know why 'npm install -g gatsby-cli' was consistently blowing up Windows Terminal :)

For what it's worth anyone trying to use nodejs / npm on Windows is going to get bitten REALLY hard by this bug. It makes installing packages almost impossible.

Will also impact screen reader users. CC @carlos-zamora.

Sorry I didn't look at this sooner! Somehow this never made it to the top of my inbox.
So here's what's going on:

Magnifier enables UIA
ScreenInfoUiaProviderBase::GetSelection() is called

This is called frequently to get the cursor position.

UiaTextRangeBase::GetBoundingRectangles() is called

This is called frequently to figure out where the cursor is on the screen and move magnifier's view appropriately.

Viewport::CompareInBounds(<cursorPosition>, <topOfViewport>) is called and crashes because <cursorPosition> is out of bounds from the buffer size (as mentioned above).

I'm hesitant to clamp the coordinate because I feel like the coordinate is wrong in the first place. Why is the cursor position {120,8} when the buffer is 120 cells wide? The cursor should be going from {0,9} to {119,8} when it wraps.
@miniksa @lhecker Any idea why the cursor's position would be off the right boundary? I imagine we're using the OutputCellIterator (or one of the iterators we have) to wrap the cursor properly, so that's the part that's confusing to me.

The invalid coordinates originate from here (see last line, _AdjustCursorPosition):
https://github.com/microsoft/terminal/blob/0a545b7b9446562561d0978b6c1664324a85ae48/src/cascadia/TerminalCore/Terminal.cpp#L954-L1002
If the current cursor position (cursorPosBefore) is at the end of the line - {119,8} for instance - then proposedCursorPosition.X += gsl::narrow<SHORT>(cellDistance); will increment that to be either {120,8} or {121,8}.
Now normally I'd just throw a quick
if (const auto width = bufferSize.Width(); proposedCursorPosition.X >= width)
{
    proposedCursorPosition.X = 0;
    proposedCursorPosition.Y++;
}

into _AdjustCursorPosition, but this doesn't work here, because TerminalDispatch also modifies the cursor position even before the above code is executed. ConPTY emits carriage returns which set the cursor X position to 0, as well as explicit CSI CUP cursor position sequences.
...and Terminal::_WriteBuffer is oblivious about control codes and their meaning. The resulting interaction is a bit whacky, because if you press backspace on a newline it looks like that:

So when you press backspace on a newline, what happens is that we receive a CUP sequences setting the cursor to the end of the previous line. And thus before the above code runs the cursor position will already have been modified from {0,9} to {119,8} (for instance). _WriteBuffer then doesn't see a backspace, but rather the actual buffer contents, which in this case is a whitespace (0x20). Since whitespace is regular text, the cellDistance is 1, which finally modifies the cursor position from {119,8} to {120,8}.
This behavior stands in direct conflict with the behavior when you enter regular text at the end of a line, because in that case we _don't _ receive a CUP sequence, nor carriage return in TerminalDispatch. Instead only _WriteBuffer is executed.
Optimally only a single place should modify the cursor positions, because it's confusing (and buggy) otherwise. But TerminalDispatch has no idea about unicode and Terminal has no idea about control codes.
@miniksa Suggestions?

The problem is just that the Terminal::_WriteBuffer method doesn't implement delayed EOL wrap. As a very simple test case, run printf "\e[999C*" with a breakpoint in the _WriteBuffer method. You'll see it write out the * character and then increment the X coordinate beyond the width of the page, passing that invalid value to _AdjustCursorPosition. That should never happen.
What it should be doing is recording the delayed wrap, and leaving the cursor where it is in the final column. You can see how it's handled in conhost here:
https://github.com/microsoft/terminal/blob/2b202ce6d993404010337fe8ff205d7b240d60f5/src/host/_stream.cpp#L573-L588
If more output is received after that, then the cursor will need to be moved to the start of the next line, before processing the output. Again you can see how that's handled in conhost here:
https://github.com/microsoft/terminal/blob/2b202ce6d993404010337fe8ff205d7b240d60f5/src/host/_stream.cpp#L365-L376
The bottom line is that WT doesn't have a fully functional WriteBuffer implementation - I think that's what #780 was meant to resolve.

In the meantime, though, we should really get rid of those damn FAIL_FAST tests. Or anyone that is in favour of retaining them, should volunteer to have the telemetry from the crash logs wired up to their desk with a high-voltage shock.

FYI This impacts any tool that tracks the cursor using UIA. Such tools include the text cursor indicator, magnifier, and screen readers.

In the meantime, though, we should really get rid of those damn FAIL_FAST tests. Or anyone that is in favour of retaining them, should volunteer to have the telemetry from the crash logs wired up to their desk with a high-voltage shock.

It's my fault. If you want to shock my chair, you can. I realize, like many things, this was a mistake in hindsight.

Thank you all for your hard work on this issue. It's a real quality of life buzzkill and I appreciate us being on a path to a fix!

Apologies if this is unhelpful noise but just a super delighted partially blind customer here wanting to validate that this bug is actually fixed in the wild!
I can run 'npm i -g gatsby-cli' now without Windows Terminal silently crashing! THIS MADE MY MONTH! :) Hearty thanks to all concerned. If you ever find yourself in Boston please look me up there's a beverage with your name on it :)

@feoh thanks for the kind words! That really made the team's day :smile:


Categories to be thrown out

We need to figure out the reports that might mislead the crime analysis. We need to do:

Have a look at reports at police facilities and what they do
Look at all categories to see if there are misleading ones (like community policing)

I will work on this Friday-Saturday depending on the progress on my other work.


Fixed a bug that prevented separate actor and critic optimizers in DDPG.

When using the DDPG agent with different optimizers for the actor and critic, an error occured in the deleted line, because lists and tuples have no attribute "_name".

great work! It has been merged


.gz from Data Registry displays error

/data/storage/exporter_dumps/australia_nsw/155/full.jsonl.gz - flatten tool complains about the file format

From Sep 16 call, I think Quinta was going to propose the text for the error message, for OCP to review.

My thinking is that we might need additional processing steps in Kingfisher Process to perform corrections for known problems (e.g. normalizing a field so that it is always an array, or always an object, or always a literal value). Like for other steps (like check), we can configure the Kingfisher Collect spider to opt-in to the check.
FYI @yolile

@jpmckinney The proposed mesage is as follows:
This file is not compliant with the OCDS schema so cannot be flattened. Check your data using the Data Review Tool and resolve the issues before flattening.
In case we are able to define the source of the issue, we offer to add one more line specifying it in the message:
This file is not compliant with the OCDS schema so cannot be flattened. Check your data using the Data Review Tool and resolve the issues before flattening. The issue occurred during processing of the item with ocds-03ad3f-391507-1 ocid.

Currently, the flatten tool is failing for all the datasets that I tried from the data registry. (eg https://flatten.open-contracting.org/#/upload-file?lang=es&url=6f6b59d0-b2e5-4641-94f2-d37b2da5c13a, https://flatten.open-contracting.org/#/upload-file?lang=es&url=a8409b70-b4e3-4d55-a919-9d51d57d292f) The logged error is the same as the one reported in https://github.com/open-contracting/spoonbill/issues/195


null target domain object exception

I encountered the following exception running wacs on a Windows 2019 server:
[INFO] A simple Windows ACMEv2 client (WACS)
[INFO] Software version <IP_ADDRESS>1 (RELEASE, PLUGGABLE)
[INFO] IIS version 10.0
[INFO] Running with administrator credentials
[WARN] Scheduled task not configured yet
[INFO] Please report issues at https://github.com/PKISharp/win-acme
[INFO] Running in mode: Unattended
[EROR] (DependencyResolutionException): A delegate registered to create instances of 'PKISharp.WACS.DomainObjects.Target' returned null.
Here is the command line I entered:

wacs --target iis --siteid 1 --installation iis,script --script "Scripts\ImportRDSFull.ps1" --scriptparameters "(redacted)" --certificatestore My --validationmode dns-01 --validation acme-dns --acmednsserver<EMAIL_ADDRESS>
The command line parameters were based on the following guidance, plus the validation:
https://pkisharp.github.io/win-acme/manual/advanced-use/examples/rds

Hi @busitech, I was able to reproduce this issue when the site with identifier 1 in IIS doesn't have any bindings with host names configured. This means the program doesn't know which domain(s) to get a certificate for. You can either add/change the bindings in IIS, or use --target manual --hostname xxx --installationsiteid 1 instead.

I've improved error handling for this case to make it more clear for future users what's going on.

Great, thank you.  The additional exception handling will be helpful.  One of the things I expected to happen was for the host name of the machine to be used as the default, since IIS doesn't require host name bindings.


NTR: food products and properties

Bulk NTR URL
https://docs.google.com/spreadsheets/d/1pRW5OqbfXkGFtbbS_ruCUlwchcbsg42YH6NThpiyzn0/edit#gid=2022130952
Submission Requirements

[X] Set the spreadsheet link sharing so that "Anyone with the link" can at least "View" or "Comment" if not "Edit".

[X] <issue #> in the spreadsheet title has been replaced with the number of this issue.

[X] Required columns (yellow highlight) have been provided for all of the requested terms.

Requested by Cathy for GRDI spec - all terms exist in FOODON and just need adding to specification and appropriate templates.

picklist term
ID

sliced
FOODON:03430137

sliced, thin, below 0.5 cm
FOODON:03430145

coconut meat
FOODON:00003856

Other terms recommended as better fit

picklist term
ID

food (sliced)
FOODON:00002455

food (shredded)
awaiting ID

Added terms

picklist term
ID

Food (chunked)
awaiting ID

Food (diced)
awaiting ID

Food (grated)
awaiting ID

Food (pulped)
awaiting ID

Actioned with new release v9.10.10


Issue in Windows Power Shell

Set-Location : Cannot find path 'E:\IIT MADRAS\TEXTURE LAB\MS Project data\Steel Project Data\Experimental data\D1\D1
Gleeble raw data\Final considered raw data\D1_Gleeble data Excel' because it does not exist.
At line:1 char:1

Set-Location -literalPath 'E:\IIT MADRAS\TEXTURE LAB\MS Project data\ ...

  + CategoryInfo          : ObjectNotFound: (E:\IIT MADRAS\T...eble data Excel:String) [Set-Location], ItemNotFoundE
 xception
  + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.SetLocationCommand

PS C:\Windows\System32>

Hello All,
I am facing an issue with the WPS. The folder, where I am opening WPS, showing the above error. May I know why I am able to see this and how to overcome this?

Sorry @AmitS07 -- this isn't an issue related to the Windows Terminal documentation. Please consider opening this issue with the related PowerShell docs.


Add theming to Navbar

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


How to source the entire user env?

Is there a xenon equivalent to qsub -V or sbatch --export=ALL?

By using the --inherit-env the job will inherit all the environment variables in your current shell.

Oops, I just found out that this feature was needed in another scenario but not in the current execution of my workflow. Nevertheless, I've tested it but got the following error message.
xenon scheduler slurm --location local:// submit --inherit-env --stderr stderr.log --stdout stdout.log ...
cat stderr.log
/cm/local/apps/slurm/var/spool/job1773448/slurm_script: line 47: syntax error near unexpected token `('
/cm/local/apps/slurm/var/spool/job1773448/slurm_script: line 47: `export BASH_FUNC_module()="() {  eval `/cm/local/apps/environment-modules/3.2.10/Modules/$MODULE_VERSION/bin/modulecmd bash $*`

Modules uses bash functions, which end up as environment variables.
Only variables names which include uppercase letters, digits and underscore should be inherited.
This means the job will not have the module function available.


Question : Why asyncio ?

I wonder why asyncio is required at all. It makes the usage of the library a touch unwieldy because of the awaitclause required.
I see the processing of the data as sequential  in nature,  i don't see parallelism here.
Am I missing something ?

The goal of the project is to provide a Home Assistant integration, and therefore asyncio was added as a dependency.


feat: add alternative versioning schemes

This adds a OSGI centric versioning scheme as well as a plain text versioning scheme with SemVer still being the recommended default.
feat: pass through given edit_url
fix: either pass through edit_url or suppress it

It would be good to clarify the comment about the warning in the readme file, the other comments are just about style or "nice to have".
I didn't go deeply into the OSGi versioning semantics – I trust your tests there slightly_smiling_face

Thanks, but it's pretty simple. Nowhere near SemVer ranges...