Update PluggableAuth to 7.x

Name of extension
PluggableAuth
MediaWiki.org page (if it exists)
https://www.mediawiki.org/wiki/Extension:PluggableAuth
Link to the repo
https://github.com/wikimedia/mediawiki-extensions-PluggableAuth
Description
Canasta currently still uses PluggableAuth 6. We should probably get it updated to PluggableAuth 7.

@cicalese, courtesy pinging you in case you see any concerns to this. As a FYI, the latest version of Canasta is now at 8.1.

Wow, I didn't realize that Canasta's version of PluggableAuth was 6. That means that at least the JWTAuth and LDAPAuthentication2 extensions don't work within Canasta - no?

I don't foresee any issues with upgrading, and do agree that not upgrading could be problematic for compatibility with the plugins. Best to do an audit of the various versions.

I did an informal audit. There are six PluggableAuth-based extensions in Canasta, as far as I know: the authentication extensions JWTAuth, LDAPAuthentication2, OpenID Connect and WSOAuth; and the authorization extensions EmailAuthorization and LDAPAuthorization. (In addition to PluggableAuth itself, of course.) Of these, I believe the following three will need to be upgraded at the same time that PluggableAuth is upgraded to version 7.0:

OpenID Connect (currently at v. 6.2, needs to be v. 7.0.0)
LDAPAuthorization (currently at v. 1.1.0, needs to be v. 2.0.0)
WSOAuth (currently at v. 8.0.0, needs to be v. 9.0.0)

I think all the other extensions can stay as they are

This should probably be in another task, but I'll add it here now, since I haven't had a chance to verify: when we re-created mwstake.org using Canasta, we installed EmailAuthorization with PluggableAuth. However, the table that is supposed to be rendered by DataTables on the page Special:ConfigureEmailAuthorization is not appearing. DataTables is included as a submodule, so the extension requires git submodule update --init. I'm guessing that is not happening as part of the Canasta install? I ran the command inside the container, and it fixed the issue.

Oh, I didn't know DataTables was a dependency. The easiest solution for that would be to add DataTables to Email Authorization's composer.json file, under "require":
https://phabricator.wikimedia.org/diffusion/EEAU/browse/master/composer.json
Then I think just adding Email Authorization to composer.canasta.json would the trick:
https://github.com/CanastaWiki/Canasta/blob/master/_sources/configs/composer.canasta.json
Is that possible to do?

I don't recall why DataTables was added as a submodule rather than a composer dependency, but I agree that would potentially solve the problem.

It might be possible to have both - I don't know. The Widgets extension used to have the Smarty library as a Git submodule, but then made it a Composer dependency instead about 10 years ago, although there might have been some period of time when it was both; I'm not sure. Maybe the fear is that having both could cause problems if the admin accidentally calls both things. But at the very least, I would think it makes sense to add those few composer.json lines as a patch within Canasta.

I created a separate issue for the Email Authorization dependency problem, at #402.


Improving code documentation for functions in data_ingest.py

This links to improving code documentation in  https://github.com/ONSdigital/SDG_11.2.1/issues/158. I have separated this into certain parts of the documentation that could be improved or are currently missing. Some may be self explanatory (e.g. the arguments) that may not need documentation but I have put here in case.
Functions that need a docstring or updated documentation:

[ ] _import_extract_delete_zip
[ ] _csv_to_df
[ ] capture_region

Functions that may need an arguments section in docstring:

[ ] get_shp_file_name
[ ] get_oa_la_file_name
[ ] _get_stops_from_api
[ ] _get_latest_stop_file_date
[ ] _save_latest_stops_as_feather
[ ] get_stops_file
[ ] get_whole_nation_pop_df
[ ] get_whole_nation_pop_df
[ ] _pd_to_feather

Functions that may need returns:

[ ] delete_junk
[ ] _extract_zip
[ ] _grab_zip

I am looking to use the Napoleon extension in Sphinx which requires code documentation to be in a certain style/format: either Google or NumPy. I think we mostly follow Google but can all functions be checked to ensure they follow this format?
Example of code documentation in Google format:
def func(arg1, arg2):
    """Summary line.

    Extended description of function.

    Args:
        arg1 (int): Description of arg1
        arg2 (str): Description of arg2

    Returns:
        bool: Description of return value

    """
    return True

Three functions marked as may need return statement all return nothing so not adding one.

All functions checked as mentioned above - went through all functions and tried to make spacing / types / indentation etc consistent through docstrings.
A couple of points to raise:

in _csv_to_df the parameter persistent_exists defualts to None but think this should be True as the docstring states?

Actioned the above so can now close issue.


PartitionContext.PartitionId Data Type

Library name and version
Azure.Messaging.EventHubs v5.9.3
Query/Question
Is there a reason why the PartitionContext.PartitionId property is of type string instead of int?
My question applies specifically to the message consumer -- Every message must come through a partition, so I imagine the property will always be set to the int number of the partition in which the message was stored. Is that correct? Or is there a scenario where null, empty, or some other string value might come through that field?
I suppose the same question might be asked of the producer as well: I know the PartitionId can be specifically set, or left blank. Is there a reason why it's a string instead of a Nullable<int>?
Environment
N/A

Is there a reason why the PartitionContext.PartitionId property is of type string instead of int?

Yes - because the service itself defines a partition identifier as an arbitrary string.  That they currently resemble integers is an implementation detail that may change and not part of the service contract.  It is not safe for the SDK nor an application using it to assume that these are numeric nor that they will follow a defined pattern.

Thanks very much for the quick reply!


Publish as Deno package

Migrated to Node.js/NPM to have the broadest range of situations this package works in.


Add an alloc feature to control need for a global allocaror

When enabled, the alloc feature will include parts of the library that make use of a global allocator. This is enabled by default to keep the default library functionality consistent with previous releases.
Signed-off-by: Matt Spencer<EMAIL_ADDRESS>

Thanks for the PR.
I'll take a look at it tomorrow.


Numerical values wrongly filtered

Even though after some playing around I have reset the numerical filters to cover the whole range, some values god missed out

The same problem can be observed in categorical values as well, I will post the steps to get there in the next comment

add origin
add studio albums
filter some values in studio albums
add gender
adjust studio albums filter to cover the whole range

only the filtered subset of gender remains there...I think it might be because the gender is added to already filtered subset and most probably does not have all items

numerical filer does not cover the whole range - border value (30) is missing when going through the same scenario as in the previous comment

as far as what I tested this works now.


Update chart metrics-server to 3.12.0

This PR contains the following updates:

Package
Update
Change

metrics-server
minor
3.11.0 -> 3.12.0

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

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

This PR has been generated by Renovate Bot.

Edited/Blocked Notification
Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.
You can manually request rebase by checking the rebase/retry box above.
⚠ Warning: custom changes will be lost.


WIP: Upgrade default Checkstyle version to 8.15 for compatibility with Java 11

I bumped release to 8.17


Updating from 1.6.15 to 1.6.20 failed

I just ran "bin/gpm self-upgrade -y"
and got:
$  bin/gpm self-upgrade -y

GPM Releases Configuration: Stable

Grav v1.6.20 is now available [release date: Mon Feb  3 18:05:05 2020].
You are currently using v1.6.15.

Preparing to upgrade to v1.6.20..
  |- Downloading upgrade [3.91M]...   100%
  |- Installing upgrade...
In Folder.php line 393:

  [RuntimeException]

I ran it second time and got:
$  bin/gpm self-upgrade -y

Warning: require(B:\Dropbox\Ante\Programming\ServerRoot\projects\slomagic.com\vendor\composer/../../system/defines.php): failed to open stream: No such file or directory in B:\Dropbox\Ante\Programming\ServerRoot\projects\slomagic.com\vendor\composer\autoload_real.p
hp on line 67

Call Stack:
    0.2009     398768   1. {main}() B:\Dropbox\Ante\Programming\ServerRoot\projects\slomagic.com\bin\gpm:0
    0.2015     399872   2. require('B:\Dropbox\Ante\Programming\ServerRoot\projects\slomagic.com\vendor\autoload.php') B:\Dropbox\Ante\Programming\ServerRoot\projects\slomagic.com\bin\gpm:21
    0.2238     414184   3. ComposerAutoloaderInit3c504857f50693eae30a724a9742ef76::getLoader() B:\Dropbox\Ante\Programming\ServerRoot\projects\slomagic.com\vendor\autoload.php:7
    0.4051    1096928   4. composerRequire3c504857f50693eae30a724a9742ef76() B:\Dropbox\Ante\Programming\ServerRoot\projects\slomagic.com\vendor\composer\autoload_real.php:57

Fatal error: require(): Failed opening required 'B:\Dropbox\Ante\Programming\ServerRoot\projects\slomagic.com\vendor\composer/../../system/defines.php' (include_path='.;C:\php\pear') in B:\Dropbox\Ante\Programming\ServerRoot\projects\slomagic.com\vendor\composer\au
toload_real.php on line 67

Call Stack:
    0.2009     398768   1. {main}() B:\Dropbox\Ante\Programming\ServerRoot\projects\slomagic.com\bin\gpm:0
    0.2015     399872   2. require('B:\Dropbox\Ante\Programming\ServerRoot\projects\slomagic.com\vendor\autoload.php') B:\Dropbox\Ante\Programming\ServerRoot\projects\slomagic.com\bin\gpm:21
    0.2238     414184   3. ComposerAutoloaderInit3c504857f50693eae30a724a9742ef76::getLoader() B:\Dropbox\Ante\Programming\ServerRoot\projects\slomagic.com\vendor\autoload.php:7
    0.4051    1096928   4. composerRequire3c504857f50693eae30a724a9742ef76() B:\Dropbox\Ante\Programming\ServerRoot\projects\slomagic.com\vendor\composer\autoload_real.php:57

Looks like the upgrade failed in halfway.
I've seen this bug being reported a few times, but I have no idea what causes it. It would be great if someone had an environment where I could play with this bug as I have never seen it myself.

should I do a clean install?

On the live site, you can just manually update. But what I am interested in is to have a way to be able to debug this issue and figure out what causes it.

@mahagr I don't know if it helps but I managed to get the core updated but when running
bin/gpmm update -y it fails on DevTools
Preparing to install DevTools [v1.2.4]
|- Downloading package...   100%
|- Checking destination...  ok
|- Installing package...
In Folder.php line 407:
[RuntimeException]

tried to do a clean install ov devtools...fails again...
but then I removed all the supressing @'s in Folder.php->doDelete()
and installation worked. Hope it helps...

I don't know if it can help, but I just encountered a fairly similar warning when I try to upgrade on local environment, i.e.:
$ bin/gpm self-upgrade

Preparing to upgrade to v1.6.20..
  |- Downloading upgrade [3.91M]...   100%
  |- Installing upgrade...
In Folder.php line 427:

  [RuntimeException]

Maybe there is a problem with the permissions, but I couldn't find it.
Oddly, the site and the admin seem to be working properly despite this warning.

Try changing the last function to:
    /**
     * @param  string $folder
     * @param  bool   $include_target
     * @return bool
     * @internal
     */
    protected static function doDelete($folder, $include_target = true)
    {
        // Special case for symbolic links.
        if ($include_target && is_link($folder)) {
            return @unlink($folder);
        }

        // Go through all items in filesystem and recursively remove everything.
        $files = array_diff(scandir($folder, SCANDIR_SORT_NONE), array('.', '..'));
        foreach ($files as $file) {
            $path = "{$folder}/{$file}";
            if (!(is_dir($path) ? self::doDelete($path) : @unlink($path))) {
                return false;
            }
        }

        return $include_target ? @rmdir($folder) : true;
    }

It will not fix the issue, but it will likely point the file which cannot be deleted.

Seems to be same as #2670

@mahagr wrote :

Seems to be same as #2670

It is indeed possible (I also use Windows).
It remains to know whether this is also the case for @drnasin who opened this issue.

@gizmecano Please check out the code from above. If you change the method into that, it will hopefully tell what went wrong.

just did an update from 1.6.11 to 1.6.21. Changed the function as requested @mahagr but pdate went smoothly with no errors.

@mahagr I changed the function. Did an update. Core update (1.6.11 to 1.6.21) went ok. It died on Email update:
Preparing to install Email [v3.0.6]
  |- Downloading package...   100%.9%
  |- Checking destination...  ok
  |- Installing package...
In Folder.php line 407:

  [RuntimeException]

update [-f|--force] [-d|--destination [DESTINATION]] [-y|--all-yes] [-o|--overwrite] [-p|--plugins] [-t|--themes] [--] [<package>.
..]

UPDATE: I tried resinstalling Email plugin. First few times it died. Then it went through...

DId one more update which failed but there was non output so I added echo $path and when updating Email it failed and I got
Preparing to install Email [v3.0.6]
  |- Downloading package...   100%.8%
  |- Checking destination...  ok
  |- Installing package...  /tmp/Grav-5e5e657392e06/getgrav-grav-plugin-email-e8e2fea//vendor/symfony/polyfill-iconv/Resources/charset
/tmp/Grav-5e5e657392e06/getgrav-grav-plugin-email-e8e2fea//vendor/symfony/polyfill-iconv/Resources
/tmp/Grav-5e5e657392e06/getgrav-grav-plugin-email-e8e2fea/vendor/symfony/polyfill-iconv
/tmp/Grav-5e5e657392e06/getgrav-grav-plugin-email-e8e2fea/vendor/symfony
/tmp/Grav-5e5e657392e06/getgrav-grav-plugin-email-e8e2fea/vendor

Hope it helps

That does not really help me. It is not failing where I was thinking it was. More debugging needed. :)

Try this
    /**
     * @param  string $folder
     * @param  bool   $include_target
     * @return bool
     * @internal
     */
    protected static function doDelete($folder, $include_target = true)
    {
        // Special case for symbolic links.
        if ($include_target && is_link($folder)) {
            $result = @unlink($folder);
            if (!$result) {
                echo "Unlinking link $folder failed!\n";
            }
            return $result;
        }

        // Go through all items in filesystem and recursively remove everything.
        $files = array_diff(scandir($folder, SCANDIR_SORT_NONE), array('.', '..'));
        foreach ($files as $file) {
            $path = "{$folder}/{$file}";
            if (is_dir($path)) {
                if (!self::doDelete($path)) {
                    echo "Deleting folder $folder failed!\n";
                }
            } else{
                if (!unlink($path)) {
                    echo "Deleting file $folder failed!\n";
                }
            }
        }

        if ($include_target & @rmdir($folder)) {
            echo "Deleting target folder $folder failed!\n";
            return false;
        }

        return true;
    }

OK, did an update of another grav site (1.6.19). This one went with no problem. This exception is so random.
While I was installing youtube plugin I got
Preparing to install YouTube [v3.0.1]
  |- Downloading package...   100%
  |- Checking destination...  ok
  |- Installing package...  Deleting target folder B:/Dropbox/Ante/Programming/ServerRoot/projects/drustvo-rokus.local/tmp/Grav-5e5ec0ec48dbb/getgrav-grav-plugin-youtube-afb3dca/ failed!

In Folder.php line 407:

  [RuntimeException]

while clearing cache
Deleting target folder B:/Dropbox/Ante/Programming/ServerRoot/projects/drustvo-rokus.local/cache/doctrine/3a26d1fd failed!

Can you check the folder if there are hidden files or something else?

Directory is there but "ls -a" says it's completely empty.

That is completely odd, there should have been a file which prevented folder from being deleted.
I know that in Windows you cannot delete open files because of NTFS / FAT limitations. In Unix (Linux, OSX etc) you can delete open files as deleting just means removing one file descriptor (they can still access the deleted file). Maybe the issue is somehow related to that?

Hm, @gizmecano how did you do the update? where you using terminal window in phpstorm by any chance?

where you using terminal window in phpstorm by any chance?

The comment I posted earlier was about an update I made using the terminal integrated into Visual Studio Code, not that of PHPStorm, sorry.
For now, I haven't had time to test the tips given by @mahagr in order to update to the most recent version.

@gizmecano They were not tips, just some changes in order to track down what could be happening there.
I'm starting to think that this is some kind of file locking issue in Windows where you cannot delete files which are open either by Grav or in editor or file browser. If this is true, I don't think there's really any good way to fix the issue as it is a limitation in Windows.

@mahagr my thinking is that while deleting files ide (at least phpstorm) triggers re-indexing and this may cause locking of directories. As I said before I'm not even sure this is Grav issue but I did have a hunch gizmecano was using terminal built in in some ide...

They were not tips

My apologies for expressing myself incorrectly.
However, I think I understood the idea.

@gizmecano I meant that they will not to fix the issue, but allows me to track down what could be happening.
@drnasin Can you try if the issue happens if you do not have any application potentially locking the files?

@drnasin you probably can use the Handle utility from Sysinternals to check if any process has your files open/locked. See: https://docs.microsoft.com/en-us/sysinternals/downloads/handle

I have finally found some free time to test the changes @mahagr had proposed in order to track what could be happening.
This is what I get:
Preparing to upgrade to v1.6.25..
  |- Downloading upgrade [3.92M]...   100%
  |- Installing upgrade...    ok
  '- Success!

Fatal error: Uncaught Error: Class 'Grav\Console\Cli\ClearCacheCommand' not found in [path]\system\src\Grav\Console\ConsoleTrait.php:110
Stack trace:
#0 [path]\system\src\Grav\Console\Gpm\SelfupgradeCommand.php(176): Grav\Console\ConsoleCommand->clearCache(Array)
#1 [path]\system\src\Grav\Console\ConsoleCommand.php(30): Grav\Console\Gpm\SelfupgradeCommand->serve()
#2 [path]\vendor\symfony\console\Command\Command.php(255): Grav\Console\ConsoleCommand->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#3 [path]\vendor\symfony\console\Application.php(917): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#4 [path]\vendor\symfony\console\Application.php(269): Symfo in [path]\system\src\Grav\Console\ConsoleTrait.php on line 110

This time, nor the site or the admin interface are working properly after this update (even if it was announced as successfull) and all seems totally broken...

I have continued to look for a way to update my current installation (from 1.6.20 with these change in src/Grav/Common/Filesystem/Folder.php.
This time, I tested to manually upgrade to Grav 1.6.25 using the main admin panel button.
I got a popup warning about a missing system file or folder (but I didn't have time to capture it).
After refreshing the admin panel, I obtained a kind of blank page with only:

Please run: bin/grav install

So, I did:
$ bin/grav install
Preparing to install vendor dependencies...

Loading composer repositories with package information
Installing dependencies from lock file
Package operations: 45 installs, 0 updates, 0 removals

[skip the 45 items of the list]
Generating optimized autoload files

ERROR Missing .dependencies file in user/ folder
HINT Are you trying to install Grav? Grav is already installed. You need to run this command only if you download a skeleton from GitHub directly.

But, very strangely, after refreshing the page again, the admin panel seems to work correctly now, indicating that the running version is Grav v1.6.25...
I must admit that I don't understand the problem, nor even if my installation is now correctly up to date...
🤷♂

For the moment, I will consider that my project is up to date with the latest version 1.6.25, despite the upgrade issue with CLI mentioned above.
However, in anticipation of any future updates, I keep the file src/Grav/Common/Filesystem/Folder.php modified by @mahagr according to this comment.

I don't know how far this issue is resolved, but in order to switch to the recent version 1.6.26, I preferred (for maintenance reasons) to use the interface of the administration panel, and this time everything worked perfectly without any warning. Maybe i will try next time using CLI.

when all else fails you can just download the latest version from the website or github and just paste your user file into it

when all else fails you can just download the latest version from the website or github and just paste your user file into it

Indeed, this can be a solution.
But as @mahagr thought it could have come from the system (maybe because of hidden or locked files), I took the opportunity to check back this opened issue.


NPM package 12.0.4 tagged as latest

Description
Packages like Sitecore JSS have version 12.0.4 set as the latest version. Because we're using version 19, this is causing issues in our pipelines that are now detecting this as an outdated version.
Expected behavior
When running npm outdated on our solution, I expect version 19 to be the latest. As it is now, npm outdated suggests we downgrade to 12.0.4
Possible Fix
Tag version 19 as the latest version.

Also @sc-addypathania sorry for trying to reach you directly instead of this issue, on NPM your github username was stated as sc-adityapathania instead of sc-addypathania

The correct version is tagged again, thanks!


[Enhancement] Camera View Subtitle

It would be nice to record a subtitle directly into every frame of the videofile, means a callback with the image that is currently recorded and change it. I know I can put an overlay on the camera view but this is only visible for the user, it is not recorded into the video if you look at it later.

Hi there @TFreudi1 thanks for the suggestion. Is there any specific reason why you decided to ignore the template we have in place? That helps us a great deal in getting som more information and details on how you want to use it and what you'd like to see.
Also, do you mean the MediaElement? I don't really see how this would work for CameraView?

In want to have a text (lets say the GPS Position) as text written in every frame in the final MP4.
You get a picture from the camerasensor, than you put on the screen and in the file, an event PicFromSensorHasArrived(Image i) would be nice. I can than put some text on i (the image) and have that on the screen and in final video file. I know that is performance relevant because you have to wait until the eventhandler finished painting on the image.
See the picture of my Android/FFMpeg App. I put the GPS Text in an image that comes from the sensor, than I put it on the surface (preview screen of the mobile) and the ffmpeg lib writes it to a MP4 file. Very complex code and the ffmpeg libaries are platform independent and I know tht this is only one way to get what I need ( and many more users if you google arround )

Sorry ffpmpeg libs are a special problem because they are NOT platform independent!

On the screenshot:
Start = Start recording the video and than the coordinates shown in th epreview are also in the recorded videofile.

Thanks! However, we are no longer adding new features to Xamarin Community Toolkit, focusing on the .NET MAUI Community Toolkit.
Please open a New Feature Discussion to implement this feature in the .NET MAUI Community Toolkit.
I've posted more information about the Future Of Xamarin Community Toolkit here: https://devblogs.microsoft.com/xamarin/the-future-of-xamarin-community-toolkit/?WT.mc_id=mobile-0000-bramin


Script will break with newer versions of npm

See https://github.com/npm/npm/issues/11495
Affects "saving" of existing package list for re-install:
https://github.com/glenpike/npm-g_nosudo/blob/master/npm-g-nosudo.sh#L50

While a limited use case scenario, if you are using this for a vagrant setup and you are running it before installing any modules, this script will work for you.


Enhance the test coverage part-7 : dubbo-container module

Add unit test to dubbo-container  module

ok

This issue has been around for a while. What is the progress now? Please give me a feedback.

I  can try it

@lovepoem  i have finished it ,but commit failed

Now the github is not available , I think we should have a wait

@stoneapple , Is this pr ?  https://github.com/apache/incubator-dubbo/pull/2406

@lovepoem  yes #2406


Don't use goog.isString()

This removes a leftover of #4796 which was probably in development when that PR was merged.
Please review.

Looks good, please merge when Travis is happy.

Thanks Andreas, will do.


Revert " Merge branch 'release-1.0' into 'collab-gcp-identity' (#7305)"

Reverts #7305
Step 1 for https://github.com/istio/istio/issues/8009

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: kyessenov
If they are not already assigned, you can assign the PR to them by writing /assign @kyessenov in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@incfly: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
522a773e5c22546191f9e64e5902dfc7899cd374
link
/test istio-unit-tests

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.

@incfly: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
522a773e5c22546191f9e64e5902dfc7899cd374
link
/test istio-unit-tests

prow/istio-presubmit.sh
522a773e5c22546191f9e64e5902dfc7899cd374
link
/test istio-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.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: quanjielin
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: kyessenov
If they are not already assigned, you can assign the PR to them by writing /assign @kyessenov in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


WIP add support for stereo amp on kitra520

Signed-off-by: Carlo Maria Curinga<EMAIL_ADDRESS>

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

I'll close this PR for now. @curcuz open it if still needed.


Increased anti-bot security from c.AI

Following last night's maintenance, bots have started responding with "Sorry, character.ai has increased its securitry against bots. This feature will be unavailable indefinitely."
Will this project be updated to get around this or should c.AI-discord users just find alternative options?
Thanks.

I tried to install and use this today however despite using Ubuntu VIA WSL and ExpressVPN, I continue to get the "Response: Forbidden" error message.,

I tried to install and use this today however despite using Ubuntu VIA WSL and ExpressVPN, I continue to get the "Response: Forbidden" error message.,

#43


Removed Some Unnecessary Changes

@MinavKaria Hey, I removed some changes in the other file under contact us PR.


vapoursynth: 65 → 69

Description of changes

Updated src to latest upstream version,
adapted and simplified Nix plugin loader, and
reformatted and moved files to fit new contributing guidelines.

Upstream change log: https://github.com/vapoursynth/vapoursynth/blob/R69/ChangeLog
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Did you test it? I have been postponing updates intentionally because 66 was broken: https://github.com/NixOS/nixpkgs/pull/294451

Did you test it? I have been postponing updates intentionally because 66 was broken: #294451

I tested vspipe and vsedit both without any plugins and with the pkgs.ffms plugin. I shall test mpv, too.

mpv works fine as well when wrapped.

Result of nixpkgs-review pr 332199 run on x86_64-linux 1

10 packages built:

av1an
av1an-unwrapped
python311Packages.vapoursynth
python311Packages.vapoursynth.dist
python312Packages.vapoursynth
python312Packages.vapoursynth.dist
svp
vapoursynth
vapoursynth-editor
vapoursynth-mvtools

av1an appears to work as well.
svp builds and starts, but I have not performed any more extensive tests.


Typo in docstring for Rotation.from_euler

My issue is about a typo in Rotation.from_euler: https://github.com/scipy/scipy/blob/master/scipy/spatial/transform/rotation.py#L709
The docstring should read

Rotations in 3 dimensions can be represented by a sequence of 3

not

Rotations in 3 dimensions can be represented by a sequece of 3

Thanks for pointing it out, @agoose77!

@mkg33 thanks for fixing this!
A small hint for next time: in the commit message that fixes things (and/or the PR description), you want to put Closes gh-10984. Then when the PR gets merged, the issue gets auto-closed. If you close the issue by hand and we don't merge the PR for whatever reason, the bug report gets lost.
No need to make any changes now, since I'm going to merge your PR as soon as CI is green.

@rgommers Thanks, I'll keep that in mind! Oh, I thought that putting 'Closes #10984' was the right way. So much to learn :-)

# works too, but we try to use gh- because it's then clear it's a GitHub issue. We still have #xxxx references to Trac (our pre-GitHub bug tracker) floating around, and who knows - maybe in 10 years from now we won't be on GitHub anymore.

Makes perfect sense.


Update version from 0.0.144 to 0.0.145

This is an automated version-update on pyproject.toml.
The workflow was triggered by a succesfull pull request from branch:
With push event SHA of: ad5af1e3aa01fd7a08402bad00658f8a5649374a
This action is performed by the Github Action: publish.yml after every accepted pull request. When finished,
this will have published the latest patch of the Extractable codebase to Pypi so it can be pip installed.
DO NOT DO ANYTHING WITH THIS PULL REQUEST
DO NOT DO ANYTHING WITH THIS PULL REQUEST
it should resolve itself within 1 minute.
if its older than 5 minutes you may check the github workflow actions

updated version in pyproject.toml from 0.0.144 to 0.0.145


Fileshare refactor to devtools

/azp run python - storage - tests

😊 Please don't merge it until the devtool refactor pr get merged  https://github.com/Azure/azure-sdk-for-python/pull/8930
It was tough when new features which requires preprod account or stage account were added.


making grammar and stylistic changes

Making minor stylistic and grammar edits. Take of them what you will. Hope it helps.

Thanks!


Add tslint-import-group-ordering

For avoid conlicts in import section, lets use https://www.npmjs.com/package/tslint-import-group-ordering

[x] Add dev dependency tslint-import-group-ordering
[x] Set config to be similar to our convention (external libs, internal libs, internal dependencies)
[x] tslint --fix all projects

[Update] additional library tslint-import-group-ordering has been unnecessary, instead of them and vs setting "editor.codeActionsOnSave": {         "source.organizeImports": true     }, I apiled correct tslint rules


Disarm 1984

About the PR
Disarm fail chance is now modified by relative health, relative mass, and whether either party has the "slowed down" component.
Screenshots

Changelog

:cl: Rane

tweak: Disarm chance now scales with relative health, relative mass, and status effects. It's now a much, much worse tool to instantly win a fight you're losing.
tweak: You now need to use an empty hand to perform disarms.
add: Purpose-built single-handed melee weapons now have a disarm malus, making them much harder to disarm.

Reviews addressed

Is massMod work as intended? I tried get it inside my head and got wrong values.
Values from example:
Disarmer Mass: 120
Disarm Victim: 70
70/120 = 0.58~
0.58-1 = -0.42
-0.42/2 = -0.21
So basically disarmer gets extra 21% chance for disarm instead of 29% that was in example
And it also can be harder to disarm someone that slightly heavier that you. Like if you vice-versa masses from example, you will get 35% chance decrease instead of 21%
Line 122:
massMod = (((disarmedPhysics.FixturesMass / disarmerPhysics.FixturesMass - 1 ) / 2)); // Ex, you weigh 120, they weight 70, you get a 29% bonus


Validating 'email' not accepting<EMAIL_ADDRESS>

Adding the validation email but returns the invalid email when it has + sign in it.
Ex<EMAIL_ADDRESS>Returning error "The email must be a valid email address."

Thanks for posting, I will hopefully have a fix up tonight


Right-clicking filled Tanks with buckets only returns one filled bucket

When there is more than one bucket on hand and I right-click a Tank with, say, lava in it, the stack of buckets will turn into 1 lava bucket. The rest just disappear.
Using latest build on drone.io
You could do it like how other mods do it: don't replace the stack in hand, but instead just take one bucket and return a lava bucket (or anything else) in another inventory slot

How do you get a stack of filled buckets btw? Normally that is not possible. So no idea how you can even get this bug to reproduce?

 It is the other way around :-)

Fixed in next release


Testrunner breaks when an SVG is used.

similar to the yeoman Logo I wanted to add my logo:
const logo = require('../images/logo.svg');

that works perfectly fine. But when I try to run the tests:
ERROR in ./src/images/logo.svg
Module parse failed: /path/src/images/logo.svg Unexpected token (1:0)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected token (1:0)
  at Parser.pp$4.raise (/path/node_modules/acorn/dist/acorn.js:2221:15)
  at Parser.pp.unexpected (/path/node_modules/acorn/dist/acorn.js:603:10)
  at Parser.pp$3.parseExprAtom (/path/node_modules/acorn/dist/acorn.js:1822:12)
  at Parser.pp$3.parseExprSubscripts (/path/node_modules/acorn/dist/acorn.js:1715:21)
  at Parser.pp$3.parseMaybeUnary (/path/node_modules/acorn/dist/acorn.js:1692:19)
  at Parser.pp$3.parseExprOps (/path/node_modules/acorn/dist/acorn.js:1637:21)
  at Parser.pp$3.parseMaybeConditional (/path/node_modules/acorn/dist/acorn.js:1620:21)
  at Parser.pp$3.parseMaybeAssign (/path/node_modules/acorn/dist/acorn.js:1597:21)
  at Parser.pp$3.parseExpression (/path/node_modules/acorn/dist/acorn.js:1573:21)
  at Parser.pp$1.parseStatement (/path/node_modules/acorn/dist/acorn.js:727:47)
  at Parser.pp$1.parseTopLevel (/path/node_modules/acorn/dist/acorn.js:638:25)
  at Parser.parse (/path/node_modules/acorn/dist/acorn.js:516:17)
  at Object.parse (/path/node_modules/acorn/dist/acorn.js:3098:39)
  at Parser.parse (/path/node_modules/webpack/lib/Parser.js:902:15)
  at DependenciesBlock.<anonymous> (/path/node_modules/webpack/lib/NormalModule.js:104:16)
  at DependenciesBlock.onModuleBuild (/path/node_modules/webpack-core/lib/NormalModuleMixin.js:310:10)
@ ./src/components/SomeComponent.js 58:51-90

Any Idea?

BTW, when I rename the Image to logo.svg.png the error is gone, but the image does not work in the browser anymore.

Hmm, seems as if the test runner tries to interpret the svg. This may be related to the webpack config.
Will check it out and report back.

Any Ideas how I can tell the testrunner to ignore *.svg files? Or maybe a workaround inside the component when environment is test then ignore the image?

Alright, so I checked with the new release > 1.0.0 I do not have this problem. Seems this has been fixed in the newer version of the base generator. Maybe you could test it and report back?

Sorry I was on vacation. Thanks for looking into that, I will test with the newest version and reopen if problem still persists.

So upgrading was not so easily possible for me, so I will give 1.0 a try after starting a complete new Project.

I got also the error that webpack 2 is an unmet peer dependency when trying to set it up un a complete new folder.

So anyway: After some more searching i could fix the error with the SVG by adding the filetype to:
cfg/test.js:25


stm32h5: samples/drivers/can/counter/  test not working

Describe the bug
The Can counter  sample does not work on the board stm32h573i_dk
To Reproduce
Compile the  Can counter sample for the stm32h573i_dk platform using this command:
west build -p auto -b  stm32h573i_dk samples/drivers/can/counter/

Expected behavior
The sample should show this message : "Counter received: x"

.*** Booting Zephyr OS build v3.6.0-1359-g50542682df94 ***
Change LED filter ID: 0
Finished init.
Counter filter id: 28

uart:~$ Counter received: 0
Counter received: 1
Counter received: 2
Counter received: 3
Counter received: 4
Counter received: 5
Counter received: 6
Counter received: 7
Counter received: 8
Counter received: 9
Counter received: 10
Counter received: 11
Counter received: 12
Counter received: 13
Counter received: 14
Counter received: 15
Counter received: 16
Counter received: 17
Counter received: 18
Counter received: 19
Counter received: 20
Counter received: 21

Impact
The test is blocked, there is no  reception of the output "received counter: values" due to this commit: https://github.com/zephyrproject-rtos/zephyr/commit/caf4a2933896dedff02b478ca67944077d8aad5a :
The modification of  the APB1 bus clock to 120MHZ cause  FDCAN bus reception problem,  because I2C and  FDCAN are using the same bus clock and the FDCAN bus needs more then 120MHZ to work correctly.
Logs and console output
RTT log output:
*** Booting Zephyr OS build v3.6.0-1359-g50542682df94 ***
Change LED filter ID: 0
Finished init.
Counter filter id: 28

uart:~$

Environment :

OS:Linux
Toolchain  Zephyr SDK v3.6.0

I do think the issue is that APB1 has a frequency of 120MHz specifically, but that issue is that fdcan_clk(in stm32 terms) supplied via PLL1_Q is higher than APB1.
M_CAN requires that the host clock(APB1) is higher or equal to the CAN core clock.
So setting the PLL1_Q divider to 6 giving a can core clock of 80MHz should solve the issue and also result in good interoperability with other nodes.

I agree with what @str4t0m suggested. Afterwards, you can verify the timing using tests/drivers/can/timing.

@marwaiehm-st Can we close the issue, now that https://github.com/zephyrproject-rtos/zephyr/pull/70569 was merged ?


Panorama Tab: Loading a working config should auto-click the "calculate button"

After user has loaded a config file, the "calculate" feature should run automatically (no need to hit button). If there is a problem when running  "calculate" then the user should be notified

Fixed with @27008f8


Expose event and output mods in support of user-defined event handling

The Problem
Presently the event and output modules are fully private. This prevents users from implementing EventHandler because the event types are private.  The lack of access to the BasicOutput event handler implementation in the output module prevents ends users from building event handlers that both delegate to the standard default handler and their own functionality.
Motivating Use Case:
I would like to make an event handler in order to capture failures (and skips, and unimplemented bits) in order to determine the appropriate exit code for my test program. The exit code of the test program is critical for automating detection of test failures across multiple test suites. Ideally, I would like to do this event-based failure capturing with a custom EventHandler implementation which also does not have to re-implement all of the pretty output printing already available.
Proposed Solution
As implemented here, simply make the event and output modules public.
Alternatives
Rather than making the entire modules public, it could be possible to pub use events::{TargetedType, OtherTargetedType} in lib.rs to limit the precise types exposed.  Since pretty much every single type in those modules is essential to the API, there's likely little value in going to the trouble of calling them out individually.

If I understand, this would be to enable you to implement an output to be used by the cucumber builder, and you would basically record a value within that instance that could be then used for an exit code later?
If so, sounds reasonable. My only concern is that those APIs are in a state of flux, but then so is the entire library really as it's 0.x.
If you could add some documentation to the mods that would become public before making them public I would be very happy to merge this PR. (And I know documentation is lacking in general, hence my request for help here 😂)

Yep, that's the goal.
Sure, I can add some documentation, too.

Thanks a million!


VersionedDataset hash when strategy is copy-zip is non-deterministic

The MD5 hash produced when a VersionedDataset is published using the copy-zip strategy is non-deterministic across different Python sessions (this is why test_same_datasets_have_same_hashes and other tests did not catch the bug). The hash itself is reproducible on the static raw.tar.bz2 file, so either bzip2 or tar is introducing non-determinism. We want to make sure that the same dataset always gets the same hash.

The timestamps on the raw dataset (generated once per test session) are causing the issue. See this resource.

Thanks to botan for a workaround for this issue. Initial results show that this methodology will provide reproducible hashing; incorporating into source.


[rm nixpkgs] enable feature flag (assuming tests pass)

Summary
We can now update all the examples, and run the tests!
Assuming this passes, I think we can enable the feature.
How was it tested?
ran devbox run update-examples.
testscripts should pass

Current dependencies on/for this PR:

main

PR #1442

PR #1443   👈

This comment was auto-generated by Graphite.

@ipince I rebased. Should be ready for review now.


User cannot be logged out

Pressing sign-out button only redirect to login page - you cannot reconnect with another user, as soon as you press 'connect with google' you are automatically logged in with previous user - it does not ask for any credentials.

Workaround :
Firefox - Shift + F9 / si se sterge de la Local Storage - tokenul se sterge

Chrome - Ctrl + Shift + I - in tabul Application de la Local Storage se da clear la tokenul salvat

Cannot be reproduced anymore on:
QA ENV - https://cercetare-qa.integritatepebune.ro/
Backend version: {"v":"0.9.0"}
Frontend version: unknown - Merge pull request https://github.com/it-pebune/ani-research-web/pull/80


Do not store build artifacts in git repo

Can't we have make publish build all the required artifacts before submitting to npm repository instead of having those checked into git repository?

fixed by https://github.com/uber/jaeger-client-node/pull/39https://github.com/uber/jaeger-client-node/pull/39


Stage 3: Add the datepicker pop out and allow dates to be selected

@DavidTytheridge @adamlawson please review - tests will be added as stage 3b but wanted a review for when i get back off holiday - in the unlikely event your both have no changes, please merge pull request @DavidTytheridge

All looks good to me

@DavidTytheridge review please

Fine be me.


Unable to get body from APIGatewayV2HTTPEvent for Spring Cloud Function in AWS Lambda behind a ALB

Describe the bug

spring-cloud-starter-function-web v3.2.6
spring-cloud-function-adapter-aws v3.2.6

I have a Spring Cloud Function application setup in AWS Lambda as a docker image. One of the function is defined as Function<APIGatewayV2HTTPEvent, APIGatewayV2HTTPResponse>. The lambda is behind an Application Load Balancer (ALB).
When I send request to the load balancer, it is successfully routed to the function and is correctly invoked, however, the provided "body" is always removed before it is sent to my Function.
Here are some of the logs from AWS cloudwatch:
Incoming JSON Event: {""requestContext"":{""elb"":{""targetGroupArn"":""arn:aws:elasticloadbalancing:eu-west-1:<removed>:targetgroup/function-1-tg/<removed>""}},""httpMethod"":""POST"",""path"":""/function-1"",""queryStringParameters"":{},""headers"":{""accept"":""*/*"",""accept-encoding"":""gzip, deflate, br"",""connection"":""keep-alive"",""content-length"":""20"",""content-type"":""application/json"",""host"":""alb-test-<removed>.eu-west-1.elb.amazonaws.com"",""postman-token"":""<removed>"",""spring.cloud.function.definition"":""greeter"",""user-agent"":""PostmanRuntime/7.29.2"",""x-amzn-trace-id"":""Root=<removed>"",""x-forwarded-port"":""80"",""x-forwarded-proto"":""http""},""body"":""{
    \""body\"": \""hi\""
}"",""isBase64Encoded"":false}

The above shows the request message has a body - "body": "hi"
When I log the APIGatewayV2HTTPEvent that's provided to my cloud function, I get the below output:
incoming request: APIGatewayV2HTTPEvent(version=null, routeKey=null, rawPath=null, rawQueryString=null, cookies=null, headers=null, queryStringParameters={}, pathParameters=null, stageVariables=null, body=null, isBase64Encoded=false, requestContext=APIGatewayV2HTTPEvent.RequestContext(routeKey=null, accountId=null, stage=null, apiId=null, domainName=null, domainPrefix=null, time=null, timeEpoch=0, http=null, authorizer=null, requestId=null))

In the above, the payload has a null body. I looked through the AWSLambdaUtils and noticed the body is removed here and a new MessageBuilder is returned, however I'm unsure whether this piece is actually hit or working correctly.
I've tested with multiple different input types to the function (string, Map<String, Object>, Message) and all results are the same. I've also tested this through the AWS console by sending an api-gateway-aws-proxy test event and the same thing happens.
Sample
Here's the sample function:
package sample.springcloudfunction.functions;

import com.amazonaws.services.lambda.runtime.events.APIGatewayV2HTTPEvent;
import com.amazonaws.services.lambda.runtime.events.APIGatewayV2HTTPResponse;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;

import java.util.Map;
import java.util.function.Function;

@Component
public class Greeter implements Function<APIGatewayV2HTTPEvent, APIGatewayV2HTTPResponse> {
    private static final Logger LOG = LoggerFactory.getLogger(Greeter.class);

    @Override
    public APIGatewayV2HTTPResponse apply(final APIGatewayV2HTTPEvent event) {
        LOG.info("incoming request: {}", event);
        final var body = event.getBody();
        LOG.info("Greeting: {}", body);
        return APIGatewayV2HTTPResponse.builder()
                .withStatusCode(200)
                .withIsBase64Encoded(false)
                .withHeaders(Map.of(
                        "Content-Type", "application/json"
                ))
                .withBody("Hello " + body + ", welcome to Spring Cloud Functions!")
                .build();
    }
}

I've attached a zip of a sample project as well as cloudwatch event logs.

spring-cloud-function-sample.zip

Thanks, under which repository is the snapshot available?

@beacon-robertbreedt it's here - https://repo.spring.io/snapshot

Ok, so I've done some testing and here's my results:
Greeter: Function<APIGatewayV2HTTPEvent, APIGatewayV2HTTPResponse>

headers and body from API request is correctly passed to function
function result returns correctly as APIGatewayV2HTTPResponse object with full details
API response returns with different headers than ones set in the APIGatewayV2HTTPResponse object

response body has property headers with Content-Type: application/json in it
response headers has Content-Type: application/octet-stream
is this an issue? idk

Code
package sample.springcloudfunction.functions;

import com.amazonaws.services.lambda.runtime.events.APIGatewayV2HTTPEvent;
import com.amazonaws.services.lambda.runtime.events.APIGatewayV2HTTPResponse;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.SneakyThrows;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;

import java.util.Map;
import java.util.function.Function;

@Component
public class Greeter implements Function<APIGatewayV2HTTPEvent, APIGatewayV2HTTPResponse> {
    private static final Logger LOG = LoggerFactory.getLogger(Greeter.class);

    private final TypeReference<String> VALUE_TYPE_REF = new TypeReference<>() {
    };
    private final ObjectMapper objectMapper = new ObjectMapper();

    @SneakyThrows
    @Override
    public APIGatewayV2HTTPResponse apply(APIGatewayV2HTTPEvent event) {
        LOG.info("incoming request: {}", event);
        var body = event.getBody();
        var input = objectMapper.readValue(body, VALUE_TYPE_REF);
        var result = run(input);
        final var response = APIGatewayV2HTTPResponse.builder()
                .withStatusCode(200)
                .withIsBase64Encoded(false)
                .withHeaders(Map.of(
                        "Content-Type", "application/json"
                ))
                .withBody(objectMapper.writeValueAsString(result))
                .build();
        LOG.info("outgoing response: {}", response);
        return response;
    }

    public String run(final String input) {
        LOG.info("incoming input: {}", input);
        var result = "Hello " + input + ", welcome to Spring Cloud Functions!";
        LOG.info("outgoing result: {}", result);
        return result;
    }
}

Greeter with body: Function<APIGatewayV2HTTPEvent, APIGatewayV2HTTPResponse>

same results as above, works as expected

Code
package sample.springcloudfunction.functions;

import com.amazonaws.services.lambda.runtime.events.APIGatewayV2HTTPEvent;
import com.amazonaws.services.lambda.runtime.events.APIGatewayV2HTTPResponse;
import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.SneakyThrows;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
import sample.springcloudfunction.models.Input;
import sample.springcloudfunction.models.Output;

import java.util.Map;
import java.util.function.Function;

@Component
public class Greeter implements Function<APIGatewayV2HTTPEvent, APIGatewayV2HTTPResponse> {
    private static final Logger LOG = LoggerFactory.getLogger(Greeter.class);
    private final ObjectMapper objectMapper = new ObjectMapper();

    @SneakyThrows
    @Override
    public APIGatewayV2HTTPResponse apply(APIGatewayV2HTTPEvent event) {
        LOG.info("incoming request: {}", event);
        var body = event.getBody();
        var input = objectMapper.readValue(body, Input.class);
        var result = run(input);
        final var response = APIGatewayV2HTTPResponse.builder()
                .withStatusCode(200)
                .withIsBase64Encoded(false)
                .withHeaders(Map.of(
                        "Content-Type", "application/json"
                ))
                .withBody(objectMapper.writeValueAsString(result))
                .build();
        LOG.info("outgoing response: {}", response);
        return response;
    }

    public Output run(final Input input) {
        LOG.info("incoming input: {}", input);
        var message = "Hello " + input + ", welcome to Spring Cloud Functions!";
        var result = new Output();
        result.setMessage(message);
        LOG.info("outgoing result: {}", result);
        return result;
    }
}

package sample.springcloudfunction.models;

import lombok.*;
import lombok.extern.jackson.Jacksonized;

@Jacksonized
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Input {
    private String name;
}

package sample.springcloudfunction.models;

import lombok.*;
import lombok.extern.jackson.Jacksonized;

@Jacksonized
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Output {
    private String message;
}

String Greeter: Function<String, String>

API request is passed as json encoded string to function

i.e. {"requestContext":{"elb":{"targetGroupArn":"arn:aws:elasticloadbalancing:eu-west-1::targetgroup/function-1-tg/"}},"httpMethod":"GET","path":"/function-1","queryStringParameters":{},"headers":{"accept":"/","accept-encoding":"gzip, deflate, br","connection":"keep-alive","content-length":"8","content-type":"application/json","host":"alb-test-.eu-west-1.elb.amazonaws.com","postman-token":"","spring.cloud.function.definition":"greeter","user-agent":"PostmanRuntime/7.29.2","x-amzn-trace-id":"Root=","x-forwarded-port":"80","x-forwarded-proto":"http"},"body":"\"Robert\"","isBase64Encoded":false}

API response returns String back as result

Code
package sample.springcloudfunction.functions;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;

import java.util.function.Function;

@Component
public class Greeter implements Function<String, String> {
    private static final Logger LOG = LoggerFactory.getLogger(Greeter.class);

    @Override
    public String apply(final String input) {
        LOG.info("incoming input: {}", input);
        var message = "Hello " + input + ", welcome to Spring Cloud Functions!";
        LOG.info("outgoing result: {}", message);
        return message;
    }
}

Object Greeter: Function<Input, Output>

empty Input object (Input(name=null)) is passed to function as it does not dynamically convert to this from the APIGatewayV2HTTPEvent's body
API response is sent back correctly as Output class

Code
package sample.springcloudfunction.functions;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;

import java.util.function.Function;

@Component
public class Greeter implements Function<String, String> {
    private static final Logger LOG = LoggerFactory.getLogger(Greeter.class);

    @Override
    public String apply(final String input) {
        LOG.info("incoming input: {}", input);
        var message = "Hello " + input + ", welcome to Spring Cloud Functions!";
        LOG.info("outgoing result: {}", message);
        return message;
    }
}

Olegz (asking on a thread that is still open),
I noticed that the AWSCompanionAutoConfiguration in not included in the spring.factories file. How is AWSTypesMessageConverter ever suppose to make its way into the path of execution?

Look at the start() method of FunctionInvoker
ConfigurableApplicationContext context = ApplicationContextInitializer.class.isAssignableFrom(startClass)
				? FunctionalSpringApplication.run(new Class[] {startClass, AWSCompanionAutoConfiguration.class}, properties)
						: SpringApplication.run(new Class[] {startClass, AWSCompanionAutoConfiguration.class}, properties);

That said, i should probably rename it to just AWSCompanionConfiguration  as I can now understand your confusion.

@olegz when can we expect the next release with the fixes above?

next week or the week after

@beacon-robertbreedt while I am still looking I am also trying to figure out if you believe there is still an issue. It's a little inconclusive from your report - the first scenario where you say returns correctly as APIGatewayV2HTTPResponse object with full details and than response body has property headers with Content-Type: application/json in it response headers has Content-Type: application/octet-stream.
Can you please clarify?

Sure, so if the output of a function is APIGatewayV2HTTPResponse, it seems to double wrap the response if the request is determined to be from an API gateway/LB. It's best shown with screenshots.
Request and via LB from Postman:

Response headers: Content-Type is application/json

From AWS console, using the exact same request as above ^ retrieved from logs:

Response in AWS console:

first object's headers show application/json

Looks like the function's APIGatewayV2HTTPResponse is wrapped within a APIGatewayV2HTTPResponse in the console, but I'm not sure if this is an issue. If the request originates through the LB, it'll consume the first APIGatewayV2HTTPResponse as that's what it expects and forward the "body" content, which is a json encoded APIGatewayV2HTTPResponse string. This is likely where the application/octet-stream is coming from, AWS's LB itself.
I can easily work around this by specifying the output of a function to some object/class. Screenshots for that:
Postman:

response headers also show application/octet-stream
AWS Console:

headers show application/json

So this isn't an issue with s.c.f, but found the test result interesting and worth sharing.

I am wondering on the last report for the Function<Input, Output> test if it's possible to somehow determine/deserialise the object from the APIGatewayV2HTTPEvent body. Possibly not as it'd probably need a lot of conditional checks and added logic to determine what type it needs to deserialise into and the format of the provided data based on the Content-Type headers.

FunctionInvoker

FunctionInvoker works fine for normal java lambda functions, but what about native java lambda solutions. The FunctionInvoker is not run and instead its just CustomRuntimeInitializer > CustomRuntimeEventLoop. As you know the current solutions is doing message transformations in the AWSLambdaUtils, so how would the 4.x code base call AWSTypesMessageConverter when run in a custom runtime?

I just had a discussion with some of the AWS engineers and it all comes down to the fact that you are using AWS type that do not match the type of the request you are doing. For example if you are using LB then you would have to be mapping it to ApplicationLoadBalancerRequestEvent, and if plain gateway, then APIGatewayV2HTTPEvent.
Now. . . that does sound as very inconvenient thing to do and solution for that as you already pointed out is to use POJO or Spring Message if you interested not only in the payload but also a metadata (i.e., headers) that comes with the request.
Anyway, i'll close this as the original issue is addressed. Feel free to raise a new one if you still believe there is a problem.

@olegz any update on when 3.2.7 will be released?


The fields require_login and require_reset in eval set are not properly assigned

It seems that all 812 examples in test.raw.json have require_login set to true and require_reset set to false, is this on purpose? is there a plan to change that?

Hi @eyalis-google, sorry for any confusion, please disregard that field. It's legacy. Please reset environments after each evaluation round for reproducibility.


OCPBUGS-46595: CRD upgrade existing CR validation fix (#3442)

manual fix of failed automation from #917 going to release-4.14.

fixed to pass map[string]interface instead of unstructured.Unstructured

We started seeing some issues with folks who had spurious CRD incompatibility claims when updating operators.  It is a failure in OLM code which validates existing CRs against incoming CRDs, recently updated in #3387.
This manifested in InstallPlan .status.Message something like:
retrying execution due to error: error validating existing CRs against new CRD's schema for \"pgadmins.postgres-operator.crunchydata.com\": error validating postgres-operator.crunchydata.com/v1beta1, Kind=PGAdmin \"openshift-operators/example-pgadmin\": updated validation is too restrictive: [].spec.tolerations[0].tolerationSeconds: Invalid value: \"number\": spec.tolerations[0].tolerationSeconds in body must be of type integer: \"number\"

The difference between the predecessor calling convention and the one introduced in #3387 appears to be that one is a pointer and the other is concrete.
old
unstructured.Unstructured{Object:map[string]interface...

new
&unstructured.Unstructured{Object:map[string]interface...

so it would seem that merely type-asserting the value and de-referencing it would yield the appropriate result, but it appears instead that it effectively disables all CR vs CRD reconciliation checks (evidenced by the fact that the unit tests multiply fail).
But k8s already dereferences pointer parameters here during validation.  So that isn't it.
And the validate.ValidateCustomResource interface is terrifyingly permissive in allowing customResource as interface{} here. So we cannot derive guidance from it.
Taking a page from k8s' use of the validation API, which uses unstructured.UnstructuredContent() to convert the unstructured.Unstructured into a map[string]interface{} here then we achieve the desired results.

adding tests

Upstream-repository: operator-lifecycle-manager
Upstream-commit: 1cfabfe5a495fe3cb276fce93255cdfed7d60783

/jira cherry-pick OCPBUGS-46479

/label backport-risk-assessed

/jira refresh

test PASS. detail https://issues.redhat.com/browse/OCPBUGS-46595
/label qe-approved
/label cherry-pick-approved
/lgtm

/cherrypick release-4.13


broken links in README

Description
unlinked references to "[rustc]" can be found in the first paragraph of the book
Acceptance Criteria

[ ] fix broken links in book

Chaz I closed your PR as I shared with you privately.  We can discuss it later.


Led custom colors

Issues
We want to be able to support custom colors so that everyone can easily tweaks them.
Description
Added 2 color pairs in the settings. One pair for regular items volume, One pair for game mode.
Types of changes

[ ] Bugfix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation Update (if none of the other choices apply)

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[x] Requested changes are in a branch
[x] Compiled and tested requested changes on target hardware (PC, device)
[ ] Updated the documentation, if necessary
[ ] Updated the LICENSES file, if necessary
[x] Reviewed the guidelines for contributing to this repository

Further comments
Now we need to implement color selection in the settings of the desktop app.

@t3knomanzer It's working fine over here, let me know what you think.


Note about production users

Similar to the one for kubernetes-on-aws.
It will help users and maintainers have another aspect of confidence in their project and tooling, while allowing maintainers to try to contact prod users in case it seems necessary(like before making a breaking change, scope-creep, etc.

I’m fine with this if people want to volunteer their info, but I’m not sure if there are other implications.
There should certainly be no sponsorship or anything like that, no money changing hands.

no money changing hands

I have never heard of this great word! Yes, that's definitely what I expect for a healthy OSS object 👍

Information from my side, which can be used if anyone is in the mood for a PR.

Link: https://www.ricardo.ch/
Description: ricardo.ch is the largest online marketplace in Switzerland - the well-known service provides customers the best possible e-commerce experience since 1999.
Logo: https://style-6a38.kxcdn.com/12.2.4/lib/images/ric-logo__core.svg

@mumoshu This one can possibly be closed.

@cmeury Yes. Thanks for reminding me 👍


Incompatibility with Greaseweazle 1.0

https://cowlark.com/fluxengine/doc/greaseweazle.html
Trying to get it to work with my Greaseweazle v4 on COM5
I have Greaseweazle V4 board, latest 1.0 firmware and  v0.35 GW
D:\fluxengine>fluxengine read ibm -o ibm.img --usb.greaseweazle=/dev/com5
Error: no such config field 'greaseweazle' in 'usb.greaseweazle'
D:\fluxengine>fluxengine test bandwidth
Using GreaseWeazle GW135195184205400002401705 on COM5
Writing data: transferred 10485760 bytes from PC -> device in 10013 ms (1022 kb/s)
Reading data: Error: command returned garbage (0x1 != 0x12 with status 0x0)
D:\fluxengine>
D:\fluxengine>fluxengine read ibm -o ibm.img
Using GreaseWeazle GW135195184205400002401705 on COM5
Error: only GreaseWeazle firmware versions 22 and 24 or above are currently supported, but you have version 0. Please file a bug.
D:\gw-tools>gw info
Host Tools: v0.35
Device:
Port:     COM5
Model:    V4
Firmware: v1.0
Serial:   GW135195184205400002401705
USB Rate: Full Speed (12 Mbit/s)
Peter

I've just upgraded my GreaseWeazle to firmware 1.0 and, unfortunately, it works absolutely fine for me.
Did you try this again? I've seen situations where the communications protocol gets out of sync and unplugging and reinserting it (forcing the board to reboot) fixes things.

I've just upgraded my GreaseWeazle to firmware 1.0 and, unfortunately, it works absolutely fine for me.
Did you try this again? I've seen situations where the communications protocol gets out of sync and unplugging and reinserting it (forcing the board to reboot) fixes things.

David,
which file should I be using for Windows 10 & Windows 7 both 64 bit?
The windows branch says that it is 265 comits behind the master.
Peter

David,
which file should I be using for Windows 10 & Windows 7 both 64 bit?
The windows branch says that it is 265 comits behind the master.
Peter

I have tried again reloading every thing still no luck.
PC works happily with Greaseweazle v0.35 as per screen o/p reading 720k msdos disk but fails on Fluxengine to recognize the firmware as valid or to test bandwidth
Peter
duff-flux.docx

I have tried again reloading every thing still no luck.
PC works happily with Greaseweazle v0.35 as per screen o/p reading 720k msdos disk but fails on Fluxengine to recognize the firmware as valid or to test bandwidth
Peter
duff-flux.docx

You want the current development build here: https://github.com/davidgiven/fluxengine/releases/tag/dev That's got an .exe which will work on any 64-bit Windows system.

You want the current development build here: https://github.com/davidgiven/fluxengine/releases/tag/dev That's got an .exe which will work on any 64-bit Windows system.

Thanks
That seems to work having also replaced the floppy cable with IBM PC twisted cable.
How do I configure Fluxengine to use Greaseweazle in Shugart rather than IBM-PC drive mode?
Greaseweazle does it by using A: & B: for IBM-PC drive references and DS0 & 1 for Shugart.
As most of the systems I am interested in are not PCs I tend to have drives setup as Shugart and use straight cables. I had to pull one off a PC.
BTW where do I find documentation on writing profiles and creating Flux image files?
Peter

Thanks
That seems to work having also replaced the floppy cable with IBM PC twisted cable.
How do I configure Fluxengine to use Greaseweazle in Shugart rather than IBM-PC drive mode?
Greaseweazle does it by using A: & B: for IBM-PC drive references and DS0 & 1 for Shugart.
As most of the systems I am interested in are not PCs I tend to have drives setup as Shugart and use straight cables. I had to pull one off a PC.
BTW where do I find documentation on writing profiles and creating Flux image files?
Peter


Use Exolve and Exet in GitHub Desktop

I may be being dumb here, but I can keep both apps up to date using GitHub Desktop but it seems I need to have all the html files for both in one folder for exet to work, otherwise it throws an error that it can't define exolve.
Could the define exolve step maybe check for the exolve files in a sibling folder if they aren't in the same folder?

Closing, but feel free to reopen.


ipv6_enabled attribute ignored by iptables

Cookbook version
2.5.2
Chef-client version
12.15.19
Platform Details
CentOS 5.11
Scenario:
Manage iptables via Firewall cookbook with IPv6 disabled on the host.
Steps to Reproduce:
1.) Create a new CentOS VM.
2.) Edit /etc/modprobe.conf and add the following lines to disable ipv6
alias ipv6 off
options ipv6 disable=1

3.) In the recipe implementing the firewall config, set the ipv6_enabled attribute to false.  From attribute file:
override['firewall']['ipv6_enabled'] = false
4.) Set the recipe to modify iptables.
5.) Run chef-client on the client
Expected Result:
I expect a clean run the same as I get with IPv6 enabled.
Actual Result:
The IPv6 code runs anyway causing the recipe to fail when ip6tables can't load due to missing kernel modules.  Here are the errors:

yum_package[iptables-ipv6] action install (up to date)
* file[create empty /etc/sysconfig/iptables] action create (skipped due to not_if)
* service[iptables] action enable (up to date)
* service[iptables] action start (up to date)
* file[create empty /etc/sysconfig/ip6tables] action create (skipped due to not_if)
* service[ip6tables] action enable (up to date)
* service[ip6tables] action start
       ================================================================================
       Error executing action `start` on resource 'service[ip6tables]'
       ================================================================================

       Mixlib::ShellOut::ShellCommandFailed
       ------------------------------------
       Expected process to exit with [0], but received '1'
       ---- Begin output of /sbin/service ip6tables start ----
       STDOUT: Unloading ip6tables modules: [  OK  ]
       Applying ip6tables firewall rules: [FAILED]
       STDERR: ip6tables-restore v1.3.5: ip6tables-restore: unable to initializetable 'filter'

       Error occurred at line: 2
       Try `ip6tables-restore -h' or 'ip6tables-restore --help' for more information.
       ---- End output of /sbin/service ip6tables start ----
       Ran /sbin/service ip6tables start returned 1

       Resource Declaration:
       ---------------------
       # In /tmp/kitchen/cache/cookbooks/firewall/libraries/provider_firewall_iptables.rb

        52:           service svc do
        53:             action [:enable, :start]
        54:           end
        55:         end

       Compiled Resource:
       ------------------
       # Declared in /tmp/kitchen/cache/cookbooks/firewall/libraries/provider_firewall_iptables.rb:52:in `block (3 levels) in <class:FirewallIptables>'

       service("ip6tables") do
         action [:enable, :start]
         supports {:restart=>nil, :reload=>nil, :status=>nil}
         retries 0
         retry_delay 2
         default_guard_interpreter :default
         service_name "ip6tables"
         enabled true
         pattern "ip6tables"
         declared_type :service
         cookbook_name "ETS_Roles"
       end

       Platform:
       ---------
       x86_64-linux

   Running handlers:
   [2016-10-20T23:59:45+00:00] ERROR: Running exception handlers
   Running handlers complete
   [2016-10-20T23:59:45+00:00] ERROR: Exception handlers complete
   Chef Client failed. 4 resources updated in 06 seconds
   [2016-10-20T23:59:45+00:00] FATAL: Stacktrace dumped to /tmp/kitchen/cache/chef-stacktrace.out
   [2016-10-20T23:59:45+00:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
   [2016-10-20T23:59:45+00:00] FATAL: Mixlib::ShellOut::ShellCommandFailed: service[ip6tables] (/tmp/kitchen/cache/cookbooks/firewall/libraries/provider_firewall_iptables.rb line 52) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '1'
   ---- Begin output of /sbin/service ip6tables start ----
   STDOUT: Unloading ip6tables modules: [  OK  ]
   Applying ip6tables firewall rules: [FAILED]
   STDERR: ip6tables-restore v1.3.5: ip6tables-restore: unable to initializetable 'filter'

   Error occurred at line: 2
   Try `ip6tables-restore -h' or 'ip6tables-restore --help' for more information.
   ---- End output of /sbin/service ip6tables start ----
   Ran /sbin/service ip6tables start returned 1

Hi there -- I can't seem to reproduce this. You mention that you 'Set the recipe to modify iptables.' -- I'm not sure what you mean by that. Are you using a recipe as well somewhere, beyond firewall::default?
Specifically, I only get * yum_package[iptables] action install (up to date) -- I don't see yum_package[iptables-ipv6] action install (up to date) anywhere. If you had a recipe or something I could clone down, I'd be glad to do so.
Also, I'd note that CentOS 5.x is on the verge of being unsupported, as newer VirtualBox doesn't seem to support the kernel for it anymore. This is going to significantly hamstring me from troubleshooting this.

I agree with the problem of supporting the aging CentOS 5.x systems.    I'm still hac
I just didn't include the initial output from the client run.  Here's the output from above the error:
`Recipe: ETS_Roles::Linux_Baseline

firewall[default] action install

install iptables and enable/start services

yum_package[iptables] action install (up to date)
yum_package[iptables-ipv6] action install (up to date)
file[create empty /etc/sysconfig/iptables] action create (skipped due to not_if)
service[iptables] action enable (up to date)
service[iptables] action start (up to date)
file[create empty /etc/sysconfig/ip6tables] action create (skipped due to not_if)
service[ip6tables] action enable (up to date)
service[ip6tables] action start
`
As you can see, there is the confirmation of the installation iptables-ipv6 and the service launch triggering the error.

This should help reproduce the issue:
From the cookbook's attribute file:
override['firewall']['allow_ssh'] = false override['firewall']['ipv6_enabled'] = false override['firewall']['firewalld']['permanent'] = true default['ETS_Roles']['openPorts'] = []
From the recipe file:
`node.default['ETS_Roles']['openPorts'].push(80)
node.default['ETS_Roles']['openPorts'].push(443)
firewall 'default' do
enabled true
end
Allow loopback traffic
firewall_rule "Allow loopback" do
command :allow
interface "lo"
protocol :none
end
Allow DNS traffic
firewall_rule "udp DNS" do
command :allow
protocol :udp
source_port 53
end
Allow established sessions
firewall_rule "Allow established TCP" do
protocol :none
command :allow
stateful [:related, :established]
end
Setup default firewall rules
if not node['ETS_Roles']['openPorts'].empty?
ports = node['ETS_Roles']['openPorts']
firewall_rule "open any ports #{ports}" do
command :allow
port ports
protocol :tcp
end
end
`

As a followup, the behavior looks to be the same testing on CentOS 6.x (kitchen testing version 6.8).  Despite setting
override['firewall']['ipv6_enabled'] = false
when it comes time to write the firewall rules and launch iptables, the IPv6 versions are included. If I disable IPv6 in the kernel, I get the same failure mode.

Okay, so I think I see what's happening. In firewall::default, we're doing this:
firewall 'default' do
  ipv6_enabled node['firewall']['ipv6_enabled']
  action :install
end

That's the only place where node['firewall']['ipv6_enabled'] matters. If you're using the firewall resource directly, you need to set the ipv6_enabled attribute directly.
When you do the following, you're not disabling ipv6:
firewall 'default' do
    enabled true
end

Node attributes only affect the firewall::default recipe; they don't reach into the resources and providers and set values.

Excellent.  Thanks for the clarification.


See, if token already was resolved

As participant
I want to see if my token was already used
to be able to see the number of outstanding votes without beeing confused if I already voted or not.
AC:
GIVEN I click on the deep link in the email and open the vote
WHEN I load the page
THEN I would like to see the phrase "your token was already resolved" instead of the voting options.

As of now, the user will see 'this token is invalid', or a similar error message after clicking 'vote'.
We delete tokens when they have been used to cast a vote - that would have to change for this.
@markus2342: what's your opinion?

We can check if a token is valid the same way we check if the token is valid when the user presses the 'vote' button.
Currently we're just passing through the token in the GET request to the token input field.
We could parse it in this step, so we can implement the feature without the need to change the token delete logic.

@Praiodan please test and close

Looks good enough. Closed.


surfiniaburger

Please remove the comments. They are not needed.

done.

@surfiniaburger Please check why the vercel production is failing.


Cannot disconnect on ios/macos

I added two buttons on each scanned item, connect and disconnect. On iOS, you can connect successfully, but you can't disconnect.
                        ElevatedButton(
                          onPressed: () {
                            print('connect...');
                            connect(id: s.id);
                          },
                          child: const Text('connect'),
                        ),
                        ElevatedButton(
                          onPressed: () {
                            print('disconnect...');
                            disconnect(id: s.id);
                          },
                          child: const Text('disconnect'),
                        ),

why?

I can with confidence say: I don't know
I've never tested it on iOS yet.
Do you use the frb2 branch? Because it's the one I am (half) actively developing on.
I will make it the main branch once frb 2.0 stabilizes.

Yes, I'm on frb2 branch.


change line to remove ambiguity

I had to checkout the one from the origin repo, redo the edits and then do another commit.

Thanks, @synchrophoto !


@conda-forge-admin, please add user @Didymograptus

Additional comment:
No response

Hi! This is the friendly automated conda-forge-webservice.
I just wanted to let you know that I added user @Didymograptus in conda-forge/python-ags4-feedstock#5.


[Docs]: multi-line input and auto-resize textarea

Is there an existing issue for this?

[X] I have searched the existing issues

Engineering Ticket Link
https://github.com/appsmithorg/appsmith/pull/19141
Release Date
16-01-22
Release Number
1.9.5
First Draft
No response
Loom video
No response
Discord/slack/intercom Link if needed
No response
PRD
No response
Test plan/cases
No response
Use cases or user requests
No response

@somangshu - Is this ready for the doc team?

I dont think so @jnikhila
cc @ankurrsinghal can you please link the doc PR here and move this to user education pod's backlog

@somangshu - I've updated the ticket with details and added it to Use cases or user requests section in description. Please review. Once happy please add 'Ready for Doc team' label and we can take it ahead.


ensure ledger is open for any submission to it

Signed-off-by: sklump<EMAIL_ADDRESS>

Codecov Report

Merging #561 into master will decrease coverage by 0.01%.
The diff coverage is 92.59%.

@@            Coverage Diff             @@
##           master     #561      +/-   ##
==========================================
- Coverage   96.76%   96.74%   -0.02%
==========================================
  Files         240      240
  Lines       12727    12733       +6
==========================================
+ Hits        12315    12319       +4
- Misses        412      414       +2


Error training ObjectDetection on Azure

System Information (please complete the following information):

Model Builder Version <IP_ADDRESS>2602
Visual Studio Version 17.8.0

Describe the bug

Training an ObjectDetection model on Azure, I receive this error (tried multiple times on different days):

Training has failed. Please go to Azure portal to see more details.
at AzureML.AutoMLRunMonitoringImages.d__1.MoveNext() in //src/Microsoft.ML.ModelBuilder.AutoMLService/RemoteAutoML/AutoMLRunMonitoringImages.cs:line 126
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at AzureML.AutoMLRunnerImages.d__26.MoveNext() in //src/Microsoft.ML.ModelBuilder.AutoMLService/RemoteAutoML/AutoMLRunnerImages.cs:line 215
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.ML.ModelBuilder.AutoMLService.Experiments.AzureImageClassificationExperiment.d__14.MoveNext() in //src/Microsoft.ML.ModelBuilder.AutoMLService/Experiments/AzureImageClassificationExperiment.cs:line 60
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.ML.ModelBuilder.AutoMLEngine.d__21.MoveNext() in //src/Microsoft.ML.ModelBuilder.AutoMLService/AutoMLEngineService/AutoMLEngine.cs:line 169
Encountered an internal AutoML Image error. Error Message/Code: Potential temporary hardware failure - please resubmit the run. If that does not solve the problem, please file a support ticket for further investigation.. Traceback:   File "utils.py", line 348, in wrapper
return func(*args, **kwargs)
File "runner.py", line 126, in run
utils.launch_training_with_retries(
File "utils.py", line 1558, in wrapper
retry = func(*args, **kwargs)
File "utils.py", line 1592, in launch_training_with_retries
distributed_utils.launch_single_or_distributed_training(
File "distributed_utils.py", line 418, in launch_single_or_distributed_training
train_worker_fn(0, settings, *additional_train_worker_fn_args)
File "utils.py", line 348, in wrapper
return func(*args, **kwargs)
File "runner.py", line 264, in train_worker
model_wrapper = detection.setup_model(model_name=model_name,
File "detection.py", line 77, in setup_model
model_wrapper.to_device(device)
File "base_model_wrapper.py", line 367, in to_device
self.model.to(device)
File "module.py", line 989, in to
return self._apply(convert)
File "module.py", line 641, in _apply
module._apply(fn)
File "module.py", line 641, in _apply
module._apply(fn)
File "module.py", line 641, in _apply
module._apply(fn)
File "module.py", line 664, in _apply
param_applied = fn(param)
File "module.py", line 987, in convert
return t.to(device, dtype if t.is_floating_point() or t.is_complex() else None, non_blocking)
. Additional information: CUDA error: all CUDA-capable devices are busy or unavailable
CUDA kernel errors might be asynchronously reported at some other API call,so the stacktrace below might be incorrect.
For debugging consider passing CUDA_LAUNCH_BLOCKING=1..
To Reproduce
I annotated a series of images with VOTT, a year ago.
I trained a model with an older version of VS and AutoML that produced a working ONNX model.
Now I tried to train again with a more recent version of VS and AutoML, starting from scratch: console project, add ML model... choose ObjectDetection...
Expected behavior
The job to terminate without errors.

Seems to be a hardware issue, maybe try remove the AML workspace/compute and start over?

Any updates?


[Fix] attempt to stabilize the Logged Into OpenShift test

Tests.Jupyterhub.Test.Logged Into OpenShift test sometimes fails with the following error:
TimeoutException: Message: script timeout
  (Session info: headless chrome=118.0.5993.70)
Stacktrace:
 # 0 0x55c8c7a8e463 <unknown>
 # 1 0x55c8c7693166 <unknown>
 # 2 0x55c8c770f477 <unknown>
 # 3 0x55c8c76f7d82 <unknown>
 # 4 0x55c8c770ea60 <unknown>
 # 5 0x55c8c76f7b43 <unknown>
 # 6 0x55c8c76cad71 <unknown>
 # 7 0x55c8c76cc262 <unknown>
 # 8 0x55c8c7a6550b <unknown>
 # 9 0x55c8c7a6843e <unknown>
 # 10 0x55c8c7a67f49 <unknown>
 # 11 0x55c8c7a688d5 <unknown>
 # 12 0x55c8c7a6e817 <unknown>
 # 13 0x55c8c7a68c25 <unknown>
 # 14 0x55c8c7a4373b <unknown>
 # 15 0x55c8c7a80428 <unknown>
 # 16 0x55c8c7a80608 <unknown>
 # 17 0x55c8c7a8da1f <unknown>
 # 18 0x7efc3cca4802 start_thread

When waiting on //*[@aria-label='Application launcher']/button to be enabled.
This commit is a desperade attempt to stabilize such failure since I wasn't able to reproduce this issue locally.

CI: rhods-ci-pr-test/2185

@jstourac I'm not convinced this change would help stabilize the test you're targeting from the title of the PR.
What I wanted to try was to add a Run Keyword And Continue On Failure/Run Keyword And Warn On Failure/Run Keyword And Ignore Failure here: https://github.com/red-hat-data-services/ods-ci/blob/master/ods_ci/tests/Tests/500__jupyterhub/test.robot#L24
Then we'd do a second check after this line: https://github.com/red-hat-data-services/ods-ci/blob/master/ods_ci/tests/Tests/500__jupyterhub/test.robot#L31; if we were successful in clicking the element and moving to the dashboard then nothing else should happen, otherwise we would do an explicit Fail to not lose the problem hidden/ignored on line 24.
Granted, this would mean that L24 might still fail on the webdriver itself, but at the very least we wouldn't have the noise in the test report - I've tried multiple times to investigate this specific problem and never found a "real" fix for it unfortunately.

Thank you, Luca, for looking into it! Yeah, I'm also not convinced that this change will fix the test in question. But still this seemed to me that such wait is missing there before the eventual tour is skipped.
Regarding your proposal - okay, I agree with you that this will solve the noise in the test results. Even though, I don't like that much because it's moving the actual test into a different test :slightly_smiling_face: but I won't block it if it will work though.
Btw - when you say you tried to investigate this already few times - are you able to reproduce this locally on demand?

But still this seemed to me that such wait is missing there before the eventual tour is skipped.

Fair enough, I don't think I've ever seen the tour skip keyword fail in any context but better safe than sorry!

Even though, I don't like that much because it's moving the actual test into a different test 🙂 but I won't block it if it will work though.

Yes, I'm not loving it as a solution either, but I haven't been able to come up with anything better atm

Btw - when you say you tried to investigate this already few times - are you able to reproduce this locally on demand?

Unfortunately not, I can only see it fail through Jenkins at random times, so I have no reproducer which contributes to the difficulty in squashing the bug once and for all


KYLIN-4609 setenv.sh add zgc config for big memory

Pull Request Test Coverage Report for Build 6085

0 of 0   changed or added relevant lines in 0 files are covered.
5 unchanged lines in 2 files lost coverage.
Overall coverage increased (+0.002%) to 27.977%

Files with Coverage Reduction
New Missed Lines
%

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

core-cube/src/main/java/org/apache/kylin/cube/inmemcubing/MemDiskStore.java
3
78.42%

Totals

Change from base Build 6065:
0.002%

Covered Lines:
26111

Relevant Lines:
93331

💛  - Coveralls


add mock as a supported dialect so that we can do unit tests using sequelize-mock

just closing this because i realized how dumb it was.
i did however add this to the mocked sequelize instance to get it to run
sequelize.getDialect = () => 'postgres';


dovecot + pigeonhole: 2.3.17 -> <IP_ADDRESS>

Motivation for this change
upstream bugfix releases
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

21.05 is still on 2.3.16 so if we really want to backport, we'd need to backport the bump to 2.3.17 first


Immediate handles in two different manifests should have differing ids.

While working on https://github.com/PolymerLabs/arcs/pull/1219/files we find that with two Game posts shared to the feed, both of which have an embedded recipe whose manifest includes a store, the second fails to load with a duplicate id as manifest::store0. The two handles have differing values and we need to have each available for their corresponding recipe.
@shans thought perhaps following session bits in arc.js, manifest could generate a root id that includes a session and immediate handles base their id off of that.
Uncaught (in promise) Error: apiChannelMappingId manifest::store0 already in use
    at assert (assert-web.js:11)
    at ThingMapper.createMappingForThing (api-channel.js:40)
    at PECOuterPort.(:9119/arcs/shell/apps/web/anonymous function) [as DefineHandle] (http://localhost:9119/arcs/runtime/api-channel.js:238:50)
    at handles.forEach.handle (outer-PEC.js:165)
    at Map.forEach (<anonymous>)
    at OuterPEC.instantiate (outer-PEC.js:163)
    at Arc._instantiateParticle (arc.js:255)
    at particles.forEach.recipeParticle (arc.js:388)
    at Array.forEach (<anonymous>)
    at Arc.instantiate (arc.js:388)

Just FYI I've started on this.

Current status: such handles do now have different ids if the values differ, after https://github.com/PolymerLabs/arcs/pull/1266 and https://github.com/PolymerLabs/arcs/pull/1286.
There is still work needed to not report an error for a duplicate id for read-only stores with the same values, so I'll revise this issue summary accordingly.


Add HTTP local rate limiter

Commit Message: New HTTP local rate limiter filter.
Additional Description:
This upstreams the internal version of this filter that has been used
at Pinterest in Production for the last ~5 months.
Risk Level: Low, new filter.
Testing: Unit tests added, has been in prod at Pinterest for months.
Docs Changes: added.
Release Notes: added.
Fixes #10813
Signed-off-by: Raul Gutierrez Segales<EMAIL_ADDRESS>

@mattklein123 alright, most feedback should be in place. I also moved the token bucket related code to a common place.
However, two things are left to be done:

wire up the L4 local rate limit filter to use the common code
tests for the common code

I'll follow-up with these once we are happy with everything else,
to keep the PR from growing -- WDYT?

I'll follow-up with these once we are happy with everything else,
to keep the PR from growing -- WDYT?

I think it's fine to just have it all be done as part of this PR, or if you like, how about just doing another PR where we move the existing common code to common and use it in the existing filter, and then rebase this PR on that?

I'll follow-up with these once we are happy with everything else,
to keep the PR from growing -- WDYT?

I think it's fine to just have it all be done as part of this PR, or if you like, how about just doing another PR where we move the existing common code to common and use it in the existing filter, and then rebase this PR on that?

Sorry I meant I'll add them to this PR, just wanted to wait for you to do another pass and then I'll do that. Either way if you don't mind.

Sure I can take another pass tomorrow.

Oops, forgot the new code would trigger coverage issues. Will wrap up this tomorrow.

Check format please?
/wait

@mattklein123 sorry, fixed.


Add CompatHelper

This is a reminder to add the CompatHelper: https://github.com/bcbi/CompatHelper.jl. We have to make sure to set it up so that the PRs it makes can run the tests and documentation building.

Added in ab8b6f11050c5374c5af21e9851d140b7ddfd085


Change OpenAPI generator under the hood

Hi,
First of all I want to thank you for creating this great lib, it saved me a lot of hours of development.
I just wanted to ask if you considered swapping the OpenAPI generator under the hood, or if there is any way it can be done in the client implementation. Reason is, my API is using the discriminator mapping feature and currently the typescript generator does not support it (https://github.com/ferdikoomen/openapi-typescript-codegen/issues/998#issuecomment-1090726557)
I was looking at https://github.com/OpenAPITools/openapi-generator-cli and they seem to have it.
Thanks for your help

@dani-z I think it's likely possible to switch the OpenAPI generator under the hood.
At the moment, there are other OpenAPI generator libraries available, so I recommend considering those as well. They might support discriminator mapping.

openapi-codegen
Orval

It seems that these libraries also support custom hook generation for Tanstack Query.
You can see more community projects for Tanstack Query here.

@7nohe, thanks for the recommendations, I will definitely check them out.

@dani-z we have changed the underlying client to @hey-api/openapi-ts.
I am unsure if the library handles your use case, but they are in active development.
An issue created there, if they do not support it, may be helpful.

Thanks @seriouslag I had a look at @hey-api in the past, they do indeed seem to be way more active. I guess you could close this issue or make it as a Discussion if you use those.
Ideally there will be a configurable way to use what ever generator under the hood, but I am unsure of how complex that could be.

Thanks @seriouslag I had a look at @hey-api in the past, they do indeed seem to be way more active. I guess you could close this issue or make it as a Discussion if you use those.
Ideally there will be a configurable way to use what ever generator under the hood, but I am unsure of how complex that could be.

That code will add complexity but that abstraction would be great so we could change generators if needed.
I am not opposed to it being added and if you are up for the task to try, we can collaborate on it.
Personally I feel we should try and enhance @hey-api/openapi-ts as they are responsive and listen to requests.