Graphtie Datapoint value resets to zero

Hi, datapoint value resets to zero after some time.
initially
[0,<PHONE_NUMBER>]
[449.968673,<PHONE_NUMBER>]
later
[0,<PHONE_NUMBER>]
[0,<PHONE_NUMBER>]
[0,<PHONE_NUMBER>]
retentions are 10s:7d,5m:30d,15m:5y
Please Help me I'm new to this. tried searching it but didn't find any helpful resource.

Those timestamps are 60s apart. Your schema doesn't specify any retentions with that precision.
The likeliest answer is that something is overwriting your data with zeroes. I can't tell anything else based on the information you've provided.

Hi,
As you said  I'm new to the system, and the person who configured it is also not available right now,
I sent some 40000000 requests, in this the data seems to be fine but if i send some 1000 requests the same problem what i mentioned above is happening. So can you please let me know what all the configuration files required for you to cross check. (I think its expecting continuous data )

Closing. The most likely conclusion (since no one else has reported this) is that the data was being overwritten. No additional information has been provided.


[Bug]: iam_policy_allows_privilege_escalation passes when it should fail - regarding iam:PassRole

Steps to Reproduce
I run a prowler scan to check my AWS IAM policies.
I run the following command - prowler aws -p ernie -c iam_policy_allows_privilege_escalation .
My AWS policy is as follows -
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::11223344:role/ecs",
        }
    ]
}

The scan fails with the message - Custom Policy arn:aws:iam::421474263769:policy/ernie-test-account-admin-minimized allows privilege escalation using the following actions: {'iam:PassRole'}
Strangely, if I update the same IAM policy to be the following and I run the same exact prowler scan then the scan will pass on the policy. I think that prowler has a bug because it should not pass with the addition of  "Action": "account:GetAccountInformation" -
{
    "Statement": [
        {
            "Action": "iam:PassRole",
            "Effect": "Allow",
            "Resource": "arn:aws:iam::11223344:role/ecs"
        },
        {
            "Action": "account:GetAccountInformation",
            "Effect": "Allow",
            "Resource": "*"
        }
    ],
    "Version": "2012-10-17"
}

Also, I want to get the original policy without the "Action": "account:GetAccountInformation"  addition to pass. From my research, If I update the policy with the condition show below I would think that it would then pass the prowler scan, however it still fails with the message - Custom Policy arn:aws:iam::421474263769:policy/ernie-test-account-admin-minimized allows privilege escalation using the following actions: {'iam:PassRole'} :
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::11223344:role/ecs",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "ecs.amazonaws.com",
                    "aws:SourceAccount": "11223344"
                }
            }
        }
    ]
}

Expected behavior
The prowler scan should fail with the following policy  - which it does :
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::11223344:role/ecs",
        }
    ]
}

The prowler scan should fail with the following policy  - which it does NOT :
{
    "Statement": [
        {
            "Action": "iam:PassRole",
            "Effect": "Allow",
            "Resource": "arn:aws:iam::11223344:role/ecs"
        },
        {
            "Action": "account:GetAccountInformation",
            "Effect": "Allow",
            "Resource": "*"
        }
    ],
    "Version": "2012-10-17"
}

I think that the prowler scan should pass with the following policy - which it still fails :
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::11223344:role/ecs",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "ecs.amazonaws.com",
                    "aws:SourceAccount": "11223344"
                }
            }
        }
    ]
}

Actual Result with Screenshots or Logs
2023-07-28T09:50:18.064060;prowler-aws-iam_policy_allows_privilege_escalation-XXXX-us-east-1-ernie-test-account-admin-minimized;aws;iam_policy_allows_privilege_escalation;Ensure no Customer Managed IAM policies allow actions that may lead into Privilege Escalation;Software and Configuration Checks,Industry and Regulatory Standards,CIS AWS Foundations Benchmark;FAIL;Custom Policy arn:aws:iam::XXXX:policy/ernie-test-account-admin-minimized allows privilege escalation using the following actions: {'iam:PassRole'};iam;;high;AwsIamPolicy;;;Ensure no Customer Managed IAM policies allow actions that may lead into Privilege Escalation;Users with some IAM permissions are allowed to elevate their privileges up to administrator rights.;;Grant usage permission on a per-resource basis and applying least privilege principle.;https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege;;;;;AWS-Well-Architected-Framework-Security-Pillar: SEC02-BP06 | ENS-RD2022: op.acc.4.aws.iam.1, op.acc.4.aws.iam.2, op.exp.8.r4.aws.ct.8;;;;CAF Security Epic: IAM;ernie;XXXX;;;;;;us-east-1;ernie-test-account-admin-minimized;arn:aws:iam::XXXX:policy/ernie-test-account-admin-minimized
How did you install Prowler?
From brew (brew install prowler)
Environment Resource

Workstation

OS used

MacOS

Prowler version
Prowler 3.6.1
Pip version
I do not have pip installed
Context
Besides pointing out the bug I think I found, I am also hoping you can suggest a way to get the scan to pass using the policy shown below. Or is using iam:passRole just to much of a risk and it will always fail with using it and we have to accept that.
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::11223344:role/ecs",
            "Condition": {
                "StringEquals": {
                    "iam:PassedToService": "ecs.amazonaws.com",
                    "aws:SourceAccount": "11223344"
                }
            }
        }
    ]
}

Privilege escalation is highly dependent on the context. If the ecs role has more permissions than what the user has, and they can control what the ecs task does (what is running in the docker container), then this does introduce a priv esc vector.
The code for the check can be found here https://github.com/prowler-cloud/prowler/blob/master/prowler/providers/aws/services/iam/iam_policy_allows_privilege_escalation/iam_policy_allows_privilege_escalation.py
As much as i love prowler, this is a very rudimentary check, and it just looks for possible actions that might result in a privilege escalation path.
I highly recommend pmapper https://github.com/nccgroup/PMapper
It does a better job at determining priv esc paths by creating a graph of all the principals and policies within an account, and then determining if there are paths to admin principals. Check out the wrongadmin and privesc * preset queries

But nice catch, it does seem like there is a big with the check with what you have detailed about it passing if you have 2 statements in the policy

For another example on how this check falls short, take a look at these priv esc paths https://rhinosecuritylabs.com/aws/aws-privilege-escalation-methods-mitigation/
Some would require that you can update a policy that is applied to your principal, others might require that you can create a resource AND pass a role to it. This check only checks for if you have one of the relevant permissions, not if you have the correct combination to exploit a certain path (ie can you update your own policy, or can you update an iam policy that isnt attached to anything)

The check iam_policy_allows_privilege_escalation is not accurate and we need to modify their logic, so right now this check can produce false positives/negatives.
I think this PR is related too https://github.com/prowler-cloud/prowler/issues/2220

@jfagoagas it's related, but there also seems to be bug that @ernievd has found with the logic (it doesnt pick up on the iam:PassRole action when there is multiple statements in the policy)

The below policy also fails theiam_policy_allows_privilege_escalation test.
Is this failing because of the bug mentioned above or should this indeed pass? If it is a failure can you give an example of how to update this to make it properly pass?
Sorry but unfamiliar with some of this.
{
    "Statement": [
        {
            "Sid": "AssumeGantryRoles",
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": "arn:aws:iam::112233445566:role/gantry-qa-company-specificrole"
        }
    ],
    "Version": "2012-10-17"
}

Hi @ernievd @roisec I'm working on a fix right now. Could you please check it again with the branch PRWLR-1969-aws-iam-policy-allows-privilege-escalation-check-are-not-accurate-2220?
Thanks!

I installed an ran it. It came up as version 3.7.2
It appears as if is is not outputting everything it finds in the files. It states that there are 6 passed and 3 failed yet the logs only shows one record. And before i only had the one failure from what i showed above and now it is showing multiple failures. I am not sure what should be a pass or a fail myself.
Should this pass of fail -

{
    "Statement": [
        {
            "Sid": "AssumeGantryRoles",
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": "arn:aws:iam::112233445566:role/gantry-qa-company-specificrole"
        }
    ],
    "Version": "2012-10-17"
}

prowler-output-421474263769-20230801075613.csv

@ernievd in terms of the logic in it's current state, the check will fail if any of the following actions exist within this array:
privilege_escalation_iam_actions = {
            "iam:AttachGroupPolicy",
            "iam:SetDefaultPolicyVersion2",
            "iam:AddUserToGroup",
            "iam:AttachRolePolicy",
            "iam:AttachUserPolicy",
            "iam:CreateAccessKey",
            "iam:CreatePolicyVersion",
            "iam:CreateLoginProfile",
            "iam:PassRole",
            "iam:PutGroupPolicy",
            "iam:PutRolePolicy",
            "iam:PutUserPolicy",
            "iam:SetDefaultPolicyVersion",
            "iam:UpdateAssumeRolePolicy",
            "iam:UpdateLoginProfile",
            "iam:*",
            "sts:AssumeRole",
            "sts:*",
            "ec2:RunInstances",
            "ec2:*",
            "lambda:CreateEventSourceMapping",
            "lambda:CreateFunction",
            "lambda:InvokeFunction",
            "lambda:UpdateFunctionCode",
            "lambda:*",
            "dynamodb:CreateTable",
            "dynamodb:PutItem",
            "dynamodb:*",
            "glue:CreateDevEndpoint",
            "glue:GetDevEndpoint",
            "glue:GetDevEndpoints",
            "glue:UpdateDevEndpoint",
            "glue:*",
            "cloudformation:CreateStack",
            "cloudformation:DescribeStacks",
            "cloudformation:*",
            "datapipeline:CreatePipeline",
            "datapipeline:PutPipelineDefinition",
            "datapipeline:ActivatePipeline",
            "datapipeline:*",
        }

As @jfagoagas mentioned:

The check iam_policy_allows_privilege_escalation is not accurate and we need to modify their logic, so right now this check can produce false positives/negatives.

@Fennerr this only applies for the latest version, there is a fix in this branch PRWLR-1969-aws-iam-policy-allows-privilege-escalation-check-are-not-accurate-2220.
Pleaase @ernievd @Fennerr give it a look if you get a chance. Thanks!

Not sure what i am doing wrong - I changed to the branch you specify yet it comes up as version 3.7.2
Also, now when I run it i get an error. See attached screenshot

Not sure what i am doing wrong - I changed to the branch you specify yet it comes up as version 3.7.2
Also, now when I run it i get an error. See attached screenshot

That's strange but surely it's related with your environment and dependencies because it's saying that you don't have the colorama module. Did you follow the Github install explained here https://docs.prowler.cloud/en/latest/#installation?

I followed the from github instructions after I cloned and switched to the branch you mentioned -
https://github.com/prowler-cloud/prowler/#from-github
I did get it to work but had to jump through some hoops - see image.
It still states on 3.7.2 yet you can see i am on the branch you specified and also only gives the utput for one finding whne it states there should be 10 - see attached log.

/Users/vanduyer/prowler/test-branch-prowler-install/prowler/output/prowler-output-421474263769-20230801105608.csv

That's good, can you execute it with the --verbose option to see the results?

Hi @ernievd, could you execute it again? We had a bug in the outputs library, now the check should work as expected.

So it does seem to have everything in the logs.
Can you explain to me why this policy fails and a suggestion on how to fix it - or is this not a real failure? Still learning about all this stuff!
{
    "Statement": [
        {
            "Sid": "AssumeGantryRoles",
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": "arn:aws:iam::421474263769:instance-profile/ernie-allow-es-write-to-restore-role"
        }
    ],
    "Version": "2012-10-17"
}

Fails for - Custom Policy arn:aws:iam::421474263769:policy/ernie-test-account-admin-minimized allows privilege escalation using the following actions: {'sts:AssumeRole'}
prowler-output-421474263769-20230802081744.csv

Hi @ernievd, in this case your policy could allow a Principal to privilege escalation since you can assume a role in your account and maybe that role has more privileges than the ones assigned to the Principal. In this case a more manual solution will be needed because it'll be necessary to check what are the permissions allowed in the role that can be assumed.

I think it depends on your environment, sometimes some Prowler's FAILS are not accurate based on how your environment is built. For those scenarios you can use the Allowlist feature, see more here in the Prowler documentation https://docs.prowler.cloud/en/latest/tutorials/allowlist/.


Upgrade to tailwindcss 2

Great work. I think its time to upgrade to tailwindcss v2.. any Plan?

Great work. I think its time to upgrade to tailwindcss v2.. any Plan?

I can upgrade it, but i was going to make a new admin project using V2 instead at some point.


[MGDOBR-1244] Exposed Ingress when a ManagedBridge Resource is created (#1387) - Update kustomization images

This Pull request aims to update the kustomization images for the PR [MGDOBR-1244] Exposed Ingress when a ManagedBridge Resource is created (#1387)

/deploy dev


Fix nil namespace error

Error will be reported if the extracted namespace is nil. We should skip the operation if it's nil

Thank you for contributing :)


ConfigCat - ERROR - [1103] Unexpected error occurred while trying to fetch config JSON. ReferenceError: XMLHttpRequest is not defined

Describe the bug
Each time I run an API route for Next-JS I get this error showing up.
ReferenceError: XMLHttpRequest is not defined
    at /code/app/node_modules/configcat-react/lib/cjs/ConfigFetcher.js:33:37
    at new Promise (<anonymous>)
    at HttpConfigFetcher.fetchLogic (/code/app/node_modules/configcat-react/lib/cjs/ConfigFetcher.js:30:16)
    at AutoPollConfigService.<anonymous> (/code/app/node_modules/configcat-common/lib/ConfigServiceBase.js:202:65)
    at step (/code/app/node_modules/tslib/tslib.js:195:27)
    at Object.next (/code/app/node_modules/tslib/tslib.js:176:57)
    at /code/app/node_modules/tslib/tslib.js:169:75
    at new Promise (<anonymous>)
    at Object.__awaiter (/code/app/node_modules/tslib/tslib.js:165:16)
    at ConfigServiceBase.fetchRequestAsync (/code/app/node_modules/configcat-common/lib/ConfigServiceBase.js:191:24)
    at AutoPollConfigService.<anonymous> (/code/app/node_modules/configcat-common/lib/ConfigServiceBase.js:146:51)
    at step (/code/app/node_modules/tslib/tslib.js:195:27)
    at Object.next (/code/app/node_modules/tslib/tslib.js:176:57)
    at /code/app/node_modules/tslib/tslib.js:169:75
    at new Promise (<anonymous>)

I have the <ConfigCatProvider> wrapping my app inside the Authenticated user context.
I'm thinking it is related to severside/client side node issues. This stack overflow question seemed to make sense.
System:

configcat-react: 3.1.1
Next JS 13.5.4
Node 18.16.0

Expected behavior
There is no error or a way to denote that this might render on the server side.

Hello @shadoath ,
Currently, the React SDK only supports browser-based usage. If you want to use ConfigCat in a SSR application, I can recommend you to check our SSR SDK: https://configcat.com/docs/sdk-reference/js-ssr/.
Other than this, we have a ticket on our backlog to support SSR scenarios with our React SDK.
Cheers,

Thank you for the update @laliconfigcat. I have switched to the js-ssr version of config cat.
It would be great to know when the ticket for support to SSR is completed.

I hope the SSR SDK will suit your needs till we finish the development in our React SDK.
We'll notify you here if we made any progress with supporting SSR with the React SDK.

@shadoath FYI, the fix for this issue has been released in v4.5.0.

Thank you!


pipdeptree: init at 2.2.1

Add package pipdeptree
Description of changes

Add pipdeptree - a command line utility to show dependency trees of python packages.
Things done

Built on platform(s)

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

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

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

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

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

[x] Fits CONTRIBUTING.md.

@FRidh @jonringer Thanks for the earlier review - I've altered the PR, is this good to go now?


initialize end-to-end test writing using cypress

What this PR does?
This PR adds e2e tests writing environment/structure in the project.
Enables others to write test cases in cypress.
Changes/Addition made

added cypress test folder structure
added initial test case

closes #12

Hey @saw-jan, thank you for creating this pull request! Have a wonderful day...

Hey, @saw-jan can you sync your fork,
$ git pull upstream master

and fix the conflict in the package-lock,json file. What you can do is, delete your package-lock.json file and run
$ npm install

in the terminal. This will create a new package-lock.json file. And then commit.


docs: reformat live content api docs

Moving the docs to be more in line with the rest of the formatting.

Fixed the navigation at the top to reflect the live content API.
Moved the live content API docs from being at the top to being in line with other features and not blocking initial set-up docs from being the priority.

Here is the new structure


"Say-as interpret-as"

At least one of these is being processed literally by TTS, rather than parsed:
https://github.com/OpenVoiceOS/ovos-tts-plugin-mimic3-server/blob/009def97295ff2971d78231b582bb9ef8f45b3f0/ovos_tts_plugin_mimic3_server/__init__.py#L170-L175
Hence, when it reads a pairing code, you get
say as interpret as spell out Q say as...
This is both extremely annoying and entirely unhelpful, but fortunately it's also a bug =P

Assigned to Jarbas because I don't know what that's supposed to parse to, and git blames Jarbas

taken directly from upstream, no idea what the reasoning behind that is

@MaxBachmann Sorry to bother you, but it looks like this is being passed to gruut and I can’t spot a problem with the input.
Am I missing something, or is this internal to Mimic, rather than a bug in the above snippet or in gruut?

It has been a while since I looked into these projects. Gruut appears to support this SSML:
>>> next(gruut.sentences('<say-as interpret-as="spell-out">A</say-as>', ssml=True, lang="en"))
Sentence(idx=0, text='A', text_with_ws='A', text_spoken='A', par_idx=0, lang='en', voice='', words=[Word(idx=0, text='A', text_with_ws='A', leading_ws='', trailing_ws='', sent_idx=0, par_idx=0, lang='en', voice='', pos='DT', phonemes=['ˈeɪ'], is_major_break=False, is_minor_break=False, is_punctuation=False, is_break=False, is_spoken=True, pause_before_ms=0, pause_after_ms=0, marks_before=None, marks_after=None)], pause_before_ms=0, pause_after_ms=0, marks_before=None, marks_after=None)

@synesthesiam is probably the right person to ask on this topic

I have the same issue as well with my SONOS skill, no issue when I switch to Polly.
https://github.com/smartgic/skill-sonos-controller/blob/main/utils.py#L110

Gruut has different pronunciations for some individual letters, such as "A" in "A light turned on" vs. "A B C are letters" (pronounced "uh" vs "ey"). It doesn't try to guess the context, so this needs to be provided externally via SSML.

🙏That was the hint I needed. I’m on a phone, but @JarbasAl @goldyfruit:
https://github.com/OpenVoiceOS/ovos-tts-plugin-mimic3-server/blob/f21094ba5d068e023c29699cd156f7390065dbaf/ovos_tts_plugin_mimic3_server/__init__.py#L116-L123
ssml is a bool, and presumably should be a param sent to Mimic, but is discarded.


add python translation of simple example to notebook

add python translation of simple example to notebook

subtask of #2


External files that end with a query string not being marked as external by esbuild

Essentially, if an external file reference ends with a query string ?something=somethingelse it's not marked as external. I haven't got the time to figure out a fix on Snowpack by myself, might in a couple of weeks, but if someone could check it up I'll be grateful. My hunch is that check for the file extension on #1971 doesn't work well if the file ends with a query string.
This happens when using the new optimization method included in Snowpack 3.0.
snowpack.config.js just the optimized part
  optimize: {
    bundle: true,
    minify: true,
    target: "es2017",
  }

The font import itself
@font-face {
  font-family: StudioFeixenSans-Edgy;
  src: url("./fonts/Edgy-StudioFeixenSansRg.eot");
  src: url("./fonts/Edgy-StudioFeixenSansRg.eot?#iefix")
      format("embedded-opentype"),
    url("./fonts/Edgy-StudioFeixenSansRg.woff2") format("woff2"),
    url("./fonts/Edgy-StudioFeixenSansRg.woff") format("woff"),
    url("./fonts/Edgy-StudioFeixenSansRg.otf") format("truetype");
}

The fonts with the iefix thingy error out.
assets/styles/index.css:1:6573: error: Could not resolve "fonts/StudioFeixenSans-Regular.eot?#iefix"

Relevant links:
https://github.com/snowpackjs/snowpack/discussions/1837
https://github.com/snowpackjs/snowpack/pull/1971
Let me know if you need any more info!

This could be an esbuild error as well


Problems in pip extras documentation

Source blocks in docs are not shown correctly:

Additionally, I think that information should appear in main readme file too, in the installation section

Fixed in PR #363


Netprofile: Small improvements + German translation

@olevole Please review the changes to the English version. If they are ok this can be merged.

LGTM, Thanks!


Auto present

Timed rounds with countdown for voting period.
Automatically moves to next image.

Good enough 😜


Fix to saver customisation changes

See: #1659
The problem is, while the new Userguide text refers to the new functions, they are not visible in the docs.
To be fixed for 1.9 release

#1860 addresses


test failed when using xcode10 on a real device

I have downloaded the newest code from github today. When I test  'SwiftMonkeyexampleTests', I run into this:

However, I can run it on a simulator successfully. But when I run it on a real device, it fails.
How can I solve this problem? thanks.

@wojciechczerski  Thanks for the reply. I have already solved this problem, by simply adding "Copy Files" build phases.

So I'm going to close this issue. Thanks.


chore: jinja2 security update

Description
Security update for jinja2 to v3.1.4
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[x] Refactor/improvement

How Has This Been Tested?
unit test
Checklist

[x] My commit message is conventional
[x] I have run pre-commit on all files before creating the PR
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] I have checked my code and corrected any misspellings

:tada: This PR is included in version 1.11.0-beta.7 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Fix LED not flashing on noisy message on some devices

Introduced in #2880

[x] Changes has been tested on an Android device or Android emulator with API 16
[x] UI change has been tested on both light and dark themes
[x] Pull request is based on the develop branch
[x] Pull request updates CHANGES.rst
[x] Pull request includes screenshots or videos if containing UI changes
[x] Pull request includes a sign off

Thanks for this PR.
I integrated the commit in #3073


Investigate vcp error

Logs for entire bucket indicate:

September 06, 2023 at 12:34 (UTC+2:00)[WARNING] - During conversion from HDF5 files of baltrad/bejab at 2018-06-03 to daily VPTS file, the following error occurred: 'vcp'.
sync
September 06, 2023 at 12:33 (UTC+2:00)Create daily VPTS file baltrad/daily/bejab/2018/bejab_vpts_20180603.csv.
sync

What is the vcp error?

I would expect the error message to be a bit more elaborate, but it has probably to do with vcp field conversion https://github.com/enram/vptstools/blob/main/src/vptstools/vpts_csv.py#L287; Errors that are triggered during conversion, see https://github.com/enram/vptstools/blob/main/src/vptstools/vpts_csv.py#L66-L70


fix: Cannot hide the icon if the style is FlatColored

Pass the missing parameter showIcon for FlatColoredToastWidget

@payam-zahedi Yeah. I've tried with the example app. And updating the company app to use it at the moment.

@payam-zahedi Thank you 😊

Thanks, @sandunrajitha
I guess it's time to close this issue #121


Improve settings implementation feature

Pull Request
What does this PR do?
Fixes #327
PR checklist
Please check if your PR fulfills the following requirements:

[ ] #327

bors merge


Impossible to override allowed_css_properties of TextSanitizer

Hi, is there a way to override allowed_css_properties of TextSanitizer?
I'm trying to add box-shadow, because html5lib.Filter doesn't include it.

Hi @gs1-rob-392 ! Indeed, this is not easily possible with a setting. Since the sanitizer of Html5lib has been deprecated (#632)  I do not expect changes to the current sanitizing process but rather an update to another sanitizer library.
If you need this urgently, I'd suggest patching djangocms_text_ckeditor.html._filter_kwargs() function to include the allowed_css_properties you need. Not nice, but a work-around.


[bug]

Bug Report
Current behavior:

Expected behavior

Steps to reproduce:

Screenshots

Dogecoin Core version

Machine specs

OS:
CPU:
RAM:
Disk size:
Disk Type (HD/SDD):

Extra information

Fix and review changes


Security: Spawn each initial peer handshake in a separate task, Credit: Equilibrium

Is your feature request related to a problem? Please describe.
Zebra can hang if there are a small number of initial peers. (It eventually continues after 3*75 seconds, but that's a long time to wait.)
There might also be some potential deadlocks between the initial peer handshakes, the candidate set, and the peer set.
Reported by Niklas Long of Equilibrium.
Describe the solution you'd like
Spawn each initial peer handshake in a separate task, so they can make progress independently.
Additional context
This is the same fix as #1950, but for the initial peer handshakes.
This is a follow-up to #2154, which fixed part of this security issue.

This is a high-risk change, so we'll leave it until after NU5 testnet activation.

Each initial handshake is a future, so they all run in the same task:
https://github.com/ZcashFoundation/zebra/blob/a6d56b2c08bd2633c62f0f3300ddb0c379a91c9c/zebra-network/src/peer_set/initialize.rs#L292-L300
Instead, we need to spawn a new task to run each future, like this code:
https://github.com/ZcashFoundation/zebra/blob/a6d56b2c08bd2633c62f0f3300ddb0c379a91c9c/zebra-network/src/peer_set/initialize.rs#L510-L527


Fix issue of considering semi-transparent pixels

Using cgImage data provider to access pixel data now. Code is significantly reduced for that portion
Now only pixels that have have a max transparency of 50% are considered
We now consider the whole image for the background color. We used to just consider a small margin before. This produces better results overall
New preview for better examples
Update version to 1.3.0

Fixes issues: #20 and #47

I'm not an image expert so I'm not sure I can review this 🤔🤔🤔

Well it works, so I'm merging it in! ✌


Update googletest to 1.10.0

@fweikert - shouldn't googletest be updated in the federation as well? It's only a development dependency of rules_cc, so I'm not sure.
@Yannic - FYI, so you don't duplicate work updating rules_cc.

From a federation point of view the ideal process would look like this:

Add the com_google_googletest() function to https://github.com/bazelbuild/bazel-federation/blob/master/third_party_repositories.bzl which contains the call to http_archive
Update rules_cc to use the latest federation version and to call com_google_googletest() from within rules_cc_internal_deps()

That's not a good experience for the rule owners, though, and definitely something that the federation working group has to discuss. For now the best solution would be to continue with this PR.


Is support for Final Release 2.0.0 on the map?

I could really use this!! :)
Thanks,
Carmen

+1

I think Krispo has had a long vacation, we miss you Krispo!!

This is really just the one file ng2-nvd3.ts, transcribed and built into a node_module package. I'm not sure what is all required to do that, but I was able to just create my own folder under app, copy ng2-nvd3.ts to it, then add an ngModule file.
import {NgModule} from '@angular/core';
import {nvD3} from 'ng2-nvd3';

@NgModule({
	declarations: [
		nvD3
	],
	exports: [
		nvD3
	]
})
export class nvD3Module {}

Then I import nvD3Module into the module I will be be creating the chart.

Where did you copy ng2-nvd3.ts from?

@carmenbranje just create the file somewhere in your app structure and then import it in your app.module.ts.
import { nvD3Module } from './ng2-nvd3';
@NgModule({
    imports: [
        ...
        nvD3Module,
        ...
    ], ...

I'm trying the work around above, but I'm still getting a template error: nv is not defined.
For an angular2-seed (Webpack) powered project, do I need to do anything else in addition to the above?

Hello,
I have exactly the same issue... I created the nvD3Module in which I declare nvD3 component and then I add the module into a module in my project but I still have the "nv is not defined".
I create a test repository to reproduce the error: Click here
Has someone solved the issue?

Hi @NablaT
Your problem is that you are not including NVD3 into the app.
Check the scripts section at your angular-cli.json, it's like this
"scripts": [
    "../node_modules/d3/d3.js",
    "../node_modules/ng2-nvd3/build/lib/ng2-nvd3.js"
],

When it should be like this:
"scripts": [
    "../node_modules/d3/d3.js",
    "../node_modules/nvd3/build/nv.d3.min.js",
    "../node_modules/ng2-nvd3/build/lib/ng2-nvd3.js"
],

That should do it.

Oh sorry, yeah it's working better with the import .. Thank you very much @martinmanzo!

How would I include the files
    "../node_modules/nvd3/build/nv.d3.min.js",
    "../node_modules/ng2-nvd3/build/lib/ng2-nvd3.js"

If I am not using angular-cli.json?

In the same file where you add your javascript dependencies, what are you using to run your app?

I am managing my dependencies with webpack. I tried adding them to my package.json, and everything seems to install correctly, although i am unable to get d3 recognized unless I include the scripts the traditional way in index.html. This way, it works, although its not ideal as I would like more compartmentalization.

@martinmanzo I'm getting a "Uncaught ReferenceError: require is not defined" when importing the ng2-nvd3.js file within angular-cli.json .
This may be an issue isolated with Angular v.2.2.1 which I am using though. Any ideas on a resolution for this?

Hi @expy, I haven't seen that issue before. I'm migrating to angular-cli also  and solved the problems with ng2-nvd3 by creating a file inside the app (for example app/utils/ng2-nvd3.ts) and copying all the content from the file in node_modules/ng2-nvd3/lib/ng2-nvd3.ts into it. This way it compiles as any other ts file in your project and works without any problem.
Then import it on your app.module.ts and include it in the declarations array.
It may not be the best solution but it works.

@martinmanzo Alright, thanks, I'll give that a shot.

Hey @martinmanzo and @timfogarty1549 thanks a lot for your great help and workaround for this issue. It is working right now, I followed your steps, creating a custom module and exporting nvd3 there, and nvd3 being taken from a copy of the ng2-nvd3.ts file, I placed both files at same level and everything worked like a charm, even when I must confess this is not as neat as I would like you both have saved me a lot of time and headaches! Thanks again!

Thank you @martinmanzo . It worked .

@brian15co Adding:
new ProvidePlugin({
nv: 'nvd3'
}),
to my config works. I got the idea from: https://github.com/krispo/ng2-nvd3/issues/33


2.6.2没有dubbo-admin了？

dubbo 2.6.2 版本下载后执行 mvn clean package ,怎么没有找到 dubbo-admin？

另外，现在 dubbo2.6.2 也支持 rest了，怎么没看到相关的文档？

@empireghost
https://github.com/apache/incubator-dubbo-ops
dubbo-admin is here

dubbo rest is merged from dubbox ( #1001 ), so i think u could only refer to the docs currently (https://github.com/dangdangdotcom/dubbox)

@ulinkwo The documentation are also merged into Dubbo, checkout here: http://dubbo.apache.org/books/dubbo-user-book/references/protocol/rest.html


Wrapping onnx structs

Instead of using onnx structs directly I would like to wrap them in a simple manner like:
typedef struct {
   Onnx__TensorProto onnx;
} tensor;

So if we need to extend any structure given by onnx we can do it inside our own wrapper without having to refactor everything.
We essentially did this already with the node_context in regard to Onnx__NodeProto.

One thing I have in mind is to add a void pointer to all our (onnx) structures which can be used when cONNXr is integrated in some other codebase to easily extend it without replacing internal allocation code

Right, this is essentially what we did with node_context and Onnx__NodeProto. Its a fair suggestion but tbh I don't really foresee any extension, so I would leave as it is by now and focus our efforts somewhere else. If in the future we find the need, we can of course wrap it.

I would like to do it in near future, since I need to integrate connxr in another framework and therefore need to replace/extend a few things.

If you have already thought a particular use case I'm fine with it.


Unify freeze and static

Codecov Report
Base: 99.59% // Head: 99.38% // Decreases project coverage by -0.21% :warning:

Coverage data is based on head (a5fb5e5) compared to base (c851f4d).
Patch coverage: 93.33% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #27      +/-   ##
==========================================
- Coverage   99.59%   99.38%   -0.22%
==========================================
  Files          31       31
  Lines        2746     2776      +30
==========================================
+ Hits         2735     2759      +24
- Misses         11       17       +6

Impacted Files
Coverage Δ

tests/test_tree_viz.py
100.00% <ø> (ø)

pytreeclass/tree_viz/tree_pprint.py
96.45% <89.79%> (-3.55%)
:arrow_down:

pytreeclass/_src/tree_util.py
99.32% <95.23%> (-0.68%)
:arrow_down:

pytreeclass/__init__.py
100.00% <100.00%> (ø)

pytreeclass/_src/tree_base.py
100.00% <100.00%> (ø)

pytreeclass/tree_viz/tree_summary.py
97.56% <100.00%> (+0.12%)
:arrow_up:

pytreeclass/tree_viz/utils.py
100.00% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Tensorflow not working with vGPUs (when the machine is not in pass-through mode)

System information

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Linux Ubuntu 16.04
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:
TensorFlow installed from (source or binary): Binary
TensorFlow version: 1.12.0
Python version: 3.6.8
Installed using virtualenv? pip? conda?: Conda
Bazel version (if compiling from source):
GCC/Compiler version (if compiling from source):
CUDA/cuDNN version: CUDA 9.2; CuDNN 7.3
GPU model and memory: NVIDIA Tesla V100 (16 GB)

Describe the problem
I was using TF for experimenting with seq2seq models on a VM that had access to a Tesla V100 GPU (in pass-through mode). Recently, that VM was restricted to use a vGPU (with 50% of the memory - Q8 variant of V100), and hence it was not is pass-through mode anymore. With this change, Tensorflow stopped working, and gave UNKNOWN_CUDA_ERROR.
I would like to know if Tensorflow could be used with Virtual GPUs (not in pass-through mode).
If yes, any helpful resource for achieving the same would be much appreciated.
Thanks.
Provide the exact sequence of commands / steps that you executed before running into the problem
import tensorflow as tf
print(tf.test.is_gpu_available())

Any other info / logs
Include any logs or source code that would be helpful to diagnose the problem. If including tracebacks, please include the full traceback. Large logs and files should be attached.
Attempting to fetch value instead of handling error
Internal: failed initializing StreamExecutor for CUDA Device Ordinal 0

(Currently, I do not have the full traceback unfortunately).

I think this should be redirected to GPU or GPU performance team, seems like a low level GPU driver issue?

@jvishnuvardhan @tatianashp Hey guys. Any update on this would be really useful.


Compatibility with vehicles plugin

Hi, I am a user of your Jobs Reborn plugin and I would like them to be compatible with the Vehicles plugin.
Link plugin:
https://www.spigotmc.org/resources/✈vehicles-no-resourcepacks-needed.12446/
When players use the drill vehicle, they are paid as if they normally mine with the pickaxe.  This is fast, giving too much advantage by getting money and experience in your Jobs plugin.
The plugin generates a BlockBreakEvent which you can listen to, therefore you could add a check of (player.getVehicle () == null) which can be activated and deactivated.
Any extra technical question, the developer of the vehicle plugin is willing to answer it (@Pollitoyeye)
Discord: https://discord.com/invite/buUaUHd
Thank you for reading :)

You can use disablePaymentIfRiding in generalConfig


Emojis and Unusual Characters are Unsupported

When the animation types out emojis and other abstract characters it will do so an unexpected way.
This is because the strings are broken down by array-spreading in typical.ts and there are references to a string's length via String.prototype.length.
See https://github.com/orling/grapheme-splitter for examples of problematic strings.
IMO, the best solution would be to implement a library such as grapheme-splitter to handle the splitting strings and the determining of their lengths.

Hey,
I just tried it out but I don't see any issue with emojis/abstract characters. Do you have any concrete examples?
https://github.com/maxeth/react-type-animation/assets/48837036/4c7faf3a-9b37-4869-81bf-ac5dad08da1e

@maxeth those basic emojis seem to work for me, but things such as flags cause issues for me:
            <TypeAnimation
              sequence={[
                "Hello 🇬🇧",
                5000,
                "Ciao 🇮🇹",
                5000,
                "Hola 🇪🇸",
                5000,
                "Bonjour 🇫🇷",
                5000,
                "Hello 🇬🇧",
              ]}
              wrapper="span"
              style={{ display: "inline-block" }}
            />

Also, demonic characters will cause issues (I sorely hope that no-one is actually using these):
const demonic = "Z̴̙̤̞͉͚̯̞̠͍͑ͫ̓ͪ̂ͫ̽A̴̵̜̰͔ͫ͗͢L̠ͨͧͩ͘G̴̻͈͍͔̹̑͗̎̅͛́Ǫ̵̹̻̝̳͂̌̌͘!͖̬̰̙̗̿̋ͥͥ̂ͣ̐́́͜͞";

const complexEmojis = "🌷🎁💩😜👍🏳🌈";

@andrewpeters9 Okay I see what you mean, thanks for pointing that out. I assume this default splitting of strings into chars is what you mean, right?
The package you linked itself is ~2x the bundle size of this entire package, so I don't think we should add it by default.
Maybe adding a prop that takes a function and lets you customize how strings are split would be a solution.

@andrewpeters9  Good idea. I just tried it out and it works for typing, but not for deleting.
Because after the text is typed out, further edits are evaluated based on the contents of the node, which is just a simple string.
async function edit(
  node: any,
  text: any,
  speed: number,
  deletionSpeed: number,
  omitDeletionAnimation: boolean
) {
  const overlap = getOverlap(node.textContent, text);
  await perform(
    node,
    [...deleter(node.textContent, overlap), ...writer(text, overlap)], // <--- "array" sequence is lost
    speed,
    deletionSpeed,
    omitDeletionAnimation
  );
}

So the string splitting would actually have to be modified.

@maxeth After writing that above comment I made an edit saying that maybe it's a cleaner approach to just allow for a custom splitter and just direct people to the grapheme-splitter dependency in the README if they have a weird string.
What do you think would be better? Happy to open an MR based on your decision.

@maxeth After writing that above comment I made an edit saying that maybe it's a cleaner approach to just allow for a custom splitter and just direct people to the grapheme-splitter dependency in the README if they have a weird string.
What do you think would be better? Happy to open an MR based on your decision.

I think the custom splitter function is the best solution with the least overhead.

I think the custom splitter function is the best solution with the least overhead.

@maxeth want me to open up an MR for this? If so I can have one up over the weekend.

I think the custom splitter function is the best solution with the least overhead.

@maxeth want me to open up an MR for this? If so I can have one up over the weekend.

sure.

Added in v3.2.0 https://react-type-animation.netlify.app/examples#typing-complex-characters


PP from recent score

How i can get PP from last recent game?

RecentScore doesn't have a pp value, iiuc it's only calculated for the top score for a mod combo. You can use get_scores to get a user's top score for a mod combo for a map, and get PP based on that.
I think there are some other third party pp estimator tools based on the hits and max combo, but I don't know of specifics


Use simpler get example request

I could not see athletes/KOM as one of the queries mentioned on http://developers.strava.com/docs/reference/, maybe it has been removed?
Maybe athletes/stats would be an alternative, also no further parameters are needed, so it is an easier example.

It's probably a side-effect of the recent changes where several segment-related features (including API access) require a subscription.

Has been fixed in #46


As a user I want to be able tag/categorise a floating task

So that I can know what to do when I am in the current context

Subtask of #66


blog: v<IP_ADDRESS> gui release notes

Hashes ok.
Title needs fixing, it says <IP_ADDRESS>

Updated title

Updated title

Thanks! Hashes still ok :)


(GH-382) Chocolatey wrapper to quickly exit and report errors to callers

This feature is useful when the callers want to make sure all packages are installed successfully before continuing to the next.

@htnhan this won't include this in the next release as I still need to get my head around this .. does this PR actually change the way Boxstarter used to work before?
i.e. it breaks /exits as soon as a single package install failed.

I've had some use-cases where it was actually useful, that a "reboot-loop" automagically fixed a breaking install after 2, 3, maybe even 4 install attempts with reboots in between (not talking about 3010s here)

maybe it would be better to add an option/switch -StopOnFailingChocoCommand or something similar

@pauby @flcdrg what do you think?

@mwallner I totally understand. I believe it does change the way BoxStarter works (quick fail, and not trying to reinstall the packages after reboot). If possible, I am happy with a command line switch as well.

@mwallner I will need time to look at this so I think we need to remove the milestone from it just now until we can assess the potential impact. I'm concerned about @mwrock comment as he obviously knows Boxstarter backwards!

I just looked this over again and I don't know what UI was thinking when I commented above. It looks like it is fine in the sense that is does what it advertises to do. However, it does change basic behavior where today boxstarter will proceed through an entire run regardless of any choco errors. I definitely see why one would want either case (stop immediately or continue). It might not be a bad idea to have a flag  like -StopOnError.

Hey @htnhan  - sorry for the late response!
I've just revisited this PR, and I suggest following approach:
As Matt suggested, a `-StopOnError' flag makes sense and would be an addition, instead of a breaking change.
@htnhan - would you like to implement this and get it merged or should we take it from here?
CC @pauby @gep13 @flcdrg

@mwallner
I don't think I introduced any breaking change. cinst, cup, cunisnst, etc will report the error code back to the caller (0 -- success, 1 -- errors). The caller then can decide to ignore the error and continue, or stop. A -StopOnError flag does not add any benefits, ... right?

Hey @htnhan - I think I'll need to re-visit you changes again, but afaik those changes are ineed "breaking" in the following scenario:
you've got a boxstarter script with 3 packages
cinst something -y
cinst foo -y
cinst bar -y

now let's say, for whatever reason, package foo always fails.

without your changes, boxstarter will continue even though a previous install failed, and go on installing bar.
at the end a list of successful & failed package installs is being displayed.

don't get me wrong, I like the addition you're proposing here, but as said, I'd like it to be an addition/option to the current behavior, rather than a change.

@htnhan Can you raise an issue for this (or point us to one this fixes) so we can have a discussion around the merits of it in there rather than in the PR?

@htnhan I've just noticed you are pushing from your master branch. That's not recommended. See Prerequisites

as suggested here the changes suggested in this PR should only become active if, and only if a extra switch, such as -StopOnError is passed.
@htnhan - is this okay with you / are you willing to make the required changes youreself or should we take over?

Folks, apologies for the delay.
@pauby @mwallner  If possible, please take over from here.
Thank you,

@mwallner Do you want to pick this up?

Closing this in favor of GH-402
@htnhan - I've tried to give you the creds for the original implementation in the initial commit of my implementation - if I got your details right you should be in there somewhere ;-)

@mwallner Thank you :)


Web Components: Video component not changing thumbnail to a custom image

Description
When trying to add a custom thumbnail to an inline video using the dds-video-player-container component, the video kept pulling the default thumbnail image from MediaCenter, even using the thumbnail-url property as indicated by the Carbon documentation.
Component(s) impacted
dds-video-player-container
Browser
Chrome
Carbon for IBM.com version
1.16.1
Severity
Severity 3 = The problem is visible or noticeable to users but does not impede the usability or functionality. Affects minor functionality, has a workaround.
Application/website
https://www.ibm.com/resources/guides/hybrid-cloud-strategy/
Package
@carbon/ibmdotcom-web-components
CodeSandbox example
https://codesandbox.io/s/video-thumbnail-bug-p7zyhc
Steps to reproduce the issue (if applicable)
No response
Release date (if applicable)
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct
[X] I checked the current issues for duplicate issues

This PR is hardcoding the Kaltura video thumbnail and needs to be undone to allow for custom thumbnails
https://github.com/carbon-design-system/carbon-for-ibm-dotcom/pull/7914/files#diff-c16cc0206fb8b5202bfa8ddd7900037a71fb8b30235347e4c33ece727f8d8860R94-R97


Create cmd functions for pipelinerun

Create cmd functions for PipelineRun

Create mks-cli to interact with Mks-Server to perform operations on MksPipelineRun.
Implemented create, delete, get, list functions for MksPipelinerun.

How to test

Start your mks-server
Build and run the executable using steps in README.md.
execute your command, e.g-

 ./mks-cli mkspipelinerun <command> <flags>

Related Issues

Fixes #4

@RAMESSESII2 made the suggested changes


Allow KBFSSettings links on unimplicit teams too

@strib wants to store tlfids on normal teams too.
Getting the TLFID out to KBFS on an RPC we could do any time, but removing this check the sooner the better. Because these links will break the team sigchain for clients before this PR.

hmm  ok, but there are some subsections we don't want on implicit teams.
but ok
why this change btw?

Subsections? It looks like KBFSSettings is just an ID

Max explained it's the legacy_tlf_upgrade field which does not have client support yet. When we add client support for that field we will remember to disallow it for explicit teams.


Missing parse command in README

Hi
Nice lib!
In the README is missing parse command in instructions how to run it

Hey, thanks for reporting! I just updated the README -- hoping this is clearer now.


Arducam OV5642 Mini 5MP Plus not working host app or examples

Hello, I am trying to use an OV5642 Mini 5MP Plus with an arduino uno/r3. I downloaded the library, put the contents of arduino-master in my library folder, and uncommented my hardware in the memorysaver.h file. When I try to use the ArduCAM_Host_V2 to take pictures, I never get any pictures, it only appears black. I am not sure if I am even connecting to the camera through the correct com port at this time. I am also pretty sure the wiring is correct, and I have tried setting the CS pin on 7 and 10. When I try to run an example code it says a ton of variables are not declared in scope ex:
ArduCAM_Mini_5MP_OV5642_Plus_Functions:624: error: 'Exposure10_EV' was not declared in this scope
myCAM.OV5642_set_Exposure_level(Exposure10_EV);temp = 0xff;

                                ^

ArduCAM_Mini_5MP_OV5642_Plus_Functions:627: error: 'class ArduCAM' has no member named 'OV5642_set_Exposure_level'
myCAM.OV5642_set_Exposure_level(Exposure13_EV);temp = 0xff;

      ^

ArduCAM_Mini_5MP_OV5642_Plus_Functions:627: error: 'Exposure13_EV' was not declared in this scope
myCAM.OV5642_set_Exposure_level(Exposure13_EV);temp = 0xff;

I am not sure what else to try... I am just trying to get a picture from this camera onto my PC at this point so I can work from there. Let me know if you have any suggestions or advice. Thanks!

@chrismunley
Hi,
Sorry for our library's bug and we have update it, please give us your email adress and we will send you our new library.
Let us know if you need more help.
Regards,
ArduCAM support team.

<EMAIL_ADDRESS>
On Jul 30, 2017, at 3:21 AM, UCTRONICS<EMAIL_ADDRESS>wrote:
@chrismunley
Hi,
Sorry for our library's bug and we have update it, please give us your email adress and we will send you our new library.
Let us know if you need more help.
Regards,
ArduCAM support team.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.


Deploy models from az ml deploy using custom base images

Extension name (the extension in question)
ml
Description of issue (in as much detail as possible)
We have our custom model images built already in azure container registry. We need to utilize those images with our az ml deploy command.
Currently, when we are doing az ml model deploy -n $serviceName --ct $computename  --bi $baseimagename --ir abc.azurecr.io
The error says to pass the model names & entry scripts & when I do so, something like below command
az ml model deploy -n $serviceName --ct $computename  --bi $baseimagename --ir abc.azurecr.io   -m $modelName1 --ic ./inferenceconfig.json --dc ./deploymentconfig.json
It throws error

Error converting value \"abc.azurecr.io\" to type 'Microsoft.MachineLearning.EnvironmentManagement.Contracts.ContainerRegistry'. Path 'docker.baseImageRegistry', line 1, position 2532.","target":"docker.baseImageRegistry"}],

I am not sure if this is the right way to do this, but need a solution which helps to deploy models in aks using custom base images

route to appropriate team

Just a hunch... In Deploy a model using a custom Docker base image, we see the example az cli as follows:
az ml model deploy -n myservice -m mymodel:1 --ic inferenceconfig.json --dc deploymentconfig.json --ct akscomputetarget

Notice that there are no --bi and  --ir options.
The documentation states, "Before deploying a model using the Machine Learning CLI, create an environment that uses the custom image. Then create an inference configuration file that references the environment. " In the example inference configuration, the base image is referenced:
"baseImage": "mcr.microsoft.com/azureml/o16n-sample-user-base/ubuntu-miniconda:latest",

Yup,
you'd need to create an environment that uses the custom image. Then create an inference configuration file that references the environment. You can also define the environment directly in the inference configuration file.
inference config example: https://docs.microsoft.com/en-us/azure/machine-learning/how-to-deploy-and-where?tabs=python#define-an-inference-configuration
Use an image with the Machine Learning CLI: https://docs.microsoft.com/en-us/azure/machine-learning/how-to-deploy-custom-docker-image#use-an-image-with-the-machine-learning-cli

Thanks @shivanissambare


Support Date component for year and month/year

see https://www.figma.com/file/fhdhctobqKAznR5R1pBT5D/Stromae-v3?type=design&node-id=1862-1650&mode=design

https://inseefr.github.io/Lunatic-DSFR/storybook/?path=/story/components-datepicker--default&args=darkMode:!true


Support data errors

Notify when data errors occur. Given that this might be an expensive task, give option in config to disable it.

This will not be implemented in the short term


pathway_errorbar error

Hi,
First of all, thanks for creating this tool. It seems very neat for crunching down picrust2 output.
I am trying to run pathway_errorbar function but getting the following error:
Error in $<-.data.frame(*tmp*, "group", value = c(2L, 2L, 2L, 2L,  :
  replacement has 205 rows, data has 185

4. stop(sprintf(ngettext(N, "replacement has %d row, data has %d",
"replacement has %d rows, data has %d"), N, nrows), domain = NA)

3. $<-.data.frame(*tmp*, "group", value = structure(c(2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, ...

2. $<-(*tmp*, "group", value = structure(c(2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, ...

1. pathway_errorbar(abundance = kegg_abundance, daa_results_df = daa_annotated_results_df,
Group = metadata$exposure, p_values_threshold = 0.05, order = "pathway_class",
select = daa_annotated_results_df %>% arrange(p_adjust) %>%
slice(1:20) %>% select("feature") %>% pull(), ko_to_kegg = TRUE, ...`

I have used following commands:
ko_abundance <- read_delim("/path/to/ko_feature-table.tsv", delim = "\t")`

metadata <- read_delim(
    "/path/to/Mapping_file-H2S.txt",
    delim = "\t",
    escape_double = FALSE,
    trim_ws = TRUE
)

kegg_abundance <- ko2kegg_abundance(data = ko_abundance)

daa_results_df <- pathway_daa(abundance = kegg_abundance, metadata = metadata, group = "exposure", daa_method = "LinDA")

#subset to more chunks if df too big- otherwise no annotation will be performed
sub1 <- daa_results_df[1:86, ]
sub2 <- daa_results_df[87:172, ]
sub3 <- daa_results_df[173:258, ]

daa_ann1 <- pathway_annotation(pathway = "KO", daa_results_df = sub1, ko_to_kegg = TRUE)
daa_ann2 <- pathway_annotation(pathway = "KO", daa_results_df = sub2, ko_to_kegg = TRUE)
daa_ann3 <- pathway_annotation(pathway = "KO", daa_results_df = sub3, ko_to_kegg = TRUE)

daa_annotated_results_df <- rbind(daa_ann1, daa_ann2, daa_ann3)

p <- pathway_errorbar(
  abundance = kegg_abundance,
  daa_results_df = daa_annotated_results_df,
  Group = metadata$exposure,
  p_values_threshold = 0.05,
  order = "pathway_class",
  select = daa_annotated_results_df %>%
  arrange(p_adjust) %>%
  slice(1:20) %>%
  select("feature") %>% pull(),
  ko_to_kegg = TRUE,
  p_value_bar = TRUE,
  colors = NULL,
  x_lab = "pathway_name"
)

All the outputs are generated as they supposed to, it is only the last part that is throwing the error.
When I run the exact same commands on your data (except the sub setting), everything works fine.
Any idea what could be wrong here? I can share my data if needed.

Dear DeniRibicic,
Thank you for reaching out and for your interest in the ggpicrust2 tool. I appreciate your feedback and am glad to hear that you find it useful for analyzing PICRUSt2 output.
I've reviewed the error message you're encountering with the pathway_errorbar function. The error suggests a mismatch between the number of rows in your data and the replacement values, which is unexpected given the steps you've taken. Theoretically, the process you've described should work correctly.
To better understand and resolve this issue, it would be helpful if you could send your data to<EMAIL_ADDRESS>This will allow me to examine the specific structure and content of your datasets, which might reveal the source of the problem.
When sending the data, please include:

Your ko_abundance file
Your metadata file
The resulting kegg_abundance object
The daa_results_df and daa_annotated_results_df objects

With these, I should be able to reproduce the issue and provide a more targeted solution.
In the meantime, could you also confirm:

The dimensions of your kegg_abundance, metadata, and daa_annotated_results_df objects
Whether there are any missing values in your metadata, particularly in the 'exposure' column

Thank you for your patience as we work to resolve this. I look forward to receiving your data and helping you get the pathway_errorbar function working correctly.
Best regards,
Chen Yang

Hi @cafferychen777 and thank you for prompt reply.
As you mentioned dimensions here, I checked it and that was the problem!
Basically, my metadata file contains some additional samples that were not part of picrust2 analysis. Usually having listed more samples in metadata/mapping file doesn't cause errors with other microbiome packages that I use (it is rather the opposite- missing sample). However, with ggpicrust2 this is the case.
Quick subsetting solves the issue:
samples <- colnames(ko_abundance)[-1]
metadata_filtered <- metadata %>% filter(#SampleID %in% abundance)

Dear @DeniRibicic,
Thank you for the update on your issue with the pathway_errorbar function. I'm glad to hear that you were able to identify and resolve the problem.
It's great that you discovered the mismatch between your metadata file and the PICRUSt2 analysis samples. You're right that having additional samples in the metadata file can sometimes cause issues, even if it doesn't with other microbiome packages. Your solution of subsetting the metadata to match the samples in the abundance data is perfect:
samples <- colnames(ko_abundance)[-1]
metadata_filtered <- metadata %>% filter(`#SampleID` %in% samples)

This approach ensures that your metadata and abundance data are properly aligned, which is crucial for the correct functioning of ggpicrust2.
Thank you for sharing this solution. It will be helpful for other users who might encounter similar issues in the future. If you have any more questions or run into any other problems, please don't hesitate to ask.
Best regards,
Chen Yang

Hi again,
Running the same function on MetaCyc dataset, but getting the following error:
Error in pathway_errorbar(abundance = metacyc_abundance %>% column_to_rownames("#OTUID"),  :
  Visualization with 'pathway_errorbar' cannot be performed because there are no features with statistical significance. For possible solutions, please check the FAQ section of the tutorial.

  2. stop("Visualization with 'pathway_errorbar' cannot be performed because there are no features with statistical significance. ",
"For possible solutions, please check the FAQ section of the tutorial.")

  1. pathway_errorbar(abundance = metacyc_abundance %>% column_to_rownames("#OTUID"),
daa_results_df = metacyc_daa_annotated_results_df, Group = metadata_filtered$exposure,
ko_to_kegg = FALSE, p_values_threshold = 0.05, order = "group",
select = daa_annotated_results_df %>% arrange(p_adjust) %>% ...

Full command to create inputs:
metacyc_daa_results_df <- pathway_daa(abundance = metacyc_abundance %>% column_to_rownames("#OTUID"), metadata = metadata_filtered, group = "exposure", daa_method = "LinDA")
metacyc_daa_annotated_results_df <- pathway_annotation(pathway = "MetaCyc", daa_results_df = metacyc_daa_results_df, ko_to_kegg = FALSE)

No errors when creating these two input dfs.
p_adjust is numeric and there are bunch of significant features.
Any idea from top of your head why is it complaining there are no significant features?

Dear DeniRibicic,
Thank you for your detailed follow-up on the issue. Theoretically, this problem should not occur given the information you've provided. To help diagnose the issue, it would be very helpful if you could send me the relevant R data objects (such as metacyc_abundance, metacyc_daa_annotated_results_df, and metadata_filtered) as an RData file. This will allow me to reproduce the problem and investigate further.
In the meantime, you might want to try a few troubleshooting steps:

Restart your R session. Sometimes, unexplained errors can be resolved by simply restarting the R environment.

Make sure all your packages, including ggpicrust2, are up to date.

Double-check that the p_adjust column in your metacyc_daa_annotated_results_df contains numeric values and that there are indeed statistically significant features (p_adjust < 0.05).

Verify that the dimensions and sample names in your abundance data, metadata, and results dataframe all match correctly.

If the issue persists after trying these steps, please send me the RData file, and I'll be happy to take a closer look.
Best regards,
Chen Yang

Hi DeniRibicic,
Thank you for sharing the details of the error. After reviewing the code, I found the issue.
In the command:
select = daa_annotated_results_df %>%
             arrange(p_adjust) %>%
             slice(1:30) %>%
             select("feature") %>%
             pull()

You are using daa_annotated_results_df, but since you're working with the MetaCyc dataset, you need to update this to metacyc_daa_annotated_results_df. Once you make this change, the function should run successfully.
Let me know if you encounter any further issues!
Best regards,
Caffery Yang

@cafferychen777 such a rookie mistake! Thanks, this works!


Azure template

Template for Azure
Docker image for demo static website

@ohad1282 FYI - added random string to Azure template

@roni-frantchi @omryhay1 Do we want to merge this to master?


ETFE-3647 CAM-NOR06 page added for XIPC users

According to the prototype, it looks like this new page needs a summary row for CYA
Should the completion logic for the Consignor section be updated to reflect this new mandatory page?

ETFE-3310 should cover the CYA summary row

According to the prototype, it looks like this new page needs a summary row for CYA
Should the completion logic for the Consignor section be updated to reflect this new mandatory page?

Completion logic added https://github.com/hmrc/emcs-tfe-create-movement-frontend/pull/275/commits/06b292e1001a75f2926f776cbd77c4026aa8fe96


daemon to remove artifacts sub directories when they grow over 10 items (working artifacts)

a daemon thread to initiate files removal from directories under 'artifacts' directories from 'awaiting/downloaded' directories.

make the server load the file to memory and then delete the file from download folder,also done for when updating a file to server
make the server clean all temp files that created in the progress


Sort within parent node

First thought is that for each selected node their children could be sorted - within that node
eg matching ^A$ ...
A
    A2
    A1

becomes
A
    A1
    A2

Implemented in 1.7.


Cap for total and employee contributions

The calculator doesn't seem to take into account capping the total and employee contributions. These values change per employee/employer contribution type, and SPR status.

Thanks @n3v3rf411. Could you issue a test scenario when the calculator fails?
If I remember it right we do cover the ordinary wages cap. We know about the yearly cap for additional wages but we haven't got into adding support for. Our production use cases haven't hit the need yet.

please reopen with a test case reproducing the problem


feat(Examples,PeriphDrivers): Add I2C_ADXL343 example to MAX32690 and fix double read backs for I2C repeated start condition in ADXL343 drivers

Description

Adds the I2C_ADXL343 example to the MAX32690.
Reformat I2C repeated start conditions in ADXL343 drivers. The I2C drivers don't support a repeated start condition for all-in-one I2C requests due to how the reads are set up. You have to do two individual transactions, one write-only followed by reads.

Checklist Before Requesting Review

[ ] PR Title follows correct guidelines.
[ ] Description of changes and all other relevant information.
[ ] (Optional) Link any related GitHub issues using a keyword
[ ] (Optional) Provide info on any relevant functional testing/validation.  For API changes or significant features, this is not optional.

/clang-format-run

/clang-format-run


fix: Disable Select/Deselect all buttons when ui.dropdown is disabled

Closes #1821

that was fast :D


[This is not an issue!] Congratulations

I saw this on the list of extension for VSCode as I was looking for ways to view/edit my SQLite database inside the IDE.
As your first extension, it is a nice too.
Keep up the good work.

Thanks!


Function.name is a non-writable property

Fixes #153.

Hi @sankha93, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by Microsoft and real humans are currently evaluating your PR.
TTYL, MSBOT;

LGTM

Looks good. Could you also add some tests to test/es6/function.name.js to guard against such cases as you were trying to reproduce?

I believe that test case already exists:
line 434
{
name: "built-in function.name",
body: function ()
{
assert.areEqual("slice",[].slice.name,"name should be slice");
[].slice.name = "bar";
assert.areEqual("slice",[].slice.name, "function names are read only");
}
},

I don't think we have a good way to test this issue since it was an incorrect initial type that was just ignored (converted) when adding the actual property. @rajatd is there a good way to test this? Is it worthwhile to test this?

@ianwjhalliday, Yes I agree that there's no test to add. The snippet shown by @farzonl serves the purpose


Artifact Element

There are a few classes like 'machine element', 'electronic component', 'vehicle frame part', etc that would benefit from a parent class 'Artifact Element', defined as 'an artifact that is designed to be part of an Artifact'. These various 'designed to be part of X' classes could then be refactored under this parent.

For instance, this would be helpful for finding those weapon elements (e.g. triggers, barrels, shells, sights, etc) that are not weapons and may not be parts of weapons, and which otherwise are scattered throughout the artifact list.

Other important subclasses of 'Artifact Element' could also be 'Infrastructure Element', where every instance of the class is designed to be part of some piece of infrastructure. E.g. ceiling, roof, truss, turret, gable, etc.. similarly for 'Vehicle Element' and 'Computer element'.

Components are important for targeting too.  Specifically when we are considering the parts (components) of e.g. a Bridge, Building, Weapon System, et. al.).
See a modern bridge diagram here:
https://user-images.githubusercontent.com/39055664/83150323-23efa500-a0c9-11ea-92af-af1527e023e4.png
To make matters more confusing consider an old stone bridge where the Abutments, Piers, and Spans are arguably Fiat Objects. see:
https://commons.wikimedia.org/wiki/File:Roman_bridge_at_Cangas_1_com.jpg
This also sounds similar to a problem in Systems Engineering Ontology too--isn't a car a System of Systems?
Regardless, we do need a class for 'Artifact Component' or 'Artifact Element'

In version 1.3 roles have been added part, component, system and infrastructure.


Add new Redis queue instance

This runs in parallel to the one now called "old" so we can do a
painless switchover.

Review app deployed to https://teaching-vacancies-review-pr-2761.london.cloudapps.digital


Fix README

GitHub's Markdown renderer must have changed, since a lot of the headings broke.

Wat!? Bad Github :P. Thanks, @RobertHerhold.


update to swift 4

Hi @guitcastro, thanks for contributing to Unbox! I'm not yet ready to accept PRs to convert to Swift 4, and since Unbox is already ready for the Swift 3.2 compatibility mode, you can already use it without problems from Swift 4. More context in this PR that was already submitted to do the same thing: https://github.com/JohnSundell/Unbox/pull/193


goland 的api提示问题

@server(
...
maxBytes: 1048576
)
在 goland 的ide中会报语法错误
mismatched input '1048576' expecting {PATH, DURATION, IDENT}
请问如何处理

Please upgrade goctl to the latest version.

Please upgrade goctl to the latest version.

goctl 1.1.4 已经是最新版的,没用

Please upgrade goctl to the latest version.
插件版本 goctl 1.1.4
命令版本 goctl version 1.5.4 darwin/amd64
mac的

Try using the terminal to execute the command.

Please upgrade goctl to the latest version.

goctl 1.1.4 已经是最新版的,没用

goctl v1.5.4 is the latest version.

This is a bug in the goland intellij plugin, please forward this issue to https://github.com/zeromicro/goctl-intellij


Asset samples

replaces https://github.com/GoogleCloudPlatform/php-docs-samples/pull/758

Thanks very much! Sorry I've been in meetings before I can get a chance working on them.


Items skipped when navigating a playlist containing failed items fast

Description of the problem
When navigating a playlist containing failed items fast (forward and backward in sequence), items might be skipped.
Relevant stack trace or log output
No response
Reproducibility
Always
Steps to reproduce

Open the demo.
Open the playlist with a failed URL example.
Use the arrows to navigate forward and back fast. After passing the failed item once navigating forward might skip the last item. Navigating backwards might skip the first item in the same way.

Library version
0.1.0
Operating system
iOS 17
Code sample
No response
Is there an existing issue for this?

[X] I have searched existing issues and found no similar bug report.

Can still be reproduced with 5.0.0 and the following updated test:
func testAdvancingFromAnError() {
    let item1 = PlayerItem.simple(url: Stream.unauthorized.url)
    let item2 = PlayerItem.simple(url: Stream.onDemand.url)
    let player = Player(items: [item1, item2])
    player.advanceToNextItem()
    expect(player.streamType).toEventually(equal(.onDemand))
    expectEqualPublished(values: [item2, item1, item2], from: player.$currentItem, during: .seconds(3)) {
        player.returnToPrevious()
        player.advanceToNextItem()
    }
}

I really struggled to reproduce this issue, though. Pretty sure this is a very minor problem.

As discussed with @waliid this is really a minor issue. Closed.


refined ceph rbd migration content

https://issues.redhat.com/browse/RHOSPDOC-1995

Hi @fmount . Can you please review my changes and address my questions?
Also, as a general comment, the "Migrating Ceph Monitor daemons to Red Hat Ceph Storage nodes" is quite long. There are 36 steps in the main procedure. I was thinking we could split the procedure around step 19. So, the procedure would end with "Verify, using the ip command, that the IP address is not present in the source node anymore." And the next procedure would start with "SSSH into the target node, for example cephstorage-0, and add the IP address for the new mon."
Is that a logical spot to split them, or would you prefer a different way?

Hi @fmount . Can you please review my changes and address my questions? Also, as a general comment, the "Migrating Ceph Monitor daemons to Red Hat Ceph Storage nodes" is quite long. There are 36 steps in the main procedure. I was thinking we could split the procedure around step 19. So, the procedure would end with "Verify, using the ip command, that the IP address is not present in the source node anymore." And the next procedure would start with "SSSH into the target node, for example cephstorage-0, and add the IP address for the new mon." Is that a logical spot to split them, or would you prefer a different way?

Hi @klgill, thanks for checking and taking care about the Ceph procedure, much appreciated.
I'm not sure it makes sense to split at step 19 (in the middle of the migration), but if you feel it's quite long for a single module, we can eventually split (in a different PR) mons into multiple submodules, organized by an high level logical distinction.
I'll check this part and comment again on this topic.

@klgill wrt splitting the mon migration procedure, I reviewed the current adoc and I might have a proposal.
In general we can split the procedure for Mons in 4 stages:

Prerequisites
Drain source node
Network (Ip address migration)
Redeploy Mon

This means we can build 4 logical subsections and split the procedure. After we land this patch and #591 I'll propose that split and we can discuss more about it.

@klgill wrt splitting the mon migration procedure, I reviewed the current adoc and I might have a proposal. In general we can split the procedure for Mons in 4 stages:

Prerequisites
Drain source node
Network (Ip address migration)
Redeploy Mon

This means we can build 4 logical subsections and split the procedure. After we land this patch and #591 I'll propose that split and we can discuss more about it.

@fmount Both this PR and #591 are merged.

@klgill wrt splitting the mon migration procedure, I reviewed the current adoc and I might have a proposal. In general we can split the procedure for Mons in 4 stages:

Prerequisites
Drain source node
Network (Ip address migration)
Redeploy Mon

This means we can build 4 logical subsections and split the procedure. After we land this patch and #591 I'll propose that split and we can discuss more about it.

@fmount Both this PR and #591 are merged.

Thank you! I'll start working on the split tomorrow and propose a patch you can review!


Jetbrains annotations, warnings, and more visual tools for modders.

Ok, so randomly while porting to 1.19.1-rc3 I may have touched a function and was like "what about @Contract".
I don't know how that thought came but it sparked a discussion we all should have.
Static analysis
Static analysis is... cool! Honestly it's very nice and it's becoming something more and more important in development spaces (to the point of having languages doing as much at compile time).
For those who don't know, static analysis is stuff that runs at compile-time, or in this case is directly visible through warnings in Intellij IDEs. It's.. quite important tools.
QSL and static analysis
So far we've been using Jetbrains annotations with @ApiStatus and @Nullable, and some others.
But that's not the only annotations:

there's @NotNull that we haven't used since we consider stuff to be non null by default.
But Kotlin modders claim that it would make Kotlin mods safer as lot of compile-time checks could then be executed.
there's @Contract which allows to:

mark a function as pure (no side effects)
mutates a parameter (experimental so might not stay in future versions of the library)
assign a contract clause to a function, which can be very rich like null, null -> null; _, null -> param1; null, _ -> param2; !null, !null -> new.

Said contract clause can generate warnings like:

Limitations
Most of those annotations are, sadly, only useful for Intellij IDEA users.
It does not affect Gradle, Eclipse does not recognize them, nor VSCode.
The Question
All of that is good and all, but so far those are not really used.
One of the main issue is: annotation hell
Using more these might make code harder to read or annoying to write, lots and lots of annotations due to Java's lack of native static analysis tools.
So the question is:

do the benefits outweights the con?
are tools like this what modders want?
should we start using those?

I agree. It would be super useful, especially with the nullness annotations, since those are used directly by Kotlin (even if you don't use IDEA for Kotlin).

It would definitely be useful imo

Kotlin user here, we should definitely start using them :)

I've had this conversation in the past with people from the kotlin team. However, I was told it doesn't cause that big an issue since native types exist.

To clarify the specific behavior of kotlin and java types, I recommend the kotlin docs on platform types https://kotlinlang.org/docs/java-interop.html#null-safety-and-platform-types

When you call methods on variables of platform types, Kotlin does not issue nullability errors at compile time, but the call may fail at runtime, because of a null-pointer exception or an assertion that Kotlin generates to prevent nulls from propagating

Essentially, if you know that QSL always denotes nullable types, kotlin users can make the same assumptions as java users

I also like my IDE to yell when I'm dumb.
The only thing I'm not sure is worth it is @Contract. It looks like it would take the most work to maintain and also adds the most clutter to source code.

The only thing I'm not sure is worth it is @Contract. It looks like it would take the most work to maintain and also adds the most clutter to source code.

One thing I realized later is that @Contract doesn't just yell at modders, it also yells at QSL implementers!
If you define a method contract to be _ -> null but returns something not null, it'll warn inside the implementation saying that the implementation is wrong. WHICH IS SO GOOD.
Another thing, @Contract allows to say if a method is pure, so if you introduce side effects it'll be able to warn you.

I mean, all sounds good if devs are ok with maintaining it.

VS Code and Eclipse, as I recently learned, can actually recognize @Nullable and @NotNull if you configure them to.

It may also make sense to use @Mutable and @ReadOnly from the kotlin-annotations-jvm module, to mark collection arguments and return values as mutable or read-only, respectively.
Just like with @NotNull, this not only improves API surface from Kotlin, but also serves a documentation purpose for everyone else.
(This module is written in Java and doesn't require any other parts of Kotlin.)

Worth noting that Jetbrains annotations already contain @Unmodifiable and @UnmodifiableView. Which seem more precise than @ReadOnly.

I also like my IDE to yell when I'm dumb.
The only thing I'm not sure is worth it is @Contract. It looks like it would take the most work to maintain and also adds the most clutter to source code.

I disagree here, for a few reasons:

@Contract, after learning to use it, is very readable. And I'm quite sure IDEA is able to collapse them.
It helps to set expectations from the function - not to change reference objects (will be way more useful when Java's custom primitives will release), to return X and Y. It shortens the length of javadocs by a lot, as users can expect IDEA to answer certain questions, so a longer javadoc isn't needed.

I have 2 more points, relating to IDEs and annotation hell:
3. I would argue that IDEA is the recommended IDE for Minecraft mod development, especially Quilt (if not java as a whole), and users that don't use the recommended software, have to deal with the negatives.
4. JetBrains annotations are supported on two IDEs - Intelij IDEA, and JetBrains fleet (that has a more VSCode-like usage style for those who prefer it), so modders aren't locked into a specific IDE.

I also like my IDE to yell when I'm dumb.
The only thing I'm not sure is worth it is @Contract. It looks like it would take the most work to maintain and also adds the most clutter to source code.

I disagree here, for a few reasons:

@Contract, after learning to use it, is very readable. And I'm quite sure IDEA is able to collapse them.
It helps to set expectations from the function - not to change reference objects (will be way more useful when Java's custom primitives will release), to return X and Y. It shortens the length of javadocs by a lot, as users can expect IDEA to answer certain questions, so a longer javadoc isn't needed.

I have 2 more points, relating to IDEs and annotation hell:
3. I would argue that IDEA is the recommended IDE for Minecraft mod development, especially Quilt (if not java as a whole), and users that don't use the recommended software, have to deal with the negatives.
4. JetBrains annotations are supported on two IDEs - Intelij IDEA, and JetBrains fleet (that has a more VSCode-like usage style for those who prefer it), so modders aren't locked into a specific IDE.p

Worth noting that Jetbrains annotations already contain @Unmodifiable and @UnmodifiableView. Which seem more precise than @ReadOnly.

But unfortunately those don't show up in Kotlin, as far as I can tell.

I'm all for using more annotation documentation - especially Contract. It is, at worst, machine readable documentation that some IDEs won't be able to read. At best, it's an extremely powerful tool to ensure stuff works as intended. And what's more, it's useful even when IDEs don't recognize it - modders or qsl contributors using stuff besides IntelliJ IDEA can still read the annotations

As I'm seeing all of this more and more used in recent PRs and new QSL APIs, I think it's fair to say we have adopted the usage of such annotations and we will continue for the foreseeable future.
I personally haven't noticed any huge readability issues so far and have benefited from the static analysis.
Closing this as I believe we've reached a conclusion. Feel free to reopen if we ever need to revisit the idea in the future.


Ensemble should not return its Set

Either use Stream<MemberId>, since the callers always use .stream(), or use Immutables.

closed with fee1a3f


Unable to configure endpoint containing port number

Describe the bug
Fix for URL and Public URL input that does not support endpoints with port number.
Expected behavior
Admin is unable to configure endpoint containing port number.
"Invalid URL" error message is shown.
Expected behavior
Admin is able to configure endpoint containing port number.

[ ] Admin can set any URL from below examples
[ ] Automated tests added / updated

Examples:

https//<IP_ADDRESS>:9082
https//comanin.com:9082
https//comanin.com

Automated Cypress test added.
Tested & accepted.


${processtime} and ${time} added invariant option

Skip culture lookup and casting logic from GetCulture()

Updated documentation:
https://github.com/NLog/NLog/wiki/Time-Layout-Renderer
https://github.com/nlog/nlog/wiki/ProcessTime-Layout-Renderer

Thanks!

Releasing now NLog 4.5.2


Add --debug build flag to include Delve debugger

Currently the entrypoint of the image is always set to /ko-app/<app-name>. This makes it hard to remote debug the app via Delve, which invokes the app e.g. via dlv exec <path-to-app>).
This PR adds a new build flag (--debug), which adds the Delve debugger to the image and sets the entrypoint to invoke delve instead of the ko-app directly.
Hint:

This idea came out of https://github.com/ko-build/ko/pull/1138#issuecomment-1713834074.
I have only tested it on Linux. Tests on MacOS & Windows are welcome :)
To allow a more customized exec configuration of delve (e.g. specify port, etc.), we could allow more configuration flags, to override the default delve args. But I would see this as a follow up, to not blow up this initial PR. (IMO)

How to test this PR:

Apply a manifests with the debug flag. e.g. ko apply --debug -f config/controller.yaml
Start a port forwarding for Delve: kubectl port-forward deploy/my-controller 40000:40000
Connect from your IDE to the remote debugger. E.g. use the following VSCode launch config:{
    "version": "0.2.0",
    "configurations": [{
            "name": "Attach to remote",
            "type": "go",
            "request": "attach",
            "mode": "remote",
            "port": 40000,
            "host": "<IP_ADDRESS>",
            "showLog": true,
            "cwd": "${workspaceFolder}"
        }
    ]
}

Hi @imjasonh,
regarding the discussion in #1138, I came up now with the --debug option as an alternative (and from a user perspective simpler) approach.

Hi @imjasonh,
could you check on this PR?

Codecov Report
Patch coverage: 65.71% and project coverage change: +0.53% :tada:

Comparison is base (cf3e626) 49.34% compared to head (fb6c7b3) 49.87%.
Report is 6 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1148      +/-   ##
==========================================
+ Coverage   49.34%   49.87%   +0.53%
==========================================
  Files          44       44
  Lines        3640     3743     +103
==========================================
+ Hits         1796     1867      +71
- Misses       1614     1637      +23
- Partials      230      239       +9

Files Changed
Coverage Δ

pkg/commands/resolver.go
36.01% <0.00%> (-0.44%)
:arrow_down:

pkg/build/gobuild.go
58.48% <65.95%> (+1.17%)
:arrow_up:

pkg/build/options.go
66.66% <100.00%> (+1.96%)
:arrow_up:

pkg/commands/options/build.go
68.80% <100.00%> (+0.50%)
:arrow_up:

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

Hello @jonjohnsonjr,
I saw your name in the MAINTAINERS.md file :) Could you check on this PR or help me to find someone who can review it?
Thanks a lot in advance

Friendly reminder about this :grin:

Rebased to solve merge conflicts.
@imjasonh is there a way you find some time to check on this? Or any other advice how we can proceed here? If you don't want such functionality in ko, I have to accept it but it would be good for me to know if we can follow up here or if I have to find another way.
Thanks in advance already

This looks so cool!!!!! I see that conflicts have emerged over time, and I opened https://github.com/ko-build/ko/pull/1320 to see if we can get this across the finish line 🏁

This looks so cool!!!!! I see that conflicts have emerged over time, and I opened #1320 to see if we can get this across the finish line 🏁

Hey @luhring,
thanks for checking on this. I rebased it a few days ago, but didn't see any merge conflicts on this (now they probably came via 2a4c12f410f678ee72c2dcd8036ceb1b9b113c10). Thanks for addressing them already in #1320

This is merged! 🎉
Thank you for your patience, and happy debugging! 🐛


Restrict Possible Username: wrong solution

Describe your problem and how to reproduce it:
Solution to this challenge doesn't take into account that:

Three-or-more-letter usernames with a single alphabet letter character at the beginning are obviously the solution as well.

Add a Link to the page with the problem:
https://guide.freecodecamp.org/certifications/javascript-algorithms-and-data-structures/regular-expressions/restrict-possible-usernames/
Tell us about your browser and operating system:

Browser Name: Google Chrome
Browser Version: Version 71.0.3578.98 (Official Build) (64-bit)
Operating System: Ubuntu Mate 16.04 LTS

If possible, add a screenshot here (you can drag and drop, png, jpg, gif, etc. in this box):

I suggest this solution:
/^[a-z]{2,}\d*$|(?=\w{3,})^[a-z]{1,}\d+$/i
Obviously, my solution uses positive lookahead (studied few challenges forward in the curriculum).

@ugitch  If my understanding is correct, from this description: "1) The only numbers in the username have to be at the end. There can be zero or more of them at the end." it sounds like you cannot mix letters and digits together. So if you have 3 or more letters, but only 1 at the beginning, that means that the rest have to be mixed with other numbers, and this is the reason is not covered in the solution.
The fact that your solution passes, could be an issue in the test cases maybe. What do you think?
I am willing to fix this once we can decide whether the description & solutions are wrong, or the test cases.

@icatat I mistakenly wrote letter instead of character in three-or-more-character. I corrected it. You can check my solution in a website like regexr with the examples of usernames. Thanks for showing interest!

This challenge was recently updated. The solution added to the challenge file...
let username = "JackOfAllTrades";
const userCheck = /^[a-z]([0-9]{2,}|[a-z]+\d*)$/i;
let result = userCheck.test(username);

This can be put in the guide.


[$500] Command + left/right arrow to go back/forward stopped working on desktop

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.4.35-5
Reproducible in staging?: yes
Reproducible in production?: yes
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: @rafecolton
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1706724719541289
Action Performed:

Open RHP in desktop app
Use cmd + left/right arrow

Expected Result:
Able to navigate between screens
Actual Result:
nothing happens
Workaround:
unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence
https://github.com/Expensify/App/assets/38435837/1a29edd5-e66b-4a49-b1a6-91320d31ef93

View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~017be8ae464b81915b
Upwork Job ID:<PHONE_NUMBER>737479168
Last Price Increase: 2024-02-02

Proposal
Please re-state the problem that we are trying to solve in this issue.
The cmd+arrow key doesn't work to go forward/back on the desktop.
What is the root cause of that problem?
The shortcut to go back/forward is cmd+] and cmd+[ and it's been like that for a long time.
https://github.com/Expensify/App/blob/d9fd412e85be642e7b4115cd8c15ceda8424740e/desktop/main.js#L406-L416
What changes do you think we should make in order to solve the problem?

If we want to update it with the arrow key, then we can just replace [] with Left/Right.
Cmd+Left / Shift+Left
Cmd+Right / Shift+Right

I don't think we should replace [], they should both work. Also I don't know where shift + left/right is coming from - is that a windows thing? That doesn't work for me in browsers or in slack, so afaik that is not a standard key combination for going back/forward.

Looking at the official Apple Safari shortcuts (assuming this is the intended behaviour we want to emulate here), Cmd+] and Cmd+[ are the keyboard shortcuts to navigate forward and back respectively, so I think we can close this one.

@akinwale I don't agree that we should close this. Using cmd + arrow keys is pretty universal back/forward behavior across many apps, including Slack and Google Chrome. It also works in Safari.

@rafecolton In that case, I suppose it makes sense to implement support for new shortcuts instead of replacing the existing ones.
@bernhardoj Could you update your proposal to take this approach?

Also I don't know where shift + left/right is coming from - is that a windows thing?

It's for the left and right arrow

Could you update your proposal to take this approach?

if we want to support both, we need to use a workaround because electron doesn't support multiple shortcuts

There is already a linked workaround to allow both shortcuts in my proposal

It's for the left and right arrow

I meant the shift part specifically. But then I saw the ternary checking for darwin, so that clarifies that shift + <whatever> is for non-macos systems

Ah sorry, yes, the shift is for non-macos.

Hey @rafecolton @akinwale, can we accept @bernhardoj proposal? Does it fix the issue? Thanks!

@isabelastisser Yes, we can move forward with @bernhardoj's proposal.
🎀👀🎀 C+ reviewed.

@isabelastisser I think we should confirm in #expensify-open-source or #product that we want to do this, as this isn't a bug but a new feature from what I understand

Thanks for the heads up, Carlos! Asking here.

@bernhardoj, we can move forward with the proposal. Thanks!

PR is ready
cc: @akinwale

Hey @akinwale, please complete the checklist above so we can close the issue. Thanks!

Payment summary:
@akinwale automatic offer (Reviewer) $500
@bernhardoj automatic offer (Contributor) $500

[x]  [@akinwale] The PR that introduced the bug has been identified. Link to the PR:
[x]  [@akinwale] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment:
[x]  [@akinwale] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:

Not a regression. This functionality was not implemented for desktop.

[x]  [@akinwale] Determine if we should create a regression test for this bug.
[x]  [@akinwale] If we decide to create a regression test for the bug, please propose the regression test steps to ensure the same bug will not reach production again.

Regression Test Steps

Launch the desktop app.
Open any number of chat reports.
Press Cmd+Left arrow key on the keyboard (make sure no text input is focused and no modal is open before pressing the keys).
Verify that the app navigates back.
Press Cmd+Right arrow key on the keyboard (make sure no text input is focused and no modal is open before pressing the keys).
Verify that the app navigates forward.

Do we agree 👍 or 👎?

All set!
https://github.com/Expensify/Expensify/issues/371836


Improving the text performance

I am experimenting with improving the rendering performance of text. To archive better performance I had to change the font definition to include a direct jump table, so there is no need to calculate the address each time you need to jump to the correct char. I also added a flag to the jump table (eg. 0xFF, 0xFF) to signal that the char is not printable, removing it completely from the font table.
This jump table consist of 3 bytes. The first two are used for the jump (giving us 2^16 addressable bytes) and the last byte is used to define the width of the char. You can see the usage in the new drawString function.
After doing all that I investigated a bit in how the display buffer is structured and noticed that it has a curious layout in which each byte corresponds to 8 pixel in height. To get the best performance I designed an image format which is basically a flipped XBM to have a better 1:1 mapping to each pixel in height. I added an internal function called drawInternal which takes such an image an draws it in as little buffer modifications as possible.
Due to the optimisation the new font definitions are a little smaller too. (approx. 2kb)
If you are interested in investigating further in this direction I would create a pull request to discuss how we can further improve text render performance (I think there are some opportunity to cache some calculations).
These improvements could also be made for drawing calls like drawRect and fillRect.

I further optimised the font drawing and created a new java tool to create such a new font definition here.


Spring meeting 2024 page updates

Two quick changes:

Removes a reference to in-person attendance (and corrects a probable typo on the same line, referring to "spring-related emails", which makes me think of spring rolls for some reason. Mmmmm.)
Links the Code of Conduct. Maybe that's not the right place, but it should be somewhere. Actually I think it should also be an "I agree" checkbox on the registration page, but possibly too late for that.

(why the branch name? because I fumble-fingered and was too lazy to fix)