RoutingPlugin: handle coordinate proposal

the RoutingPlugins handles now a coordinate proposal of type START_OR_DESTINATION
this PR contains also a small refactoring of the mapContextMenu s-o-s

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

18 of 18 (100.0%)  changed or added relevant lines in 5 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.01%) to 99.512%

Totals

Change from base Build<PHONE_NUMBER>:
0.01%

Covered Lines:
11162

Relevant Lines:
11166

💛  - Coveralls


envoy: update version to v1.19.0

Description:
Updates the envoy version to v1.19.0 for both
OSM's sidecar and Contour's edge proxy.
Contour 1.18 uses Envoy v1.19.0 by default, but
the Bitnami Helm charts weren't updated to reflect
this change yet. This change also overrides Contour's
envoy image to match the default upstream version so
that the same version of envoy is used for both the
sidecar and ingress gateway.

Testing done:
Tested ingress with Contour.

Affected area:

Functional Area

Ingress
[X]

Please answer the following questions with yes/no.

Does this change contain code from or inspired by another project? no

Did you notify the maintainers and provide attribution?

Is this a breaking change? no

Codecov Report

Merging #3995 (18e8737) into main (48aaf97) will decrease coverage by 0.12%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #3995      +/-   ##
==========================================
- Coverage   67.52%   67.40%   -0.13%
==========================================
  Files         204      204
  Lines       11615    11615
==========================================
- Hits         7843     7829      -14
- Misses       3721     3735      +14
  Partials       51       51

Flag
Coverage Δ

unittests
67.40% <ø> (-0.13%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/crdconversion/crdconversion.go
59.78% <0.00%> (-15.22%)
:arrow_down:

Continue to review full report at Codecov.

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


doc: how to write custom formatting logic

#68 #86 #123

the main idea of there i think we can now remove the custom spawn logic and move to vim.system with coroutine wrapper.

I can try...

@glepnir The main thread is still blocked on api.nvim_buf_set_lines(...), any way around it?

TODO: make linters support all config fields

seems like need more tast cases.

ok

test cases for new vim.spawn wrapper. single tool multiple tools etc case.

test cases for new vim.spawn wrapper. single tool multiple tools etc case.

Do I just assert true like in previous test?

that's too simple It's better pass some codes as stdin then check result.

<3
I'm going to love this plugin, thank you very much

hi hello you accidentally started writing double newlines to the linter (guard.nvim adds a newline to the end of each line in https://github.com/nvimdev/guard.nvim/blob/main/lua/guard/util.lua#L9-L16, and then nvim's SystemObj:write() adds a newline to the end of every line it writes, see https://github.com/neovim/neovim/blob/5331f87f6145f705c73c5c23f365cecb9fbc5067/runtime/lua/vim/_system.lua#L122-L125) which means the linter gets line numbers wrong and keeps complaining about there being too many newlines.

hi hello you accidentally started writing double newlines to the linter (guard.nvim adds a newline to the end of each line in https://github.com/nvimdev/guard.nvim/blob/main/lua/guard/util.lua#L9-L16, and then nvim's SystemObj:write() adds a newline to the end of every line it writes, see https://github.com/neovim/neovim/blob/5331f87f6145f705c73c5c23f365cecb9fbc5067/runtime/lua/vim/_system.lua#L122-L125) which means the linter gets line numbers wrong and keeps complaining about there being too many newlines.

Oh wow nice catch! That explains why clippy always reports the double amount of line number.
I will push a fix tonight after some more testing.


Won't import some free Steam games and demos

Check for existing issue
Couldn't find anything about failure to import some of Steam's free games.
Describe the bug
Playnite won't import some free Steam games, and won't import any demos.
Will import Princes Remedy In a World of Hurt and The Indifferent Wonder of an Edible Place. Won't import Gravity Bone or any demos.
I have "Import generic free items" checked. Whether my Steam account is private with an API key or public doesn't effect it. I have restarted Playnite and reimported all libraries multiple times.
I just started using Playnite and the only things I have removed were my emulated games before I sorted them and reimported them to prevent duplicates. When having no filters activated, Gravity Bone and Demos still don't show up.
As an aside, GOG Galaxy will import all free games but not demos.
To Reproduce
Screenshots
Diagnostics ID
c53b94e9-a5d7-4479-a275-24b3dfce05d5

I looked into it more and the issue happens if you have "Ignore installed games from other accounts" option enabled. Demos are not returned by Steam API as part of your library so Steam plugin thinks that it's a game from a different account.
I'm not sure there's a good way how to handle this. Checking each entry whether it's a demo or not would be incredibly slow with large libraries.

Yesss that fixed it, thank you so much. "Ignore installed games from other accounts" was on by default (to my recollection), I might recommend you set it off by default.
As for people who don't want to import games from other accounts while accessing demos and free games, if you're somehow able to check if a game cost $0.00 then you could set an option that would allow people to import free games from other accounts without anything else. They'd get the free games from those accounts, but that's a much more manageable amount of games for them the manually filter.

That option is not enabled by default and you actually have other accounts specified.

Well my bad then, that's my L to hold. I believe I enabled my own account under Additional Accounts when I was looking for solutions and doing everything I could.


Display correct error message for unsupported Java versions

Currently, this error is shown, which is incorrect:

:tada: This issue has been resolved in version 0.26.1 :tada:
The release is available on:

v0.26.1
GitHub release

Your semantic-release bot :package::rocket:


Needed to crop between the center and the top.

I added this constant to have the possibility to use the crop function and crop it between the top and the center.

Can you update readme file about the same?

Hi Aditya,
Could you specify which README you're talking about ?
Is it the README on the master branch or are you talking about the API
doc - source-class-Eventviva.ImageResize.html - in the gh-pages branch ?
Best,
Alexis
Le 29/05/2017 à 13:14, Aditya Patadia a écrit :

Can you update readme file about the same?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/eventviva/php-image-resize/pull/79#issuecomment-304647066,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ATifmfbJGm-CPPM-JY6m6dQNk_2xvNcEks5r-ra2gaJpZM4NlJwh.

Not the doc. I am talking about README.md. The doc will me automatically updated based on annotations of PHP.

I updated the README.md let me know if that suits you ?
Le 30/05/2017 à 09:41, Aditya Patadia a écrit :

Not the doc. I am talking about README.md. The doc will me
automatically updated based on annotations of PHP.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/eventviva/php-image-resize/pull/79#issuecomment-304813004,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ATifme_3fmrbq5PPhvZ9GgVsclU1aZgvks5r-9ZGgaJpZM4NlJwh.

Sorry for this but I mean you should provide proper example about what crop modes are available and give one example about how should it be used.
When we write code, the API is obvious for us but not for users.

Sorry for this but I mean you should provide proper example about what crop modes are available and give one example about how should it be used.
When we write code, the API is obvious for us but not for users.

@adityapatadia I have updated the documentation could you let me know if it's fine clear enough ?


Case Insensitive email

How can I make it case insensitive login if I use this package on my Django project

Hey @adilreza. Sorry for late answer.
You must create your own authentication backend. This package extracts username and password from serializer and then calls authenticate function. Check these docs https://docs.djangoproject.com/en/5.0/topics/auth/default/#authenticating-users.


[DEP] bump versions of deps suggested by synk-bot

resolve #304.

Welll...I forgot to run yarn run build on local machine, so I will address this error.

I found it:
mkdirp has different APIs between version 0.5.0 and 1.0.0. And the former version is used by crx-webpack-plugin which has not been updated for a long long time.
I modified crx-webpack-plugin to make it support webpack5 API weeks ago and made it as part of hypercrx src code(see https://github.com/hypertrons/hypertrons-crx/pull/274/commits/043d40de1d855b58fa2cb38b0697001370a306cf). However, I didn't add mkdirp as a dependency into package.json then, which is a mistake.
So now, without any warning, bumping versions of the packages made mkdirp bump from 0.5.0 to 1.0.4 indirectly. And this makes things out of order.

/approve


$reference->getData() is always blocked

Here is my code:
`
$config = new Configuration();
$config->setAuthConfigFile('path/to/json');
$firebase = new Firebase('https://my_project_id.firebaseio.com', $config);
$reference = $firebase->getReference("path/to/location");
$data = $reference->getData(); // <-- always blocked here
`
I tried this way equivalent by java (on the same json & firebase_url) then everything worked fine.

Thank you for taking the time to report this issue - unfortunately, the Firebase V3 SDK integration is not working as I hoped with this library, #24 describes another issue with the service account configuration not working properly.
For now, I would recommend to use the Firebase Secret method (you can find the secret at https://console.firebase.google.com/project/my-project-id/settings/database ), but I am currently working on a (PHP 7) rewrite of the library, explicitely targeted at being used with service accounts - would you be open to use this as soon as it is ready?

Yes, It is solved by using Secret method. Thank you!

Happy it works! I will close this issue now, but of course, feel free to re-open it or create a new one at any time!

@HungChu I just released a new patch version, see https://github.com/kreait/firebase-php/releases/tag/0.10.2
Using the Google Service Account should now work as expected - I would be happy if you would like to test this and give me feedback if it works for you as well.

Sorry about my late.
Before, I tested on PHP v5.4.x by using the Google Service Account so the line $data = $reference->getData(); is alway blocked. After that, I changed to Firebase Service method according to your suggestion but it was warned by curl. So i thought that it happened by i used the old php version
Today, I re-test by using Firebase Secret method on PHP v5.5.34, it always pass from line ->getData() but it always be halt on that (don't execute any line code after that point). The problem is happening the same with the Google Service Account method.
I applied your new path version but the problem is still unresolved.

This is strange - if a HTTP request to Firebase fails, an exception should be thrown. Can you please check the following:

Is there a custom exception handler set in your project or another setting that prevents exceptions or hides them?
Are you using the latest Version of this library? see https://github.com/kreait/firebase-php/releases
Could you configure the library with a logger to see if any errors are shown there? You can find the Logging documentation here

:octocat:

Thanks @jeromegamez !
I try/catch that lines code then caught the exception: Permission denied.
After that, I tried to run the java program again with the same url & account service then get the fine result.
So I guest that the authentication to firebase service with ssl (account service) has a problem?

Thanks for trying out! Could you show me the PHP-code you are using to perform the request, please? I will then try to reproduce the error.
Are you using the same Service Account for your PHP and Java apps?
And did you make sure to update to version 1.0.1?

Yes, I updated lib to version 1.0.1.
Here is my Google Service Account (plz change the ext from .txt to .json:
thtt_credentials.txt
And, here is my code that is using it:
setAuthConfigFile('thtt_credentials.json');

$firebase = new Firebase('https://thtt-c7be6.firebaseio.com', $config);

$thtt = $firebase->getReference("THTT");
$users = $thtt->getReference("users");
$my = $users->getReference('1');
$state = $my->getReference("state");

echo $state->getKey();
echo ": ";
try
{
    $data = $my->getData();
    print_r($data);
} catch (Exception $ex)
{
    echo $ex->getMessage(); // Permission deined
}

echo "Done!";

@HungChu Sorry for the late reply, first day of regular work today for me :).
I have deleted the credentials file from your comment to avoid others being too curious - but thanks for being so open with it.
I tested your script with your service account and everything worked as it should (I just replaced the print_r() with var_dump() to make sure that I see boolean/null values.
Could you please show me an output of a php -m command on your computer? My first thought when I got it working, was that you might not have the openssl extension installed so that requests to the HTTPS domain of a firebase app might not be performed correctly.
Could this be possible?

Yes, here is the output for the command:
$ php -m
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dba
dom
ereg
exif
fileinfo
filter
ftp
gd
hash
iconv
json
ldap
libxml
mbstring
mysql
mysqli
mysqlnd
openssl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
posix
readline
Reflection
session
shmop
SimpleXML
snmp
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
wddx
xml
xmlreader
xmlrpc
xmlwriter
xsl
zip
zlib
[Zend Modules]

@HungChu I am really out of ideas, but I still think this is not a problem of the library, but of the system environment you're running the script in.
So, I will close the issue, since it seems not to be in scope of this library - but please do add comments if you figured out what the problem is, or try one of the other firebase libraries from https://packagist.org/search/?q=firebase-php - perhaps it will work with one of them.
Sorry I couldn't really help so far!


Polish syntax for roles configuration

Syntax changes to make:

[x] Rename "perms" to "permissions" in the resource predicate configuration
[x] Add namespaces to role names
[x] Make the resource _type argument take a class as the arg instead of expecting a specializer

PR checklist:

[ ] Added changelog entry.
[x] Updated GitClub + docs: https://github.com/osohq/gitclub-sqlalchemy-flask-react/pull/4

Are classes always constants you can pass to things? I know they are in python but I'm not sure about go or rust. Worried this might not be implementable there.

Looks good except for the question about passing the class. Seems safer to keep it as a specializer unless we know it'll work in rust / go.

Decided to just move this change into a separate PR: #943

Need to verify passing the class works in all our languages to make this change.

Took out this change, so should be good now.


DBZ-5492 Use github.ref instead of github.base_ref

https://issues.redhat.com/browse/DBZ-5492

Applied to main (=2.0) and branch 1.9.


Degree and radians converter

I am a gssoc'21 participant i would like to contribute to this issue

It's already there in Calculator


Feature/child panel visible #274

Description
Added all the various interactions for when the child panel open state should be changed
Testing instructions
Add a set up instructions describing how the reviewer should test the code

Review code
Check Travis build
Review changes to test coverage
Start the site and run through the conditions in the story, (alternatively run the e2e tests to see all the cases get checked)

Agile board tracking
connect to #274
closes #274

Codecov Report

Merging #386 into version1 will decrease coverage by 0.3%.
The diff coverage is 76.19%.

@@             Coverage Diff              @@
##           version1     #386      +/-   ##
============================================
- Coverage     84.64%   84.33%   -0.31%
============================================
  Files            79       79
  Lines          2982     3014      +32
  Branches        514      520       +6
============================================
+ Hits           2524     2542      +18
- Misses          402      415      +13
- Partials         56       57       +1

Impacted Files
Coverage Δ

src/malcolm/actions/navigation.actions.js
63.43% <ø> (ø)
:arrow_up:

...colmWidgets/textInput/WidgetTextInput.component.js
97.36% <ø> (ø)
:arrow_up:

src/mainMalcolmView/mainMalcolmView.container.js
88.88% <ø> (ø)
:arrow_up:

src/mainMalcolmView/middlePanel.container.js
83.33% <ø> (ø)
:arrow_up:

src/malcolmWidgets/method/method.component.js
80% <ø> (ø)
:arrow_up:

src/infoDetails/infoDetails.component.js
51.28% <ø> (ø)
:arrow_up:

src/navbar/navcontrol.component.js
100% <ø> (ø)
:arrow_up:

src/infoDetails/infoElement.component.js
96.29% <ø> (ø)
:arrow_up:

...ets/attributeDetails/attributeDetails.component.js
95.12% <ø> (ø)
:arrow_up:

src/malcolmWidgets/table/table.container.js
90.69% <0%> (-2.16%)
:arrow_down:

... and 5 more

Continue to review full report at Codecov.

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


Rename dt to delta_t for Propagator

@abocquet this solver is actually a good use case to implement caching on more arguments than t. Here we would enjoy caching the propagator torch.matrix_exp(-1j * self.H(t) * delta_t) on t and delta_t. Note that currently the delta_t are quite unreliably different, e.g.:
0.1
0.1
0.10000001
0.099999994
0.099999994
0.100000024
0.099999964
0.100000024
0.099999964
0.100000024

which would have to be fixed to enjoy from the caching.


Peformance issue with certain type of schema

Nuget Package
JsonSchema.Net
Package Version
7.1.2 and current master branch
Operating System
Linux
.Net Target (if relevant, please specify the version in the description)
.Net (5 or after)
A clear and concise description of the bug.
Hi,
I know you've already spent a lot effort on performance improvements, sorry to add another issue to the list.
I've used the schema validation functionality for a while, and as the schema becomes more complex, unfortunately it has gotten slower and slower to the point where I can no longer use it as it takes more than a minute and several gigabytes of memory now.
I've spent a few hours today to trim down the schema I use to what I believe is the main cause of the issues I am facing.
I think the main culprit is the schema using anyOf with a list of options with each option being identified by a property "type" and the options recursivly referencing themselves. The real schema models represents the serialization of a simple abstract syntax tree and contains a root element like:
    "expression-code-ast-root": {
      "anyOf": [
        {
          "$ref": "#/definitions/expression-code-ast-literal-of-number"
        },
        {
          "$ref": "#/definitions/expression-code-ast-plus"
        }
        ...
        }
   ]

with the elements potentially forming a tree with "left" and "right" nodes again referencing the root type:
"expression-code-ast-plus": {
    "type": "object",
    "properties": {
      "type": {
        "const": "Plus"
      },
      "left": {
        "$ref": "#/definitions/expression-code-ast-root"
      },
      "right": {
        "$ref": "#/definitions/expression-code-ast-root"
      }
    },
    "required": [
      "type",
      "left",
      "right"
    ]
  }

so that the AST of an expression is represented in json like:
 {
          "type": "Plus",
          "left": {
            "type": "LiteralOfNumber",
            "value": 100.000000
          },
          "right": {
            "type": "Plus",
            "left": {
              "type": "LiteralOfNumber",
              "value": 100.000000
            },
            "right": {
              "type": "LiteralOfNumber",
              "value": 100.000000
            }
          }
        }

Now the longer this anyOf list is, the longer validation takes. In my tests:
| number of elements | duration in seconds |
|--------------------+---------------------|
|                 42 | 275s                |
|                 40 | 176s                |
|                 30 | 51s                 |
|                 20 | 11s                 |
|                 10 | 1s                  |

I don't know if there can be an easy fix for this or if this is just a type of schema that cannot be validated easily.
I've attached a sample schema and data file below.
The example may look artificial but this is just because I've tried to remove most of the irrelevant parts of it and renamed most of the real objects to a number.
If you have any advice or idea what could be done to improve this, please let me know!
Thanks,
Ben
What did you expect?
That data can be validated against the schema.
Please add test code or steps to reproduce the behavior.
Example Schema:
https://github.com/bschwehn/json-everything/blob/performance_recursive_anyof/TestRun/Files/IssuePerf_schemareduced4.json
Test data:
https://github.com/bschwehn/json-everything/blob/performance_recursive_anyof/TestRun/Files/IssuePerf_datareduced4.json
Code:
https://github.com/bschwehn/json-everything/blob/performance_recursive_anyof/TestRun/PerfIssue.cs
Is there any other information you'd like to share regarding this bug?
No response
Code of Conduct & Contributor Guidelines

[X] I agree to follow this project's Code of Conduct and Contribution Guidelines.

Hey there.  Thanks for the report.
This pattern of multiple $refs is definitely a detriment of the pre-evaluate architecture.  The analysis tries to build out the entirety of the JSON Schema tree, resolving references and then performing analysis on those.  While it showed to be considerably faster than running through the schema evaluation more simplistically, it has some issues:

The code's harder to read and reason about.  Coming back to this even a few month later, I've had to remind myself of how it works at times.
It's harder for users to create new keywords.
There's a significant "first eval" cost of having to perform the analysis.

I've also had #760 reported recently regarding performance, so this is something I'm considering again.
I do have another, more functional approach that I've partially developed.  It's passing the test suite, but I don't have all of the options integrated into it yet.  I might be able incorporate it into the existing code without breaking what's there.  If I can, then I'll release a minor bump, and you can have a play with that.  But feedback will be key.

Thanks for the detailed response!
Yes, I've seen that a lot of time is spent during the BuildEvaluation stage, from my very limited understanding of the code it seemed difficult to do really significant improvements here for this particular use case without really changing the fundamental approach.
I see you have a branch "functional" and one "functional-low-alloc". Would it already help if I gave one of those branches a try?
BTW: I've seen some surprisingly large improvement for my use-case by simply removing the building of the validation messages log, basically just not creating the Fail message in ConstKeyword and RequiredKeyword.
I guess it help reducing the large number of allocations I've seen:

I've just replaced the errormessage with "null", I think the proper way would be to check if the OutputFormat is set to OutputFormat.Flag and then not create the messages -- they are thrown away anyway later.
It's not really helping for my use case, even large improvements here are wiped out by just adding another $ref, but maybe it is worth doing for some other use cases.

Well, it doesn't look like the new approach is going to help.  My initial tests (some time ago) showed that it was faster for single validations, but it scales linearly.
I rewrote the benchmark to include different schemas with varying numbers of options in a oneOf similarly to what I expect yours is.    So I'm convinced that's not the solution.
I'll run this with your schema and instance and report back.

Okay.  I got impatient with your schema and didn't let it finish.
Then I had a thought:  Currently the new approach doesn't build proper output, but it also doesn't have any optimizations.  So I added a short-circuit to the anyOf handler, and it finished blazingly quick!
So the issue here seems to be the need to evaluate every subschema.  There are two reasons to do this.
First is building complete output.  A complete output would show results from every subschema.  If a subschema of anyOf fails, then the output has to show why each subschema failed.
Secondly, if the schema has an unevaluatedProperties or unevaluatedItems (which yours doesn't appear to have), every subschema must be evaluated in order to collect all of the evaluated properties or items.
I'm not sure what to do here.  It is allocating a lot still.

Thanks again for looking into this!
For what it's worth, having the complete output is entirely useless for
this kind of schema. Before turning on OutputFormat.Flag I had cases where
it resulted in 700000 entries -- and that was a while ago when the schema
was simpler, I suspect it is more now.
No one can possibly look at them and it does not help in finding the error
in the json at all.
So maybe having this short cicuit enabled when OutputFormat.Flag is set or
maybe once a couple of thousands error entries are already added would be
an option?
On Fri, 12 Jul 2024, 23:28 Greg Dennis, @.***> wrote:

Okay. I got impatient with your schema and didn't let it finish.
Then I had a thought: Currently the new approach doesn't build proper
output, but it also doesn't have any optimizations. So I added a
short-circuit to the anyOf handler, and it finished blazingly quick!
So the issue here seems to be the need to evaluate every subschema. There
are two reasons to do this.
First is building complete output. A complete output would show results
from every subschema. If a subschema of anyOf fails, then the output has
to show why each subschema failed.
Secondly, if the schema has an unevaluatedProperties or unevaluatedItems
(which yours doesn't appear to have), every subschema must be evaluated in
order to collect all of the evaluated properties or items.
I'm not sure what to do here. It is allocating a lot still.
—
Reply to this email directly, view it on GitHub
https://github.com/json-everything/json-everything/issues/766#issuecomment-2226377164,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AC3NEBZ4I65JMMLF2CZU2G3ZMBDABAVCNFSM6AAAAABKXPHSQGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMRWGM3TOMJWGQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

Yeah, I've been looking at the current architecture to try to figure out where to put that short-circuit, and I'm having trouble identifying it.
The trouble is that subschemas are evaluated in order of dependency, including children.  Since allOf declares that its dependencies are its subschemas, the system runs all of its subschemas first, then passes the results of those evaluations to the allOf evaluator.  But by that time, the hard work is already done.
The processing model is going to need another change.


(FACT-952) Update Facter man page for Facter 3

The Facter man page was last updated in February of 2014. This
commit updates it for new features and options in Facter 3.

CLA signed by all contributors.

We also need to update the install script (CMakeLists.txt) to install the man file. A single install(FILES ...) should be sufficient.

:+1:
The man-page formatting isn't great, but I'm fine with leaving that for future work.


Add client/server data exchange

Need a way to send data based on user actions to a server and to receive and display results.

Simple example of send a request for data based on a tap on an element and updating text elements using the returned data:
{
	"pages": [
		{
			"name": "fetchPage",
			"elements": [
				{"name":"label", "text":"Loading ...", "h":40, "pos":["50%", 40], "opacity":0.1, "to": { "opacity":1} },
				{"name":"error", "text":"<error>", "textColor":"red", "h":40, "pos":["50%", 82], "opacity":0 },
			 ],
			"events": [
				{
					"load": [
						{
							"fetch":{
								"source":"http://domain.com/data.json",
								"params":{ "p1":"v1", "p2":"v2" },
								"events": {
									"error": {
										"params": {"code":{"type":"number"}, "message":{"type":"string"}},
										"actions": [
											{ "update":{"name":"label", "value":{"params":"message"}}}
										]
									},
									"completion": {
										"params": {"code":{"type":"number"}, "message":{"type":"string"}},
										"actions": [
											{ "update":{"name":"label", "value":{"params":"message"}}}
										]
									}
								}
							}
						}
					]
				}
			]
		}
	]
}

It looks good for me but needs some clarification for some parts:

Does params property under fetch represents POST request parameters?
Would you explain more about params properties under error and completion properties? Are code and message are expected to be mapped from the returned JSON data? Or code is a HTTP response code?
What is value property under actions? Did you actually mean text to update the label text?

Yes, params in fetch represents POST request params.
Yes, the response (error/completion) represent the HTTP results code and JSON message response.
Fixed: value -> text


handle non square patch sizes

Hello, would it be difficult to allow for nonsquare patches to be used, I'm examining the use of Vit on some non-image data where it cannot be represented in a square format.
Preferably by having a tuple as an input to select width and height. Is there anything currently that would block this from being done?

I added initial functionality for this inside the vanilla Vit class,
See https://github.com/lucidrains/vit-pytorch/pull/105#issue-628453962

@FilipAndersson245 hey! it actually already works with non-square patches, as long as you set the image size to be that of max(height, width), and your height and width is divisible by the patch size

@lucidrains Hey! do you have an example of how you do that?
This is the code I currently use with my pull request,
from vit_pytorch import vit

v = vit.ViT(
    image_size = (25,60),
    patch_size = (25,1),
    num_classes = 30,
    dim = 1024,
    depth = 6,
    heads = 16,
    mlp_dim = 2048,
    dropout = 0.1,
    emb_dropout = 0.1
)

img = torch.randn(1, 3, 25, 60)

preds = v(img)

@FilipAndersson245 yup, just try
import torch
from vit_pytorch import ViT

v = ViT(
    image_size = 256,
    patch_size = 32,
    num_classes = 1000,
    dim = 1024,
    depth = 6,
    heads = 16,
    mlp_dim = 2048,
    dropout = 0.1,
    emb_dropout = 0.1
)

img = torch.randn(1, 3, 256, 128) # not a square

preds = v(img) # (1, 1000)

@FilipAndersson245 updated the readme too :) this is a frequently asked question

Okay, but in your example, the patch size is still square 32x32 correct?
Thanks for the quick response!

Ohh gotcha, you want nonsquare patches! 🤦♂ Ok I'll get this built :)

Did a pull request implementing it if you want to give it a look :)

my pull request was only for VIT but it would probably be good to do the same to all variants.

@FilipAndersson245 https://github.com/lucidrains/vit-pytorch/commit/654952262927eaa6d8519ad0876e25f3c1f51c25


Unable to resolve fonts when using new angular esbuild

Bug already reported?

[X] I confirm that I have checked if the bug already has been reported

For which framework/library you are reporting the bug
Angular
Component name
No response
Description
When using the new Angular esbuild which is default for new angular applications the builder fails to load the fonts:

Steps To Reproduce

Create a new angular project with Angular 17
Add SEB green and import styles as described in Angular Green
Verify project is using new builder in angular.json:

...
"architect": {
  "build": {
    "builder": "@angular-devkit/build-angular:application",
...

Build the application

Current Behaviour

If I replace variable (seb-font-path) in @sebgroup > fonts > scss > _path.scss  on all @font-face { ... } with a hard coded value "../fonts", then the build works.
Using the "old" builder also works without any modifications.

Expected Behaviour
No response

Any progress on this issue?

as a temporary workaround you could try this:
@use '@sebgroup/chlorophyll/scss' with($font-path: '@sebgroup/fonts/fonts');

as a temporary workaround you could try this:
@use '@sebgroup/chlorophyll/scss' with($font-path: '@sebgroup/fonts/fonts');

☝ This is the correct solution.
We might make this the default in a future major release, but for now it needs to be configured on the consumer side.
I'll add a note about this in the docs!


Update README.md

what is the reasoning for this change?

what is the reasoning for this change?
I think à la spelling mistake !

à la looks like a correct English word https://en.wiktionary.org/wiki/à_la#English

Closing as this is as intended.


Support keyword arguments in providers

All arguments are passed positionally. So we cannot use keyword-only arguments in providers.
But since providers are typically not just a thin wrapper but encode some logic themselves, we may want to use them like regular functions. So following our style of requiring keyword arguments in many places, we should allow the same here.

I used this initially, but dropped it, since it made it harder to use Dask, which does not really place nice with kwargs. I think there was a way to get it to work somehow, but it did not feel straightforward.


SD WQE enhancements

Codecov Report

Merging #134 into master will increase coverage by 0.32%.
The diff coverage is 89.65%.

@@            Coverage Diff             @@
##           master     #134      +/-   ##
==========================================
+ Coverage   86.69%   87.02%   +0.32%
==========================================
  Files          14       14
  Lines        1954     1980      +26
  Branches      364      370       +6
==========================================
+ Hits         1694     1723      +29
+ Misses        142      134       -8
- Partials      118      123       +5

Impacted Files
Coverage Δ

wqio/samples.py
82.06% <100%> (ø)
:arrow_up:

wqio/utils/misc.py
91.66% <100%> (+1.66%)
:arrow_up:

wqio/datacollections.py
91.09% <100%> (+0.67%)
:arrow_up:

wqio/hydro.py
86.7% <100%> (ø)
:arrow_up:

wqio/features.py
81.27% <33.33%> (-0.18%)
:arrow_down:

wqio/viz.py
86.03% <77.77%> (-2.21%)
:arrow_down:

wqio/utils/numutils.py
96.53% <90.9%> (-0.93%)
:arrow_down:

wqio/datasets.py
66.66% <0%> (+42.85%)
:arrow_up:

Continue to review full report at Codecov.

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


Remove GNU PBDS dependence in stats classes and improve ArgMinMax implementation

Summary of changes

Removed PBDS dependence in order statistics. If gcc is being used we used the PBDS tree, if not we use a std::multiset. The downside of this is that for Quantile/Rank, we need to iterate on the set to find the desired value which is O(n). Before, in the PBDS order statistics tree, the complexity of find is O(log n). I did research on replacing the pbds tree and there is no readily available equivalent data structure. I will open an issue as a good starter task for someone to implement a data structure for this use.

Realized I could do ArgMinMax more efficiently. With the pbds tree it was O(log n) insert/delete and find. Using the AscendingMinima monotonic queue, it's O(1) amortized for all those operations.

Cool, once this is merged will compiling with clang work correctly? If so and if you're up to it, you could try adjusting the macos build steps in .github/workflows/build.yml to no longer set CXX to see if clang does actually work correctly on CI.

Just talked to @timkpaine there are a few more steps to do before clang will work


Replace ultra runner by turborepo

Proposed Changes
Replacing ultra-runner by turborepo.
Potential Breaking Changes
None
Acceptance Criteria

[ ] The proposed changes are covered by unit tests
[ ] The potential breaking changes are clearly identified
[ ] README.md is adjusted to reflect the proposed changes (if relevant)

Turbo cache on github runners works for subsequent runs 🎉

https://github.com/coveo/plasma/actions/runs/3252780928/jobs/5339365742#step:4:43

Turbo cache activated for build and test commands.
Cache miss (happens on initial PR build)

Cache hit (happens on PR updates)


Enhance the styling of homepage and posts

Is your feature request related to a problem? Please describe.
Add some styling to the home page and posts.

Describe the solution you'd like
Improve the styling of homepage and posts.

I will work on this @Mr-spShuvo


Crash at 5120x1440 on nvidia

I've been setting up Hyprland over the last couple of days, so it's somewhat difficult to pin down exactly when this "broke" but as of this morning using 5120x1440 causes some strange behaviour and a segfault.
I changed the resolution in config and updated the nvidia driver from 525.60 -> 525.78 around the same time yesterday. I'm 99% sure I had both working at the same time but I can't really remember. I definitely has 5120x1440 working at some point though - and sway works fine at that resolution.
I've reproduced on the autogenerated config with only changing the res. When loading in 3840x1080 everything works fine, but when setting to 5120x1440 then:

the entire screen looks a bit dim, cycling workspaces fixes this
wofi will open on a keybind but won't refresh.. typing doesn't display until I hit enter
opening any app causes an assertion failure here

I built in debug mode and captured a stacktrace as well - logs:
crash log - hyprlandd.log
stacktrace - asan.log
I built locally from 6a56d1e4d035824ea5dc94180994017346c5c067 with the nvidia.patch applied from the hyprland-nvidia-git AUR package.

can you try setting the scale explicitly, manually, on that res? Like 1, 1.5, 2. The default is auto.

Explicitly setting the scale resolved this - thanks! I tried 1, 1.5 & 2 and it worked fine for all values :+1:

can you give me the log of that happening after compiling f14e8088478bf1e80e02a213a23c528fe32d3b91

:point_right: hyprland.f14e808.log.txt
That log has the crash however when explicitly setting the scale (to workaround the crash) the debug log line looks identical.
~ $ find /tmp/hypr -name '*log' -exec grep -H 'Monitor DP-1 data dump:' {} \;
/tmp/hypr/f14e8088478bf1e80e02a213a23c528fe32d3b91_1673991128/hyprland.log:[LOG] Monitor DP-1 data dump: res 0x0@6mHz, scale 5120.00, transform 0, pos 0x-1, 10b 0
/tmp/hypr/f14e8088478bf1e80e02a213a23c528fe32d3b91_1673991076/hyprland.log:[LOG] Monitor DP-1 data dump: res 0x0@6mHz, scale 5120.00, transform 0, pos 0x-1, 10b 0

oops I fucked up the types. Can you plox do that again on head

Sorry for the slow reply, debug log and stacktrace from the crash running 5112056fdbda989191310364444f328240bbf6f1
hyprlandd.log.5112056.txt
asan.log.6780.txt

For me, I can't even get Hyprland to active this resolution. Running the current version of Hyprland and the Nvidia DKMS drivers with an Nvidia card, hyprctl monitors only reports 3840x1080 as the only resolution.
I have set explicit values for all arguments, tried adding @120  or @60 behind the resolution. No help. No crashes either but rendering, especially font rendering, looks very weird at 3840x1080.
My current line looks like
monitor=G9,5120x1440,0x0,1.5

What does wlr-randr show when in Hyprland? eg I get this
$ wlr-randr
DP-1 "Samsung Electric Company C49RG9x (DP-1)"
  Make: Samsung Electric Company
  Model: C49RG9x
  Physical size: 1190x340 mm
  Enabled: yes
  Modes:
    3840x1080 px, 119.973999 Hz (preferred)
    5120x1440 px, 119.970001 Hz
    5120x1440 px, 99.996002 Hz
    5120x1440 px, 59.977001 Hz (current)
    3840x1080 px, 99.956001 Hz
    3840x1080 px, 59.967999 Hz
    2560x1440 px, 59.951000 Hz
    2560x1080 px, 119.880997 Hz
    2560x1080 px, 100.000000 Hz
    2560x1080 px, 60.000000 Hz
    2560x1080 px, 59.938999 Hz
    1920x1080 px, 119.878998 Hz
    1920x1080 px, 100.000000 Hz
    1920x1080 px, 60.000000 Hz
    1920x1080 px, 59.938999 Hz
    1680x1050 px, 59.953999 Hz
    1600x900 px, 60.000000 Hz
    1280x1024 px, 75.025002 Hz
    1280x1024 px, 60.020000 Hz
    1440x900 px, 59.887001 Hz
    1280x800 px, 59.810001 Hz
    1152x864 px, 75.000000 Hz
    1280x720 px, 60.000000 Hz
    1024x768 px, 75.028999 Hz
    1024x768 px, 70.069000 Hz
    1024x768 px, 60.004002 Hz
    800x600 px, 75.000000 Hz
    800x600 px, 72.188004 Hz
    800x600 px, 60.317001 Hz
    800x600 px, 56.250000 Hz
    640x480 px, 75.000000 Hz
    640x480 px, 72.808998 Hz
    640x480 px, 59.939999 Hz
  Position: 0,0
  Transform: normal
  Scale: 1.000000
  Adaptive Sync: disabled

is this still a thing?

closing


Clean up logs

This significantly lightens the logs, which were filled with unnecessary data. For example, displaying $request->post() every time filled the logs with all the information the server received with each update of a PIREP and its submission. When a PIREP is submitted, we receive the OFP, etc., so the entire OFP was being logged, leading to very heavy log files.
There are also some listeners in the VACentral module that do nothing more than send huge lines of code to the logs with each PIREP update/submission. Do you know where I can find the source code of this module to create a PR and remove that?
This is still ongoing, I've deployed it on my production server to lighten the logs, and I'm waiting to see if there  are still things being logged unnecessarily. I didn't want to remove too much information, so I left a log when we receive a PIREP update, but I think this can be discussed because I'm not sure it's necessary.

Thanks man, this look like much more effective for tracking back stuff... As we do not need the full request on each update, specially that simbrief plans (with full notams) is useless... We know it works, so no need to debug it anymore :)
For VA_Central module, I have no clue sorry... I check Nabeel's project page but it is not there either, it may be a private repository. Maybe you can work on a local copy and send in the files changed directly to him.
I will start testing today, once I update to latest dev, will add the log changes manually to see how it goes ;)

Any idea, where this can come from? I changed the files on my live servers to test logs, cleaned cache, but this keeps being recorded and with full request including simbrief ofp 😞
[2024-01-24 08:54:47] production.DEBUG: PIREP Update, pirep_id: G9awkxgpqzb9DaoL, user_id: 70
[2024-01-24 08:54:47] production.INFO: Received acars update event [{"App\\Events\\AcarsUpdate":{"pirep":{"id":"G9awkxgpqzb9DaoL","user_id":70,"airline_id":1,"aircraft_id":38,"event_id":null,

Those are the logs I was referring to, those in VACentral. There are two listeners in VACentral that do nothing but add these logs, and I don't know how to remove them since I can't find the VACentral module repo...

Indeed...
Thank you ;)

I am not sure about deleting those files, as they may be a part of Nabeel's future ideas (like making VaCentral a common place where all v7 va's talk each other digitally etc.)...
So I would suggest only dashing out the log lines (yes they are the only lines in those listeners but, at least they will be there) 😉

Yeah, I see what you mean.
I'll wait to hear Nabeel's opinion. If he wants me to put them back, I will, but I thought having 2 fewer listeners to call each time would be more optimized than calling an empty listener.


isNodeLike returns incorrectly in browser

I'm submitting a bug report

Library Version:
2.3.3

Please tell us about your environment:

Operating System:
Windows 10

Node Version:
10.15.3

NPM Version:
6.9.0

JSPM OR Webpack AND Version
webpack 4.30.0

Browser:
Chrome 73.0.3683.103 | Firefox 66.0.3 | Edge 44.17763.1.0
Effectively everything I have on hand

Language:
all

Current behavior:
Throws error as below on load
Unhandled rejection TypeError: Unable to get property 'node-webkit' of undefined or null reference
This is triggered by the boolean isNodeLike being incorrectly set to true even though the code is being executed in the browser.
Inspecting the code in browser results in a bizarre situation where the console returns a different result from the dev tools as per this screenshot.

This is the same section of code that caused issues in #53
Expected/desired behavior:

What is the expected behavior?
Variable isNodeLike should return false for browsers which can be achieved which testing for the explicit process properties being subsequently used i.e.

const isNodeLike = typeof process !== 'undefined' && typeof process.type !== 'undefined' && typeof process.versions !== 'undefined';

What is the motivation / use case for changing the behavior?
Code fails to execute

@cliener can you push up a demo repo for reproducing this error? It's very strange as there is no other user reporting this.

Had the same issue. Did a Chrome browser update to Version 89.0.4389.90 (Official Build) (64-bit) and the error was gone.

We are having the same issue in 2024

@berkerdemirer could you publish a demo repo?

It is quite hard to publish a demo repo because we are not sure what's the cause. We can't reproduce it reliably. Our repo where we are having the issue is quite old and in maintenance mode. I can just say that it just broke out of nowhere without any new commit

@berkerdemirer try run npm run analyze in the project. It should bring up webpack analyze web ui. Try search "process" to see if it returns any module. Please share a screenshot if it found something.


Implement auto moderation

Summary

Checklist

[ ] I have run nox and all the pipelines have passed.
[ ] I have made unittests according to the code I have added/modified/deleted.

Related issues

Closes #1189

This closes #1189

hmm https://github.com/discord/discord-api-docs/commit/c0bcaf67ed7c070944dfc53a21a167d29c486965

Apart from a rebase and failing tests, what still needs to be done on this pr?


Enhancing the Navbar !!

Related Issue
[Cite any related issue(s) this pull request addresses. If none, simply state “None”]
Fixes:  #4368
Description
[Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.]

Type of PR

[ ] Bug fix
[x] Feature enhancement
[ ] Documentation update
[ ] Other (specify): _______________

Screenshots / videos (if applicable)
BEFORE:

AFTER:

Checklist:

[x] I have made this change from my own.
[x] I have taken help from some online resources.
[x] My code follows the style guidelines of this project.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have made corresponding changes to the documentation.
[x] My changes generate no new warnings.
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers and screenshots after making the changes.

why have u deleted script code of about us page ?

the intriguing-mysteries navbar still has issue .
#4322 is already working for enhancing the literary realms section .

also plz mention properly what have u done and what pages have u modified .

create another pr .

@abhi03ruchi , the script tag is containg lot of errors ,

@abhi03ruchi , is this present pr okay , okay any modifications need to be done ? should i need to change the footer


This plugin caused everyone increases ping?

It's works but seem it's caused everyone increases ping
from 100 to 160, is that normal?

Yes, it does cause increasing ping. This might be a bug of ProtocolLib.
I will keep looking.

1.8.8 custom fork from paperspigot

So did you modify the source code?

Please give me the list of the plugins and the "/version" output

yea i just told you it's a custom fork with it's supported 1.7 to 1.12

i just compare the packet and c method between 2 spigots (1. mine 2. normal md5 release)

it's only diffierent on packet with it's supported 1.7 so shouldnt causes any problem

This is an optimization issue. I'll try to fix it in the next release.

alright, thanks!

now you can use the PlaceHolder  "%asynckeepalive_ping%" instead of the old one.

why should i use placeholder? i use ((EntityPlayer)player).getHandle().ping
is it not real with using this plugin?

Yes, it is real. But it is a bit higher because of the optimization issue.

can you fix that issue? or i have to use placeholder if i want to use this plugin

that is as same as you have reported now.

This is a bukkit feature. Because of the server tick, instant communication between Packet Thread and Server Thread is not possible. The event can only be processed in a future server tick. So the "((EntityPlayer)player).getHandle().ping" is higher than normal.

So this issue is impossible to fix


Move filters out tree nodes, rather than delete their sha

I was getting an error when moving files, and I came across this issue with a suggested workaround that worked for me. So I thought I'd send over a PR just incase.
However, moving files was working for me just fine before, and so the real cause of the problem is a mystery as far as I concerned. If no-one else is having the problem, then I understand if you don't feel a need to merge.

Hi @mushishi78!
Could you please write a unit test for this? That would really help in determining whether this is a valid issue or not. I suggest writing the test case and running it against master HEAD and your PR; should fail in the former and pass in the latter. Thank you!

Sorry to disappoint you again, but I also don't know how to write a test for this either. As far as I can tell, there is no previously written test for the move function, and even if their was one, I'd need to understand what caused the bug in order to write a test that isolated the bug.
To write a test for the move function, I'd think you'd need a to do some set up code for your testing that would create a test branch on a test repo and then delete the branch afterwards.  That way you'd be free to make changes to without repercussion, you could rely on the same files being present in the repo  and I could move some files or fail to move some files around with reckless abandon.

Bumping to 0.10.8, we really need to release 0.10.7.

Closed in error; reopening.

@clayreimann I think this PR can improve the lib as it sends only the data needed. Should I rebase it?


Allow user to specify preferred resource for app run

We should allow users to query "available" resource for each App and use it to specify a preferred resource.

This is implemented


feat(@toss/storage): Gave scalability to two methods of NumberTypedStorage.

Overview

Building an application, you might want to increase and decrease the number as much as you want, instead of adjusting the number one by one.
In that case, two methods(increase, decrease) were modified to receive argument.
PR Checklist

[x] I read and included theses actions below

I have read the Contributing Guide
I have written documents and tests, if needed.

@HoseungJang thank you for your sophisticated translation😁


version change to msal.1.2.0-beta.2

Changelog?

Merging as this is a harmless change for beta versioning.


fix: hide disabled entry

The PR environment is ready, please check the PR environment
[Attention]: This environment will be automatically cleaned up after 6 hours, please make sure to test it in time. If you have any questions, please contact the author of the PR or the community team.

/assign @nighca

The PR environment is ready, please check the PR environment
[Attention]: This environment will be automatically cleaned up after 6 hours, please make sure to test it in time. If you have any questions, please contact the author of the PR or the community team.

The PR environment is ready, please check the PR environment
[Attention]: This environment will be automatically cleaned up after 6 hours, please make sure to test it in time. If you have any questions, please contact the author of the PR or the community team.

The PR environment is ready, please check the PR environment
[Attention]: This environment will be automatically cleaned up after 6 hours, please make sure to test it in time. If you have any questions, please contact the author of the PR or the community team.


Typesetting.

FYI. https://github.com/sparanoid/chinese-copywriting-guidelines

Thank you

:smile:


Fix Hashable not working with model_validate_json

Change Summary

Wrap a json-or-python schema for Hashable type. This allows validate_json to work consistently with validating Python objects.
This breaks some existing tests, though. Currently my concern is about model_dump_json: when a hashable field has type other than Union[str, int, float, bool, none] (e.g. tuple), the model can still be serialized (with warning), but the dumped json cannot be validated by the model, which seems inconsistent. I am thinking just raising error when serializing such fields; but I couldn't find a way to do it.
Example
class A(BaseModel):
    x: Hashable

a = A.model_validate_json('{"x": "1"}')

Related issue number
fix #9567

Checklist

[x] The pull request title is a good summary of the changes - it will be used in the changelog
[x] Unit tests for the changes exist
[x] Tests pass on CI
[x] Documentation reflects the changes where applicable
[x] My PR is ready to review, please add a comment including the phrase "please review" to assign reviewers

Hey @kc0506, thanks for the PR! I'll review first thing tomorrow 🚀 !

I've updated both the json and python schemas with some notable changes:
For json schema, Non-primitive types are now considered hashable:

lists are validated as tuple.
objects are validated as frozendict.
Note that python doesn't seem to have built-in immutable and hashable mapping type, so I have naively implemented one. It is temporarily defined inside _hashable_schema function because I am not sure where to put it.

The enhanced json schema seems to be more flexible than python schema, which feels weird to me. So I add more choices to the python schema if input is not an instance of Hashable:

Convert Sequence types into tuple.
Attempt to transform input into frozendict (works with BaseModel since dict(BaseModel()) is valid).
Try converting input into frozenset.

These changes increase schema flexibility but might be considered breaking since previously unhashable types (e.g., list) can now be validated as Hashable. I'm seeking feedback on whether this direction is appropriate or if adjustments are needed.

Seems weird that tests failed. The failed case does not reproduce on my machine🤔

For json schema, Non-primitive types are now considered hashable

Hmm, I see where you're coming from here. I might turn to the team to get feedback from a few folks regarding this. I suppose we might want to use a lax and strict approach, as I've mentioned below.

Note that python doesn't seem to have built-in immutable and hashable mapping type, so I have naively implemented one. It is temporarily defined inside _hashable_schema function because I am not sure where to put it.

Interesting, I'll take a look.

The enhanced json schema seems to be more flexible than python schema, which feels weird to me.

This is a common pattern throughout our codebase - json schemas are more lax / permit more data coercion to allow for successful round trips. It is a bit of an odd pattern, though.

So I add more choices to the python schema if input is not an instance of Hashable

Hmm. I think in general, we want to be pretty strict (not do all of this under the hood coercion). If folks want that behavior, they can use custom validators. Though, we could use a strict or lax validator to allow for supporting the best of both worlds.

I'm seeking feedback on whether this direction is appropriate or if adjustments are needed.

I'll give some line by line feedback 👍.

Happy to do the line by line reviews tomorrow morning :)

Hmph, still struggling with this. Hashable is so broad, that it's hard to make the right choice regarding lax / strict behavior for all of the various types that it might support. We have some trouble with Sequence in this regard.
Will chat with our team early next week about next steps here.

Hmph, still struggling with this. Hashable is so broad, that it's hard to make the right choice regarding lax / strict behavior for all of the various types that it might support. We have some trouble with Sequence in this regard.

Following up on this - what if we make the Hashable schema more simple - via a json or python schema:

For python, we just try hash on the input data, and if we don't get a type error, then validation succeeds
For json, we basically make this an after validator on an any type, and do the same thing

This removes some of the decision making complexity, but admittedly rejects coercion that could be done with lax / strict. I'm keen to avoid that though, bc it's sort of a scary hole to go down in terms of recursive structures - like what happens if we have a list of dicts, just converting that to a tuple of dicts isn't sufficient, etc.
Also, if folks truly want to customize it beyond that simple pattern, they can create a custom type or validator 🤷♀


Fix NaN values from Okhsv when saturation is > 0 and value == 0

Changes the check so it looks for value == 0, regardless of saturation.
Closed Issues

Fixes #330

bors r+


crash in smp (other mods might be involved)

https://pastebin.com/ta1Km4E9

thx!

This should be fixed in the latest commit and latest release.


Forum permissions don't appear to extend to reports

I'm trying to run a report on a collection that is posted to the MSP Working Group forum without being signed in. The Forum is publicly readable but only working group members can post to the forum. When I run the report, I get the error "Reports not configured".
Shouldn't I be able to run the reports even though I'm not signed in, given that it's a public forum?

Interesting. It's only for collections. MPA-level works fine


Event.once callback context change in Backbone 1.3.1

Concerning this change:
https://github.com/jashkenas/backbone/commit/00f5c39e2784602f89f4f036323ba3688ee45af4#commitcomment-16539120
If you look on line 144, Backbone relied on the 'void 0' value:
if (callback !== void 0 && 'context' in opts && opts.context === void 0) opts.context = callback;

The fallout of this change is that in BB 1.3.1, the callback context (that is, the 'this' pointer of the callback) is now defaulting to the callback function itself. In Backbone 1.2.3, the this pointer defaulted to the original this pointer when where the callback was registered.
I am not trying to imply that the change is wrong.  Backbone does not appear to document what the context will be if the third parameter to the Events.once call is left off.   I am simply pointing out that the default behavior has changed.
One fallout of this change is that Marionette.Backbone CollectionView no longer works with Backbone 1.3.1.   This is because of the following:
this.once('render', this._initialEvents);

https://github.com/marionettejs/backbone.marionette/blob/master/src/collection-view.js#L25
The Marionette CollectionView is registering a callback, leaving off the third "context" parameter.   In Backbone 1.2.3, the callback context defaulted to the 'this' pointer.   In Backbone 1.3.1, the callback context defaults to the callback function itself.
The fix to Marionette is simple:
this.once('render', this._initialEvents, this);

Problem solved.   However, I am simply opening this issue because it represents what might be considered by some to be a breaking change.

:+1: This caused major headaches for my team, finding this issue really helped. Thanks @onehorsetown

Fixed here: https://github.com/jashkenas/backbone/pull/3980


Reconnection - feature -

What Is the issue?
There are some use cases when child iframes reload, it would be cool if we can automatically get an auto handshake or something like that to reconnect the child to the parent... in my particular case, whenever a user logouts I reload the iframe, but currently with postmate the connection is lost (?), unless you make a super hacky work around.
Provide issue context below using code examples, images, or links

Penpal uses this approach
https://github.com/Aaronius/penpal#reconnection

Read about references issues here. Provide paragraph text responses to each header.

@betocantu93 what was the super hacky work around you did to make the reconnection work ?

@HARISMEHMOOD I'm not entirely sure, but maybe just render a new iframe or something like that... For that widget I ended up using penpal which handles this out of the box


KYLIN-4035 Calculate column cardinality by using spark engine

link to https://issues.apache.org/jira/browse/KYLIN-4035
Support calculating column cardinality by using spark engine

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@1fb000e). Click here to learn what that means.
The diff coverage is 0%.

@@           Coverage Diff            @@
##             master    #680   +/-   ##
========================================
  Coverage          ?   25.7%
  Complexity        ?    6009
========================================
  Files             ?    1385
  Lines             ?   82461
  Branches          ?   11559
========================================
  Hits              ?   21200
  Misses            ?   59217
  Partials          ?    2044

Impacted Files
Coverage Δ
Complexity Δ

...org/apache/kylin/engine/spark/SparkExecutable.java
0% <0%> (ø)
0 <0> (?)

.../java/org/apache/kylin/common/KylinConfigBase.java
12.92% <0%> (ø)
42 <0> (?)

...va/org/apache/kylin/rest/service/TableService.java
13.95% <0%> (ø)
9 <0> (?)

...che/kylin/engine/spark/SparkColumnCardinality.java
0% <0%> (ø)
0 <0> (?)

Continue to review full report at Codecov.

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

In my hadoop cluster(JDK8, hadoop2.6-cdh5.6 with spark-2.3.3-hadoop2.6), I have verfied this patch pass happy  path with correct result.
By MR

By Spark

Yarn Successful Jobs

Pull Request Test Coverage Report for Build 4615

0 of 98 (0.0%)  changed or added relevant lines in 4 files are covered.
155 unchanged lines in 8 files lost coverage.
Overall coverage decreased (-0.04%) to 28.193%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

core-common/src/main/java/org/apache/kylin/common/KylinConfigBase.java
0
1
0.0%

engine-spark/src/main/java/org/apache/kylin/engine/spark/SparkExecutable.java
0
14
0.0%

server-base/src/main/java/org/apache/kylin/rest/service/TableService.java
0
14
0.0%

engine-spark/src/main/java/org/apache/kylin/engine/spark/SparkColumnCardinality.java
0
69
0.0%

Files with Coverage Reduction
New Missed Lines
%

core-job/src/main/java/org/apache/kylin/job/impl/curator/CuratorScheduler.java
1
68.64%

core-dictionary/src/main/java/org/apache/kylin/dict/lookup/cache/RocksDBLookupTable.java
1
81.08%

core-cube/src/main/java/org/apache/kylin/cube/cuboid/TreeCuboidScheduler.java
2
68.46%

core-job/src/main/java/org/apache/kylin/job/impl/threadpool/DefaultScheduler.java
2
80.23%

source-kafka/src/main/java/org/apache/kylin/source/kafka/util/KafkaClient.java
26
0.0%

engine-mr/src/main/java/org/apache/kylin/engine/mr/steps/UHCDictionaryJob.java
29
0.0%

query/src/main/java/org/apache/kylin/query/adhoc/PushDownRunnerJdbcImpl.java
46
0.0%

core-job/src/main/java/org/apache/kylin/job/lock/zookeeper/ZookeeperDistributedLock.java
48
0.0%

Totals

Change from base Build 4593:
-0.04%

Covered Lines:
23254

Relevant Lines:
82481

💛  - Coveralls


What is the best lite model for background removal?

Hi,
I'm using "selfie_multiclass_256x256" and "deeplab_v3" models for background removal.
The "selfie multiclass 256x256" model works very well. But the "deeplabv3" model does not work well.
Does anyone have any suggestions for a lite model for mobile devices?

Doesn't selfie_multiclass_256x256 work on mobile as well?
Personally I do not use deeplabv3, I preload MLKIT's model and once selfie_multiclass_256x256 is loaded I replace it.
(See volcomix's implementation: https://github.com/Volcomix/virtual-background)

Hi @fatiherdogan01,
We do not have a matrix comparison of the supported models. We suggest checking the overview page https://ai.google.dev/edge/mediapipe/solutions/vision/image_segmenter#models for model selection based on your image segmentation needs. You can also use a custom model in our API. Additionally, task benchmarks for all supported models on mobile device is available here https://ai.google.dev/edge/mediapipe/solutions/vision/image_segmenter#task-benchmarkse.
Thank you!!

I'm now using this model https://github.com/xuebinqin/DIS and this is good.


Ripple effect missing

Can you add support?

Ripple effect is not something that makes sense to be added to animate.css as it's not exactly an animation, it's more an effect . Sorry but I'll have to close the issue.


Build not yet updated for version 0.3.2

@raj-pel
Hi, I updated the package to 0.3.3.
Can you check it again?


Cron run immediately and not just on cron definition

Not sure if I've missed or not a config, but when I create a schedule:
 result = schedule("scheduler_service.run_steps",                       name, build.build_steps,                       name=name,                       schedule_type=Schedule.CRON,                       cron = "0 * * * *")
The task get executed immediately, as well as later using the cron instruction. Looking at the code this seems to be because the next_run parameter get its default value set to now: https://github.com/django-q2/django-q2/blob/dcfe5b6650c11252659030fe180d2128b5a82f44/django_q/tasks.py#L105.
Is there a way to wait for the next cron define schedule to execute the task?

I use something like the following in my code:
        s = Schedule(
            name="Weekly Notifications",
            func=self.func_path,
            schedule_type=Schedule.CRON,
            cron='0 9 * * mon',
        )
        s.next_run = s.calculate_next_run()
        s.save()

This PR will fix it: https://github.com/django-q2/django-q2/pull/236

Thanks for the suggested fix, it work perfectly. Let me know if you want me to close this.


Folders that its name contains non-english characters causes a black screen.

Placing the launcher into a folder that its name contains non English characters causes the launcher stuck at black screen after selecting server.
To Recreate The Issue:
-unzip the latest release into a folder that its name doesn't contain non English characters for example "Yeni Klasör".

Unfortunately I don't think we will be able to fix this issue. I recommend downloading the portable zip version, and extracting to a path with only English characters (e.g. C:\ drive) and see if that fixes it.

Please re-test with the latest beta in the Discord's #tech-support channel.

Should be fixed but please let me know if you're still encountering issues.


Support for plugin registry

Description
Add support for installing plugins based on plugin registry information.
Motivation and Context
Current plugin installation requires either a local plugin ZIP file or URI of a remote plugin ZIP file. Using a registry to store the distribution package URI allows installing plugins with just plugin ID, e.g.
dita --install org.lwdita

or
dita --install<EMAIL_ADDRESS>
Design
The plugin registry is a simple URL accessible set of JSON files, where the file name follows the convention <plugin-name>.json. The repository file structure:
[
  {
    "name": "<name of the plugin>",
    "version": "<plugin version>",
    "url": "<download URL>",
    "cksum": "<optional SHA-256 checksum of the download resource>",
    "deps": [
      {
        "name": "<name of the dependency plugin>",
        "req": "<optional plugin dependency version>"
      }
    ]
  }
]

When a plugin is installed using just the plugin name, the integrator process will fetch plugin definitions from all configured repositories and will install the first one that matches the platform and desired version requirements. If no plugin is found with matching name and version requirements, installation will fail. Dependencies of plugins that are not yet installed will be recursively installed
The argument to --install will be processed as follows in order, stopping on first match and then trying to install the plugin from that, in pseudo-code:
if Files.exists($arg):
  installLocal($arg)
else if URI.isAbsolute($arg):
  installDownload($arg)
else:
  foreach repository in repositories:
    $plugins = downloadRepository($repository)
    if $plugins.contains($arg):
      $plugin = $plugins.get($arg)
  if $plugin:
    installDownload($plugin.url)

The plugin repository URL could be just the plain GitHub URL, but it would likely make more sense to use a redirect from https://repository.dita-ot.org/ to https://raw.githubusercontent.com/dita-ot/dita-ot-index/master/.

One of the design decisions is that do we implement automatic installation of dependent plugins in this PR, or later on as an enhancement. E.g. PDF2 FOP plugin depends on PDF2 plugins, so if the user installs org.dita.pdf2.fop plugin, will we implement dependency management to a degree that integrator will also fetch org.dita.pdf2 plugin and install both at the same time.
Dependency management and resolution will be challenging to implement, thus I would prefer to implement that in a separate PR.

Dependency management and resolution will be challenging to implement, thus I would prefer to implement that in a separate PR.

That sounds right to me. Thinking about minimum implementation to get feedback, it seems right to add support for the registry, change as needed, and dependency management can come later. Best result now would probably be an error message "This cannot be installed without X, Y, and Z" -- can install those independently.
Thinking about my own (many) plugins -- over time I've generally stopped making too many dependencies because most of them were unnecessary and just ended up annoying me when I got "failed to install" messages.

I'm really liking this feature. Scanned through the code and made a simple comment, I don't feel qualified to make a full review but looks good as far as I can tell. Not sure how close it is to complete so I haven't marked it approve or added an official review.

👍 Also very glad to see this taking shape. 🎉
A few questions come to mind…

Will there be a way to configure alternate repository locations that the registry should parse?
I imagine this is conceived to start with a set of "official" plug-ins stored in a pre-configured repository, but it would be most useful if users could add other locations from which to retrieve plug-ins, such as dita-community-ot-plugins, a company plug-in repository, or individual developers' open-source plug-in repos on GitHub or elsewhere.

How will collisions be handled if there are multiple plug-ins of the same name/ID in different configured repositories?

Yes, just add more URLs to the repository key in configuration.properties.
First one in order will win.

@robander fixed the optional version attribute.


test: Build and run with race detection

Following up from

https://github.com/ddev/ddev/pull/5893. I'd like to see if this shows the race in the logs, and if it shows races anywhere else.

The Issue
How This PR Solves The Issue
Manual Testing Instructions
Automated Testing Overview

Related Issue Link(s)
Release/Deployment Notes

I think the race detected at https://github.com/ddev/ddev/actions/runs/8051021660/job/21987973441?pr=5901
is the exact same one you've fixed in #5893 isn't it?
Write at 0x00c003181ab0 by goroutine 491:
  runtime.racewriterange()
      <autogenerated>:1 +0x24
  internal/poll.ignoringEINTRIO()
      /opt/hostedtoolcache/go/1.22.0/x64/src/internal/poll/fd_unix.go:736 +0x49a
  internal/poll.(*FD).Read()
      /opt/hostedtoolcache/go/1.22.0/x64/src/internal/poll/fd_unix.go:160 +0x1e5
  os.(*File).read()
      /opt/hostedtoolcache/go/1.22.0/x64/src/os/file_posix.go:29 +0xac
  os.(*File).Read()
      /opt/hostedtoolcache/go/1.22.0/x64/src/os/file.go:118 +0x89
  bufio.(*Scanner).Scan()
      /opt/hostedtoolcache/go/1.22.0/x64/src/bufio/scan.go:219 +0x13e1
  github.com/ddev/ddev/pkg/dockerutil.ComposeCmd.func1()
      /home/runner/work/ddev/ddev/pkg/dockerutil/dockerutils.go:666 +0x84

Previous read at 0x00c003181ab3 by goroutine 484:
  runtime.slicecopy()
      /opt/hostedtoolcache/go/1.22.0/x64/src/runtime/slice.go:325 +0x0
  bytes.(*Buffer).Write()
      /opt/hostedtoolcache/go/1.22.0/x64/src/bytes/buffer.go:181 +0x118
  github.com/ddev/ddev/pkg/dockerutil.ComposeCmd()
      /home/runner/work/ddev/ddev/pkg/dockerutil/dockerutils.go:687 +0x110b
  github.com/ddev/ddev/pkg/ddevapp.(*DdevApp).Start()
      /home/runner/work/ddev/ddev/pkg/ddevapp/ddevapp.go:1253 +0x3c04
  github.com/ddev/ddev/pkg/ddevapp_test.TestPostgresConfigOverride()
      /home/runner/work/ddev/ddev/pkg/ddevapp/config_test.go:922 +0x5b7
  testing.tRunner()
      /opt/hostedtoolcache/go/1.22.0/x64/src/testing/testing.go:1689 +0x21e
  testing.(*T).Run.gowrap1()
      /opt/hostedtoolcache/go/1.22.0/x64/src/testing/testing.go:1742 +0x44

We're going to get lots of value out of your long expedition here! Thanks so much.

🤦 here I am running tests locally, and I just needed to scroll up more.
I'll merge that PR here and see how far it gets!

I imagine we'll want to turn off the fail-fast to get a real review of this. I'm thinking we should just create a new separate test that does this regularly.

Rebased to get the new upstream with the fix in it.

I went to reproduce this locally and found another race with mutagen. I was expecting the above race to happen though, so I'm surprised it isn't.
Starting Mutagen sync process...
....==================
WARNING: DATA RACE
Write at 0x00c001b9e290 by goroutine 58:
  github.com/ddev/ddev/pkg/ddevapp.CreateOrResumeMutagenSync.func1()
      /Users/andrew/workspace/no-arq-backup/ddev/pkg/ddevapp/mutagen.go:227 +0x68

Previous write at 0x00c001b9e290 by goroutine 59:
  github.com/ddev/ddev/pkg/ddevapp.CreateOrResumeMutagenSync.func2()
      /Users/andrew/workspace/no-arq-backup/ddev/pkg/ddevapp/mutagen.go:243 +0xf4

Goroutine 58 (running) created at:
  github.com/ddev/ddev/pkg/ddevapp.CreateOrResumeMutagenSync()
      /Users/andrew/workspace/no-arq-backup/ddev/pkg/ddevapp/mutagen.go:226 +0xc64
  github.com/ddev/ddev/pkg/ddevapp.(*DdevApp).Start()
      /Users/andrew/workspace/no-arq-backup/ddev/pkg/ddevapp/ddevapp.go:1340 +0x3724
  github.com/ddev/ddev/cmd/ddev/cmd.init.func57()
      /Users/andrew/workspace/no-arq-backup/ddev/cmd/ddev/cmd/start.go:136 +0xbdc
  github.com/spf13/cobra.(*Command).execute()
      /Users/andrew/workspace/no-arq-backup/ddev/vendor/github.com/spf13/cobra/command.go:987 +0xc24
  github.com/spf13/cobra.(*Command).ExecuteC()
      /Users/andrew/workspace/no-arq-backup/ddev/vendor/github.com/spf13/cobra/command.go:1115 +0x4b8
  github.com/spf13/cobra.(*Command).Execute()
      /Users/andrew/workspace/no-arq-backup/ddev/vendor/github.com/spf13/cobra/command.go:1039 +0x34
  github.com/ddev/ddev/cmd/ddev/cmd.Execute()
      /Users/andrew/workspace/no-arq-backup/ddev/cmd/ddev/cmd/root.go:162 +0x20
  main.main()
      /Users/andrew/workspace/no-arq-backup/ddev/cmd/ddev/main.go:27 +0x3d0

Goroutine 59 (running) created at:
  github.com/ddev/ddev/pkg/ddevapp.CreateOrResumeMutagenSync()
      /Users/andrew/workspace/no-arq-backup/ddev/pkg/ddevapp/mutagen.go:237 +0xdac
  github.com/ddev/ddev/pkg/ddevapp.(*DdevApp).Start()
      /Users/andrew/workspace/no-arq-backup/ddev/pkg/ddevapp/ddevapp.go:1340 +0x3724
  github.com/ddev/ddev/cmd/ddev/cmd.init.func57()
      /Users/andrew/workspace/no-arq-backup/ddev/cmd/ddev/cmd/start.go:136 +0xbdc
  github.com/spf13/cobra.(*Command).execute()
      /Users/andrew/workspace/no-arq-backup/ddev/vendor/github.com/spf13/cobra/command.go:987 +0xc24
  github.com/spf13/cobra.(*Command).ExecuteC()
      /Users/andrew/workspace/no-arq-backup/ddev/vendor/github.com/spf13/cobra/command.go:1115 +0x4b8
  github.com/spf13/cobra.(*Command).Execute()
      /Users/andrew/workspace/no-arq-backup/ddev/vendor/github.com/spf13/cobra/command.go:1039 +0x34
  github.com/ddev/ddev/cmd/ddev/cmd.Execute()
      /Users/andrew/workspace/no-arq-backup/ddev/cmd/ddev/cmd/root.go:162 +0x20
  main.main()
      /Users/andrew/workspace/no-arq-backup/ddev/cmd/ddev/main.go:27 +0x3d0
==================

The race described in https://github.com/ddev/ddev/pull/5901#issuecomment-1977475931 is a a result of pathological behavior where CreateOrResumeMutagenSync() is being called by itself in a separate goroutine.

In https://github.com/ddev/ddev/blob/e5e0238fd395ee45f3494df5ae56157568ffed05/pkg/ddevapp/mutagen.go#L243 it does an app.Start()
The app.Start() does a CreateOrResumeMutagenSync() in https://github.com/ddev/ddev/blob/4928230143fa6a271ed6d38fd0a266f64307e021/pkg/ddevapp/ddevapp.go#L1340

@rfay I doubt I'll be able to push this along in the near-term, so feel free to take it over.

Yes, I'm working on it and will get a regular test running on push to master.

https://github.com/ddev/ddev/actions/runs/8297282124/job/22708072875?pr=5901#step:17:1394
==================
WARNING: DATA RACE
Read at 0x00c0000c6468 by goroutine 209:
  go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp.(*Transport).RoundTrip()

https://github.com/open-telemetry/opentelemetry-go-contrib/issues/4895


Upgrade saz/rsyslog to 3.2.0

I reviewed this release by release because it was a bit overwhelming otherwise.
2.4.0
https://github.com/saz/puppet-rsyslog/compare/v2.3.0...v2.4.0
Nothing of interest to us here.
3.0.0
https://github.com/saz/puppet-rsyslog/compare/v2.4.0...v3.0.0
Fixes a bug introduced in 2.4.0 by moving the preserve_fqdn param.
We use this param in govuk::node::s_base so I've moved it there.
This is the only breaking change in that release.
3.1.0
https://github.com/saz/puppet-rsyslog/compare/v3.0.0...v3.1.0
Adds a restart command to the rsyslog service. I think this is ok.
3.2.0
https://github.com/saz/puppet-rsyslog/compare/v3.1.0...v3.2.0
Sets InputFilePersistStateInterval to 0 which is its default value.
Fixes scope of variables. This is the big one because it helps get us
to having a working future parser.

looks fine to me and the changes seem fine. merge when ready. this may need testing in integration first just to be sure.

Merge away.


runfile.js at scale

We need a guide about: how to tackle large runfile.js
This needs to be covered in README.
Proposed idea: just use import and re-export needed group of tasks in runfile.js re-exporting
Related to #33
export { task1, task2 } from 'tasks/group1'
export { task3, task4 } from 'tasks/group2'
export { default as task5 } from 'tasks/bigtask'

or for something:something tasks naming:
import g1 from 'tasks/group1'
import g2 from 'tasks/group2'
import task5 from 'tasks/bigtask'

export default Object.assign({task5}, g1, g2)

this is what we're doing for modularization
someTasks.js

import { run } from 'runjs'

export default {
  ['frontend:clean']: () => run('rm -rf node_modules'),
  ['frontend:install']: () => run('npm install')
}

runfile.js
import someTasks from './someTasks.js'
import otherTasks from './otherTasks.js'

export default {
  ...someTasks, //es7
  ...otherTasks //es7
}

Awesome! Probably the best option so far

Just be aware that it requires stage-0 babel preset. or at the very least the object spread.

Another option is to provide combine function we could additionally add some name spacing for tasks. For example:
import { run, combine } from 'runjs'
import tasks1 from 'tasks1'
import tasks2 from 'tasks2'

export default combine({
  'frontend': tasks1,
  ...task2
})

run frontend:task-from-tasks1
run task-from-tasks2

or namespace function
import { run, namespace } from 'runjs'
import tasks1 from 'tasks1'
import tasks2 from 'tasks2'

export default {
   ...namespace('frontend', tasks1)
   ...tasks2
}

could runjs create tasks groups by flattening the object structure on the fly?

import tasks1 from 'tasks1'

export default {
  frontend: {
    ...tasks1
  }
}

would generate:

$run

frontend:task1
frontend:task2

Yup, also option worth considering

Last option will be introduced in v3.0.0 https://github.com/pawelgalazka/runjs/blob/v3.0.0-beta/README.md#scaling

Scaling solution introduced in runjs v3.0.0-beta.1


Cut patch release v0.37.1

[X] I added CHANGELOG entry for this change.
[ ] Change is not relevant to the end user.

Changes
Cutting patch release after cherry picking few fixes.
Let me know what else needs to be included.
Verification

Holding off the merge here for a couple more fixes


Feature Request: Different error placement by error type

Use case: Client wants the "required" error to show up as red placeholder text, all other errors ("Please enter a valid email address") to show up as Bootstrap-style helper blocks.
I can more or less achieve this with errorPlacement, though through a more hackneyed method than I'd prefer (checking to see whether the element has a value), but it doesn't... stick.
http://jsfiddle.net/ebaker/o818ra0s/
Steps to reproduce:

Attempt to submit form. Note placeholder error messages.
Fill one of the fields with an unacceptable value, like an email address in the username. (NOTE: Would appreciate some way to negate a validation. I was hoping to use "email: false" on the username field, but that doesn't seem to do anything.)
Delete the unacceptable value without filling in an acceptable one.
Note that the placeholder error is now in a label. :(

Obviously this is because errorPlacement doesn't get run every time errors are shown or hidden. Perfectly reasonable. However, ideally there would be some way to control the errorPlacement on a per-error-type basis. I can control where the errors are on a per-field basis (i.e., I could put ALL of the username errors into the placeholder), but not where errors are on a per-error-type basis.

I'm sorry for the lack of activity on this issue. Instead of leaving it open any longer, I decided to close old issues without trying to address them, to longer give the false impression that it will get addressed eventually, especially after several years with no activity. It doesn't mean I'm abandoning the project, just that I'm unable to work through 200+ open issues with the little time I can afford to spend on this project.
To the reporter (or anyone else interested in this issue): If you're still affected by the same issue, please consider opening a new issue, with a testpage that demonstrates the issue with a current version of the plugin. Even better, make an attempt to fix the issue yourself, and improve the project by sending a pull request. This may seem daunting at first, but you'll likely learn some useful skills that you can apply elsewhere as well. And you can help keep this project alive. We've documented how to do these things, too. A patch is worth a thousand issues!


Failure on first run

I consistently get the following error on the first run, if I rerun the Step Functions it will succeed. Any help or ideas on what could be causing this?
{
"errorMessage": "the specified credentials were rejected by the server",
"errorType": "InvalidCredentialsError",
"requestId": "xxxxxxxx-xxxx-xxxxx-xxxx-xxxxxxxxxxxx",
"stackTrace": [
"  File "/var/task/FN03_Configuration_Routine.py", line 328, in lambda_handler\n    result = session.run_ps(\n",
"  File "/opt/python/winrm/init.py", line 53, in run_ps\n    rs = self.run_cmd('powershell -encodedcommand {0}'.format(encoded_ps))\n",
"  File "/opt/python/winrm/init.py", line 40, in run_cmd\n    shell_id = self.protocol.open_shell()\n",
"  File "/opt/python/winrm/protocol.py", line 166, in open_shell\n    res = self.send_message(xmltodict.unparse(req))\n",
"  File "/opt/python/winrm/protocol.py", line 243, in send_message\n    resp = self.transport.send_message(message)\n",
"  File "/opt/python/winrm/transport.py", line 322, in send_message\n    response = self._send_message_request(prepared_request, message)\n",
"  File "/opt/python/winrm/transport.py", line 332, in _send_message_request\n    raise InvalidCredentialsError("the specified credentials were rejected by the server")\n"
]
}

I'm seeing the same behavior in my environment. Trying to pinpoint the cause, but if you've found out a fix I'd love to hear what you've done.

I added some logging to the powershell startup/shutdown scripts and noticed some odd behavior. I saw the following logs get generated during the image creation prior to the error:

Startup - failed to create the local user account (the SSM parameter hadn't been created yet, this is expected)
Shutdown - local user was already gone, no action taken
Startup - created local user account with the SSM parameter
Shutdown - deleted the local user

At this point, the WorkSpace never actually powered off or rebooted. I was unable to reboot the WorkSpace via CLI as it said a shutdown was already in progress. The WorkSpace never actually completed a windows shut down during the one minute wait, then the five minute wait, and then the step function continued to the Run Deployment Routine.
Windows had been sent a shutdown command, so the shutdown script ran, removing the local user, but it never actually completed the reboot cycle where the startup script would recreate the account.
For now I've just removed the shutdown script from the GPO for the Image Builder OU. All is working fine on brand new executions since then.