How-to: Authenticate a user with two-factor authentication

Publish a guide on How-to: Authenticate a user with two-factor authentication
Related gh-499

@jgrandja Hello. I would like to work on this issue. But This is my first time contributing to an open-source project. Therefore, I need some guidance. Could you please give me more information about this issue?

Thanks for your interest @HarunSMetin.
We're still early in writing the reference documentation and have a few things we need to iron out as far as the format goes. Our plan is to release the initial version in 0.3.0 and then will likely open things up to external contributions at that point.

Hello, we are looking into supporting two-factor authentication; this guide would be of great help. Any ideas when this would be available? Thanks

@sjohnr This is great! The sample is a lot more useful than the how-to guide. Thank you for the quick response.

Hi @schepuri-bisc, I'm glad you have interest in this topic. I do too. However, it's not at the top of the list at the moment, as it's not currently the most up-voted.
I built a sample some time ago that I will eventually use to build this how-to guide. Take a look at this branch. It is based on the mfa sample in spring-security-samples, and I added a nice UI to demonstrate some additional concepts. Hope it helps!

When I follow the mfa sample, I was able to bypass mfa by simple closing the current tab and re-login from the client application. Can anyone else confirm this behavior or I am missing something?

When I follow the mfa sample, I was able to bypass mfa by simple closing the current tab and re-login from the client application. Can anyone else confirm this behavior or I am missing something?

Hi @ramonmalcolm10, thanks for your interest and trying out the sample! Yes, unfortunately the sample is incomplete and also on a very out of date branch.
The issue you mention is because this line simply requires any authenticated user. Once we get closer to finalizing a how-to guide for this, I will revisit the authorization config, but at a minimum the /oauth2/authorize endpoint needs to require hasRole("USER").

I tried to make a working system, based on the Steve Riesenberg code.
The code works but is not quite right yet. Can anyone give me advice on getting everything right?
Github: https://github.com/wdkeyser02/SpringMfaAuthorizationServer/tree/main/SpringMFAAuthorizationServer01

Hi @jgrandja @sjohnr,
We had an OAuth2 authorization server running using Spring's old outdated oauth2 module and have now migrated to the new spring-auhorization-server.
We implement 2FA authentication plus additional checks (like accepting privacy policies during first login) during the login flow. In our SecurityFilterChain we had previously configured that the oauth2/authorize endpoint should only be accessible to users that are authenticated and have a specific authority (we use different authorities for users that have passed the password check but have not yet passed the 2FA check, etc.), similar to what @sjohnr mentioned in #issuecomment-1557471602.
However, this does not seem to work anymore because the new OAuth2AuthorizationEndpointFilter is registered somewhere before the AuthorizationFilter in the security chain and it only does a simple check if the principal is authenticated (has authenticated flag = true and is not anonymous), and then already creates the authorization code and redirects back to the client. Meaning that all authorize rules configured for this endpoint in the security filter chain are basically ignored if the current principal was the authenticated flag set to true.
Is this intentional? Why is the endpoint filter not added after the AuthorizationFilter in the chain? How do you propose to implement something like 2FA and further checks correctly with the given implementation?
We could argue that a principal that has successfully passed the password check but is still required to provide a valid 2FA code should not be marked as authenticated already, but at least after the 2FA check they would be. But we still don't want to redirect yet back to the client until the user has also confirmed the terms and conditions and such things.
Thanks for your help!

Can you try out the code to this video?
https://www.youtube.com/watch?v=0dSgrhv2nrE&t=28s
Thanks.

@wdkeyser02 You are basically treating the user as anonymous as long as they haven't entered the 2FA code. That equivalent to setting the authenticated flag to false in the AuthenticationToken. This is one possible way to do it, the question is if it is the right one. I personally think that such a user is not the same as an anonymous one because we have already identified the user (there is a matching principal in your database).

@AndreasKasparek In my opinion this method works, but whether it is the best method I also wonder.
So far I have no idea how to do it differently. i wonder if there is a possibility to modify formlogin.

@wdkeyser02 The main problem I have with these solutions is that it feels like a workaround. And it disregards any of the http.authorizeHttpRequests(authorize -> ...) access controls I have configured in my security filter chain for the authorization endpoint, even so this endpoint is one that is accessed directly by a user's browser and thus should follow the same security rules as any other public APIs.

@AndreasKasparek

Is this intentional? Why is the endpoint filter not added after the AuthorizationFilter in the chain?

At the current time, yes it is intentional. The goal of this project is to adhere to the spec, which does not mention additional authorization checks. Two-factor authentication would actually best be implemented as a first-class Spring Security feature, and not in this project, because Spring Security is focused on authentication while this project is not.

How do you propose to implement something like 2FA and further checks correctly with the given implementation?

As I mentioned in my comment, the work necessary to deliver a how-to guide for two-factor authentication is not complete. It is possible additional enhancements to Spring Authorization Server's core will be required before it can be delivered, and I have not yet had time to go deeper than that. There are likely other approaches that one could take, and it's fun to get creative and try to find them, but as I mentioned it is not currently the priority at the moment.
I will say that it's definitely something I will continue to think about, as I am committed to building a high-quality guide around this topic in the future.
Having said that, I would ask you both (@wdkeyser02 @AndreasKasparek) not to use this issue as a discussion forum for your own exploration. Please take that discussion elsewhere, such as Stack Overflow. We prefer to use GitHub issues only for bugs and enhancements. Feel free to update this issue with a link to the re-posted question (so that other people can find it).

@sjohnr Thanks for your reply. What do you mean with:

Two-factor authentication would actually best be implemented as a first-class Spring Security feature, and not in this project, because Spring Security is focused on authentication while this project is not.

I would gladly rely on the Spring Security configuration, but due to the fact that the AuthorizationFilter is never reached if the OAuth2AuthorizationCodeRequestAuthenticationProvider deems the request as authenticated, I currently cannot use any of the Spring Security access authorization rules for this endpoint.
I don't quite get how the current implementation is more in line with the OAuth2 spec than if the OAuth2AuthorizationEndpointFilter would be positioned later in the security chain?
https://datatracker.ietf.org/doc/html/rfc6749#section-1.3.1 states:

Before directing the resource owner back to the client with the
authorization code, the authorization server authenticates the
resource owner and obtains authorization.

Section https://datatracker.ietf.org/doc/html/rfc6749#section-3.1 does not specify how the authorization endpoint should identify or authorize the resource owner and thus doesn't place any restrictions on how you implement this in Spring.
https://datatracker.ietf.org/doc/html/rfc6749#section-4.1.1 states (emphasis by me):

The authorization server validates the request to ensure that all
required parameters are present and valid.  If the request is valid,
the authorization server authenticates the resource owner and obtains
an authorization decision (by asking the resource owner or by
establishing approval via other means).

Where would you see a violation of the spec my moving the endpoint filter after the AuthorizationFilter?
As this endpoint is clearly meant to be accessed by the resource owner's browser, and the process of authenticating and authorizing the resource owner is in most cases a multi-step process that is very similar to a direct login at the authorization server (including establishing a web session with the server), and therefore may include navigation across several web pages to ask for credentials (and later also consent), I think that it should make full use of Spring's web security features. And thus I would see the request handler for this endpoint to be registered later in the security filter chain to make use of Spring Security's access decision manager.
And to provide one more counter argument to yours: the OAuth2TokenEndpointFilter is currently registered after the AuthorizationFilter in the security filter chain, even so this endpoint is normally only called by OAuth clients in single back-channel request that does not require any interaction with the user's browser or any other front-end. So why is this token endpoint fully covered by Spring's web security while the the authorization endpoint, that would benefit most from it, is not?
Sorry for starting this discussion here. I had the impression that the current implementation my actually be regarded buggy and therefore producing any documentation based on it would be fruitless. Should I open another bug issue for this change instead?
Thank you for your time!

@AndreasKasparek
As @sjohnr mentioned in previous comment:

Having said that, I would ask you both (@wdkeyser02 @AndreasKasparek) not to use this issue as a discussion forum for your own exploration. Please take that discussion elsewhere, such as Stack Overflow. We prefer to use GitHub issues only for bugs and enhancements. Feel free to update this issue with a link to the re-posted question (so that other people can find it).

Please log a new issue with your arguments around OAuth2AuthorizationEndpointFilter and why it should be moved after AuthorizationFilter and we'll continue the discussion there. These comments are off topic and are polluting the main issue. Also, please delete all comments here after you have moved them to the new issue.

Hey, I just published a system that seems to work well. I've explained everything in the repo, it allows to chain processes to set up two-factor authentication but not only. It works with or without Spring Authorization Server (the system is only connected to Spring Security). It's not based on the Steve Riesenberg code.
Repo link: https://github.com/Killian-fal/mfa-spring-authorization-server


update USAGE for bottles installtion

This is for https://github.com/hangxie/parquet-tools/issues/382

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 91.75%. Comparing base (027069b) to head (df5679c).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main     #383   +/-   ##
=======================================
  Coverage   91.75%   91.75%
=======================================
  Files          12       12
  Lines        1274     1274
=======================================
  Hits         1169     1169
  Misses         77       77
  Partials       28       28

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Reset stream on created session

Solves https://github.com/micro-ROS/micro_ros_setup/issues/434
CI: https://github.com/eProsima/Micro-XRCE-DDS/pull/125

Build status:

Linux
Windows

Build status:

Linux
Windows

Build status:

Linux
Windows


Fix incorrect define _WIN32_WINNT_WINBLUE

On Windows 8 app crach, not correct check version in _glfwPlatformInit.
IsWindows8Point1OrGreater() return true on Windows 8.
SetProcessDpiAwareness crach, glfw.win32.shcore.SetProcessDpiAwareness is NULL.
Correct:
#define _WIN32_WINNT_WIN8       0x0602 // Windows 8
#define _WIN32_WINNT_WINBLUE 0x0603 // Windows 8.1
https://docs.microsoft.com/ru-ru/cpp/porting/modifying-winver-and-win32-winnt?view=vs-2019

Thank you! This has been merged as 53b1396a09be83254e90dc4c815052a1a57ab144.


Fix Regex */xxx

*/500 must be possible for all parts
https://github.com/crontab-manager/crontab-manager/blob/master/inc/regex.php

@fschabmeyer with your last changes this issue should be done ;)


Unable to recognize tab page

Checklist

[ ] I'm reporting a broken site support issue
[ ] I've verified that I'm running youtube-dl version 2021.03.25
[ ] I've checked that all provided URLs are alive and playable in a browser
[ ] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[ ] I've searched the bugtracker for similar bug reports including closed ones
[ ] I've read bugs section in FAQ

Verbose log

PASTE VERBOSE LOG HERE

Description

H:\Videos\DaVinciInquest>youtube-dl --verbose https://www.youtube.com/results?search_query=da+vinci's+inquest+s06e13
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', 'https://www.youtube.com/results?search_query=da+vinci's+inquest+s06e13']
[debug] Encodings: locale cp1252, fs mbcs, out cp437, pref cp1252
[debug] youtube-dl version 2021.03.25
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.19041
[debug] exe versions: none
[debug] Proxy map: {}
[youtube:tab] results: Downloading webpage
ERROR: Unable to recognize tab page; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp5nc448kk\build\youtube_dl\YoutubeDL.py", line 806, in wrapper
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp5nc448kk\build\youtube_dl\YoutubeDL.py", line 827, in __extract_info
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp5nc448kk\build\youtube_dl\extractor\common.py", line 534, in extract
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp5nc448kk\build\youtube_dl\extractor\youtube.py", line 2706, in _real_extract
youtube_dl.utils.ExtractorError: Unable to recognize tab page; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

@JohnApps Did u fix that somehow? Got same problem


Expose HTTP interceptors in public API

What
Expose HTTP interceptors in the public API via the
CDTAbstractReplication object.
How
The following APIs have been added to the CDTAbstractReplication object:
-addInterceptor:
-addInterceptors:
-clearInterceptors:
Reviewers
reviewer @tomblench
reviewer @mikerhodes

I'm generally +1 once my comments are addressed. One question, why does this have a clearInterceptors but sync-android doesn't? This seems inconsistent.

The API isn't perfect, and there is some more work needed around what the replication API should look like, now that sync-android has a much simpler API with the ReplicatorBuilder. Its definitely something we need to sit down and discuss to see what we can do to remove the whole replication -> factory -> replicator dance.

@tomblench is this the place for checking the multiple interceptors, as requested https://github.com/cloudant/CDTDatastore/pull/190#issuecomment-137498714?

@mikerhodes yes this would an appropriate PR for that.

+1 after Tom's comments addressed.


Dbeaver keyboard shortcuts are "azerty" while everything else is on a "qwerty" layout.

System information:

Operating system (distribution) and version: Linux Ubuntu 18.04.2 LTS
DBeaver version: 5.3.5
Java version:
openjdk version "10.0.2" 2018-07-17
OpenJDK Runtime Environment (build 10.0.2+13-Ubuntu-1ubuntu<IP_ADDRESS>)
OpenJDK 64-Bit Server VM (build 10.0.2+13-Ubuntu-1ubuntu<IP_ADDRESS>, mixed mode)

Describe the problem you're observing:
When I write a SQL query in the editor, the correct QWERTY layout applies. However, all keyboard shortcuts follow a AZERTY layout. For instance q becomes a.

Keymap https://fr.wikipedia.org/wiki/Discussion:AZERTY#/media/File:Azerty_fr.svg

I think the right princip for keymaps must be
Latin (AZERTY QWERTZ QWERTY) -> key character from current layout
Non latin -> key code for QWERTY if current layout is non-latin
Is it non-normal situation?

Thanks for your reply. I'm not sure I understand: when I type in the editor my keyboard follows the QWERTY layout (which is normal), but shortcuts are somehow AZERTY (I need to press ctrl + q to select all for instance instead of ctrl + a), and I'd love to know how to change that. Also it only happens on my Linux install and not on Windows.
I searched and didn't find an option to change the keyboard in preferences.

It seems, shortcuts follow system layout, but not layout of current DBeaver window. It look like problem from DBeaver. For example if you switch from fr_CA  (AZERTY) to de_DE (QWERTZ) layout, shortcuts must be modified for new keymap from layout. In Java application there is any similar problem, for example in JOSM.

This is a bug in Eclipse platform (https://bugs.eclipse.org/bugs/show_bug.cgi?id=533395)
It is already fixed in the recent Eclipse, will be fixed in DBeaver automatically once we'll upgrade to it (after 6.0 release).

Closed without testing.


Microsoft security and compliance tasks

Link to relevant issue
n/a
Description of changes
Updated Azure Pipelines tasks that split build and compliance steps into stages, with specific jobs that meet Microsoft internal security requirements.
Link to forked docs site

Oh actually one more thought, do you know if we should remove the GitHub actions pipeline that this is modeled after to adhere to security requirements?


FXS does not implement optional ERC20 name

The FXS contract here: https://github.com/FraxFinance/frax-solidity/blob/master/contracts/FXS/FXS.sol
Does not implement the optional ERC20 property name()
While it is optional, many applications depend on: just one example is Uniswap, and as a consequence the FXS token will not be able to be added as a custom token by Uniswap users.

Ty. Fixed in https://github.com/FraxFinance/frax-solidity/pull/10


libspatialite: builds fine on darwin, but platform is disabled

Issue description
The package libspatialite has meta.platforms = linux but is documented to work fine on darwin.
The current derivation indeed does not build, but only because libiconv is missing from buildInputs.
Steps to reproduce
Add libiconv as a buildInput to nixpkgs/pkgs/development/libraries/libspatialite/default.nix and  add platforms.darwin to meta.platforms and build on darwin. It succeeds!
Technical details

Nixpkgs version: 16.09

You could make a pull request where you change meta.platforms to unix

Merged.


Local Actions - Error: Cannot find module - MODULE_NOT_FOUND

All my local actions started throwing this error:
Error: Cannot find module '/home/shane/docker/test2/parse-issue-form-action/dist/index.js'
But the file is clearly there:
shane@jammy [/home/shane/docker/test2]$ stat /home/shane/docker/test2/parse-issue-form-action/dist/index.js
  File: /home/shane/docker/test2/parse-issue-form-action/dist/index.js

action.yml
runs:
  using: "node20"
  main: "dist/index.js"

This was previously working working just fine. I setup an all new test to make sure it was not something with my environment, but got the exact same error. This is the sample test I setup:
    steps:
      - name: "Checkout"
        uses: actions/checkout@v4

      - name: "Test Action"
        uses: ./parse-issue-form-action
        with:
          token: test
          body: test

Note: Previously I place all my local actions in the ./.github folder, example: .github/parse-issue-form-action
I have tried this new test in both the ./.github directory and current working directory, but both throw the same error.
Additionally, I was also previously able to run my actions from source with a node_modules in the current working directory, but doing that also fails with the error Error: Cannot find module '@actions/core' when npm ls clearly shows it installed.
0 shane@jammy [/home/shane/docker/test2]$ npm ls
test2@ /home/shane/docker/test2
├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>
Again, all this was previously working, just days ago, and now all fails. Did something change?
Full error for reference:
0 shane@jammy [/home/shane/docker/test2]$ act
INFO[0000] Using docker host 'unix:///var/run/docker.sock', and daemon socket 'unix:///var/run/docker.sock'
[Test/Test] 🚀  Start image=catthehacker/ubuntu:act-latest
[Test/Test]   🐳  docker pull image=catthehacker/ubuntu:act-latest platform= username= forcePull=true
[Test/Test]   🐳  docker create image=catthehacker/ubuntu:act-latest platform= entrypoint=["tail" "-f" "/dev/null"] cmd=[] network="host"
[Test/Test]   🐳  docker run image=catthehacker/ubuntu:act-latest platform= entrypoint=["tail" "-f" "/dev/null"] cmd=[] network="host"
[Test/Test] ⭐ Run Main Checkout
[Test/Test]   🐳  docker cp src=/home/shane/docker/test2/. dst=/home/shane/docker/test2
[Test/Test]   ✅  Success - Main Checkout
[Test/Test] ⭐ Run Main Test Action
[Test/Test]   🐳  docker exec cmd=[node /home/shane/docker/test2/parse-issue-form-action/dist/index.js] user= workdir=
| node:internal/modules/cjs/loader:1143
|   throw err;
|   ^
|
| Error: Cannot find module '/home/shane/docker/test2/parse-issue-form-action/dist/index.js'
|     at Module._resolveFilename (node:internal/modules/cjs/loader:1140:15)
|     at Module._load (node:internal/modules/cjs/loader:981:27)
|     at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:128:12)
|     at node:internal/main/run_main_module:28:49 {
|   code: 'MODULE_NOT_FOUND',
|   requireStack: []
| }
|
| Node.js v18.20.3
[Test/Test]   ❌  Failure - Main Test Action
[Test/Test] exitcode '1': failure
[Test/Test] 🏁  Job failed
Error: Job 'Test' failed

I just realized I opened this in the wrong repository when I could not find it, I will close this out and open it in the right place.


Add ng-on-* for listening to arbitrary events

ng-on-* could bind an expression to arbitrary events:
ng-on-click="doSomething()"

This would be a 1-for-1 replacement for the current ng-* event handlers:
ng-click="doSomething()"

Reasoning:

Angular 2.0 is going this sort of direction. So this will help ease migration. Migration pain is one of the main complaints right now for 2.0, it seems to me.
Get the benefits of the Angular 2.0 approach today.

ng-on-* prefix makes it clear that this is an event listener, regardless what event is being listened to.
ng-on-* would work on arbitrary events (like ng-attr-* works for arbitrary attributes), even custom events from web components

(Minor) Provides nice symmetry from jQuery API to Angular API: ng-on-* => $.fn.on('*', ...)
Binding to arbitrary events requires custom compiler support to recognize all ng-on-* attributes without explicitly adding them as separate directives, which is why I think it belongs in core.

@caitp I did some research and it looks like certain events (e.g. blur) are special-cased to be always async so that events triggered during dom removal don't cause problems with inconsistent state.

That's not actually the reason why it runs asynchronously, but yes. So there are a few combinations of behaviors that you may or may not want: digest or not, sync or not. No one answer applies to all cases for all users.

For reference, I was looking at the comment here: https://github.com/angular/angular.js/blob/master/src/ng/directive/ngEventDirs.js#L44

Lots of new announcements surrounding around 2.0 recently. Any new thoughts here?

@ewinslow I think that it would be a good candidate to explore / implement in 1.5 time-frame. Scheduling as such.

Great, thanks!

Closing as duplicate of https://github.com/angular/angular.js/issues/12197


cdn: URL signing example [DO NOT MERGE]

I added some samples for. Cloud CDN URL signing. I believe we don't want to merge this until the feature is actually ready to launch
this is my first submission to the sample repo, so let me know if I'm doing anything weird.

@frankyn Would you mind double-checking to make sure I'm doing the maven stuff properly?
@ahmetb

Reviewers: please review, but DO NOT MERGE until we're ready to launch.

@DanSanche can you rebase to address the merge conflict?
This is now OK to merge from logistics perspective. If maintainers can take a look and merge, I appreciate.

Repo owners: It looks like there's a requirement like "PR branches must include all commits from the master" in this repo. Do we want to retain this policy? Often times, this will cause inconvenience to the contributors as they have to rebase multiple times, even though there are no merge-conflicts.
If someone can review/LGTM, that'll be appreciated.

@lesv I added the README and fixed the version number

I know all the contributors have signed the CLA


Unable to edit stats while unlocked

Foundry version 11, 308
Clicking the unlock button doesn't allow me to edit character stats, either when locked or unlocked. I can edit everything except the main 11 numbers

nvm I was clicking the wrong spot! Sorry about that!


sf::VideoMode::getDesktopMode() returning the monitor resolution on macOS

Prerequisite Checklist

[X] I searched for existing issues to prevent duplicates
[X] I searched for existing discussions on the forum to prevent duplicates
[X] I am here to report an issue and not to just ask a question or look for help (use the forum or Discord instead)

Describe your issue here
My monitor resolution is 3420x2224 and my screen resolution is set to 1720x1112. The sf::VideoMode::getDesktopMode() is returning the correct screen resolution on Windows but it's returning the monitor resolution on macOS (in my case 3420x2224). I think it's related to the scaleOutXY function in the cf_sf_conversion.mm file because the CGDisplayModeGetWidth() and CGDisplayModeGetWidth() functions returning the correct screen resolution values.
Your Environment

OS / distro / window manager: macOS Ventura 13.5.1
SFML version: 3.0.0
Compiler / toolchain: Apple clang version 15..0.0 (clang-15<IP_ADDRESS>.5)
Special compiler / CMake flags:

Steps to reproduce

#include <SFML/Graphics.hpp>

int main()
{
    const sf::VideoMode desktop = sf::VideoMode::getDesktopMode();
    const unsigned int width = desktop.size.x / 2;
    const unsigned int height = desktop.size.y / 2;

    // The windows goes out of screen because of wrong screen resolution.
    sf::RenderWindow window(sf::VideoMode({width, height}), "Minimal, complete and verifiable example");
    window.setFramerateLimit(60);

    while (window.isOpen())
    {
        for (sf::Event event; window.pollEvent(event);)
        {
            if (event.type == sf::Event::Closed)
                window.close();
        }

        window.clear();
        window.display();
    }
}

Expected behavior
The sf::VideoMode::getDesktopMode() should have return the screen resolution which is set by user.
Actual behavior
The sf::VideoMode::getDesktopMode() returned the monitor resolution independently from screen resolution.

Have you read #2300 yet?

I checked the current issues to prevent duplication. I saw that issue and I don't think it's related to the my problem. The sf::VideoMode::getFullscreenModes() also returning empty and causing segfault but my problem is inconsistency between Windows and macOS platforms. sf:: VideoMode::getDesktopMode() returning the user set screen resolution on Windows, but on macOS it's returning the monitor resolution (or the full screen resolution). I as described above, when I remove the scaleOutXY function from source code, it's returning the correct values of my custom screen resolution.

I tried creating a window with different display sizes using the sf::VideoMode::getDesktopMode() function. It seems to be returning the display size correctly and independent of the monitor now. The problem is solved for me, you can close the issue.


Can't change page from marker click

My cordova app uses Angular for page routing, e.g. $location.path('/accounts'); to change route and load a new page.
When I add the above command inside the click handler for a marker the command does get fired but nothing happens, I don't even see an error message. I've tried passing $location to the marker as data but did not help either.  Guessing that scope is somehow involved but can't figure it out. Any suggestions?

You need to use the plugin v2.


Update pubspec for latest version of flutter_svg

Non-breaking change, simple package update for flutter_svg

@creativecreatorormaybenot I see that you bumped flutter_svg in 5a0c44833af3c1c4de22fd407426bbcd68893b4a
Not sure if you saw this pull request or not, but I will close this pull request as it is no longer required!

@walsha2 Sorry, I did not see this PR, unfortunately. I am not subscribed to this repo, that is why.
In general, PRs should go to https://github.com/simpleclub-extended/flutter_math_fork instead. I am just updating this repo in order to keep https://github.com/znjameswu/flutter_math/pull/43 alive.
But please note that we are not proactively maintaining the fork. Right now, we are maintaining it internally to keep compatibility. There are not long-term plans just yet.

@creativecreatorormaybenot understood, thanks for clarifying.
Yes, this whole situation is unfortunate and I would like to know a clearer path moving forward - for the whole community. Your efforts on the fork are appreciated regardless!


Configure Renovate

Welcome to Renovate! This is an onboarding PR to help you understand and configure settings before regular Pull Requests begin.
🚦 To activate Renovate, merge this Pull Request. To disable Renovate, simply close this Pull Request unmerged.

Detected Package Files

Dockerfile (dockerfile)

Configuration Summary
Based on the default config's presets, Renovate will:

Start dependency updates only once this onboarding PR is merged
Enable Renovate Dependency Dashboard creation.
Use semantic commit type fix for dependencies and chore for all others if semantic commits are in use.
Ignore node_modules, bower_components, vendor and various test/tests directories.
Group known monorepo packages together.
Use curated list of recommended non-monorepo package groupings.
Apply crowd-sourced package replacement rules.
Apply crowd-sourced workarounds for known problems with packages.

🔡 Do you want to change how Renovate upgrades your dependencies? Add your custom config to renovate.json in this branch. Renovate will update the Pull Request description the next time it runs.

What to Expect
With your current configuration, Renovate will create 2 Pull Requests:

Pin dependencies

Schedule: ["at any time"]
Branch name: renovate/pin-dependencies
Merge into: master
Upgrade gcr.io/distroless/static-debian11 to sha256:1dbe426d60caed5d19597532a2d74c8056cd7b1674042b88f7328690b5ead8ed
Upgrade golang to sha256:583d5af8289d30de50aa0dcf4985d8b8746e52622becd6e1a62cfe191d5275a5

Update golang Docker tag to v1.23.0

Schedule: ["at any time"]
Branch name: renovate/golang-1.x
Merge into: master
Upgrade golang to sha256:ecef8303ced05b7cd1addf3c8ea98974f9231d4c5a0c230d23b37bb623714a23

❓ Got questions? Check out Renovate's Docs, particularly the Getting Started section.
If you need any further assistance then you can also request help here.

This PR has been generated by Renovate Bot.


Can´t connect to RTSP Stream

Hello everyone,
I've been trying to get the add-on to work for two days now, according to the log everything is working, but I can't connect to it using either the VLC player or the "Generic Camera" plugin...
I've created a suitable config.toml, which is also read (port set to 8445 because the standard 8554 is already used) and added the camera... I've also adjusted the port accordingly under the AddOn Configuration tab...
My .toml looks like this:
bind = "<IP_ADDRESS>"

bind_port = 8445

[[cameras]]
name = "Kinderzimmer"
username = "admin"
password = "XXXX"
uid = "9527000XXXXXXXXX"
address = "<IP_ADDRESS>"

The Log says:
--- VERSIONS ---
add-on version: 0.0.9
[2024-09-29T18:17:09Z INFO  neolink] Neolink e47a0d5734b0a06b53bd8d78be9ca2f6b8396480 release
neolink version: neolink 0.6.2
neolink mode: rtsp
neolink log: info
ATTENTION: if you expected a newer Neolink version, please reinstall this Add-on!
--- Neolink ---
[2024-09-29T18:17:09Z INFO  neolink] Neolink e47a0d5734b0a06b53bd8d78be9ca2f6b8396480 release
[2024-09-29T18:17:10Z INFO  neolink::rtsp] Starting RTSP Server at <IP_ADDRESS>:8445
[2024-09-29T18:17:10Z INFO  neolink::rtsp] Kinderzimmer: Rtsp Staring
[2024-09-29T18:17:10Z INFO  neolink::utils] Kinderzimmer: Connecting to camera at Address: <IP_ADDRESS>, UID: 9527000XXXXXXXXX
[2024-09-29T18:17:10Z INFO  neolink_core::bc_protocol] Kinderzimmer: Trying TCP discovery
[2024-09-29T18:17:10Z INFO  neolink_core::bc_protocol] Kinderzimmer: TCP Discovery success at <IP_ADDRESS>:9000
[2024-09-29T18:17:10Z INFO  neolink::utils] Kinderzimmer: Logging in
[2024-09-29T18:17:10Z INFO  neolink::utils] Kinderzimmer: Connected and logged in
[2024-09-29T18:17:10Z INFO  neolink::common::camthread] Kinderzimmer: Camera time is already set: 2024-09-29 20:17:12.0 -01:00:00
[2024-09-29T18:17:10Z INFO  neolink::common::neocam] Kinderzimmer: Model Reolink Lumus
[2024-09-29T18:17:10Z INFO  neolink::common::neocam] Kinderzimmer: Firmware Version v<IP_ADDRESS>5_21052800
[2024-09-29T18:17:10Z INFO  neolink::rtsp] Kinderzimmer: Avaliable at /Kinderzimmer/sub, /Kinderzimmer/Sub, /Kinderzimmer/subStream, /Kinderzimmer/SubStream, /Kinderzimmer/Substream, /Kinderzimmer/substream
[2024-09-29T18:17:10Z INFO  neolink::rtsp] Kinderzimmer: Avaliable at /Kinderzimmer/main, /Kinderzimmer/Main, /Kinderzimmer/mainStream, /Kinderzimmer/MainStream, /Kinderzimmer/Mainstream, /Kinderzimmer/mainstream, /Kinderzimmer

Hello! The port that is changed is the public, but the container is using the same port (8545). Hence, you don't need to set the bind_port parameter. Remove it and it will work.
(It happened the same to me just now! haha)


git creds are not used when install packages

Context

An experiment lives in a private repo
agent.git_user and agent.git_pass are configured in trains.conf
This experiment is a python package installed at runtime
This python package has dependencies
Among the dependencies, one is another private repository

Problem
trains-agentwill successfully clone the private repo where the experiments lives using the git credentials configured. But it will fail installing the dependencies, because one of them is a private repo and trains-agent won't use the configured git credentials for the installation of the dependencies.
Solution
trains-agent should use the git credentials for any git operation, regardless of when it happens.

Workaround: Use git-credential-cache mechanism to cache the git credentials.

Start the cache mechanism before calling trains-agent (below I am using root account and --system because I run the agent in a GCloud VM)

mkdir -p /root/git/credential
chmod 0700 /root/git/credential
git config --system credential.helper 'cache --socket /root/git/credential/socket'

Start the agent. It will then pick a task. It will clone the experiment from the private repo using the git credentials. The latter will be stored in the cache. Therefore when trains-agent will install the dependencies of that task, it internally git will reuse its cache and voilà!

@H4dr1en wow! that is a great fix.
Did you have it as part of the bash script running on every docker?
(i.e. configured in the ~/trains.conf, with extra_docker_shell_script)
Or is it part of the GCP init script?
p.s.
The bug is verified :)

This is part of the GCloud init script!
I avoided using docker so far because I am worried that containerd may decrease the overall performances during the training

This is part of the GCloud init script!

Maybe we should run the same script from trains-agent when it starts, what do you think?

I avoided using docker so far because I am worried that containered may decrease the overall performances during the training

Well, that's for nvidia to fix ;)
BTW, someone just mentioned that https://github.com/NVIDIA/nvidia-docker/wiki/MPS-(EXPERIMENTAL) might help ...

Maybe we should run the same script from trains-agent when it starts, what do you think?

Yes, this or any other mechanism that will reuse the git creds given by the user would be very nice!
Note: The cache expires after 15 minutes by default (this value can be configured), which is fine for most cases.

BTW, someone just mentioned that https://github.com/NVIDIA/nvidia-docker/wiki/MPS-(EXPERIMENTAL) might help ...

Thanks for the link, I will have a look 👍

By the way the hack mentionned above only works the first time you enqueue an experiment. If you reset/clone it and enqueue again, it may fail, because the dependency may then be installed before the actual repo of the experiment (which didn't happen before since it was installed after cloning the experiment repo)..
ERROR: Could not find a version that satisfies the requirement my-dependency-package (from -r /tmp/cached-reqsg6dplvj0.txt (line 26)) (from versions: none)
ERROR: No matching distribution found for my-dependency-package (from -r /tmp/cached-reqsg6dplvj0.txt (line 26))

@H4dr1en makes total sense :(
I think we will have to make sure we pass the correct git credentials for pip.
This means trains-agent will take this line:
my-dependency-package @ git+https://github.com/H4dr1en/my-dependency-package@92kv9gk3b1cabf08a0b45d87fk3e70bd73a7bc94

and will pass to pip this line instead:
my-dependency-package @ git+https://user:pass@github.com/H4dr1en/my-dependency-package@92kv9gk3b1cabf08a0b45d87fk3e70bd73a7bc94

@bmartinn , is this solved by https://github.com/allegroai/trains-agent/commit/1f53a06299f90a9ff1d4bc6feebda1decaf5a4ba?

@H4dr1en yep :)

Hi @bmartinn , I still experienced that issue with trains-agent==0.16.3:
pip will fail to clone a private repository that is a requirement of the experiment, because the agent doesn't use the git creds.
requirement format:
install_requires=[...,
"private_package<EMAIL_ADDRESS>

git creds are passed via AWS AutoScaler (so in the agents, they are stored in /root/trains.conf
pip==20.2.3

The workaround mentionned above still works

Hi @bmartinn , I still experienced that issue with trains-agent==0.16.3:
pip will fail to clone a private repository that is a requirement of the experiment, because the agent doesn't use the git creds.
requirement format:
install_requires=[...,
"private_package<EMAIL_ADDRESS>

git creds are passed via AWS AutoScaler (so in the agents, they are stored in /root/trains.conf
pip==20.2.3

The workaround mentionned above still works

Hi @H4dr1en ,
Can you verify that the correct the git_user is used? Check the agent's log, at the beginning of the Task execution the agent's configuration is displayed, if everything is properly configured you should see there the "git_user" ("git_pass" will not be displayed for obvious security reasons)

Hi @H4dr1en ,
Can you verify that the correct the git_user is used? Check the agent's log, at the beginning of the Task execution the agent's configuration is displayed, if everything is properly configured you should see there the "git_user" ("git_pass" will not be displayed for obvious security reasons)

In the agent log, I can see the "git_user". Also the agent does use the creds to clone the private repository, that works fine.
The private repository of the experiment is a python package with a setup.py that references another private repo using install_requires (see my message above). That dependency cannot be cloned (git error 128) by pip, so I guess the agent is not using the git user/pass to process the private repository in the requirement, is this possible?

In the agent log, I can see the "git_user". Also the agent does use the creds to clone the private repository, that works fine.
The private repository of the experiment is a python package with a setup.py that references another private repo using install_requires (see my message above). That dependency cannot be cloned (git error 128) by pip, so I guess the agent is not using the git user/pass to process the private repository in the requirement, is this possible?

hat dependency cannot be cloned (git error 128) by pip, so I guess the agent is not using the git user/pass to process the private repository in the requirement, is this possible?

Yes I think this is exactly it. We cannot pass the credentials to the derivative git call that pip is issueing.
That said, if you have .git-credentials file on he agent machine, then any git command will have the correct credentials, including the one pip will be calling. Even if the agent is running in docker-mode the  .git-credentials will be mounted into the docker meaning the pip install git+ will work there as well.
WDYT?

hat dependency cannot be cloned (git error 128) by pip, so I guess the agent is not using the git user/pass to process the private repository in the requirement, is this possible?

Yes I think this is exactly it. We cannot pass the credentials to the derivative git call that pip is issueing.
That said, if you have .git-credentials file on he agent machine, then any git command will have the correct credentials, including the one pip will be calling. Even if the agent is running in docker-mode the  .git-credentials will be mounted into the docker meaning the pip install git+ will work there as well.
WDYT?

That's a good workaround yes (but requires to have the creds stored in a plain text file)

That's a good workaround yes (but requires to have the creds stored in a plain text file)


Add preferredStyle to AlertOperation initializer

I'd like to be able to use alert operation for showing an ActionSheet as well:
let alertOp = AlertOperation(presentAlertFrom: self, style: .ActionSheet)

Looks good. Happy to merge. There isn't actually a test for the style, the only thing I would add would be an assert in to check that the preferred style is set.

Hi @felix-dumit - leave a comment when you're finished / ready to merge.

@danthorpe But it will always be set because of the default parameter?
I also want the addActionWithTitle method to return the UIAlertAction, so I can customize it or set the preferredAction property of the UIAlertController, just added a commit for that

Thanks for the additions! 👍😄

Yeah, it currently looks like it will always be set from the default parameter. But the test isn't just to ensure that now, it's to ensure that in the future this isn't changed or is broken.

@danthorpe Ok I added the tests, is that what you had in mind?

Great - thanks for adding the test! Will merge shortly.


Remove PA-RCA files from OS home dir

Signed-off-by: Karishma Joseph<EMAIL_ADDRESS>[Merge only when PA is stable]
Is your feature request related to a problem? Please provide an existing Issue # , or describe.
#82
Describe the solution you are proposing
Remove the<OS_HOME>/performance-analyzer-rca folder from the OS home directory. This way there is only one location for PA plugin and PA-RCA process: <OS_HOME>/plugins/opensearch-performance-analyzer.
Contents of <OS_HOME>/performance-analyzer-rca before:
bin  lib  pa_bin  pa_config

pa_bin and pa_config in <OS_HOME>/performance-analyzer-rca and <OS_HOME>/plugins/opensearch-performance-analyzer were exactly the same. Hence, no action needs to be taken for these two folders.
Copy bin into <OS_HOME>/plugins/opensearch-performance-analyzer and rename as rca_bin.
Copy lib into <OS_HOME>/plugins/opensearch-performance-analyzer and rename as rca_lib. Remove all the common library files between <OS_HOME>/plugins/opensearch-performance-analyzer and <OS_HOME>/plugins/opensearch-performance-analyzer/rca_lib so as to reduce the memory footprint.
Check List

[x] New functionality includes testing.

[x] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[x] Commits are signed per the DCO using --signoff

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

Codecov Report

Merging #143 (f46c994) into main (b086d2f) will decrease coverage by 0.15%.
The diff coverage is n/a.

:exclamation: Current head f46c994 differs from pull request most recent head abc861d. Consider uploading reports for the commit abc861d to get more accurate results

@@             Coverage Diff              @@
##               main     #143      +/-   ##
============================================
- Coverage     72.19%   72.03%   -0.16%
+ Complexity      356      355       -1
============================================
  Files            44       44
  Lines          2510     2510
  Branches        160      160
============================================
- Hits           1812     1808       -4
- Misses          592      595       +3
- Partials        106      107       +1

Impacted Files
Coverage Δ

...ormanceanalyzer/writer/EventLogQueueProcessor.java
55.95% <0.00%> (-4.77%)
:arrow_down:

Continue to review full report at Codecov.

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

Can we merge this?

Looks stalled, closing. Please feel free to finish and reopen @kjoseph07.


Add flutter_news_example

https://github.com/flutter/news_toolkit
https://github.com/googleads/googleads-mobile-flutter
The Android plugin uses Variant type 129, which is not supported in C++ at this time.  Custom code required on embedder side to support this.

Firebase needs updating in example.  I get:
[09:17:05.634281] [D] Channel: "dev.flutter.pigeon.FirebaseCoreHostApi.initializeCore"

[ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: [core/not-initialized] Firebase has not been correctly initialized.

Usually this means you've attempted to use a Firebase service before calling `Firebase.initializeApp`.

View the documentation for more information: https://firebase.flutter.dev/docs/overview#initialization

#0      MethodChannelFirebase.initializeApp (package:firebase_core_platform_interface/src/method_channel/method_channel_firebase.dart:120:9)
<asynchronous suspension>
#1      Firebase.initializeApp (package:firebase_core/src/firebase.dart:43:31)
<asynchronous suspension>
#2      bootstrap (package:flutter_news_example/main/bootstrap/bootstrap.dart:26:3)
<asynchronous suspension>

won't fix


Make AnimationNodeBlendTree use RBMap insteads HashMap

Fixes #42788. Alternative PR of #79530.
node_connections is stored in ordered array, but the order of the array depends on the HashMap nodes, so every time the hash is changed, the .tres is changed.
This PR ensures uniqueness in the order of nodes by using an RBMap for nodes.
However, there seems to be a problem with inconsistent insertion locations when StringName is used as the key for RBMap (see also #79596). Therefore, RBMap<String, Node> should be used instead of RBMap<StringName, Node>.
Although not related to this PR, if you are using RBMap<StringName, V> in other classes, you may need to replace it with HashMap<StringName, V> or RBMap<String, V>.

Can't you just use RBMap<StringName, Node, StringName::AlpgCompare>?

Can't you just use RBMap<StringName, Node, StringName::AlphCompare>?

!!
You are right, I didn't care that RBMap has a Comparator. It is working perfectly.
So this is now a one-line change.

That could probably have been suggested in the original PR going forward

Thanks!


rxjs-es d.ts file errors when compiling with tsc --allowJs

RxJS version:
<EMAIL_ADDRESS>Code to reproduce:
main.js file: import * as Rx from './node_modules/rxjs-es/Rx';
tsc cli: tsc --allowJs --outFile public/main-dist.js --module system public/main.js
Expected behavior:
for tsc compiler to emit Rx code and bundle up into main-dist.js
Actual behavior:
tsc compiler errors with the following
public/node_modules/rxjs-es/Observable.d.ts(12,6): error TS2304: Cannot find name 'Symbol'.
public/node_modules/rxjs-es/Observable.d.ts(14,86): error TS2304: Cannot find name 'Promise'.
public/node_modules/rxjs-es/Observable.d.ts(15,42): error TS2304: Cannot find name 'Iterable'.
public/node_modules/rxjs-es/Observable.d.ts(71,60): error TS2304: Cannot find name 'Promise'.
public/node_modules/rxjs-es/Observable.d.ts(71,70): error TS2304: Cannot find name 'Promise'.
public/node_modules/rxjs-es/observable/PromiseObservable.d.ts(22,31): error TS2304: Cannot find name 'Promise'.
public/node_modules/rxjs-es/observable/PromiseObservable.d.ts(23,26): error TS2304: Cannot find name 'Promise'.
public/node_modules/rxjs-es/operator/toPromise.d.ts(7,59): error TS2304: Cannot find name 'Promise'.
public/node_modules/rxjs-es/operator/toPromise.d.ts(7,69): error TS2304: Cannot find name 'Promise'.
public/node_modules/rxjs-es/operator/toPromise.d.ts(9,9): error TS2304: Cannot find name 'Promise'.
public/node_modules/rxjs-es/operator/toPromise.d.ts(10,26): error TS2304: Cannot find name 'Promise'.
public/node_modules/rxjs-es/operator/toPromise.d.ts(10,36): error TS2304: Cannot find name 'Promise'.
make: *** [build] Error 2

and no Rx code is emitted/bundled into main-dist.js
Additional information:
If I remove all of the d.ts files that are shipped with rxjs-es everything works correctly. Rx code is emitted and bundled up correctly into main-dist.js

Related with https://github.com/ReactiveX/rxjs/issues/1066, https://github.com/ReactiveX/rxjs/issues/592 - please include es6-shim to support type definitions for ES6, could be done via typings (https://github.com/typings/typings) or manually pulling it down.
Let me close this issue, please feel freely reopen if it's not resolved via es6-shim.

Thanks for the info! It cleared most things up, however, it appears that Observable.d.ts is referencing /// <reference path="src/symbol/symbol.d.ts" /> in rxjs-es source, but there isn't a file there for symbols that I can see.
Also, is there a reason for adding the d.ts files when emitting the RxJS lib as ES6? Sorry, new to TypeScript and mainly using it as an ES6 -> ES5 transpiler + bundler

it appears that Observable.d.ts is referencing /// <reference path="src/symbol/symbol.d.ts" /> in rxjs-es source

: I assume this is previous changes of including symbol definition which is removed in current master.

Also, is there a reason for adding the d.ts files when emitting the RxJS lib as ES6?

: It's not about ES2015 consumers, it's for TypeScript consumers and compiler needs to aware type of those implementations, reason why it's type definition (d.ts) instead of implementation.

@kwonoj I'm still having issues with the ES2015 (ES6) code and the included .d.ts files. I'm using only .js and the tsc as the ES2015 -> ES 5 transpiler. This is to, potentially, slowly move into using TypeScript.
I've created a repo with the bare minimum to reproduce this issue, I've added es6-promise since the suggested es6-shim was giving errors upon trying to install via typings.
Sorry to bug about this, but... I'm just trying to get my head around something that seems "simple" but is proving otherwise with the .d.ts files included in the ES2015 code :/
https://github.com/subhaze/rxjs-es_test
Thanks in advance for any help/guidance on this.

@subhaze
package.json
+"prepublish": "typings install",
+"build": "tsc --allowJs -m system --moduleResolution node ./typings/index.d.ts main.js --outFile main-dist.js",
-"build": "tsc --allowJs -m system --moduleResolution node main.js --outFile main-dist.js",
+"devDependencies": {
+   "typings": "^1.0.4"
+}

typings.json
-"dependencies": {
-    "es6-promise": "registry:npm/es6-promise#3.0.0+20160211003958"
-}

+"globalDependencies": {
+    "es6-shim": "registry:dt/es6-shim#0.31.2+20160317120654"
+}


Feature Request: Make this package isomorphic so it works on Node.js too

Thanks for the request. Tracking task here: https://github.com/amplitude/Amplitude-JavaScript/issues/164


Minor document corrections and clarifications

Signed-off-by: Stephen Felt<EMAIL_ADDRESS>

@jovfer these are minor document changes. Could we approve and merge? I have not found any inconsistencies


build: :sparkles: Replace postcss with lightningcss

Does not work for windows users at this time. We'll have to revisit using lightningcss at a later time.


tests: Enable SELinux in tests

What type of PR is this?
/kind bug
/kind failing-test

What this PR does / why we need it:
Since the recent change to create spod in the operator itself, the spod
resource has been created with selinux disabled, thus failing all the
tests.
Long-term we should probably auto-detect the platform capabilities, but
for now, let's just enable selinux if selinux-related tests are selected
and wait for the DS to roll out.
Which issue(s) this PR fixes:
None

Does this PR have test?
This PR fixes tests

Special notes for your reviewer:
N/A
Does this PR introduce a user-facing change?

NONE

/test pull-security-profiles-operator-test-e2e

Huh?
I0315 10:05:46.318767   22869 suite_test.go:445]  "msg"="Enable selinux in SPOD"
securityprofilesoperatordaemon.security-profiles-operator.x-k8s.io/spod patched
securityprofilesoperatordaemon.security-profiles-operator.x-k8s.io/spod condition met
error: timed out waiting for the condition on pods/spod-cglln

I guess it's time to look at the tests locally...

Oh darn, it might be waiting on the condition of one of the pods that's shutting down, lol. Let me fix up the patch.

securityprofilesoperatordaemon.security-profiles-operator.x-k8s.io/spod patched
securityprofilesoperatordaemon.security-profiles-operator.x-k8s.io/spod condition met
Error from server (NotFound): daemonsets.apps "spod" not found

yeah, let me fix that up
/hold

/hold cancel

I'm a dumbass and didn't include the NS in the kubectl call.
diff --git a/test/suite_test.go b/test/suite_test.go
index a5464b7..25f3f1e 100644
--- a/test/suite_test.go
+++ b/test/suite_test.go
@@ -462,7 +462,7 @@ func (e *e2e) enableSelinuxInSpod() {
                time.Sleep(defaultWaitTime)
                e.waitInOperatorNSFor("condition=ready", "spod", "spod")

-               e.kubectl("rollout", "status", "ds", "spod", "--timeout", defaultSelinuxOpTimeout)
+               e.kubectlOperatorNS("rollout", "status", "ds", "spod", "--timeout", defaultSelinuxOpTimeout)
        }
 }
@JAORMX @saschagrunert PTAL again, this time the local vagrant e2e test worked for me, previously I was testing with an OCP cluster, I guess that's why I didn't see the issue.

Codecov Report

Merging #368 (b3d9ae2) into master (f72243f) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #368   +/-   ##
=======================================
  Coverage   27.65%   27.65%
=======================================
  Files          10       10
  Lines         752      752
=======================================
  Hits          208      208
  Misses        525      525
  Partials       19       19

Flag
Coverage Δ

unittests
27.65% <ø> (ø)

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

Continue to review full report at Codecov.

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

/retest
this failure is unrelated and would be addressed with the conditions

/lgtm


encourage non-directory script dependencies

@wdwatkins - review? Addressing #82. The functional changes are all in R/createMakefiles.R: I'm creating a warning that appears in the shell when calling make if any viz.yaml items have a scripts: dependency that's a directory rather than a file. All the changes in other files are documentation for that one functional change.
I'm about to submit a parallel PR for USGS-VIZLAB/example - would be great if you could review these together.
See recent comments in #82, plus the new output in the vignette, for examples of how this works.

Coverage increased (+0.4%) to 81.295% when pulling 3e1b8f9bd02a4efadf851b192b76df71b5ba7be5 on aappling-usgs:master into e28c14aa4f879ce309ac620880ebfe1daf35d3ec on USGS-VIZLAB:master.


Errors. Can not find components.

When I try to use come components, a always got errors
EXCEPTION: Error: Uncaught (in promise): No Directive annotation found on DatePickerComponent (or another)
How I can fix this issue?? ?
"ng2-bootstrap": "^1.0.16", ( from package.json )

Which angular2 version are you using? If not RC.1 this will be the problem.

Which should i use?

You need to upgrade to the release candidate. Some informations can be found here: https://angular.io/docs/ts/latest/quickstart.html

"dependencies": {
"@angular/common": "2.0.0-rc.1",
"@angular/compiler": "2.0.0-rc.1",
"@angular/core": "2.0.0-rc.1",
"@angular/http": "2.0.0-rc.1",
"@angular/platform-browser": "2.0.0-rc.1",
"@angular/platform-browser-dynamic": "2.0.0-rc.1",
"@angular/platform-server": "2.0.0-rc.1",
"@angular/router": "2.0.0-rc.1",
"@angular/router-deprecated": "2.0.0-rc.1",
"@angular2-material/button": "2.0.0-alpha.2",
"@angular2-material/card": "2.0.0-alpha.2",
"@angular2-material/checkbox": "2.0.0-alpha.2",
"@angular2-material/core": "2.0.0-alpha.2",
"@angular2-material/input": "2.0.0-alpha.2",
"@angular2-material/list": "2.0.0-alpha.2",
"@angular2-material/progress-circle": "2.0.0-alpha.2",
"@angular2-material/radio": "2.0.0-alpha.2",
"@angular2-material/sidenav": "2.0.0-alpha.2",
"@angular2-material/toolbar": "2.0.0-alpha.2",
"angular2": "2.0.0-beta.15",
"core-js": "^2.2.2",
"ng2-bootstrap": "^1.0.16",
"ng2-table": "^1.0.2",
"ng2-translate": "^1.7.0",
"normalize.css": "^4.1.1",
"rxjs": "5.0.0-beta.6",
"underscore": "^1.8.3",
"zone.js": "~0.6.11"
},
"@angular/upgrade":  "2.0.0-rc.1", will helps me??

you don't need this:
"@angular2-material/button": "2.0.0-alpha.2",
"@angular2-material/card": "2.0.0-alpha.2",
"@angular2-material/checkbox": "2.0.0-alpha.2",
"@angular2-material/core": "2.0.0-alpha.2",
"@angular2-material/input": "2.0.0-alpha.2",
"@angular2-material/list": "2.0.0-alpha.2",
"@angular2-material/progress-circle": "2.0.0-alpha.2",
"@angular2-material/radio": "2.0.0-alpha.2",
"@angular2-material/sidenav": "2.0.0-alpha.2",
"@angular2-material/toolbar": "2.0.0-alpha.2",

if you are planning to use ng2-*


An uninstaller?

Hello @bitbrute ,
Any availability of an uninstaller in the near future?
If you require any help building one, let me know..
Thanks

There's nothing to uninstall, just delete the directory

Either delete the directory as already mentioned, or if you installed it using pip, type:
pip uninstall evillimiter


Uninstall hangs while deleting IAF PVCs; incomplete deletion of resources

Description
When running the uninstall script, it will hang indefinitely trying to delete data-iaf-system-elasticsearch-es-aiops-0.
The hanging issue is due to IAF PVC deletion occurring before deletion of IAF operators.
Additionally, it does not handle the deletion two resources under the ibm-common-services namespace:
nss-odlm-scope
odlm-scope-managedby-odlm
(Can be seen by running oc get namespacescopes.operator.ibm.com -n ibm-common-services)
Notes:
Found through automated testing pipeline; some tests may have been creating user resources on the PVC causing the operator pod to hold on to it, which is a scenario that may not have been previously tested.
Resolution
Fixes are made in this pull request. IAF PVC deletion is moved after IAF operators and the two resources are added to deletion list.

Closin


Deployment strategy

In the HockeyApp distribution task there was an option for stating if builds should replace the previous one with the same version number or not. Is this possible witht he App Center task?

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

ID: da6643ac-ea32-1761-a7e9-0f17a3c0b8ee
Version Independent ID: 2442af0f-3f01-a91c-a98a-29c2f32d35b9
Content: App Center Distribute task - Azure Pipelines
Content Source: docs/pipelines/tasks/deploy/app-center-distribute.md
Product: devops
Technology: devops-cicd
GitHub Login: @vijayma
Microsoft Alias: vijayma

@DrGrijando Thank you for the feedback, assigning this to the author for review.
The latest version AppCenterDistributeV3 now supports a buildVersion parameter.


Azure Network adapt to use defsec

This is still a draft, tests in disable_rdp_from_internet_rule_test.go and ssh_blocked_from_internet_rule_test.go are failing.
Notice: the new check logic (cidr.CountAddresses(myCidr) > 1) isn't implemented in defsec at the moment of this PR creation.
Added security group resources in cases where rules are created by an azurerm_network_security_rule resource. A reference to a security group is required by Terraform and here serves to classify which group the rule belongs to.
access and direction (required) attributes have been added to the examples.
Defsec checks for a retention policy of less than 365, so the examples and tests here have been updated accordingly (formerly 90).
Closes #1237

@vanesasejdiu The tests are now passing (I pushed to your branch, I hope you don't mind!) - there's a couple of linting errors left to fix but otherwise it should be good to merge.

@liamg ofc I don't mind, thank you for solving this!


Enhanced Documentation

I tried to improve the docs...
relates #799

Yeah was a while.
Trying to get back :)


added memory tiles project for hacktoberfest

screenshots are present in the screenshots folder. Index.html is updated.

@shree675 everything is fine just include your  project section in index page

@iamrahulmahato thank you, but I have already included it in the index page:

Please let me know if I need to do something more.


Some links in readme.md can not be opened normally

Deep Dive
Configuration
JavaScript Usage
Native Usage
Source Maps
Resources
Releases
Bug Tracker
Example App
The link of "Native Usage" and  "Example App" can not be opened normally.

Thanks for reporting. I will fix these!


Fixed multiple mesh plotting

Previously in celeri_vis.py, mesh geometries were looped across, but the subset of slip component values was not extracted, so it would fill the triangles using values 0:meshes[i].n_tri for all meshes. Now the subset is taken and slip rates look good! Still need to figure out edge constraints, as those don't seem to be respected. If anything it seems like no-slip conditions are being applied regardless of settings.

This is fantastic @jploveless!  It feels so good to see these distributions again.


Issue 9

Resolve #9

Codecov Report

Merging #11 into master will increase coverage by 15.52%.
The diff coverage is 99.24%.

@@             Coverage Diff             @@
##           master      #11       +/-   ##
===========================================
+ Coverage   69.63%   85.15%   +15.52%
===========================================
  Files           4        4
  Lines         685     1435      +750
===========================================
+ Hits          477     1222      +745
- Misses        208      213        +5

Impacted Files
Coverage Δ

build/HttpService.js
56.25% <100%> (ø)
:arrow_up:

build/enums.js
100% <100%> (ø)
:arrow_up:

build/Traveler.js
34.45% <50%> (-0.37%)
:arrow_down:

Continue to review full report at Codecov.

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


Apt have some issues

Apt still have some issues in the kali v 2.0
with the old.kali repositories

Apt still have some issues in the kali v 2.0
with the old.kali repositories

Idk if this does more harm than good but I just removed the kali-snapshots file in /etc/apt/sources.list.d and that fixed the issue for me. Can't check for an unsigned repository if it not there🤷♂


Add filecheck script to check for essential files

Check for presence of description.md and metadata.yml.
Add this script to travis build.
 Let me look at both of these—and if you have an opinion on which we should merge, please speak up.

I like that this prints the error to STDERR.
I'm on the fence about the progress thing. I actually have a philosophical thingy around CLIs and output (which I don't adhere to strictly, but which I think about a lot). I wrote about it here: http://whipperstacker.com/2015/10/05/silence-noisy-output-from-command-line-tools-by-monitoring-progress-with-siginfo/
I think in the case of x-common and builds and things it makes sense to include it, because we're going to be running it in a context where we're impatient for it to complete.
OK, @tejasbubane @Insti -- what do you think? Should we merge one or the other or combine some aspects of both?

I liked @Insti's usage of require_file function. Maybe combine some aspects of both? I think the progress bar would go well with CI. And we should add some success message as well.

Shall we merge mine? It currently mostly works, and then anyone can contribute further improvements. It's a shame we duplicated our efforts on this one.

It's a shame we duplicated our efforts on this one.

Yeah we should call dibs as soon as possible (note to self)

Shall we merge mine? It currently mostly works, and then anyone can contribute further improvements

Sounds good 👍

I've added errors to STDOUT and a --progress command line option. #458

Closed in favor of: #458 which does essentially the same thing.
Thanks for your work on this @tejasbubane, its unfortunate we both worked on the same feature at the same time.
I hope I'm not out of line by merging that one and closing this, but It's been a month, and no-one else was stepping forward to make the decision. If it's wrong we can always revert and do it the other way.

No worries @Insti 👍


EHR endpoint responds with ehr_status as type "EHR_STATUS" instead of "OBJECT_REF"

Hello! I have been running some tests against different openEHR implementations using a fork of the test suite at https://github.com/ehrbase/integration-tests and have stumbled on a few things that seem a bit "off" with EHRBase, so plan to submit some bugs to try and start the discussions going on them!
First is that from what I can tell (without at all being an "expert" on this) is that it seems like the ehr_status reference that is being returned from the /ehr endpoint in EHRBase is returning an instance of EHR_STATUS instead of an instance of OBJECT_REF
I understand that this might have quite a bit of impact/reach as it is a relatively fundamental thing here, so maybe it is good if someone can investigate this properly and make sure everything looks right compared to the spec vs not?
For example with the ehr_status attribute uid vs id, what I see in EHRBase is that a request to /ehr is returning this:
...
  "ehr_status": {
    "uid": "..."
    ...
  }
...

But from what I can see both in the REST API spec and the SM / BASE specification it seems like it should be id instead?
...
  "ehr_status": {
    "id": "..."
    ...
  }
...

Environment information
{
  "ehrbase_version": "0.25.0-SNAPSHOT",
  "openehr_sdk_version": "1.25.0-SNAPSHOT",
  "archie_version": "2.0.1",
  "jvm_version": "Eclipse Adoptium 17.0.6+10",
  "os_version": "Linux amd64 <IP_ADDRESS>-microsoft-standard-WSL2",
  "postgres_version": "PostgreSQL 13.4 on x86_64-pc-linux-musl, compiled by gcc (Alpine 10.3.1_git20210424) 10.3.1 20210424, 64-bit"
}

Steps to reproduce
Create an EHR using the REST API and fetch it using either:

POST to /ehr with header Prefer: return=representation, or
POST to /ehr then GET to /ehr/:ehr_id

(for example by runing the following command against the default EHRBase service from the docker-compose example)
curl --silent --request POST --header 'Prefer: return=representation' http://ehrbase-user:SuperSecretPassword@localhost:8080/ehrbase/rest/openehr/v1/ehr | jq .

Actual result
Response's ehr_status object seems to be of type EHR_STATUS and does not have all of the same attributes as OBJECT_REF (for example that $.ehr_status.uid is given instead of $.ehr_status.id)
{
  "system_id": {
    "_type": "HIER_OBJECT_ID",
    "value": "ae22c348-fe8b-455d-829f-0aaf104aa83b"
  },
  "ehr_id": {
    "_type": "HIER_OBJECT_ID",
    "value": "d04326aa-cbcf-42cc-91b7-8b54716f7bd7"
  },
  "ehr_status": {
    ... an EHR_STATUS instance is returned instead of an OBJECT_REF? ...
    "_type": "EHR_STATUS",
    "name": {
      "_type": "DV_TEXT",
      "value": "EHR Status"
    },
    "subject": {
      "_type": "PARTY_SELF"
    },
    "archetype_node_id": "openEHR-EHR-EHR_STATUS.generic.v1",
    "uid": {
      "_type": "HIER_OBJECT_ID",
      "value": "b80be12c-a97d-4d3d-95fb-ae65c02ca8fd::local.ehrbase.org::1"
    },
    "is_modifiable": true,
    "is_queryable": true
  },
  "time_created": {
    "_type": "DV_DATE_TIME",
    "value": "2023-03-13T10:28:19.950Z"
  }
}

Expected result
The ehr_status object in the response from /ehr should be an instance of OBJECT_REF instead, per the REST API specification.
Further information
I did not see it returned in the response, but wonder if there is any case for /ehr to return the ehr_access object, and if so, if it might have the same issue?  As per the spec it is the same object type (OBJECT_REF) which should be returned there as well (and not EHR_ACCESS)

Some references from the official openEHR specs over the years that might be also useful:

1.0.0 released in 2018 https://specifications.openehr.org/releases/ITS-REST/Release-1.0.0/ehr.html#ehr-ehr-post without example response
1.0.1 released in 2019 https://specifications.openehr.org/releases/ITS-REST/Release-1.0.1/ehr.html#ehr-ehr-post with example response
1.0.2 released in 2021 https://specifications.openehr.org/releases/ITS-REST/Release-1.0.2/ehr.html#ehr-ehr-post with example response
1.0.3 released in 2022 https://specifications.openehr.org/releases/ITS-REST/Release-1.0.3/ehr.html#tag/EHR/operation/ehr_create, with example, based on OAS 3.0 format

These were mentioning that "... The new EHR resource is returned in the body when the request's Prefer header value is return=representation, otherwise only headers are returned ...", which implies the RM structure of the EHR, for example:
{
  ...,
  "ehr_status": {
    "id": {
      "_type": "OBJECT_VERSION_ID",
      "value": "8849182c-82ad-4088-a07f-48ead4180515::openEHRSys.example.com::1"
    },
    "namespace": "local",
    "type": "EHR_STATUS"
  },
  ...
}

There is however another request-header controlling the resolve of the OBJECT_REFs in the response:
Prefer: return=representation, resolve_refs

Perhaps this is enabled by default in some implementations?!
This issue might be also related to a missmatch between REST API and outdated SM specifications around EHR vs EHR_SUMMARY resource.


Make blending work for filter modifiers such as OmitFromRollup

Coverage increased (+0.007%) to 90.933% when pulling 8717f766b27720a0e409fcb14c151141654b7016 on gl3nn:blend-omit-from-rollup into 9bcef24149a14c889920538637436f92c44f9640 on kayak:master.


include syntax works locally, fails on csswg.org

In CSS color 4:
<pre class="include-code lang-javascript">
path: conversions.js
highlight: js
</pre>

correctly inlines the javascript file, with syntax hilighting, when bikeshed is run locally. On csswg.org the include fails. Overview.bs and conversions.js are in the same directory.

Hm, this'll be something to do with the server setup. I think I recall @plinss saying that they copy the files into a temp directory to generate them; presumably they're not copying over the support files as well.
@plinss, is this an accurate read? If so, could you copy over all the files in the given folder?

Took a look at the server code, it does scan for includes and copies those over as well during generation. However, it's looking for <pre> elements with an 'include' class to find the includes. I just need to look for 'include-code' as well. Are the other types of includes? Or should I just look for classes that are 'include-*'?

Yeah, currently I've got include-code and include-raw. In case I add more in the future, might as well just grab all the include-* classnames.

Ok should be fixed. I'm now copying all files specified in <pre> with 'include' and 'include-*' classes (literally: '^include(-.+)?$', so should be safe and future-proof).

And indeed the include in CSS color 4 is now working correctly on CSSWG.org. Thanks, @plinss and @tabatkins !


[Document] Create table example in doc is incorrect

The example here is incorrect. https://docs.delta.io/latest/delta-batch.html#create-a-table
CREATE IF NOT EXISTS TABLE events (
  date DATE,
  eventId STRING,
  eventType STRING,
  data STRING)
USING DELTA

It should be
CREATE TABLE IF NOT EXISTS events (
  date DATE,
  eventId STRING,
  eventType STRING,
  data STRING)
USING DELTA

BTW, where's the repo of delta doc ?

Thanks for reporting this. This doc will be updated soon.

BTW, where's the repo of delta doc ?

Currently it's not in a git repo. We are working on making it become a github project so that it's easier to maintain.

The doc has been fixed


Suggestion: Show hidden packages

add -force to line 831:
$scooppkg = (Get-ChildItem -Force -Path $scoopdir -Directory).Count - 1
so it will show the correct package count even if the scoop/apps folder or subfolders are hidden

Where is your scoop folder located?
Even if your top-level scoop folder is hidden, Get-ChildItem $scoopdir will show all the folders correctly. -Force is not required.

c:\users\[user]\
it's because all of the subfolders were hidden as well

Paste the output of the following two commands: scoop list and Get-ChildItem -Path c:\users\[user]\scoop\apps -Directory

With scoop subfolders hidden:
> scoop list
scoop: 'list' isn't a scoop command. See 'scoop help'.

the other returns nothing
With scoop subfolders unhidden:
> scoop list
Installed apps:

  winfetch 2.3.0 [main]

> Get-ChildItem -Path c:\users\yehud\scoop\apps -Directory

    Directory: C:\Users\yehud\scoop\apps

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d----          11/16/2021 11:05 PM                scoop
d----          11/16/2021 11:05 PM                winfetch

This is expected behaviour.
Scoop also internally uses Get-ChildItem and related commands - if scoop list doesn't display anything, neither should Winfetch.


Delete role appointment for speech

So the duplicated role can be removed as requested in https://govuk.zendesk.com/agent/tickets/5182511
As a result, role appointment can be deleted and consequently, so can duplicated role.
⚠ This repo is Continuously Deployed: make sure you follow the guidance ⚠
Follow these steps if you are doing a Rails upgrade.

Good shout @DilwoarH, we should indeed change this as it will catch out devs in a few scenarios.
As an alternative Whitehall in future Whitehall does have a data migration pattern which is used for changes to data content rather than database structure.


Add projection aware bokeh stream callbacks

This PR will ensure that bokeh stream callbacks appropriately project coordinates back to the original coordinate reference system. As a first step it splits the plotting baseclasses into their own module.

Tests just passed, merging.


Fix extra character typo in syntaxhighlight.md

Hey! While reading through the docs for Syntax Highlighting Plugin, I found this extra lowercase "l" character in "bellow" on Line 43.
Everything else on the page looks great and the syntax highlighter works like a charm. Thanks! @zachleat

Thank you!

No problem Zach!


Gradient Support for colors

Instead of a fixed color picker, support to add gradients could be added at all color pickers.

That's a good feature suggestion. Let me know if you're interested in working on this feature.

Yes, Picking this up. You can assign it to me.


Is Turkish to ASCII correct?

Example: Is this correct?
"görüşmek" -> "gorusmek"

Can a native speaker, please check the character-replacement, thanks.
https://github.com/voku/portable-ascii/blob/master/src/voku/helper/data/ascii_by_languages.php#L193

Yes. It is correct.

Thanks for the feedback! :+1:


⚠ TorrentLeech has degraded performance

In e90ecb4, TorrentLeech ($TL) experienced degraded performance:

HTTP code: 200
Response time: 4127 ms

Resolved: TorrentLeech performance has improved in ee0f8d7 after 8 minutes.


Fix/hide google facebook

Many campers had complained in the past about their Facebook being shown. I don't think Facebook or Google have any professional value, so I've removed them from code portfolios. I don't expect anyone to protest - we will see whether this is the case.

Looks good!


assignment mismatch: 2 variables but thrift.NewTSocketConf returns 1 value

version:v0.13.0

Please check the version of thrift and the version of iotdb-clinet-go.
In thrift 0.14.1, function NewTSocketConf returns 2 values. It's specific implementation of this function is as follows:
func NewTSocketConf(hostPort string, conf *TConfiguration) (*TSocket, error) {
    addr, err := net.ResolveTCPAddr("tcp", hostPort)
    if err != nil {
        return nil, err
    }
    return NewTSocketFromAddrConf(addr, conf), nil
}

In thrift 0.15.0, function NewTSocketConf returns 1 value. It's specific implementation of this function is as follows:
func NewTSocketConf(hostPort string, conf *TConfiguration) *TSocket {
    return NewTSocketFromAddrConf(tcpAddr(hostPort), conf)
}

Has this issue been solved? If this issue has been solved, it can be closed.


Update find event command

Codecov Report
Attention: Patch coverage is 33.33333% with 2 lines in your changes missing coverage. Please review.

Files with missing lines
Patch %
Lines

.../seedu/address/logic/parser/AddressBookParser.java
33.33%
1 Missing and 1 partial :warning:

Files with missing lines
Coverage Δ
Complexity Δ

...logic/commands/eventCommands/FindEventCommand.java
0.00% <ø> (ø)
0.00 <0.00> (?)

...u/address/logic/parser/FindEventCommandParser.java
0.00% <ø> (ø)
0.00 <0.00> (ø)

.../seedu/address/logic/parser/AddressBookParser.java
84.00% <33.33%> (-7.31%)
12.00 <0.00> (ø)


Clicking on dates opens Chronology plugin

As a step further to #43, it would be awesome if an integration with Chronology could be set: by clicking on the date, the user could open it in a chronology context, by opening the Chronology plugin’s calendar at the clicked date.

Thanks @xplosionmind , I'm not familiar with the plugin you are referring to. I've been trying to keep this plugin free from external dependencies but this suggestion and previous ones around some integration with dataview makes me think it is something to consider.

Instead of a dependency, it could be considered as an opt-in optional integration.

I haven't checked the API in a while but if memory serves, there was a way to query which plugins were initialised. If this is correct, then an automatic opt-in should be feasible. I don't have much time this month but if you want to give it a go I'd be happy to review/discuss.

I am no developer, I am very sorry 😢

Sorry! My bad for assuming 😓 I'll see when I have time to have a look at this then


Constructor Syntax

This issue was originally filed by<EMAIL_ADDRESS>
I have an issue with the following:
class Point {
  var x, y;
  Point(this.x, this.y);
  scale(factor) => new Point(xfactor, yfactor);
  distance() => Math.sqrt(xx + yy);
}
The problem is that the constructor (in this case there's only one, but there may be many) includes the name of the class. This is (as far as I can tell) unnecessary duplication. Every time you rename a class, you need to change the name in multiple places.
I understand this could be solved by an IDE (which would do the work for you). However, simpler text editors have their place, too.
Please implement a different syntax, perhaps a 'new' keyword. I don't care what the exact syntax is, as long as there isn't unnecessary duplication.

Similar Issue To Dart Multiple Constructors


Pass BatchSender to BlockPublisher consensus interface, enables Conse…

…nsus algorithms to broadcast batches.
Signed-off-by: Cian Montgomery<EMAIL_ADDRESS>

@peterschwarz genesis comment in place for your review

@peterschwarz the update is in place!


[Help] File Upload/Custom Component

Hello, can i hide / remove these items as the image.
I'm trying to create a custom component, like uploading files (display image = true), using the JavaScript Check Matrix example, but I'm lost, I can't figure out how to do it.
Thanks, Sam.

You don't need a custom component to do this. Just override the template for the file component. Here is docs on how to do that. https://github.com/formio/formio.js/wiki/Templates-API
And the template you will want to override can be found @ https://github.com/formio/formio.js/blob/master/src/templates/bootstrap/file/form.ejs

Thank you @travist. This is helpful.
Based on the documentation, I tried overriding file upload template with angular-formio in here, It might helpful for others.


Enable support for OAuth

Raspotify is just a package

[X] I know Raspotify is just a package

Due Diligence

[X] I have done my due diligence

What can we do to make Raspotify more awesome?
As of https://github.com/librespot-org/librespot/issues/1308 and subsequent PR https://github.com/librespot-org/librespot/pull/1309, Spotify has apparently disabled password auth altogether and forces OAuth for everyone. Please add an option to authenticate with OAuth through librespot. Upstream librespot already supports OAuth with -j option, somehow I can't figure out which cache dir to use to get it working with Raspotify after successful auth.

Same issue i get :
Password authentication no longer supported, use OAuth
any way to solve this?
Regards.

i also have this problem.

Same problem, got the auth token via librespot, but not sure where to put it so that Raspotify can see it

I suspect this can be solved by not using a dynamic user through systemd. This way, you will be able to write to raspotify's directory. I won't be able to test this until next week, however. Perhaps you could try it out.
Change /lib/systemd/system/raspotify.service from
[Service]
DynamicUser=yes

to
[Service]
DynamicUser=yes

Then run systemctl daemon-reload && systemctl restart raspotify.

Thanks @kimtore, that worked perfectly!
For anyone landing here, below is a summary of the steps I followed to get this working on a Raspberry Pi 4 running Bullseye:

Stopped the raspotify service with systemctl stop raspotify after noticing errors on the librespot logs: Connection failed: Login failed with reason: Bad credentials

Cloned the tip of the librespot repository to get the fix (no new release available at the time of writing, v0.4.2 was last release) and built it locally on the Raspberry Pi following instructions here:
https://github.com/librespot-org/librespot/blob/master/COMPILING.md

Might need to install Rust if you didn't have it already. Make sure you select the right backend, in my case had to specify alsa using: cargo build --no-default-features --features "alsa-backend"

Followed the advice in this comment to authenticate using OAuth: https://github.com/librespot-org/librespot/pull/1309#issuecomment-2348563401

After running the librespot --cache <YOUR_CONFIGURATION_PATH> -j command on the Pi, I noted the listener port number

Then copied the full output URL on to a laptop browser, which had port-forwarding setup via ssh to point back to the Raspberry Pi IP address and port.

That then authenticated to Spotify on the laptop browser (needed to enter Spotify username/password), which sent the authentication response back to the Raspberry Pi (via port-forwarded), writing the authentication token to the path specified when running librespot with the -j option

Changed /lib/systemd/system/raspotify.service as advised above to specify

[Service]
DynamicUser=no

Then run systemctl daemon-reload && systemctl restart raspotify.
After this, noticed below new lines in the librespot logs:
Found pre-existing private CacheDirectory= directory /var/cache/private/raspotify, migrating to /var/cache/raspotify.
Apparently, service previously had DynamicUser= turned on, and has now turned it off.
Was also still seeing the Bad Credentials failure message too at this point, as it was still using username/password

The authentication token was still in the folder specified and the token file is called credentials.json. I copied that now to the cache folder mentioned in the logs: cp credentials.json /var/cache/raspotify/

Updated the raspotify config file sudo vi /etc/raspotify/conf to comment out below items to enable 0Auth instead of username/password

#LIBRESPOT_DISABLE_CREDENTIAL_CACHE=
#LIBRESPOT_DISABLE_DISCOVERY=
#LIBRESPOT_USERNAME="mysecretusername"
#LIBRESPOT_PASSWORD="mysecretpassword"

Restarted raspotify with systemctl restart raspotify and everything worked, clean librespot logs no more errors

Great, thanks for detailing the steps!
Here are my thoughts.

Manual building steps should not be needed for Raspotify 0.44.1, because it already has the oauth feature merged in.
Everyone agrees the OAuth flow user experience is suboptimal, but the conversation on librespot's side is not resolved yet.
In the meantime, I suggest changes to the systemd service, configuration file and documentation.

Just wanted to comment that you dont need port forwarding for the OAuth flow. You can copy the callback URL returned by spotify (with a <IP_ADDRESS> address) and use curl to invoke it from the raspberrypi where you executed "librespot --cache <YOUR_CONFIGURATION_PATH> -j"


UI: Need to change Angular multi authentication credentials tabs to be built dynamically

Opening a new issue to address multiple tabs for authentication credentials box on Host/Provider add/edit screens to be built dynamically, using some model methods that will return the tabs to be displayed on screen along with the fields and other info to be displayed in the tabs. These tabs are being converted to  use angular in https://github.com/ManageIQ/manageiq/pull/3859

@fryguy will require model methods as well as some guidelines on this work.


Missing activeClasses

First time moving the mouse over an item the activeClasses and is-active is missing

this is very odd, have you an example for this ?
you can see on the demo.html that any of them do get the blue background and the white text
except if for some reason it's not selecting the first item, in which case indeed there won't be any active classes on the first item until your properly select it

Tried to record a video of what I am experiencing.
https://github.com/user-attachments/assets/5a5a30f8-52fd-4568-a41b-8ecef84eff53

thanks that was super helpful !
there was an event listener missing for this case indeed!
fixed in https://github.com/lekoala/bootstrap5-autocomplete/releases/tag/1.1.33

closing this, feel free to reopen if needed


Sort extensions by extension update date

It's in the title : I could use the possibility to browse installed extensions sorted by installation update date.
I often install a batch of extensions at a time, for a given language, or about a given feature. Some times I find unrelated extensions during the search and install them too.
So I restart the editor with a whole bunch of new extensions, and its behavior may be quite different compared to last reload.
I don't necessarily remember the names of all the newly installed extensions, and after restarting the editor sometimes I wish to go back to the extension read-me to see the how-to again, or just get the extension's name to use its commands.
When you have a lot of extensions installed it may be hard to browse through to find the new ones.
It would be nice to have a way to discriminate the latest installed extensions.
Thank you for this great editor anyway :)

I want this feature too.

I'll take this.

We do not store any data around install timestamps. All information we show around extensions are coming from the marketplace. We could use at the timestamps of the directory for the extension, but for every extension update, a new folder is created and the older one is deleted.
So there is no way at the moment to get the install date.

We could use at the timestamps of the directory for the extension, but for every extension update, a new folder is created and the older one is deleted.

In my ticket I was asking about install OR UPDATE dates, so this way, although shakey, would've worked for me fine.

In my ticket I was asking about install OR UPDATE dates

Thanks for clarifying. That was not clear to me initially.
This does simplify things.

Please note that my ticket is not this one (it was marked as duplicate of
this one despite being older).
On Mon, Sep 24, 2018, 21:13 Ramya Rao<EMAIL_ADDRESS>wrote:

In my ticket I was asking about install OR UPDATE dates
Thanks for clarifying. That was not clear to me initially.
This does simplify things.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/vscode/issues/53405#issuecomment-424071560,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ANNZuLlrrIvg7rr9wUU29CPsbyDNWJS8ks5ueSDOgaJpZM4U-cxO
.

@KillyMXI I don't think janderudder was referring to the original date an extension was installed. Since every update requires an extension to be reinstalled, he was most likely asking for a way to organize the last date an extension was updated or installed. I mean, I don't think anyone would want to keep track of when they first installed an extension -- that's pretty useless.
Anyways, I really hope we get some sorting options for dates because figuring out the latest extension settings is a hassle.

@KillyMXI I don't think janderudder was referring to the original date an extension was installed.
Actually I was. I am not familiar with how VS Code extensions work. Anyway, the purpose of this feature, as I see it, would be to have a view of newest installed extensions so we can easily find the cause of a change in the UI for instance, after installing a bunch of extensions and not paying much attention to the names and details.
I guess it would fall in this use case to sort extensions by update date.

Copying @MeikTranel's comment from #59315 as I think it provides yet another scenario where this feature is useful

As a user, who enjoys reading patch notes it'd be cool if there was a way to sort an extension by the date of the update/install. That way i can still use autoupdate and in the event of an error that suddenly erupts i could help extension authors by providing context, when the issues first appeared and if its correlating with the installation or update of an extension.

Are we all agreeing that "updated date" is most interesting detail, thus should be the focus of this issue?
If so we should be updating the title? Installation date isn't really capturing it then. That would reduce the number of duplicate issues.

Does anyone know if this issue is being looked into to get it forward? I really miss this feature, as it's impossible to discover new extensions in general and color themes in particular.

I do think they still have this on their mind. The last two sprints were really "secretive" when it came to microsoft internal development on vscode.. the UI team was working intensively on the iconography relaunch, which is in preview right now. I assume since the overarching extension UI issue #68527 is still on the iteration plan that means we'll see movement soon.

@johanngerell yes, as @MeikTranel mentioned we have some explorations around updating our UI for extensions and are looking to enable sorting (see #68527). I'm hoping that after we update our iconography (#8017) that we'll be able to tackle this next.

Just going to copy my comment into this issue:

Something I've found missing from the current functionality that would be handy to have would be a way to order extensions by install date.
I installed the Trailing Spaces extension to highlight any random trailing spaces that have slipped into the code and it worked great, but randomly a few hours later I encountered a problem with it where it was incorrectly highlighting lines that were had no whitespace issues.
I went to the extensions pane to remove the extension and couldn't remember what it was called. I clicked on the menu button (three dots) in the extension pane, first to show only the installed extensions (which hides the pre-installed and recommended extensions), then again to sort by installation date.
Currently we have:

Sort By: Install Count
Sort By: Rating
Sort By: Name

but no "Sort By: Install Date".
It was only a minor nuisance to re-read all of my installed extensions (25 of them, mainly language syntax support extensions) to find the misbehaving one but this would be a nice quality of life fix to add for devs that are trying new extensions

Following up on this feature request.
For me I have ~40 extensions installed and all of sudden some of them is making my intellisense slow (by comparing between all extension disabled and enabled).  So it will be really helpful if there is a way to just look at extensions that get updated most recently to help troubleshoot problems like this.

With so many extensions it can be hard to recall their names. The problem starts when installing new extensions — you want to try it, but you can't trust you'll be able to uninstall it. When you can't recall the name, that is.
Sorting by installDate would be quite useful for maintaining ones workspace — and, encouraging a more adventurous use of newer extensions.

I need this too. It would make it a lot easier to figure what newly updated extension is  making VS Code run impossibly slow.

There's a bug with one of my recently installed extensions and this would be useful to figure out which one

After re-reading this whole thread and some of the related threads mentioning this one, I just want to mention that kind of two different features are being talked about. They are similar - indeed in some cases they serve the same purpose - but they are still different enough that it's worth clarifying, IMO.
So, in sorting extensions by update date, the "update date" part may be understood in two ways:

the date the extension source code was updated by its author on the marketplace
the date the extension package was installed locally on the user's machine

Case 2 includes the first installation and subsequent updates. Technically an update is made of deletion + new install of the extension (according to what I read).
Having a way to sort/filter recently updated extensions on the marketplace is cool for discoverability, but the second feature is more adapted to keeping track of one's own workspace state.

You want to read the docs of your last installed extensions but don't remember their names? Sort by local install date.
Your editor starts being slow all of a sudden? Check the last extensions updated on your machine.

Say you log in after a two months vacation: what's new updates to you is already old news on the marketplace.
To wrap this up, if you want this feature, it seems the way to go is to write an extension that tracks the creation date of each extension's subdirectory on the local machine.

Since my FR was closed as a duplicate to this one, which it barely is but whatever, let me extend this feature request by what I requested:
It would be nice to have some notification which extensions were updated this session so that you don't have to actively scroll through the extensions panel and check if anything has indeed updated. Disable-able through a setting of course bc. it could annoy some users.
Use cases:

You have some extension disabled bc. it's broken any you wait for an update to be able to use it again.
You know some extensions require a reload after an update to work properly.
You want to know when your favourite extension updated to check out the changelog.

This could also help to track down the source of performance problems like mentioned multiple times because the user already knows what updated last.

fantastic works
we can see the recently updated exts and also @outdated exts
thanks

BTW: we could use one filter to see ext with two groups
and can we have this two
https://github.com/microsoft/vscode/issues/142007#issuecomment-1039798341

Isn't it strange to close the ticket before it has been verified as resolved?

We close the issue when it is fixed and get it tested. If there are any issues with the feature we will open new bugs.
@benibenj Is not this covered by a Test Plan Item?

This is indirectly covered by a test plan item (updates view test plan item)