UI - Enhancements

hey, @justEhmadSaeed  , I have identified some issues while using the template in dark mode .

The vercel app logo must be changed to colour white when in dark mode for better visibility.
The button containing the github logo did not match in terms of color with the wordings Get it on github.
During hover of this button the logo must change to black and remain white not hovered.
In the footer, the logos must be changed to white for better visibility.
The outdated twitter logo must be changed.

I am working on these issues .

@justEhmadSaeed ,I have raised a PR.

@rakshithapatel08 accepted.


Make extension components ready for cached client

How to categorize this PR?

/area dev-productivity scalability
/kind cleanup
What this PR does / why we need it:
Similar to previous PRs, this PR works towards getting rid of the DirectClient.
This one tackles usages in the extension components and makes them ready for cached clients.
Which issue(s) this PR fixes:
Part of #2822
Special notes for your reviewer:
5aa26ff6610f32ad77b64ca73e0b9ab25972b6c7 is a prefactoring of the extension helper funcs, that is necessary for making the components ready for a cached client (see commit message for more details/reasoning).
The other commits perform the actual refactoring/adaption per component.
/squash
Release note:

Thanks @rfranzke for your review, PTAL :)

/hold
I think I found a bug.

Indeed, I found a situation in which MergePatchOrCreate can be problematic, but I didn't notice until now, when switching from CreateOrUpdate to MergePatchOrCreate in this PR.
There's also one usage on master already, which needs to be fixed (introduced in https://github.com/gardener/gardener/pull/3991): https://github.com/gardener/gardener/blob/5589fcc84dfc76e8763cfa3ee44be5db57950e74/pkg/extensions/cluster.go#L93-L104
I'll fix the current usage on Friday and follow up with more details on the usages in this PR.
/needs changes
/author-actions

Some MergePatchOrCreate usages in this PR need to be changed, because of the reasons explained in https://github.com/gardener/gardener/pull/4057.
I will rebase the PR onto https://github.com/gardener/gardener/pull/4057 and adapt accordingly, once it's merged.
@ialidzhikov: as this PR is non-critical, I would propose to move it to the next release and not include it in v1.23, to not block the release any further.

Some MergePatchOrCreate usages in this PR need to be changed, because of the reasons explained in #4057.
I will rebase the PR onto #4057 and adapt accordingly, once it's merged.

Rebased the PR and added two more commits to make it ready again:

one to switch from MergePatchOrCreate to GetAndCreateOrMergePatch: 3576fd65abff9b73ec20dfbe98e82f4a7118165a
and one to Remove the *PatchOrCreate funcs: 9cabff70f516d830bdca6fecfc5162bec18d57cc

/unassign
/unhold
/remove status/author-action
@rfranzke PTAL :)

What about the CreateOr{Strategic}MergePatch function (ref)? Do you think their current usage is safe or should it be adapted as well (i.e., first try Create, but if the resource already exists, then we Get it and Patch it afterwards)?

@timebertt What about the CreateOr{Strategic}MergePatch function (ref)? Do you think their current usage is safe or should it be adapted as well (i.e., first try Create, but if the resource already exists, then we Get it and Patch it afterwards)?

Generally, the same applies to CreateOr{Strategic}MergePatch as to the *PatchOrCreate logic: if you're not trying to remove any optional fields in the patch, it's safe to use without doing a Get before. But if you do want to remove optional fields you have to fetch the object first, so that the diff contains an explicit null value.
So for example, this usage needs to be adapted, as labels that were removed from the seed template won't be removed from the seed itself: https://github.com/gardener/gardener/blob/93e4efbe30b45f8d9089b0c6e8131b1178b8e9ac/pkg/gardenlet/controller/managedseed/managedseed_actuator.go#L309
Probably, adapting the helper func to do a Get before Patch wouldn't hurt. But I haven't checked all the usages in detail. Though, such a helper func brings a good chance of misuse (that's why I removed the *PatchOrCreate funcs).

OK, thanks. For the sake of simplicity and prevention of coding bugs, I'd vote for changing the function in all cases as described above (create->get->patch) instead of (create->patch). Do you agree?

Yes, I agree. That seems to be the more sustainable approach.


.value() fonction of constraints (globalconstraint.py)

Some of the constraints return None for this if one of its args is evaluated as None (such as Maximum), some of them check partially if there is a value None (such as Cumulative which checks if one is None, but forgets to flatten the arguments that are list and thus may miss some None elements in it) and some don't do any checks at all (such as Xor) and would simply return an error if this arises.
Should we uniform this and add full None checks for each of the expression .values() functions?

Also, I just notice, by looking at the .value() method of GlobalCardinalityCount constraint, that we could, for all the constraints where the decomposition function is available, do just as the GGC is doing (which calling .value() on the decomposition). If the None is well handled on operators and comparisons, I think for the constraint with a decomposition (not Min, Max, element, count) could just call the evaluation on the decomposition to get the value, since the decomposition use in fine only operators and comparison. This could then be set in the GlobalConstraint class and override for the one without a decomposition

What do we mean with None? Since we only have total functions, value() will always be computable if all variables (leafs in the expression tree) have a value. So None covers the case where not all variables may have a value? In that case, it should be properly implemented in all value() calls.
Agree with the proposal to have GlobalConstrain provide a default value() implementation that works with the decomposition of the constraint. More efficient implementations can then be overridden in the subclass.

value() seems to be ok if all the variables are assigned. But if some are not, then there are inconsistencies.
I just notice that the xor passed the work to a sum operator which indeed checks for the None
but Cumulative does not catch it (because there is no flattening of the lists mapped using argval). And if one of the start is None, then it will try to do None + something. So for me, it is not properly computed as of now.
And I think refactoring it by evaluating the decomposition will first remove lots of redundant code, and secondly allow to have only basic operations where the None is checked beforehand.

Calling the value on the decomposition will not work when that decomposition introduces auxiliary variables.
The new variables will not have a value (as they are not passed through any solve-call) so the .value() of the global constraint will always be None.
Moreover, creating new expressions in the decomposition, only to check for their value is really inefficient. For example, for the Sudoku Assistant, we first had the .value() of the AllDifferent constraint to check the pairwise-inequalities for their value. It turned out that during the computation of our explanations, more than 60% of time was spent in the .value() function of AllDifferent!
I think it's safer to just raise an error if .value() is not implemented at GlobalConstraint level as to me, in general it is not a good idea to rely on the decomposition to get the value of the constraint.

and in any case, we need to check that null values are fully checked (either because of the call to simpler operation) or in the .value() fct (which was the initial issue I flagged)


[Tooltip] Does not work within mat-placeholder

Bug, feature request, or proposal:
Bug
What is the expected behavior?
A mdTooltip element should display a tooltip if placed within a md-placeholder tag
What is the current behavior?
mdTooltip within a md-placeholder tag does not display
What are the steps to reproduce?
http://plnkr.co/edit/QAOYgSzLBpbM3ifmgQLL
What is the use-case or motivation for changing an existing behavior?
I want to display an info icon next to the placeholder (always floating) with an informative tooltip
Which versions of Angular, Material, OS, browsers are affected?
Can confirm for Angular 4, Material HEAD
Is there anything else we should know?
It seems the hover event is being captured by md-input-container and does not allow the mdTooltip to know when the user is hovering the cursor on it.

So, basically, the pr was reverted by #4206 to fix #4167
As a workaround, we are manually adding:
md-placeholder {
    pointer-events: auto;
}

See https://developer.mozilla.org/en/docs/Web/CSS/pointer-events
@crisbeto is there any long-term solution?

I'm not sure what the long-term solution could be on our side @aldo-roman. On one hand, we can't allow the pointer events, because you're not able to fully interact with the input, but on the other we can't disable them either, because you can't bind mouse events. I'd say that the first use case is a lot more common, so we'll have to go for the lesser of two evils.

I submitted a pull request to allow pointer-events on the tooltip host tag (not on the placeholder at all).
:host {pointer-events: auto}

Closing because mat-placeholder has been made obsolete
Working example:
https://stackblitz.com/edit/angular-dddm4l?file=src%2Fapp%2Finput-overview-example.html


foo.is_null() is not the same as foo.eq(None)

Setup
I have a model something like this:
CREATE TABLE things (
   id INTEGER PRIMARY KEY NOT NULL,
   data INTEGER NOT NULL,
   optional_data VARCHAR
);

pub struct Thing {
    pub id: i32,
    pub data: i32,
    pub optional_data: Option<String>,
}

Versions

Rust: 1.21
Diesel: 0.16
Database: SQLite3 (haven't tried on Postgres)
Operating System Linux

Problem Description
I want to get all the Things with a particular data value and no optional data, so I wrote:
transactions.filter(
            data.eq(target_data)
                .and(optional_data.eq(None as Option<String>)
        )

But, it never succeeds even when there is data I would expect to match.  Instead, to do this query I have to write:
transactions.filter(
            data.eq(target_data)
                .and(optional_data.is_null())
        )

It does appear that this is perfectly consistent with SQL (though if there's implementation-defined variations here I don't know anything about it), since SQL NULL is not equal to any value: https://stackoverflow.com/questions/1833949/why-is-null-not-equal-to-null-false#1833989
But, it is extremely inconsistent with Rust and its representation of Option for "missing data".  SQL says NULL is never equal to anything including itself, similar to floating point NaN's.  But Rust says that an Option<T>::None is equal to any other Option<T>::None.  I sort of feel that if you're going to use SQL semantics, you should define a separate type than Option with explicitly different behavior for this, so it doesn't look like it SHOULD obey Rust semantics.  Given that optional_data.eq(None) is NEVER true, it seems like it should be impossible to say.
Thank you!

Another implementation:
macro_rules! eq_null {
    ($v:expr,$field:expr) => {
        {|| {
            use crate::diesel::BoolExpressionMethods;
            use crate::diesel::expression::AsExpression;

            sql("").bind::<diesel::sql_types::Bool,_>($v.is_none())
                .and($field.is_null())
                .or(sql("").bind::<diesel::sql_types::Bool,_>(!$v.is_none())
                    .and($field.eq($v)))
        }}()
    };
}

This creates a query fragment like
-- when v is None
WHERE ... ((TRUE AND field IS NULL) OR (FALSE AND field = <value>)) ...

-- when v is Some
WHERE ... ((FALSE AND field IS NULL) OR (TRUE AND field = <value>)) ...

Perhaps there can be added some method implementing this idea?

Could we at least get a note in the eq / ne documentation for this special case?
It's a bit frustrating when one expects None working like in Rust across the Rust/SQL boundary when in reality it's implicitly converted to NULL which doesn't behave like None in Rust.

@SWW13 Sure we could document that "special" case, just open a PR doing this.
Generally speaking: From our point of view that behaviour is not surprising because each each part of the expressions just maps literally to sql. Changing that would introduce a wired special case where this straight forward mapping is not true any more. Additionally it would break some performance optimizations around prepared statement cashing for all queries containing a .eq expression and therefore slow down those queries.
That said it is totally possible to implement such an operator as third party crate and publish it to crates.io.
@ensc This already exists, see the method Sean linked above.

@weiznich you mean is_not_distinct_from?  afais, this is for postgres only, but not e.g. for sqlite

I agree that it makes sense from the SQL side, it's just unexpected from the Rust side.  So, documentation is the best fix.

I don't think it should be closed, it's a tricky situation...........while the filter is big......

@GopherJ Could you please elaborate what argument above exactly have changed and why this should be reopened? Otherwise: Why do you post to an old thread if you don't have to add something meaningful to the discussion?

Just came across this myself. That is_null() exists at all feels very odd. The other syntax, which doesn't work apparently, is much more intuitive when writing Rust.

@bazald Please do not comment to closed issues without adding new information or insights. That is all already discussed and explained multiple times above.


git mirror is failing

Description
Gitea doesn't support shallow clone yet, which causes our our HTTPS clone to fail.
Gitea Version
latest-rootless
Can you reproduce the bug on the Gitea demo site?
No
Log Gist
No response
Screenshots
No response
Git Version
2.36.5
Operating System
k8s 1.25.6 on unbutu  22.04
How are you running Gitea?
docker.io/gitea/gitea:latest-rootless
Into the container
bash-5.1$ git clone --mirror -- https://github.com/DaoCloud/public-image-mirror.git ./gitea-6cf9458f49-s6f7t.git
Cloning into bare repository './gitea-6cf9458f49-s6f7t.git'...
fatal: error reading section header 'shallow-info'

That works as workaround, but it works atleast
bash-5.1$ git clone --depth 15000000 --mirror -- https://github.com/DaoCloud/public-image-mirror.git ./gitea-6cf9458f49-s6f7t.git
Cloning into bare repository './gitea-6cf9458f49-s6f7t.git'...
remote: Enumerating objects: 1680, done.
remote: Counting objects: 100% (17/17), done.
remote: Compressing objects: 100% (14/14), done.
remote: Total 1680 (delta 6), reused 9 (delta 3), pack-reused 1663
Receiving objects: 100% (1680/1680), 397.95 KiB | 954.00 KiB/s, done.
Resolving deltas: 100% (921/921), done.

Database
SQLite

it's gateway issue


NAS-125815 / 24.04 / Add enclosure2 query output to debug

Context
It has been requested that we include enclosure2.query output to our debug as it's being used in our middleware stack and can help in potentially debugging problems.

Jira URL: https://ixsystems.atlassian.net/browse/NAS-125815

This PR has been merged and conversations have been locked.
If you would like to discuss more about this issue please use our forums or raise a Jira ticket.


ci: add markdown linter

can run locally with make md-lint

lot of Markdown Lint errors here - I'll go through them over time but too many to do in one fell swoop myself immediately

lot of Markdown Lint errors here - I'll go through them over time but too many to do in one fell swoop myself immediately

Looks like a lot of trailing white spaces. Should be possible to use basic tools, editors and even plain git to do those fixes. I'm willing to help, but don't want to duplicate any work you already did?

Haven't start anything @ckadner so if you want to push commits onto this PR be my guest! Appreciate it!

@nathan-weinberg I updated the workflow and fixed all the linting errors.


Use opacity instead of adjusting color for text

According to Material Design guidelines, it's preferred to use opacity instead of changing the color. [1]
I think something like "red-text text-secondary" should look good.
[1] https://www.google.com/design/spec/style/color.html#color-text-background-colors

+1

+1
I think so, too. We need the standard way to specify text opacities.

Polymer's paper-style has color.html and there are definitions of opacities.
<style is="custom-style">

  :root {

     .....

    /* opacity for dark text on a light background */
    --dark-divider-opacity: 0.12;
    --dark-disabled-opacity: 0.38; /* or hint text or icon */
    --dark-secondary-opacity: 0.54;
    --dark-primary-opacity: 0.87;

    /* opacity for light text on a dark background */
    --light-divider-opacity: 0.12;
    --light-disabled-opacity: 0.3; /* or hint text or icon */
    --light-secondary-opacity: 0.7;
    --light-primary-opacity: 1.0;
}

The dark-primary-opacity is defined as 0.87, but not used anywhere in Polymer surprisingly.
Also, it seems for me that texts in Polymer's default-theme and typography demo do not have opacity.

We change the alpha of the color which is equivalent of changing the opacity. Except that it will not interfere with other non-text objects.


Fix links in signalr msgpack AOT section

This fixes two 404 links in the AOT section of this article.
Both MessagePack-CSharp links currently 404.

Doing this in https://github.com/dotnet/AspNetCore.Docs/pull/17736 already

@thelgevold  Thanks for the PR.


part of the fix for target not aborting when a task fails

also needs a change in the Rakefile
https://jira.ewr01.tumblr.net/browse/GEN-31

:cake: LGTM


Not able to install coreferee

I am trying to install coreferee using commands mentioned in the documentation:
python3 -m pip install coreferee
python3 -m coreferee install en

but executing this is showing the following errors:
ERROR: Could not find a version that satisfies the requirement coreferee (from versions: none)
ERROR: No matching distribution found for coreferee
How to resolve this issue?

Duplicate of #2


updating button styles

Warnings

:warning:
There are no updates provided to CHANGELOG. Ensure there are no publicly visible changes introduced by this PR.

  Generated by :no_entry_sign: dangerJS


Resolve absolute imports from the ember module prefix

Fixes #35. In the example,
import AwesomeMixin from 'my-cool-project/mixins/awesome-mixin';

Ctrl-clicking AwesomeMixin or awesome-mixin will open app/mixins/awesome-mixin.js

I naively parse config/environment.js to find the module prefix (my-cool-project). The module prefix needs to be hard-coded in there or imports will not be resolved.
Supports in-repo addons (their lib/my-in-repo-addon/app directories are included in the search)
Only supports the "classic" ember structure (no pods)

awesome! I was actually working on something roughly similar, but for addon imports (see https://intellij-support.jetbrains.com/hc/en-us/community/posts/205412350-How-to-use-JSModuleReferenceContributor)

This is a default structure in the current Ember version.

I don't know where you've read that, but it is not correct. The default right now is "classic" and will be replaced with a different structure in the future (see https://github.com/emberjs/rfcs/pull/143)

Developers of ember-cli have already made a small step for man the pods structure as default (see ember-cli/issues/2646).
Anyway, it would be great to enable this feature in plugin.

@nathanhammond please assist 😉

@dkalinin Hello! Both @Turbo87 and I are on the Ember CLI core team; I can assure you that pods are not default, are unsupported, and will receive no additional maintenance. We've made this decision to avoid further fragmentation of the community prior to adoption of the "module unification" RFC. You can use "classic" and "pods" side-by-side and I recommend that you adopt classic for all future development.

@nathanhammond I read the advice here https://github.com/ember-cli/ember-cli/issues/2646#issuecomment-124872902 to go for pods and https://discuss.emberjs.com/t/pods-cam-someone-confirm-alive-or-dead/12336/5?u=caltor says pods won the layout war. I'm confused! Are pods a dead duck now then? 😱 That would be a 😭 shame as I love the pods structure.


moar logs

Make the number of warnings lines returned configurable.

(also a small handful of style things)

lgtm


tslint.json location in rule?

Any way to get tslint.json location inside a rule? I'm passing some paths to my linter and it doesn't work very good with per-folder configurations.
tslint -p ./subfolder

./subfolder/tslint.js
module.exports = {
  "rules": {
    "my-custom-rule": {
      // meaning ./folder/foo.bar.js
      // process.cwd() inside rule is './', not './subfolder'
      "options": ["./foo.bar.js"]
    }
  }
}

@yantrab create another tslint.json file in your subfolder and it will take precedence over the one in root folder. No need to do anything else.

💀 It's time! 💀
TSLint is being deprecated and no longer accepting pull requests for major new changes or features. See #4534. 😱
If you'd like to see this change implemented, you have two choices:

Recommended: Check if this is available in ESLint + typescript-eslint ✅
Not Recommended: Fork TSLint locally 🤷♂

👋 It was a pleasure open sourcing with you!
If you believe this message was posted here in error, please comment so we can re-open the issue!

🤖 Beep boop! 👉  TSLint is deprecated 👈 (#4534)  and you should switch to typescript-eslint! 🤖
🔒 This issue is being locked to prevent further unnecessary discussions. Thank you! 👋


error output with tedious.js

appoptics:error ao.runInstrument failed to build span TypeError: Cannot read property 'value' of undefined     at ao.instrument.args.(anonymous function).userCallback (/home/folder/baseplate/node_modules/appoptics-apm/dist/probes/tedious.js:37:56)     at runInstrument (/home/folder/baseplate/node_modules/appoptics-apm/dist/index.js:734:45)     at Object.exports.instrument (/home/folder/baseplate/node_modules/appoptics-apm/dist/index.js:1124:14)     at Connection.<anonymous> (/home/folder/baseplate/node_modules/appoptics-apm/dist/probes/tedious.js:36:17)     at Connection.callProcedure (/home/folder/baseplate/node_modules/tedious/lib/connection.js:1293:12)     at parent.acquire (/home/folder/baseplate/node_modules/mssql/lib/tedious.js:1022:20)     at _acquire.then.connection (/home/folder/baseplate/node_modules/mssql/lib/base.js:172:42)     at <anonymous> +10ms
The app seems to be working and sql calls are being logged. setting ao.errorlevel = '' for now, but would rather know these are happening. would get flooded though. might be nice to write these into something other than standard out.
Thanks in advance.

node-mssql 4.0.1 uses tedious
node version 8.11.3

Any chance you can determine which queries cause this error? Our tests, while not exhaustive, don't encounter it so the query and parameters might be useful.

@twiggy - The code in question has been completely reworked since this bug report. Can you verify that there is/isn't a problem with current versions of the agent?

Closing, please feel free to reopen if this is still a problem.


error while processing request ' _request ' (exception exception )

This is the error that comes up when i try to launch my first program. What does this mean? Any solutions? is this well coded? are there many mistakes? please help me. i am just learning to code :)
username = raw_input("username?")
age = raw_input("age?")
if age == [1,17]:
print "you are too young"
else:
print "welcome", username "we are happy to have you here"
time.sleep(3)
while true:
import random
print "welcome: " + username "This is a dice game. So get ready!"
time.sleep(3)
print "press enter to roll the dice."
input()
number=random.randint(1,6)
if number == 1:
print "[--------------]"
print "[              ]"
print "[      o       ]"
print "[              ]"
print "[--------------]"
print "you threw 1!"
if numer == 2:
print "[--------------]"
print "[              ]"
print "[   o      o   ]"
print "[              ]"
print "[--------------]"
print "you threw 2!"
if number == 3:
print "[--------------]
print "[   o     o     ]"
print "[                 ]"
print "[      o         ]"
print "[--------------]"
print "you threw 3"
if number == 4:
print "[--------------]"
print "[   o       o   ]"
print "[                 ]"
print "[   o       o   ]"
print "[-------------]"
print "you threw 4!"
if number == 5:
print "[--------------]"
print "[   o       o  ]"
print "[       o      ]"
print "[   o       o  ]"
print "[--------------]"
print "you threw 5!"
if number == 6:
print "[--------------]"
print "[   o      o   ]"
print "[   o      o   ]"
print "[   o      o   ]"
print "[--------------]"
print "you threw 6!"

oh the little drawings are suposed to form dices :)

and i see copy pasting is not a great idea :)

This is the error that comes up when i try to launch my first program.

You are using Visual Studio Code and are creating a launch configuration?

As i said i am new to this so why isnt this possible? Please give me more information so i can learn how to propely run my programs. Thank you for your reply
Date: Mon, 7 Dec 2015 13:23:18 -0800
From<EMAIL_ADDRESS>To<EMAIL_ADDRESS>CC<EMAIL_ADDRESS>Subject: Re: [vscode] error while processing request ' _request ' (exception exception )  (#1083)
This is the error that comes up when i try to launch my first program.
You are using Visual Studio Code and are creating a launch configuration?
—
Reply to this email directly or view it on GitHub.

This repository is for tracking Visual Studio Code issues/bugs etc, this is the wrong place for asking such questions.


style(test): consistent async test style

Description:
This PR is small cosmetic changes to test cases, align messages of done.fail and consistent styles of async test cases.
Related issue (if exists):

Merged with 72e6587.


implement client stubbing behavior for client testing mode

Add .testing property and custom stubbing behavior for testing mode.

:+1:


[WIP] Removed skip and pending label

Signed-off-by: dheerajd-msys<EMAIL_ADDRESS>Description
Removed skip and pending label from functional test for reboot_pending?
Issues Resolved
Fixes https://github.com/chef/chef/issues/3085
Check List

[ ] New functionality includes tests
[ ] All tests pass
[ ] RELEASE_NOTES.md has been updated if required (not required for bugfixes, required for API changes)
[ ] All commits have been signed-off for the Developer Certificate of Origin. See https://github.com/chef/chef/blob/master/CONTRIBUTING.md#developer-certification-of-origin-dco

@dheerajd-msys Yes that area of the registry is protected usually, the default permissions allow TrustedInstaller full control only with a bunch of read permissions for other principals.

If you want to set values here, you might have to amend the AppVeyor yaml to grant your administrative account permission to create values there.

@dheerajd-msys Is this a PR we still need to keep open?

@tas50 We still need to investigate system for this issue to work upon, So this PR is irrelevant for now.
Closing this.


feat!: make mapper more strict and allow flexible mode

The mapper is now more type-sensitive and will fail in the following
situations:

When a value does not match exactly the awaited scalar type, for
instance a string "42" given to a node that awaits an integer.

When unnecessary array keys are present, for instance mapping an array
['foo' => …, 'bar' => …, 'baz' => …] to an object that needs only
foo and bar.

When permissive types like mixed or object are encountered.

These limitations can be bypassed by enabling the flexible mode:
(new \CuyZ\Valinor\MapperBuilder())
    ->flexible()
    ->mapper();
    ->map('array{foo: int, bar: bool}', [
        'foo' => '42', // Will be cast from `string` to `int`
        'bar' => 'true', // Will be cast from `string` to `bool`
        'baz' => '…', // Will be ignored
    ]);

When using this library for a provider application — for instance an API
endpoint that can be called with a JSON payload — it is recommended to
use the strict mode. This ensures that the consumers of the API provide
the exact awaited data structure, and prevents unknown values to be
passed.
When using this library as a consumer of an external source, it can make
sense to enable the flexible mode. This allows for instance to convert
string numeric values to integers or to ignore data that is present in
the source but not needed in the application.

All these changes led to a new check that runs on all registered object
constructors. If a collision is found between several constructors that
have the same signature (the same parameter names), an exception will be
thrown.
final class SomeClass
{
    public static function constructorA(string $foo, string $bar): self
    {
        // …
    }

    public static function constructorB(string $foo, string $bar): self
    {
        // …
    }
}

(new \CuyZ\Valinor\MapperBuilder())
    ->registerConstructor(
        SomeClass::constructorA(...),
        SomeClass::constructorB(...),
    )
    ->mapper();
    ->map(SomeClass::class, [
        'foo' => 'foo',
        'bar' => 'bar',
    ]);

// Exception: A collision was detected […]

I left some comments here and here.

Hi @eigan, just fixed this issue, thanks for the report! Can you confirm it is ok by your side?

@romm Seems to be fixed 👍🏻
final class Foo
{
    public ?Bar $foo;
}

class Bar {
    public string $note = "hello";
}

$foo = (new \CuyZ\Valinor\MapperBuilder())
    ->mapper()
    ->map(Foo::class, [
        'foo' => 10
    ]);

print_r($foo);

Result
Foo Object
    [bar] => Bar Object
        [note] => 10 (string)

This is not really strict. Though the PR doesnt really promise full-strictness either.. 😃

Note is cast from int to string
'foo' actually expects {note: string} but apparently just sending something that can be cast to the one and only property of Bar is allowed.

Hi @eigan, I can't reproduce your last report, and the result you get is quite surprising. Are you sure you did run it on this feature branch?

@romm Hey, sorry. You are right, I was on master 🤦🏻♂
My example was also wrong. Source should have had bar, not foo (updated now).

Thanks a lot for all the testing work, very much appreciated!
I'll probably publish a new release with this feature tomorrow.


Any plan to release the Chinese version?

RT

Thanks for your interest. No plan on releasing Chinese pre-trained models right now.

Looking forward to a Chinese pre-trained model


Popularity

Hello @smortexa! 👋🏻
This is a fantastic helper of all Laravel developers.
Why isn't there issues and thousands of stars? ⭐

Hello @szepeviktor! I greatly appreciate your kind word, and I'm happy you feel that way!


[Event Request] Codeunit 12 - "Gen. Jnl.-Post Line"

    [IntegrationEvent(false, false)]
    local procedure OnBeforeInsertDeferralGLEntry(GenJournalLine: Record "Gen. Journal Line"; DeferralLine: Record "Deferral Line";  var GLEntry: Record "G/L Entry")
    begin
    end;

In all Functions with Deferral before InsertGLEntry. Example:
In the Function "PostDeferral()" and "PostDeferralPostBuffer()"
.
.
.
                        InitGLEntry(GenJournalLine, GLEntry, DeferralPostBuffer."G/L Account",
                          DeferralPostBuffer."Sales/Purch Amount (LCY)",
                          DeferralPostBuffer."Sales/Purch Amount",
                          true, true);
                        GLEntry."Posting Date" := PostDate;
                        GLEntry.Description := DeferralPostBuffer.Description;
                        GLEntry.CopyFromDeferralPostBuffer(DeferralPostBuffer);
                        OnBeforeInsertDeferralGLEntry(GenJournalLine, GLEntry);
                        InsertGLEntry(GenJournalLine, GLEntry, true);
.
.
.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


ZenBot Learning.js Param Errors

Running Zenbot 2.6.0, while running ZenBot Learn I get errors at regular intervals, usually happening just before the 'simulating' progress bar hits 100%
Log file attached:
log.txt

hi kieran,
those errors are actually just a part of the learning process, it validates that mutated params are within a good range and aborts the sim if not.
cheers,
Carlos
Sent from my iPad

On Aug 7, 2016, at 1:43 AM, Kieran Mesquita<EMAIL_ADDRESS>wrote:
Running Zenbot 2.6.0, while running ZenBot Learn I get errors at regular intervals, usually happening just before the 'simulating' progress bar hits 100%
Log file attached:
log.txt
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Zenbot 4 is out, so I'm cleaning up 3.x issues. Please use and test 4, thanks!


Optional fragment optimisation

http://website.com/images/myvector.svg#identifier
In this case the fragment is needed to point to the correct identifier inside the SVG file. Would you accept a PR for this (options.normalizeFragment or options.stripFragment)?

Sure, options.stripFragment.


VRCNet training

Thanks very much for share the codes. I am a little confused about the vrcnet. Why the codes in vrc.py are the same as vrcnet.py? According to the paper, three steps (PMNET trained with gt, PMNET trained with incompletion point clouds, RENET) are needed if we reproduce it. However, only one file ( vrc.py or vrcnet.py) is provided. Should I revise it?  Thanks again.

Our model is trained end-to-end.  In other words, you do not need to perform three independent steps.
I have removed the duplicated files.  Thank you~


Use another detector

Thanks for the amazing work ! I was wondering, if I  want to use my own detections from anoter detector should I keep all the detections by putting the confidence threshold and the nms at 0 ? Because I see that you are using bboxes that are included in other bboxes

You can use the confidence threshold 0.1 and an appropriate nms threshold according to your detector.

Hello, I would like to ask some questions about switching to other detectors. Have you done the steps to change the yolox detector to the yolov5 detector? Which files do I need to work with?


Saved Projects Screen Improvements

In my opinion if there are no saved projects, a message should be displayed indicating the user does not have any saved projects yet, and if need be directed to creating a new project option.

@chhavip you can proceed. :+1:

Hey! I have made a PR regarding this issue. Please have a look at it. :)

Closed via #170


Regression: Cors::beforeAction()

There's a regression in 2.0.14-dev Cors::beforeAction() after merge: https://github.com/yiisoft/yii2/commit/399dbce0cadbd7631f726841ece3ecf6a830444d
This is my test in Codeception:
public function preflight(ApiTester $I): void
{
    $I->haveHttpHeader('Access-Control-Request-Headers', 'Content-Type');
    $I->haveHttpHeader('Access-Control-Request-Method', 'POST');
    $I->haveHttpHeader('Accept', '*/*');
    $I->sendOPTIONS('/users');

    $I->seeResponseCodeIs(200);
    $I->seeHttpHeader('Content-Type', 'application/vnd.api+json; charset=UTF-8');
    $I->seeHttpHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS');
    $I->seeHttpHeader('Access-Control-Allow-Headers', 'Content-Type');
}

Before merge https://github.com/yiisoft/yii2/commit/399dbce0cadbd7631f726841ece3ecf6a830444d:
See http header "Content-Type","application/vnd.api+json; charset=UTF-8"

- Expected | + Actual
@@ @@
-'application/vnd.api+json; charset=UTF-8'
+'application/vnd.api+json; charset=UTF-8'

After merge https://github.com/yiisoft/yii2/commit/399dbce0cadbd7631f726841ece3ecf6a830444d:
See http header "Content-Type","application/vnd.api+json; charset=UTF-8"

- Expected | + Actual
@@ @@
-'application/vnd.api+json; charset=UTF-8'
+'text/html; charset=UTF-8'

Additional info

Q
A

Yii version
2.0.14-dev

PHP version
7.1.4

Operating system
macOS High Sierra 10.13.3

What's the actual code that is tested?

@samdark, this is an action that I testing:
public function actionCreate()
{
    $resource = new SignUpResource();

    if ($resource->load($this->request->post()) && $resource->validate()) {
        try {
            $this->service->create($resource);
            $this->response->setStatusCode(201);
            $this->response->getHeaders()->set('Location', Url::to('users/' . $resource->id, true));

            return $resource;
        } catch (\DomainException $e) {
            \Yii::$app->errorHandler->logException($e);
        }
    } elseif ($resource->hasErrors()) {
        return $resource;
    }
}

rest controller:
class BaseController extends \yii\web\Controller
{
...
    public $serializer = \tuyakhov\jsonapi\Serializer::class;

    public $enableCsrfValidation = false;

    public function behaviors(): array
    {
        return [
            'contentNegotiator' => [
                'class' => \yii\filters\ContentNegotiator::class,
                'formats' => [
                    'application/vnd.api+json' => \yii\web\Response::FORMAT_JSON,
                    'application/json' => \yii\web\Response::FORMAT_JSON,
                    'application/xml' => \yii\web\Response::FORMAT_XML,
                ],
            ],
            'verbFilter' => [
                'class' => \yii\filters\VerbFilter::class,
                'actions' => $this->verbs(),
            ],
            'rateLimiter' => [
                'class' => \yii\filters\RateLimiter::class,
            ],
        ];
    }

config:
'components' => [
    'request' => [
        'parsers' => [
            'application/vnd.api+json' => [
                'class' => tuyakhov\jsonapi\JsonApiParser::class,
                'memberNameCallback' => [tuyakhov\jsonapi\Inflector::class, 'variablize'],
            ],
            'application/json' => yii\web\JsonParser::class,
        ],
    ],
    'response' => [
        'formatters' => [
            yii\web\Response::FORMAT_JSON => [
                'class' => tuyakhov\jsonapi\JsonApiResponseFormatter::class,
                'prettyPrint' => YII_DEBUG,
                'encodeOptions' => JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE,
            ],
        ],
    ],
    'urlManager' => [
        'enablePrettyUrl' => true,
        'enableStrictParsing' => true,
        'showScriptName' => false,
        'rules' => [
            ...
            'OPTIONS,GET users' => 'users/index',
            'OPTIONS,POST users' => 'users/create',
        ],
    ],
],
'as corsFilter' => [
    'class' => yii\filters\Cors::class,
],

It's not clear how to reproduce it. There are custom classes everywhere and excessive config. Would you please do a minimal test case that contains only necessary code to reproduce the issue starting with basic app?

@samdark, I'll try.

@samdark, the issue is reproduce in the basic app cors-bug.zip.
How to reproduce the issue.

composer install
php vendor/bin/codecept run api
The result should be fail.
These lines should be comment out. https://github.com/yiisoft/yii2/blob/4f80cda7130da5259ce93fe41eb681cbb70f30be/framework/filters/Cors.php#L109-L113
The result should be success.

This is strange bacause Cors filter is not enabled in this project

@leandrogehlen and you confirm that commenting lines above make tests pass?

I'm looking for it now

w/ https://github.com/yiisoft/yii2/commit/399dbce0cadbd7631f726841ece3ecf6a830444d:

w/o https://github.com/yiisoft/yii2/commit/399dbce0cadbd7631f726841ece3ecf6a830444d:

I did some tests and the unique issue is that if you comment  second line the test works.
Then can't see the problem, because the header: 'Content-Type' is not set in request and ContentNegotiator not add this header it in response. I think this is right.
   $I->seeResponseCodeIs(200);
   //$I->seeHttpHeader('Content-Type', 'application/json; charset=UTF-8');
   $I->seeHttpHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS');
   $I->seeHttpHeader('Access-Control-Allow-Headers', 'Content-Type');

I think i found the problem, in example project was configured in web.php:
   'as corsFilter' => [
        'class' => yii\filters\Cors::class,
    ],
   'as authenticator' => [
        'class' => yii\filters\auth\CompositeAuth::class,
        'except' => ['site/index', 'debug/*'],
        'authMethods' => [
            ['class' => yii\filters\auth\HttpBearerAuth::class],
        ],
    ],

This way behavior method is not considered. I removed this configuration and did it in controller :
class SiteController extends Controller
{
    /**
     * @inheritdoc
     */
    public function behaviors()
    {
        return [
            'contentNegotiator' => [
                'class' => ContentNegotiator::class,
                'formats' => [
                    'application/json' => Response::FORMAT_JSON,
                ],
            ],
            'cors' => [
                'class' => Cors::class,
            ]
        ]
   ...

I change the test to
    $I->sendOPTIONS('/site/index?_format=json');

This worked, but i think the problem is the sequence, like cors return false the following filters are not executed

Well, that's expected and exactly that was changed, isn't it?

This worked, but i think the problem is the sequence, like cors return false the following filters are not executed

This is the correct statement.

@samdark, i think so.
@alexraputa if you change the filters sequence your problem is  solved?

@alexraputa why do you need these headers or authentication in preflight?

@leandrogehlen, this is definitely a bug.
The preflight response should contain Content-Type, which will be the same as for a real response.
See CORS the section of Preflighted requests and example for it.

I agreee, but this is happening. You don't adds the 'Content-Type' in you request test.
If you use the code below, will work
$I->haveHttpHeader('Content-Type', 'application/json; charset=UTF-8');
$I->haveHttpHeader('Access-Control-Request-Headers', 'Content-Type');
$I->haveHttpHeader('Access-Control-Request-Method', 'POST');
$I->haveHttpHeader('Accept', '*/*');
$I->sendOPTIONS('/users');

@leandrogehlen, I disagree with it. The Content-Type of the request specifies the request body, which is not applicable to an OPTIONS request.
See OPTIONS request.
I use behaviors in this sequence. See Yii 2 CORS.

The behaviors will not work if the first of them return false in the beforeAction method.
@samdark, I think we should revert this https://github.com/yiisoft/yii2/commit/399dbce0cadbd7631f726841ece3ecf6a830444d feature, until we find a better solution.

@alexraputa, I understand but i belive the interrupt in filter sequence is another issue, not associate to Cors. If it will considered a bug is a problem for all filters

@samdark, I can't see problem, does not make sense execute others filters in preflight, because after preflight the real request will be executed

@leandrogehlen, @samdark, Such frameworks as Laravel and Symfony does not stop the application in the cors filter if the request has OPTIONS method. They simply modify the response object and pass it further along the chain of middlewares. Why not do the same in Yii? We should not leave this as is.

@alexraputa, isn't to OPTIONS method is only a preflight:
https://github.com/yiisoft/yii2/blob/master/framework/filters/Cors.php#L109

related #14618

@leandrogehlen, The preflight request is equal to OPTIONS request.

Unlike “simple requests”, "preflighted" requests first send an HTTP request by the OPTIONS method to the resource on the other domain, in order to determine whether the actual request is safe to send. Cross-site requests are preflighted like this since they may have implications to user data.

Example of a request from documentation:
OPTIONS /resources/post-here/ HTTP/1.1
Host: bar.other
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b3pre) Gecko/20081130 Minefield/3.1b3pre
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection: keep-alive
Origin: http://foo.example
Access-Control-Request-Method: POST
Access-Control-Request-Headers: X-PINGOTHER, Content-Type

Example of a response from documentation:
HTTP/1.1 200 OK
Date: Mon, 01 Dec 2008 01:15:39 GMT
Server: Apache/2.0.61 (Unix)
Access-Control-Allow-Origin: http://foo.example
Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Allow-Headers: X-PINGOTHER, Content-Type
Access-Control-Max-Age: 86400
Vary: Accept-Encoding, Origin
Content-Encoding: gzip
Content-Length: 0
Keep-Alive: timeout=2, max=100
Connection: Keep-Alive
Content-Type: text/plain

Example of a real request from documentation:
POST /resources/post-here/ HTTP/1.1
Host: bar.other
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b3pre) Gecko/20081130 Minefield/3.1b3pre
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection: keep-alive
X-PINGOTHER: pingpong
Content-Type: text/xml; charset=UTF-8
Referer: http://foo.example/examples/preflightInvocation.html
Content-Length: 55
Origin: http://foo.example
Pragma: no-cache
Cache-Control: no-cache

<?xml version="1.0"?><person><name>Arun</name></person>

Example of a real response from documentation:
HTTP/1.1 200 OK
Date: Mon, 01 Dec 2008 01:15:40 GMT
Server: Apache/2.0.61 (Unix)
Access-Control-Allow-Origin: http://foo.example
Vary: Accept-Encoding, Origin
Content-Encoding: gzip
Content-Length: 235
Keep-Alive: timeout=2, max=99
Connection: Keep-Alive
Content-Type: text/plain

[Some GZIP'd payload]

Both responses have the same content type - Content-Type: text/plain.
@samdark, need your thoughts.

This https://github.com/yiisoft/yii2/commit/399dbce0cadbd7631f726841ece3ecf6a830444d feature also breaks BC if you have actionOptions like this:
public function actionOptions(): void
{
    if (!$this->request->getIsOptions()) {
        $this->response->setStatusCode(405);
    }

    $options = implode(', ', array_reduce($this->verbs(), 'array_merge', []));
    $this->response->getHeaders()->set('Allow', $options);
    $this->response->getHeaders()->set('Access-Control-Allow-Method', $options);
}

Because the response was stopped in the beforeAction() method of the CORS filter. And your response will not contain the Allow and the modifiedAccess-Control-Allow-Method headers for specific actions of controllers.

@alexraputa according to CORS spec https://www.w3.org/TR/cors/#preflight-request the only considered headers are CORS-related. The rest of the headers and body are simply ignored so it doesn't make any sense to send them.

Why would you need to send Allow or Content-type if they're simply ignored?

Why would you need to send Allow or Content-type if they're simply ignored?

@samdark, This is not true. The response from the server must support these headers. See rfc7231 and OPTIONS
W/ this https://github.com/yiisoft/yii2/commit/399dbce0cadbd7631f726841ece3ecf6a830444d feature.
My application on Ember.js 3.0 sends a preflight request:

And backend app on Yii 2 sends response:

W/o this https://github.com/yiisoft/yii2/commit/399dbce0cadbd7631f726841ece3ecf6a830444d feature.

This is a standard preflight request to the server. The other frontend frameworks such as React and Angular send the same  preflight request.
If frontend app send the Accept: */* (see Accept) header then backend app must send the allowed Content-Type for a URL.

Well, this is not how preflight should work according to its specification: https://www.w3.org/TR/cors/#preflight-request

My API is public and clients are using it. If the Accept header receives the response with Content-Type liketext/html, then clients accordingly need to implement a serializer of this type of content. But then the API sends a real response with the type application/vnd.api+json and the frontend application throws an error, because the serializer for application/vnd.api+json is not implemented.

@alexraputa, this is not true, i have built a angular application with yii2 cors filters and worked fine.
Preflight results:

Real request:

Yii2 Angular Project
yii2-angular.zip
cd angular
npm install
ng build --watch

to access angular app use: http://localhost/yii2-angular/web/dist/

@leandrogehlen, I don't see any of CORS methods in your response.
The preflight request shouldn't have the Content-Type header because it has an empty body.
But you force added the Content-Type header into the request.
let headers = new HttpHeaders({
  'Content-Type': 'application/json'
});

@samdark, please close this issue, he wants to have a response default format.
it has nothing to do with issue.

Ok, if you want have some rare bugs in a framework then just leave it.

@alexraputa which client do you have that doesn't follow CORS specification and looks at non-CORS headers in preflight?

@samdark, Which the headers of the my request do not match with the CORS specification?

Accept;
Referer;
Access-Control-Request-Headers;
Origin;
User-Agent;
Access-Control-Request-Method.

Not the CORS specification itself but preflight part of it will just ignore what's not needed for CORS:

Exclude the author request headers.
Exclude user credentials.
Exclude the request entity body.

What matters (and is cached in browsers) in CORS reponse is:

origin
url
max-age
credentials
method

That's it. Nothing about content-type or anything else. Body doesn't matter as well.
So I'm asking again, what's the client that you're using that needs Accept header in the response for preflight request?

@samdark,

My application on Ember.js 3.0 sends a preflight request:

These are preflight request specification in ASP.NET (Preflight-requests):

The application doesn't set any request headers other than Accept, Accept-Language, Content-Language, Content-Type, or Last-Event-ID, and

The Content-Type header (if set) is one of the following:
application/x-www-form-urlencoded
multipart/form-data
text/plain

You can close this issue If you think that this is not a bug.

You're confusing request and response. See response example there:
HTTP/1.1 200 OK
Cache-Control: no-cache
Pragma: no-cache
Content-Length: 0
Access-Control-Allow-Origin: http://myclient.azurewebsites.net
Access-Control-Allow-Headers: x-my-custom-header
Access-Control-Allow-Methods: PUT
Date: Wed, 20 May 2015 06:33:22 GMT

According to W3C spec, Cache-Control: no-cache, Pragma: no-cache and Date are ignored and aren't cached on clients so it comes to:
HTTP/1.1 200 OK
Content-Length: 0
Access-Control-Allow-Origin: http://myclient.azurewebsites.net
Access-Control-Allow-Headers: x-my-custom-header
Access-Control-Allow-Methods: PUT

What exactly happened to Ember.js 3.0 app when we started to send these reduced CORS responses? Did it break somehow? How exactly?

@alexraputa according to that

These are preflight requests specification in ASP.NET (Preflight-requests)

@alexraputa  according to that linked documentation those are not specifications but conditions that when meet the browser will omit or skip the process of sending a preflight request.

Those are conditions similar to what's on W3C except examples are a bit weird. They're OK but, as I said, they define request, not response.

@samdark, what do you think about it Preflighted requests (see example of preflight request/response)?
And about this https://github.com/yiisoft/yii2/issues/15665#issuecomment-367489876.
We already have the actionOptions method in the ActiveController class. The headers of this action are never included in the response if you use the CORS filter.
https://github.com/yiisoft/yii2/blob/77ad6bc00847d4964a0b2a82d3b70dcd7cb5a1cf/framework/rest/ActiveController.php#L102-L104
https://github.com/yiisoft/yii2/blob/77ad6bc00847d4964a0b2a82d3b70dcd7cb5a1cf/framework/rest/OptionsAction.php#L32-L44

What exactly happened to Ember.js 3.0 app when we started to send these reduced CORS responses? Did it break somehow? How exactly?

The front-end application is working. But the response from the API was significantly reduced, which does not give a full submission of the resource.

I think that these response examples are OK as well but, as pointed out by specification (W3C one), non-CORS headers are not taken into account. Means you can send whatever you want: any headers, body... anything. As long as response code is 2xx and CORS headers are there, it's fine.

About https://github.com/yiisoft/yii2/issues/15665#issuecomment-367489876. Regular OPTIONS request and preflight request are two different things. There's no need to give out usual options response in CORS preflight response.

The front-end application is working. But the response from the API was significantly reduced, which does not give a full submission of the resource.

Would you please elaborate "does not give a full submission of the resource"?

@samdark, https://github.com/yiisoft/yii2/issues/15665#issuecomment-367602078.

You can close this issue If you think that this is not a bug.

I don't get it :( Does this change affect non-CORS responses?

No, it's no affect. But it's confusing.
I don't modify any response on API, but framework send the Content-Type: text/html.

I see. So there's no error per se and it's overall just confusing, right?

If so, moving to 2.0.15 to think if it can be done better.

I see. So there's no error per se and it's overall just confusing, right?

Yes, it's right.

@samdark
Old issue but I agree with https://github.com/yiisoft/yii2/issues/15665#issuecomment-367979881 about response headers for CORS-preflight request. Response headers must contain Access-Control-Allow-Methods.
For example if we try to send PATCH-request from domain.com to api.domain.com (cross origin), browser send preflight request with Access-Control-Request-Method: PATCH and expects to see PATCH in response header Access-Control-Allow-Methods, otherwise it will block further PATCH-request:
... has been blocked by CORS policy: Method PATCH is not allowed by Access-Control-Allow-Methods in preflight response.

OptionsAction added response headers
https://github.com/yiisoft/yii2/blob/77ad6bc00847d4964a0b2a82d3b70dcd7cb5a1cf/framework/rest/OptionsAction.php#L43
but this action does not run because CorsFilter return false on beforeAction
https://github.com/yiisoft/yii2/blob/4f80cda7130da5259ce93fe41eb681cbb70f30be/framework/filters/Cors.php#L109-L113

Sorry, it is my mistake. I don't have Access-Control-Request-Method in behavior config.

Cors call prepareHeaders before return false
https://github.com/yiisoft/yii2/blob/4f80cda7130da5259ce93fe41eb681cbb70f30be/framework/filters/Cors.php#L106
and add response header Access-Control-Allow-Methods with default config
https://github.com/yiisoft/yii2/blob/4f80cda7130da5259ce93fe41eb681cbb70f30be/framework/filters/Cors.php#L171-L173


deepin linux build error

error: macro undefined: 'assert_ne!'
--> src/writer.rs:19:5
|
19 |     assert_ne!(flush_mode, Flush::None);
|     ^^^^^^^^^
|
= help: did you mean assert_eq!?
error: aborting due to previous error
error: Could not compile deflate.
thinks
I am a beginner of rust

What version of rust are you using? assert_ne is a pretty new addition.

I'm also having this issue on Windows using MSVC. I've tried the stable, beta, and nightly channels and the error persists on all of them.

That's strange. It was added in rust 1.13. Though, if it's just that assert causing issues I can change it to use a normal assert in the next version instead..

linux kernel 4.9.0 rustc 1.12.0

Right, you will need to update to at least 1.13.0 as the macro that is failing was added in that version.
I will remove the usage of assert_ne! ianyhow n the next update of this crate as it's not really important.

ok    thinks

I've removed the usage of assert_ne in the latest update. Do you still have this issue?

Closing this as the code no longer uses assert_ne!.


Improve the ability to share analysis between contexts

This issue was originally filed by<EMAIL_ADDRESS>
What steps will reproduce the problem?
Here are my observations with the latest versions of Dart Editor:

With Dart Editor, versions 0.8.X, I've noticed that I cannot start Dart
Editor anymore - see print screen [1]. To solve this problem I have followed
an internet advice, and I have deleted "-vmargs" option from "DartEditor.ini"
file.
In my workspace I have about 25 projects. Almost all of them are very
small Polymer projects with maximum 100 lines of code per project. I've
noticed that during workspace initialization my laptop uses about 13% of
CPU power, and during that time the Dart editor is unresponsive. Analyzing
all projects takes very long time, about three minutes. With 'unresponsive'
I mean that I have to wait more than 5 seconds for a response of the
editor for a mouse click.
Whenever I modify any file in my workspace, Dart analyzer starts immediately,
even without saving a file, and my Dart editor becomes unresponsive, sometimes
for about 10 seconds and sometimes even for about 45 seconds.
If I try to rename a file, dialog window pop-ups with a message
"Waiting for background analysis...". I receive the same message if I try
to rename a file 5 or 10 minutes later.
I have also seen message "Something gone wrong. Please ..."
I have noticed that Java process run at 13% of CPU power for a minute
after I had already closed the Dart Editor.

Dart Editor a log file [2] is also included from my last two sessions. In the
log file a lot of Java "java.lang.OutOfMemoryError" exceptions could be seen.
[1] - could-not-create-the-java-virtual-machine.png
[2] - dart-editor.log.txt
What is the expected output? What do you see instead?
What version of the product are you using? On what operating system?
Windows 7
Dart Editor version 0.8.5_r28990
Dart SDK version <IP_ADDRESS>_r28990
Please provide any additional information below.

Attachments:
dart-editor.log.txt (79.31 KB)
could-not-create-the-java-virtual-machine.png (45.98 KB)

This is now obsolete.


Maching folk session: search for "why" returns nothing, but it should return something

I just had a quick look through the first few pages of tunes and didn't see any with a title with 'why' in... to save me crawling the whole site, which tunes are you expecting to see?

https://themachinefolksession.org/tune/35


setsockopt() with flag SO_REUSEADDR returns "Protocol not available"

I've tried to use SO_REUSEADDR on a UDP socket and returns ENOPROTOOPT - "Protocol not available" error:
int reuse = 1;
ret = setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &reuse, sizeof(reuse));
if (ret < 0) {
	ESP_LOGI(TAG, "setsockopt err");
	perror("");
	goto exit;
}

Any feedback on this?

Could you please check if you have enabled CONFIG_LWIP_SO_REUSE in menuconfig (Component config > LwIP > Enable SO_REUSEADDR option)?

I tried enabled that from menuconfig and now it works! Thanks for bringing my attention to that part and sorry for disturbance!


Remove CircleCI - replace nightly with GitHub Actions

CI setup
It feels overkill to me we’re using both CircleCI and GitHub Actions on this project. The main reason CircleCI is used for Wagtail core is because we have so many frequent builds on GitHub Actions – so it’s nice to have basic linting finishing sooner. For a brand new project that will get little activity, I’d prefer we use GitHub Actions only.
Further notes on the CI setup:
* The way the nightly jobs are defined in CircleCI is [deprecated](https://circleci.com/docs/2.0/workflows/#scheduling-a-workflow), and will stop working in June. We should either move this to GitHub Actions, or if we want to keep using CircleCI, use their new scheduling support.

Originally posted by @lb- in https://github.com/wagtail/wagtail-hallo/issues/9#issuecomment-1056739234

@zerolab has done this in GitHub Actions for wagtailmedia:

https://github.com/torchbox/wagtailmedia/blob/main/.github/workflows/nightly-tests.yml
https://github.com/torchbox/wagtailmedia/blob/main/.github/report_nightly_build_failure.py

Also documented on https://github.com/wagtail/wagtail/wiki/Nightly-testing-of-official-plugins

Not sure if I need to configure something else - will investigate.

0s
Run python .github/report_nightly_build_failure.py
  python .github/report_nightly_build_failure.py
  shell: /usr/bin/bash -e {0}
  env:
    pythonLocation: /opt/hostedtoolcache/Python/3.9.10/x64
    LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.9.10/x64/lib
    SLACK_WEBHOOK_URL:
Traceback (most recent call last):
Reporting to #nightly-build-failures slack channel
  File "/home/runner/work/wagtail-hallo/wagtail-hallo/.github/report_nightly_build_failure.py", line 15, in <module>
    response = requests.post(
  File "/opt/hostedtoolcache/Python/3.9.10/x64/lib/python3.9/site-packages/requests/api.py", line 117, in post
    return request('post', url, data=data, json=json, **kwargs)
  File "/opt/hostedtoolcache/Python/3.9.10/x64/lib/python3.9/site-packages/requests/api.py", line 61, in request
    return session.request(method=method, url=url, **kwargs)
  File "/opt/hostedtoolcache/Python/3.9.10/x64/lib/python3.9/site-packages/requests/sessions.py", line 515, in request
    prep = self.prepare_request(req)
  File "/opt/hostedtoolcache/Python/3.9.10/x64/lib/python3.9/site-packages/requests/sessions.py", line 443, in prepare_request
    p.prepare(
  File "/opt/hostedtoolcache/Python/3.9.10/x64/lib/python3.9/site-packages/requests/models.py", line 318, in prepare
    self.prepare_url(url, params)
  File "/opt/hostedtoolcache/Python/3.9.10/x64/lib/python3.9/site-packages/requests/models.py", line 392, in prepare_url
    raise MissingSchema(error)
requests.exceptions.MissingSchema: Invalid URL '': No scheme supplied. Perhaps you meant http://?
Error: Process completed with exit code 1.

@zerolab could you please DM me in slack, I need to update the env var for the action.

Slack webhook URL into the SLACK_WEBHOOK_URL environment variable.

should be good now


feat: add no-scope api to ScopeProvider

Background
Unscoped derived atoms must be copied in a scope in case they depend on atoms that are scoped. This copy causes read side-effects such as fetch to rerun which may be undesirable. There is no way for developers to indicate that a derived atom does not depend on scoped atoms in the current api.
Proposed Solution
This PR proposes a new prop for ScopeProvider, noScope: Iterable<AnyAtom>. Passing atoms to this prop will declare them to be not dependent on any scoped atoms.
<ScopeProvider atoms={[]} noScope={[atomA]}>

Behavior

❌ If an atom is unscoped (derived, primitive, or writeOnly) and noScoped, it will NOT be cloned.
❌ If an atom is inherited from a scoped atom and noScoped, it will NOT be cloned.
✅ If an atom is explicitly scoped and noScoped, it will still be cloned.
✅ If an atom is implicitly scoped and noScoped, it will still be cloned.

Fixes:

https://github.com/jotaijs/jotai-scope/issues/25

Discussion
1. Should we instead export a utility to set this globally?
I think I'm still in favor of a noScope property on the ScopeProvider as it provides greater specificity.
export function noScope(anAtom: AnyAtom) {
  anAtom.noScope = true;
}

2. Should implicit dependencies adhere to noScope?
Should atomA be implicit scoped in the following example?
const atomA = atom(() => fetch(url))
const atomB = atom((get) => get(atomA))

function Component() {
  useAtom(atomB)
}

<ScopeProvider atoms={[atomB]} noScope={[atomA]}>
  <Component />
</ScopeProvider>

3. 💡 Another idea
Jotai exposes an api that describes the atom's current dependencies and notifies when dependencies change. Jotai Scope will determine if any of those dependencies are scoped to determine whether the atom needs to be copied or not.
4. 💡 Yet another idea
An atom's Getter and Setter are defined by the store and can be overwritten by jotai-scope. This eliminates the for copying unscoped derived atoms.

I'd basically leave it to you guys. Let me know if exposing something from the store api might help. I can't guarantee if it will be accepted though.

Update on this: we will not need to add a no-scope api if https://github.com/jotaijs/jotai-scope/pull/46 gets merged.
https://github.com/jotaijs/jotai-scope/pull/46 is in progress.

I am exploring other directions to solve this use-case, closing this PR for now.


Capstone 2 - Kanban setup

Dear reviewer,
Kindly consider the following:

Link to project: https://github.com/maov19/javascript-capstone/projects/1
Amount of team members: 2.

Thanks!

Hi @maov19  @shafiuyushawu ,
Your project is complete!  There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉

Highlights
✅ Good Implementation of all requirements
Optional suggestions
Every comment with the [OPTIONAL] prefix won't stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better. Some of them were simply missed by the previous reviewer and addressing them will really improve your application.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.

Thank you @Zuhaib042


fix: on Neo4j Query to grab Personal popular resources

Summary of Changes

Tests

Documentation

CheckList
Make sure you have checked all steps below to ensure a timely review.

[ ] PR title addresses the issue accurately and concisely. Example: "Updates the version of Flask to v1.0.2"

In case you are adding a dependency, check if the license complies with the ASF 3rd Party License Policy.

[ ] PR includes a summary of changes.
[ ] PR adds unit tests, updates existing unit tests, OR documents why no test additions or modifications are needed.
[ ] In case of new functionality, my PR adds documentation that describes how to use it.

All the public functions and the classes in the PR contain docstrings that explain what it does

Could you explain why this change is required in your opinion @Danucas ? My understanding of this query prior to your change was:

we grab a tables that user X follows
we check who else is following those tables - we get list of A, B, C users
we return tables followed by A, B, C users as personalized popular resources

This way if you are following table A, your peer is following tables A and B - you will see table B in your results even though you haven't used it yet - cause it's popular amongst users who have similar but not the same patterns of behavior.
Is there anything wrong with that logic?


Warn when installing a typing that already has a TypeScript compatible "typings" field

TypeScript and resolve using "node-style" resolution. We should warn the user when purposefully installing that typing.

I would go a step further and add some sort of reroute <reference tag to typings/definitions/package.ts.d which points to official ts.d in node_modules if it has official typings.

@Ciantic Is there a value in trying to do the reference? Seems like a lot of overhead. What if the typings move location, we have now stay in sync with changes.

I think my main point is that it should somehow "install" official types if they are available. I haven't thought this out either. I just encountered this.

There's no installation of "official" type definitions needed, they resolve already by TypeScript.

If they "just works", then it surely just block or warn.

Yes, that's why I asked which one seems more appealing in #320

I'll implement a warning prompting them to remove it. I'll see if I can implement this today.

I thought user must add some crazy <reference src="../node_modules/package/some.ts.d" for official typing but if they just work like other typings, byt from node_modules then blocking / forcing / warning is fine yes.

Nope, no need, typings is officially supported by TypeScript if they have it specified in package.json.

Released: https://github.com/typings/typings/releases/tag/v0.7.6


An explicitly set Cookie header is overwritten when using a CookieJar

If a Request contains a Cookie header, it is overridden by the values returned by the CookieJar (if one has been installed).
This issue is half "bug report" in the sense that the principle of least surprise would have me reason that a cookie header set explicitly on a request would be honored when using a CookieJar, and half "question" in the sense that maybe this is actually intended behavior?
Here's a test case to reproduce what I'm noticing: https://github.com/nicktrav/okhttp/commit/1cc51f7c33e0d110e85e97cc51528685a6c1a565
The following is a naive patch I'd be happy to offer up, though this change in behavior might break existing clients, so I'm open to thoughts / ideas.
--- a/okhttp/src/main/java/okhttp3/internal/http/BridgeInterceptor.java
+++ b/okhttp/src/main/java/okhttp3/internal/http/BridgeInterceptor.java
@@ -82,7 +82,7 @@ public final class BridgeInterceptor implements Interceptor {
     }

     List<Cookie> cookies = cookieJar.loadForRequest(userRequest.url());
-    if (!cookies.isEmpty()) {
+    if (!cookies.isEmpty() && userRequest.header("Cookie") == null) {
       requestBuilder.header("Cookie", cookieHeader(cookies));
     }

Thanks!

We could union ’em. You’re allowed to have multiple Cookie headers. Want to submit a pull request?!

My understanding is that you can have multiple values in a single Cookie header (i.e. you can't have multiple Cookie headers, as per RFC 6265):

When the user agent generates an HTTP request, the user agent MUST
NOT attach more than one Cookie header

A union of the cookie values sounds reasonable! There's still the question of which cookie value is authoritative if the cookie value is in the CookieJar as well as set on the Request. Taking the value set on the Request would solve the issue in our case.
@yschimke - feel free to assign this one to me. I'll submit a patch in the next couple days.

I think @swankjesse is against "licking the cookie", If you are worried, then I suggest putting up a PR even if it's still WIP.  Not sure if there is some other process for square employees :)


Feature Request: AI-powered Pull Request analysis

Recently I started to look into the code review data our team generated through Azure DevOps Pull Requests (PR’s). While it was easy to get basic metrics like

Number of PRs created
Number of PRs reviewed
Number of PRs voted
Number of review threads created

It is difficult to analyze the content of the code review comments to address questions like “who are the leading contributors that provide thorough, constructive feedback in the PR threads?”, “what are the most frequently discussed coding issue types?” “Based on code review feedback, what are the recommended training programs for individual developers?”
I’d like to explore whether GenAI can help answer these questions with their reasoning and summarization capabilities.

I like this suggestion @msdotnetclr ! It seems to be a mix between extracting data analytics and asking questions in NLP over it. What do you think @Jade-Codes ?


[DO NOT MERGE] Auto PR to update dependencies of pilot

This PR will be merged automatically once checks are successful.
none

@istio-testing: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/pilot-presubmit.sh
d8328750d5e07f12cdf9a84ec0c93b87d3b5a4e9
link
/test pilot-presubmit

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


Why the training of ppo2 never stop ?

I use command you said in README.md, but it trainning very long time (nearly more than 3 hours and still train), and I can not find the model when I use -save_path

Hi @huangjiancong1 could you provide more details please? Which command did you run? Some of the models do take long time to train; a good sanity check is to try the same command with smaller number of timesteps (i.e. add --num_timesteps=10000), and see if things are working that way (natually, model usually won't be very good, but at least you'll be able to see if training terminates and the model is being saved)

Maybe,
python -m baselines.run --alg=ppo2 --env=Hopper-v2 --network=mlp --num_timesteps=2e7 --ent_coef=0.1 --num_hidden=32 --num_layers=3 --value_network=copy --save_path baselines/baselines/ppo2/models

What command is defined by --num_timesteps, where is the code?

--num_timesteps is parsed to be total_timesteps argument to the learn function (in your case, ppo2.learn),
here:
ppo2.learnhttps://github.com/openai/baselines/blob/1f99a562e3df9eaad96b59d44677006ef54ca1c2/baselines/run.py#L58
and here:
https://github.com/openai/baselines/blob/1f99a562e3df9eaad96b59d44677006ef54ca1c2/baselines/run.py#L78

Thanks, but there are some unknow error ouput when i set the timesteps larger than 1000000 playing cards, playing chess, solving a puzzle, and
playing Jenga


⚠ Bofrost.de has degraded performance

In 0a1a9c5, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1060 ms

Resolved: Bofrost.de performance has improved in 9108ad8.


Enable more configurations for ARCH=arm

Do these fail to boot?

I did not try. I figured omap2plus_defconfig and imx_v4_v5_defconfig probably wouldn't boot under the QEMU virt CPU and I forgot to test the LPAE config.

Okay, I have enabled the testing for the LPAE config but the other two configs will not work with boot-qemu.sh in its current form since we boot specific v5 and v6 machines.

I am going to merge this without explicit approval after our conversation offline. Please scream if you see anything wrong after the fact and I am more than happy to push subsequent fixups.


CentOS 6.8 freeradius won't start

Hi Muffy,
Freeradius refuses to start "radiusd -X" gives this error and exits:
rlm_sql (sql): Driver rlm_sql_mysql (module rlm_sql_mysql) loaded and linked
rlm_sql (sql): Attempting to connect to rd@localhost:/rd
rlm_sql (sql): starting 0
rlm_sql (sql): Attempting to connect rlm_sql_mysql #0
rlm_sql_mysql: Starting connect to MySQL server for #0
rlm_sql (sql): Connected new DB handle, #0
rlm_sql (sql): starting 1
rlm_sql (sql): Attempting to connect rlm_sql_mysql #1
rlm_sql_mysql: Starting connect to MySQL server for #1
rlm_sql (sql): Connected new DB handle, #1
rlm_sql (sql): starting 2
rlm_sql (sql): Attempting to connect rlm_sql_mysql #2
rlm_sql_mysql: Starting connect to MySQL server for #2
rlm_sql (sql): Connected new DB handle, #2
rlm_sql (sql): starting 3
rlm_sql (sql): Attempting to connect rlm_sql_mysql #3
rlm_sql_mysql: Starting connect to MySQL server for #3
rlm_sql (sql): Connected new DB handle, #3
rlm_sql (sql): starting 4
rlm_sql (sql): Attempting to connect rlm_sql_mysql #4
rlm_sql_mysql: Starting connect to MySQL server for #4
rlm_sql (sql): Connected new DB handle, #4
rlm_sql (sql): Processing generate_sql_clients
rlm_sql (sql) in generate_sql_clients: query is SELECT id, nasname, shortname, type, secret, server FROM nas
rlm_sql (sql): Reserving sql socket id: 4
rlm_sql (sql): Read entry nasname=<IP_ADDRESS>,shortname=localhost,secret=greatsecret
rlm_sql (sql): Adding client <IP_ADDRESS> (localhost, server=) to clients list
Failed to add duplicate client localhost
rlm_sql (sql): Released sql socket id: 4
rlm_sql (sql): Failed to add client <IP_ADDRESS> (localhost) to clients list.  Maybe there's a duplicate?
Failed to load clients from SQL.
rlm_sql (sql): Closing sqlsocket 4
rlm_sql (sql): Closing sqlsocket 3
rlm_sql (sql): Closing sqlsocket 2
rlm_sql (sql): Closing sqlsocket 1
rlm_sql (sql): Closing sqlsocket 0
/etc/raddb/sql.conf[22]: Instantiation failed for module "sql"
/etc/raddb/policy.conf[321]: Failed to find "sql" in the "modules" section.
/etc/raddb/policy.conf[321]: Failed to parse "sql" entry.
/etc/raddb/policy.conf[68]: Failed to parse "RADIUSdesk_user_check" entry.
/etc/raddb/policy.conf[389]: Failed to parse "RADIUSdesk_device_check" entry.
/etc/raddb/policy.conf[388]: Failed to parse "if" subsection.
/etc/raddb/sites-enabled/default[166]: Failed to parse "RADIUSdesk_main" entry.
/etc/raddb/sites-enabled/default[69]: Errors parsing authorize section.
Mysql is running fine, I can connect the "rd" database and view all tables too. Package "freeradius-mysql" is installed.
It looks like something to do with the freeradius config files.

Hmm...looks like there is a duplicate entry for the localhost/<IP_ADDRESS> NAS client. Can I have access to your instance and check. Need to be sure...

Sure you have the VPN access. The server is at <IP_ADDRESS>/rd

As suspected, there was another entry for the localhost NAS client. Editing and commenting out the entry in /etc/raddb/clients.conf fixed it.

Was it added by me? Now radiusd starts but there are some more errors.
Thu Aug 11 19:02:20 2016 : Info: rlm_sql_mysql: Starting connect to MySQL server for #4
Thu Aug 11 19:02:20 2016 : Info: rlm_sql (sql): Connected new DB handle, #4
Thu Aug 11 19:02:20 2016 : Info: Loaded virtual server
Thu Aug 11 19:02:20 2016 : Info: Loaded virtual server dynamic_client_server
Thu Aug 11 19:02:20 2016 : Info: Loaded virtual server inner-tunnel
Thu Aug 11 19:02:20 2016 : Info: Ready to process requests.
Thu Aug 11 19:05:27 2016 : Info:  ... adding new socket command file /var/run/radiusd/radiusd.sock
Thu Aug 11 19:05:27 2016 : Info:  ... adding new socket command file /var/run/radiusd/radiusd.sock
Thu Aug 11 19:05:27 2016 : Info:  ... adding new socket command file /var/run/radiusd/radiusd.sock
Thu Aug 11 19:05:27 2016 : Info:  ... adding new socket command file /var/run/radiusd/radiusd.sock
Thu Aug 11 19:07:02 2016 : Error: Syntax error.  Expected condition at
Thu Aug 11 19:07:03 2016 : Error: Syntax error.  Expected condition at
Thu Aug 11 19:07:03 2016 : Error: Syntax error.  Expected condition at
Thu Aug 11 19:07:13 2016 : Error: Syntax error.  Expected condition at
Also trying to login with a user does not work. The login page just remains as is.

Make sure you set the correct radius secret in the NAS section of RD.

NAS is localhost and the radius secret is correct. I get this error after saving changes in the default Dynamic Login Page.

Try the updated RADIUSDesk installer, that issue seems to have been fixed.


Fix tests with missing assertions

I was reading through the tests - which I found to be quite helpful in helping me understand Nuclear better - and I found some tests that weren't properly making an assertion, and one test that was asserting the right thing against the wrong value.

Thanks @mark-rushakoff!


Add a Dockerfile

Currently no CI build exists for GeyserConnect, which means the method of writing a Dockerfile that Geyser itself uses, that being of just downloading a jar from the build server, isn't currently possible. It is also generally good practise to contain the build and execution process inside the Dockerfile.
With that in mind I have included a simple Dockerfile which runs through the build and run processes.

I have now added a basic docker file for running GeyserConnect, your welcome to edit that to add the building stuff.

@jackmawer Any update ? :D


Issue #229 - Ensure context is shared when rollups differ by case only

See commit https://github.com/jondavis9898/declarative-lookup-rollup-summaries/commit/1633b4361687fcab0fd224bafcc141c5f2d35793 for tests that demonstrate issue.
See commit https://github.com/jondavis9898/declarative-lookup-rollup-summaries/commit/023ae41f0219e8c82f589556862a57d5fff5b4eb for proposed fix.
Fix includes a proactive vs. reactive change to update all "Describable" LookupRollupSummary__c fields to their Describe name.  With this in place, the "toLowerCase" on the contextKey is not really needed (avoiding it would save some CPU cycles) but is included for legacy support as it would take an update to existing rollups to trigger the field values to be updated with proper describe names.  Not sure its possible (not too familiar with managed package installs) but possibly a post-script to update field values on install of next release could be included and the change to RollupService.cls eliminated instead of incurring the toLowerCase processing.
As an example, the fix changes the result of test testLimitsAndContextsUsedMultipleAggregateRollupsDifferByCaseOnlySameCriteriaSameCase
from:
Queries - before:4 after:7
QueryRows - before:2 after:22
DMLRows - before:5 after:17
to:
Queries - before:4 after:6
QueryRows - before:2 after:13
DMLRows - before:5 after:17
Note that test cases ending in "DiffCase" and "OrderBy" will pass with current code base.  They are included for ensuring full test coverage but this PR does not effect their outcome.

Once again an awesome dedication to test coverage! :+1:


Add possibility to use api without ADMIN role

Hi,
I use your API using client credential flow, and my application do not have Administrator role and therefore I had to create a custom IAuthorizationHandler with verification of specific claims in order to allow the usage of API.
It would be great to find a prettier to do this. Do you have  any ideas?
public class SpecificApiAuthorizationHandler : IAuthorizationHandler
    {

        private readonly OpenIddictConfigurationOptions _openIdDictSettings;
        private readonly HashSet<string> _authorizedScopes;

        public SpecificApiAuthorizationHandler(
            IOptions<OpenIddictConfigurationOptions> openIdDictOptions)
        {
            _openIdDictSettings = (openIdDictOptions ??
                throw new ArgumentNullException(nameof(openIdDictOptions))).Value;

            _authorizedScopes = new HashSet<string>(_openIdDictSettings.AuthorizedApiScope, StringComparer.OrdinalIgnoreCase);
        }

        public Task HandleAsync(AuthorizationHandlerContext context)
        {

            //if (context.Resource is HttpContext httpContext)
            //{
            //    var endpoint = httpContext.GetEndpoint();
            //    var actionDescriptor = endpoint.Metadata.GetMetadata<ControllerActionDescriptor>();
            //}

            var pendingRequirements = context.PendingRequirements.ToList();

            foreach (var requirement in pendingRequirements)
            {
                if (requirement is RolesAuthorizationRequirement rolesAuthorizationRequirement)
                {
                    if (rolesAuthorizationRequirement.AllowedRoles.Contains(Roles.ADMINISTRATOR_ROLE))
                    {
                        if (IsAdmin(context.User, context.Resource) || HasClaimAuthorizedScope(context.User, context.Resource))
                        {
                            context.Succeed(rolesAuthorizationRequirement);
                        }
                    }
                }
            }
            return Task.CompletedTask;
        }

        private bool IsAdmin(ClaimsPrincipal user, object? resource)
        {
            return user.IsInRole(Roles.ADMINISTRATOR_ROLE);
        }

        private bool HasClaimAuthorizedScope(ClaimsPrincipal user, object? resource)
        {
            return user.HasClaim(c => c.Type == Claims.Scope
                && c.Issuer.Equals(_openIdDictSettings.Authority, StringComparison.OrdinalIgnoreCase)
                && c.Value.Split(" ").Any(s => _authorizedScopes.Contains(s)));

        }
    }

Hi there
Can you elaborate a bit more on your use case? The Aridka openiddict-sample basically addresses this issue.
Are you trying to get/push data to the admin endpoints openiddict-ui provides? Those are not intended to be used with / by clients. I built them mainly in order to expose minimalistic endpoints to create a small STS (Security Token Service) as the samples directory show-cases. That's why all of the endpoints are secured by the Admin-policy.
Hope that explains my intentions.

Ok now I got your idea...
What I can think of is to have some sort of opt-in possibility when setting up the policy here
    private static IServiceCollection AddAuthorizationServices(
      this IServiceCollection services
    )
    {
      services.AddAuthorization(options =>
      {
        options.AddPolicy(
          Policies.ADMIN_POLICY,
          policy => policy
            .RequireAuthenticatedUser()
            .RequireRole(Roles.ADMINISTRATOR_ROLE)
        );
      });

      return services;
    }

The idea would be that anyone can/requires to implement their own policy. It would also require that there are dedicated Policy-names (one for the openiddict-ui and one for the openiddict-ui-identity). This would mean the Authorize-attributes on the corresponding endpoint-controllers need to be adjusted with the appropriate Policy-name.
An integrator could than add an own policy when bootstrapping the application whit own "rules" (roles, claims, etc.).

Hi @thomasduft

Hi there
Can you elaborate a bit more on your use case? The Aridka openiddict-sample basically addresses this issue.
Are you trying to get/push data to the admin endpoints openiddict-ui provides? Those are not intended to be used with / by clients. I built them mainly in order to expose minimalistic endpoints to create a small STS (Security Token Service) as the samples directory show-cases. That's why all of the endpoints are secured by the Admin-policy.
Hope that explains my intentions.
I want to use my internal api that calls your api using client flow credentials (therefore there is no user with admin role) for creating and deleting applications (clients, btw there is something wrong with update endpoint [I will open a new issue on that matter when I have some time])  And I didn't want to duplicate your code to that.
I have just looked at Aridka example, the ResourceController shows the usage of IOpenIddictApplicationManager  ,  and with this I can manage applications on creating custom controller.
But if your api allows to do the same, I think it is better to allow the given usage.

Hi @thomasduft , I think that this proposal would work for me.
Thanks.


--api flag

This setup:

Does not include static content
Uses Poison(or Jason) for view instead of EEx.
Namespaces under API vs WWW

Might need and option --web-namespace
Need to look up an hello world for API's
def accept_json(request) do
    accept_type = Raxx.get_header(request, "accept", "application/json")
    if accept_type =~ "application/json" do
      {:ok, accept_type}
    else
      {:error, :bad}
    end
  end

closed by #94


Updated CVE-2019-5418 payload to WAF bypass

Related to:
https://blog.pentesterlab.com/cve-2019-5418-on-waf-bypass-and-caching-10e93f9a1981

Hi @legik !
Sorry for the delay, I was father for the first time :D
Can you send me a pull request with this profile, but with other file name?  then we have both, with bypass and without.
Thanks!

Hi @egarciamelia !
Moved the payload to the separate file. Please, check if smth went wrong in the original payload, don't know why it is showing "changed" status. The content is the same.
PS// Congratulations and best of luck.


Full identity system

(originally reported by @q3k in T934)
Implement the identity part of our cluster lifecycle design doc, augmented with user stories from https://github.com/monogon-dev/internal/issues/2.

For the HSM use case, we can fully delegate this to an external SSO mechanism (i.e. Azure OAuth).

Rolling this into #12 and making that the main identity tracking issue.


Remove Session::send_text and Session::send_bytes methods

These methods provide a strictly less flexible subset of the functionality provided by the MessageBuilder API with marginally less developer overhead.
The presence of a send_text also implies that a ContentType of text/plain will be exceedingly common, which I do not believe to be the case; it is likely that binary blobs, application/json, application/xml and similar will be used more frequently.

Completed in v0.8.0.


Adding documentation about how to install?

Your work is appreciated! I would like to try it out too, I tried it, but I couldn't figure out how I could install it on an Ubuntu system.
I tried the following:
cargo install vincenzo, sudo apt install vincenzo, and cloned this repository. Then in the src/vcz_ui I did the following: cargo build --locked --release --bin vcz_ui without result.
Perhaps it's an idea to add instructions how to build from source?
Thanks in advance!

Hello @ReneFroger !
To fix your problem, instead of compiling from "src/vcz_ui" it should be "src/vcz". This will probably work for you on Ubuntu and you can use the program normally.
Now let me explain why "vcz_ui" failed.
Since the Daemon is detached from the UI, that allows us to have 3 different binaries:

1 binary for the daemon "src/vcz_daemon"
1 binary for the UI "src/vcz_ui"
1 binary for both "src/vcz"

Having one binary for the daemon and another one for the UI is good for a lot of reasons such as:

being able to use the Daemon binary for bash scripts without needing the UI
downloading torrents in a remote machine (using the daemon binary) and periodically checking the status from another machine (using the UI binary).

About the documentation to compile from source, I will add this in the next release, thank you for the suggestion!
Right now we don't support downloading from package managers like AUR or apt, but I will try to add this in the future.


BUG-Charts properties documented with unprocessed Markdown markup

Description
Because the json file that contains the visual elements document contain some Markdown text, the documentation for some control properties is not rendered properly in the final doc.
How to reproduce
See for example the lon property of the chart control.
Expected behavior
No weird text in the chart properties table.

https://docs.taipy.io/en/latest/manuals/gui/viselements/chart/#properties
I suppose we have to move them from [text](url) to text</> ?


Different scrollbar break design with modal

When you have a scrollbar style applied to body, the modal will break the design.

[x] The issue is present in the latest release.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Current Behavior 😯
Design move always 16px.
Expected Behavior 🤔
Padding added should be the same size as the scrollbar.
Steps to Reproduce 🕹
Steps:

Open https://codesandbox.io/s/material-demo-forked-74db5
Click in Open Alert Dialog

Context 🔦
Trying to design a smaller scroll bar for a reading app.
Your Environment 🌎

`npx @material-ui/envinfo`
System:
    OS: Windows 10 10.0.19042
  Binaries:
    Node: 12.16.2 - C:\Program Files\nodejs\node.EXE
    Yarn: Not Found
    npm: 6.14.4 - C:\Program Files\nodejs\npm.CMD
  Browsers:
    Chrome: 88.0.4324.190
    Edge: Spartan (44.19041.423.0), Chromium (88.0.705.81)
  npmPackages:
    @material-ui/core: ^4.11.0 => 4.11.0
    @material-ui/icons: ^4.9.1 => 4.9.1
    @material-ui/lab: 4.0.0-alpha.56 => 4.0.0-alpha.56
    @material-ui/styles:  4.10.0
    @material-ui/system:  4.9.14
    @material-ui/types:  5.1.0
    @material-ui/utils:  4.9.12
    @types/react:  16.9.34
    react: ^16.13.1 => 16.13.1
    react-dom: ^16.13.1 => 16.13.1
    styled-components: ^5.2.1 => 5.2.1

I think mui could calculate the scrollbar size this way:
if (document.body.scrollHeight > window.innerHeight) {
    document.body.style = `padding-right: ${window.innerWidth - document.body.offsetWidth}px; overflow: hidden;`;
}

I am sorry, if I did something wrong here... I am new to JS and github.

@danieljaguiar Are you taking up this issue. If not @oliviertassinari, can I take this up as my first issue?

@oliviertassinari Can I work on this issue?

@oliviertassinari @Gautam-Arora24 claimed an issue but did not follow up for more than a week, please let me take it over

Sorry for the delay but I will like to continue to work on this issue. Most probably will send a PR till tonight.

@Gautam-Arora24 please continue to work on this issue

Sure 🙂

@sakura90 Sorry! If you want you can work on this issue.


Combine CNI install and repair container

Separation of install & repair makes monitoring and debugging unnecessarily complicated. We can combine these two containers into one.

This is done.


Revert "Configure solcover (Solidity Coverage)"

Reverts EYBlockchain/nightfall_3#1395

I reverted this change by mistake


@/Roboshield Move Form to payloadcms

Description
Added Roboform Component metadata to payloadcms.
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[x] New feature (non-breaking change which adds functionality)

Screenshots

Checklist:

[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

@m453h / @kelvinkipruto


Script Failure

Am getting the below error when I run the script in my pipeline
error: /home/agent/myagent2/_work/2/s/ImageScanSummaryAssessmentGate.ps1 : A parameter cannot be found that matches parameter name 'f'.
At /home/agent/myagent2/_work/_temp/azureclitaskscript1622733886994.ps1:3 char:1

. '/home/agent/myagent2/_work/2/s/ImageScanSummaryAssessmentGate.ps1' …

CategoryInfo          : InvalidArgument: (:) [ImageScanSummaryAssessmentGate.ps1], ParameterBindingException
FullyQualifiedErrorId : NamedParameterNotFound,ImageScanSummaryAssessmentGate.ps1
##[error]Script failed with exit code: 1

adding @wtomw

This is due to AzureDevops upgrading ARG extension version.
Created a fix https://github.com/Azure/Azure-Security-Center/pull/389 - once completed you can use it.

Issue closed since a solution was provided in PR #389


Applying lossless compression to unoptimized png files in images

Why:
This PR aims to solve #298.
What's being changed:
I optimized the size of PNGs in the assets/images by using lossless compression algorithm on them. The new size of the optimized PNGs in this PR vary between 49% and 93% of their original size. This PR reduces the total size of the images by ~2457 KB.
Check off the following:

[x] All of the tests are passing.
[ ] I have reviewed my changes in staging.
[ ] For content changes, I have reviewed the localization checklist
[ ] For content changes, I have reviewed the Content style guide for GitHub Docs.

If you haven't already, you can add yourself to the list of contributors by creating a new comment in this PR using these instructions. Thanks again! :sparkles:

Thanks, I'll do that. I don't really know what kind of contribution that is, though ? Is that content ? Tell me if you see somethiing more appropriate.
@all-contributors please add @Protectator for content

Indeed, this ain't normal : https://github.com/github/docs/blob/main/.all-contributorsrc#L331

I made a PR to repair the file first, I'll add myself after that : https://github.com/github/docs/pull/391

@all-contributors please add @Protectator for content


define guice dependency scope as provided everywhere

Sorry, can't do this as it will break all demos. The server-side message bus has a dependency on guice and therefore needs it at runtime. We need to investigate an alternative solution for your problem.


Increase angular-gravatar version

angular-gravatar version we have in beaker requires angular >=1.0.0 <1.4.0.
but we use angular 1.5.5
'gradle updatePackages' result:
Marinas-MacBook-Pro:core mnavasiolava$ gradle updatePackages
:npmInstall
:bowerInstall
bower angular#1.5.0             cached https://github.com/angular/bower-angular.git#1.5.0
bower angular#1.5.0           validate 1.5.0 against https://github.com/angular/bower-angular.git#1.5.0
bower angular#>=1.0.0 <1.4.0    cached https://github.com/angular/bower-angular.git#1.3.20
bower angular#>=1.0.0 <1.4.0  validate 1.3.20 against https://github.com/angular/bower-angular.git#>=1.0.0 <1.4.0
bower angular#>1.2.0            cached https://github.com/angular/bower-angular.git#1.5.5
bower angular#>1.2.0          validate 1.5.5 against https://github.com/angular/bower-angular.git#>1.2.0
bower angular#>=1.0.8           cached https://github.com/angular/bower-angular.git#1.5.5
bower angular#>=1.0.8         validate 1.5.5 against https://github.com/angular/bower-angular.git#>=1.0.8
bower angular#>=1.4.0           cached https://github.com/angular/bower-angular.git#1.5.5
bower angular#>=1.4.0         validate 1.5.5 against https://github.com/angular/bower-angular.git#>=1.4.0
bower angular#>=1.2.18          cached https://github.com/angular/bower-angular.git#1.5.5
bower angular#>=1.2.18        validate 1.5.5 against https://github.com/angular/bower-angular.git#>=1.2.18
bower                        ECONFLICT Unable to find suitable version for angular
:bowerInstall FAILED

FAILURE: Build failed with an exception.

not sure why i don't get the error but i see "Update dependencies to allow Angular 1.5" at https://github.com/wallin/angular-gravatar/releases/tag/0.4.2


Add CLI support for accepting Bech32 and hex-encoded verification keys as input

At the moment, cardano-cli commands only accept verification keys as "text envelope" formatted files.
This PR allows verification keys to be specified as both files and CLI arg strings containing other data formats such as Bech32 and hex.

bors r+


[CIS Benchmark] CRD chart for 1.0.400 is missing

We never updated the CRD chart version in https://github.com/rancher/charts/pull/1041.
Need to ensure that the CIS Benchmark chart is successfully deployable once this issue is resolved.

The fix works fine. Tested with:
rancher: 2.5.7
chart: https://git.rancher.io/charts (dev-v2.5)
cluster: Google GKE (v1.18.16-gke.2100)

I also scheduled scan with gke-profile and cis-1.6-profile which executed successfully (with mixed results since cluster is not hardened)

Reopening for a check on master-head in dev-v2.6 feature charts branch

Blocked on https://github.com/rancher/rancher/issues/31964

Closing this, tracking master-head validation on another bug


Comics FarSide: (extended description)

| 10 Funniest Far Side Comics Where Gary Larson Made Pirates Hilarious | June 30, 2024 |

#4184 implemented

#4173