[BUG] Fix CompatHelper action

It runs daily and it is failing. I did something similar here: https://github.com/abelsiqueira/ProbabilityThing.jl/pull/1 and possibly something has to be enabled in the settings. Haven't checked yet.

Unassigning myself until #40 is done.

This was not done. It needs permissions to create pull requests. Someone needs to enable write permissions and check the box to allow PRs from actions in https://github.com/TulipaEnergy/TulipaEnergyModel.jl/settings/actions

@datejada, can you do that?

Now really done.

I get notifications daily that this is still an issue :(

It looks like these issues happen on your fork, @clizbe. Can you confirm that the same settings have been fixed on your fork?


Duplicate fields defined in multiple tables conflict when indexed

Given an .arc file looking something like this
@tables
users
  id *String
organizations
  id *String

@indexes

users
  provider_id *String
organizations
  provider_id *String

Causes the produced dynamo indexes to conflict causing the following error.
@tables create app-staging-users
@tables create app-production-users
@tables create app-staging-organizations
@tables create app-production-organizations
../node_modules/aws-sdk/lib/request.js:31
            throw err;
            ^

ValidationException: One or more parameter values were invalid: Duplicate index name: provider_id-index
    at Request.extractError (../node_modules/aws-sdk/lib/protocol/json.js:48:27)
    at Request.callListeners (../node_modules/aws-sdk/lib/sequential_executor.js:105:20)
    at Request.emit (../node_modules/aws-sdk/lib/sequential_executor.js:77:10)
    at Request.emit (../node_modules/aws-sdk/lib/request.js:683:14)
    at Request.transition (../node_modules/aws-sdk/lib/request.js:22:10)
    at AcceptorStateMachine.runTo (../node_modules/aws-sdk/lib/state_machine.js:14:12)
    at ../node_modules/aws-sdk/lib/state_machine.js:26:10
    at Request.<anonymous> (../node_modules/aws-sdk/lib/request.js:38:9)
    at Request.<anonymous> (../node_modules/aws-sdk/lib/request.js:685:12)
    at Request.callListeners (../node_modules/aws-sdk/lib/sequential_executor.js:115:18)

/cc @brianleroux


Route reflector operator config

Description
Route Reflector operator autoscaler controller needs new controller configs. This PR introduces them

@caseydavenport I close this PR because i created an other where are fixed all of your comments here: https://github.com/projectcalico/api/pull/36


Standardized firmware update mechanism

Each platform has its own way of doing firmware updates.
This is user unfriendly as it requires intimate knowledge of what machine you're using and its particular method of updates rather than everything being simple and easy.
We should have standard OPAL APIs for updating firmware.

@jk-ozlabs would we be able to do this on top of the PLDM stuff you were looking at?


[$500] Dev - Request Money - Manual request money Infinity loading after login

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

Action Performed:

Logout and login again
Click FAB button
Click request money
Click manual tab, Observed infinite loading

Expected Result:
Show manual request money
Actual Result:
Infinity loading show
Workaround:
Unknown
Platforms:

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

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

Version Number: Dev 1.3.74-2
Reproducible in staging?: n
Reproducible in production?: n
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
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/93399543/bff9ee62-7571-453d-9f09-693637df3b10
https://github.com/Expensify/App/assets/93399543/7171fb4d-1daf-482e-9ef6-577f720d0981
https://github.com/Expensify/App/assets/93399543/e66928cb-1cbb-45f4-a2f3-4502323a6e3a
https://github.com/Expensify/App/assets/93399543/8ed5be04-b28d-4171-a99f-a1fdc3606ab1
https://github.com/Expensify/App/assets/93399543/e59c4cba-a539-4246-b1c5-6360a76d2bfb
https://github.com/Expensify/App/assets/93399543/2f63fd6e-7ffa-4fc7-bb15-ef233aec9703
https://github.com/Expensify/App/assets/93399543/fc56c44a-9ea1-4f56-871a-f53a75e9ec11
Expensify/Expensify Issue URL:
Issue reported by: @namhihi237
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1695742872366339
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~017e5ca352b532b8bd
Upwork Job ID:<PHONE_NUMBER>430234624
Last Price Increase: 2023-09-26

Proposal by: @namhihi237
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1695742872366339
Proposal
Please re-state the problem that we are trying to solve in this issue.
Manual request money shows Infinity loading after logout and login again
What is the root cause of that problem?
This issue was introduced by #25786
We currently have the condition checking iou.didInitCurrency to show FullScreenLoadingIndicator:
https://github.com/Expensify/App/blob/cfad43ff96f2a104c51fd475e07f0980c4379fcd/src/pages/iou/steps/NewRequestAmountPage.js#L164-L166
When the app is initialized, we initializedidInitCurrency here
https://github.com/Expensify/App/blob/cfad43ff96f2a104c51fd475e07f0980c4379fcd/src/libs/actions/IOU.js#L78
Here is the logic to reset the iou after login.
https://github.com/Expensify/App/blob/cfad43ff96f2a104c51fd475e07f0980c4379fcd/src/libs/actions/IOU.js#L86-L102
That's why before logging out shouldResetIOUAfterLogin = false. After logging out and logging back in, shouldResetIOUAfterLogin is still false, causing the phone to return and not reset the iou.
This leads to didInitCurrency = false so when we enter NewRequestAmountPage it results in show loading. until we reload the page to reset the shouldResetIOUAfterLogin = true variable
What changes do you think we should make in order to solve the problem?
We should modify the conditions a bit
if (!val || (!shouldResetIOUAfterLogin && didInitCurrency)) {
    return;
}

What alternative solutions did you explore? (Optional)
N/A

Proposal
Please re-state the problem that we are trying to solve in this issue
The issue is that the "Request Money" feature is stuck in an infinite loading state after login.
What is the root cause of that problem?
In the NewRequestAmountPage.js file, there is a condition that checks if didInitCurrency is false; if so, it returns a FullScreenLoadingIndicator. This causes an infinite loading state if didInitCurrency is not set to true once the currency is initialized.
What changes do you think we should make in order to solve the problem?
We need to ensure that didInitCurrency is set to true once the currency is initialized. This change should be made in the IOU.js file where the currency is being initialized.
Here is the proposed change in IOU.js:
Onyx.connect({
    key: ONYXKEYS.IOU,
    callback: (val) => {
        didInitCurrency = lodashGet(val, 'didInitCurrency');
        if (!didInitCurrency) {
            // Initialize the currency here
            // After initializing the currency
            Onyx.merge(ONYXKEYS.IOU, {didInitCurrency: true});
        }
    },
});

Result
What alternative solutions did you explore? (Optional)
None

Proposal from @namhihi237 looks good to me https://github.com/Expensify/App/issues/28280#issuecomment-1736328121
🎀 👀 🎀 C+ reviewed

Could I ask why @narefyev91? as from what I see the Solution on @namhihi237 proposal is not clear

As this is within regression period, original author/reviewer could take this.
cc: @tienifr @allroundexperts

@Gonals Based on comment from @tgolen here https://github.com/Expensify/App/pull/25786/files/ecb657b4ecafe42d4c34537adf1ba90b3a01f94b#r1339409911 - the PR which introduced may be reverted and contributor who works on the issue should take care of this regression (re-work on initial issue and resolve this regression as well). But also @tgolen pointed good item https://github.com/Expensify/App/issues/26538 - that we can wait his code changes
I will say that we can put on hold for now until this https://github.com/Expensify/App/issues/24393 - will be closed

👋 Can we get this checklist filled out please to proceed with payments?

The PR that introduced the bug has been identified. Link to the PR - it was revering PR flow

What does this mean? The PR that caused this bug has been identified and since reverted by its author?

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 - N/A

I don't think this is "not applicable", this bug was a regression from somewhere right? I think you're saying they are already aware of it because they authored the PR to revert it citing this bug.

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 - N/A

When answering "N/A" it would be good to expand just a little on why you think something is not applicable. I think that reason might be because the problem the original PR was solving is being prevented (deep linking to say the confirmation screen of a money request), so it's not something we need to "catch" going forward.

Determine if we should create a regression test for this bug - N/A

Same sentiment as above. No need to add a regression test for a deep link flow that's not going to be possible anymore or something?

Perfect, paid!


Importer DLL issue with IL2CPP

Got errors building for Quest 2, on IL2CPP. Tested before with standard Android project and worked.
Tracked down to DLL error while building, and after deleting the NAudio.dll it worked normally as before.
Can it be updated?

Any unused importer can just be deleted.
Ideally it would ignore unused importers. After some testing ENABLE_IL2CPP seems to work for this. I'll add it to my todo list.


Added rescue for network partition

Currently when RabbitMQ cluster have network partition this plugin fail and report:
Check failed to run: undefined method <' for nil:NilClass, ["/etc/sensu/plugins/check-rabbitmq-consumers.rb:131:in block in run'", "/etc/sensu/plugins/check-rabbitmq-consumers.rb:121:in each'", "/etc/sensu/plugins/check-rabbitmq-consumers.rb:121:in run'", "/opt/sensu/embedded/lib/ruby/gems/2.3.0/gems/sensu-plugin-1.4.2/lib/sensu-plugin/cli.rb:58:in `block in class:CLI'"]
Now with this fix it will report:
CheckRabbitMQConsumers CRITICAL: Could not find any queue, check rabbitmq server
Pull Request Checklist
Is this in reference to an existing issue?
No
General

[ ] Update Changelog following the conventions laid out on Keep A Changelog

[ ] Update README with any necessary configuration snippets

[ ] Binstubs are created if needed

[ ] RuboCop passes

[ ] Existing tests pass

New Plugins

[ ] Tests

[ ] Add the plugin to the README

[ ] Does it have a complete header as outlined here

Purpose
Known Compatablity Issues

could you update the changelog


Compiler Should Use Exception-Safety Flag

Any source files that use @try / @catch should be compiled with f-objc-arc-exceptions so that ARC is made exception safe.
In the podspec, you can break those files out into a subspec and make that subspec part of the default spec:
  s.subspec 'exception-safe' do |sp|
    sp.source_files = 'MyARCFiles.{h,m}'
    sp.compiler_flags = '-f-objc-arc-exceptions`
  end

Awesome catch!


Mestrenova & Chemdraw 能在 MacOS 12 上使用了嗎？

首先非常感謝大佬在這塊領域的付出:)
死忠粉絲 敬上

Sorry, but I currently do not have a test environment. Nevertheless, could you please state more specifically what your issue is for Mac12?

On Dec 20, 2021, at 23:57, scout1256 @.***> wrote:

首先非常感謝大佬在這塊領域的付出:)
死忠粉絲 敬上
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you are subscribed to this thread.

well, I haven't test it either.
I'll report here if it works on MacOS 12 :))

Well, I don’t see any chance that it won’t work. For macOS 11, the issue was with the digital signature, but that was an easy fix. Let’s be optimistic for the moment. I am closing the issue for now but any follow up is welcome. Please fill free to reopen this issue anytime you find an issue with OS12. Thanks

@scout1256 FYI: tested by other users.


MBPP test points fail due to misaligned function headers

Hi, I executed the following command:
        python main.py \
            --model_name "$MODEL_DIR" \
            --task "MBPP" \
            --save "$LOG_DIR" \
            --num_gpus 1 \
            --num_samples 1 \
            --temperature 0.0 \
            --num_workers 10 \
            --batch_size 200 \
            --max_tokens 4096 \
            --model_type "Chat" \
            --prompt_type "Instruction" \
            --prompt_prefix "" \
            --prompt_suffix "" \
            --trust_remote_code

The model I chose is OpenCoder-8B-Base. but my measured pass@1 is 20.8, much lower than the 79.9 you mentioned, I investigated evaluation.jsonl and found out that it is caused by the output code not matching the test points, for example:
{"task_id": 40, "completion_id": 0, "passed": false, "result": "failed: name 'freq_element' is not defined", "solution": "import math
import re
import sys
import copy
import datetime
import itertools
import collections
import heapq
import functools
import hashlib
import numpy
import numpy as np
import string
from typing import *
from collections import *

def count_char(string, char):
    count = 0
    for c in string:
        if c == char:
            count += 1
    return count
assert freq_element([[1, 2, 3, 2], [4, 5, 6, 2], [7, 1, 9, 5]])==({2: 3, 1: 2, 5: 2, 3: 1, 4: 1, 6: 1, 7: 1, 9: 1})
assert freq_element([[1,2,3,4],[5,6,7,8],[9,10,11,12]])==({1: 1, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 10: 1, 11: 1, 12: 1})
assert freq_element([[15,20,30,40],[80,90,100,110],[30,30,80,90]])==({30: 3, 80: 2, 90: 2, 15: 1, 20: 1, 40: 1, 100: 1, 110: 1})"}

Function count_char and freq_element have different input.And I found that the function count_char appears on line 666 of MBPP.jsonl, where the data is no longer one of the 500 pieces of data used to test

I am sorry that this is a mistake and that our post-process will take the longest valid Python code in the generation so that this is mistake we will fix it, and now you can remove Line 111-113 in vllm.py and keep the only generation part, and I hope this can help you.

We will fix this problem in a few days.

Thank you for your reply, but it doesn't completely solve the problem.
After modifying vllm.py, pass@1 improves from 20.8 to 57.2, but this is still below the expected 79.9.
After checking again, I realize that some of the data is not outputting functions, for example:
{"task_id": 163, "completion_id": 0, "passed": false, "result": "failed: name 'area_polygon' is not defined", "solution": "import math
import re
import sys
import copy
import datetime
import itertools
import collections
import heapq
import functools
import hashlib
import numpy
import numpy as np
import string
from typing import *
from collections import *

import math
assert area_polygon(4,20)==400.00000000000006
assert area_polygon(10,15)==1731.1969896610804
assert area_polygon(9,7)==302.90938549487214"}

There is no implementation of area_polygon in the answer.
And this change is devastating to Humaneval's review, all outputs become “pass”,for example:
{"task_id": 2, "completion_id": 0, "passed": false, "result": "failed: ", "solution": "import math
import re
import sys
import copy
import datetime
import itertools
import collections
import heapq
import functools
import hashlib
import numpy
import numpy as np
import string
from typing import *
from collections import *

def truncate_number(number: float) -> float:
    """ Given a positive floating point number, it can be decomposed into
    and integer part (largest integer smaller than given number) and decimals
    (leftover part always smaller than 1).

    Return the decimal part of the number.
    >>> truncate_number(3.5)
    0.5
    """

    pass

METADATA = {
    'author': 'jt',
    'dataset': 'test'
}

def check(candidate):
    assert candidate(3.5) == 0.5
    assert abs(candidate(1.33) - 0.33) < 1e-6
    assert abs(candidate(123.456) - 0.456) < 1e-6

check(truncate_number)"}

@Qlalq The result 57.2 is right because 79.9 is the results from the chat model.

I'm sorry, I don't quite understand.
May I ask if the chat model is the instruct model?
I know from the table below that the pass@1 for 8B-Base model on MBPP is 79.9, but I get 57.2, if I set “--model_type” to "Chat", then I get 20.6, how do I get 79.9 in the table? Can you provide me with the command you executed?

Sorry for misunderstanding, when you set the task is "MBPP", you will get the result of "3-shot" in table, and the base and plus set of MBPP should set the task as "MBPPBase" and "MBPPPlus".

Thanks for the heads up, I did find this in args.py
But the code reported an error when I switched to MBPPBase:
[rank0]: Traceback (most recent call last):
[rank0]:   File "/experiment/OpenCoder-llm/OpenCodeEval/src/main.py", line 91, in <module>
[rank0]:     main()
[rank0]:   File "/experiment/OpenCoder-llm/OpenCodeEval/src/main.py", line 62, in main
[rank0]:     prompt['prompt'] = refine_text(args.prompt_prefix + prompt['prompt'] + args.prompt_suffix)
[rank0]: TypeError: string indices must be integers

@Qlalq Yes, since we have refined the eval pipeline, and we are trying to fix these issues. Sorry again, and we will mention you when we are ready(we are trying).

I understand, thanks again to the opencoder team!


Constant 'Wrong current password' error

Hi @bizley ,
could you help me?
I'd recently installed Podium 0.5 with such params (web.php):
'forum'   => [             'class'         => \bizley\podium\Podium::class,             'userComponent' => 'user',             'adminId'       => 1,         ],
Installation was successful, but when I logged into my main application and then came to Podium settings, I kept getting 'Wrong current password'... I'm sorry, I've read all wiki instructions and I simply don't understand what's wrong. I looked into Poidum DB and noticed that the password hash for this user was empty.

What is the name of the field that keeps hash password for your user component underlying model's DB table?

@Katenkka is it ok now? Password hash is not set in podium_user table for inherited account because the other user table is checked for password in that case. That is why Podium needs to get the name of field storing the hash if it's different from password_hash.
This mechanism assumes the password has been hashed using the same way as the default Podium identity password so module is able to verify it. This is obvious pitfall but I'm working on a way to tell Podium what to do in case of non-standard password generating.

Hi, @bizley . Thanks for your answer. I didn't get the chance to check it yet, but I think I tried using passwordField option in config... Not sure. Anyway, I'll try it tonight and then tell you if it's okay.

First check if it's needed at all:

Is there the password_hash column in the other user table? You don't have to add userPasswordField in this case.
If there is column there storing password hash with the different name add userPasswordField in configuration.

My user table has field password so I put into config userPasswordField => 'password' and reinstalled Podium.
Unfortunately, it didn't help :(

Please provide me the code used to generate the password stored in the password database column.

It's not my code, I use 'amnah/yii2-user' as user component.

I went through the code of this extension and it looks like it should work with your configuration, weird...
Let me install this on my local env and I will get back to you.

Just one more question - is that account created using email/password or some social network?

I can confirm the following configuration works for yii2-user and Podium to run in cooperation:
'bootstrap' => ['log', 'podium'],
'components' => [
    'user' => [
        'class' => 'amnah\yii2\user\components\User',
    ],
    'authManager' => [
        'class' => 'yii\rbac\DbManager',
    ],
],
'modules' => [
    'user' => [
        'class' => 'amnah\yii2\user\Module',
    ],
    'podium' => [
        'class' => 'bizley\podium\Podium',
        'userComponent' => 'user',
        'rbacComponent' => 'authManager',
        'adminId' => 1,
        'userPasswordField' => 'password'
    ],
],

Setting authManager is required otherwise yii2-user forces to use it's built-in method can which ends with error while trying to check permissions for Podium (like when accessing Administration section).
While being logged in as neo/neo I've managed to change my Podium profile's email successfully confirming my current password (neo). Also I've changed the password in yii2-user, relogged and it was working as well.
Let me know if there are differences in your configuration so we can work this out.

Thanks so much.
My config for authManager is \yii\rbac\PhpManager, maybe that's the thing... Can't I use it? Then I'll try to use DbManager later.

I'm afraid Podium is not compatible with PhpManager. In case of large user pool storing RBAC data in files in not very effective.
I hope this is the only reason of the problem. I'm closing this issue for now, let me know if anything changes so we open it again.

Thanks. It led to me another bug, actually 😁


API call to do the equivalent of function .apply()

I feel like this one in particular would naturally fall out of a primitive to unroll an array into individual stack values, which I know we’ve discussed in the past. :)

It would be more of a convenience with duk_unpack() - but might still be useful if the array is very large. OTOH call handling will unpack the array into the value stack anyway so in practice there won't be much of a difference.

I'd like to +1 this because I'm writing a test harness with DukTape embedded to supply functionality (like sockets) that wouldn't be available otherwise.   My test objects are something like
{ fn : theTestFunction, args : [thing1, thing2, thing3], desc : "A test I'm running" }
and without apply(), it's not going to be easy to fake.  Right now I'm limited to a single function argument, which will suit the requirements for the near term, but having apply() would be a move toward future proofing.

You can do this today by manually unpacking the array onto the stack and using duk_[p]call() - so this would really just be to make something that’s already possible more convenient.

If your test harness is already written in JS then there’s no problem - Function.prototype.apply is freely available to use.  This issue is about implementing an equivalent function in the C API.

Hmm...it threw at me when I tried it.  I think I'll go back and play with that some more--it's possible there was a little bit of wire-crossing when I tried it.  (Too Many Things at Once Syndrome--trying to capture customer issues and team issues while doing this.)

Did you ever forget to include the context argument when calling apply()?  I did.
Thanks.   I'm good now.  Still jonesing for fat-arrow functions, but good otherwise. :)

Okay, there's the problem.  MDN says that for
function.prototype.apply(thisArg, [args]);
that thisArg is optional.  When I leave it out in DukTape, I get a run-time exception.

Okay, I see what you mean.  That’s a bit misleading, but I assume they mean it’s optional in the sense that it’s legal to:
func.apply();

But the thisArg still must be present if you pass any arguments.


Add depth auto exposure mode

Tracked on [LRS-656]

Some UI enhancements and alignments
Unit test

Hi Realsense team, contributor here (docs mainly!) but was looking through release notes and saw this issue and story.
What is the reference to [LRS-656] and is that an internal tracker?  Would love to learn more about this feature and what it is.  Does this feature mean that if you adjust auto exposure settings, currently it only affects RGB and not the IR Stereo depth?  Happy to read more somewhere else.
Also noticed quick typo in the Matlab source, I can open a PR for it, I don't use it, but saw this misspelling of exposure:
https://github.com/Nir-Az/librealsense/blob/44c9e204ebfc24c6e3069f4a784964c83781fda9/wrappers/matlab/option.m#L96
Would you like a PR for this quick fix and some docs on this?

Hi @seebq ,
Thanks for your interest.
What is the reference to [LRS-656] and is that an internal tracker?

Yes, we keep track in an internal system

 Would love to learn more about this feature and what it is

The accelerated AE is only for the depth stream and only relevant for D455 at the moment,
this is an improved algorithm that is faster than the previous one and should output a more accurate result.
On this PR I also did some cosmetics and renamed the color AE to really state color so users (and developers) can distinguish between them.

About the type, nice catch! feel free to open a PR for that, sounds like a valid fix :)

We are excited to try this.  We have a couple hundred D455s in the wild using outdoor stereo depth, and interested in what the accelerated auto exposure will do.
Specifically hope to improve this issue at this timestamp in my video of a limitation with our D455 stereo depth algorithm:
https://youtu.be/ZFFVW7X0i1o?t=81
We've tried a few things with autoexposure regions, and we have an IR filter on these cameras....


feat(rules): add import destructuring spacing rule

Thanks to @dweitz43 for creating the original rule.

Awesome!

you're welcome!


Remove periods from step name in SparkBeamMetric to avoid inconsistent hierarchies in Graphite metric sink

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[ ] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[x] Make sure tests pass via mvn clean verify. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).
[ ] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[ ] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

Since default step names may contain periods, this can cause different depths for metrics hierarchies in Graphite when using Spark metrics Graphite sink.

R: @staslev

Coverage decreased (-0.01%) to 69.303% when pulling 1fa9e21fb5c088c8effb62b92f1f5d2d8e61f7f3 on aviemzur:spark-metrics-source-step-name-issue into 00b39588110c1b5fb7e4a34586957cc05fbcd03c on apache:master.

Coverage increased (+0.007%) to 69.32% when pulling 6212cc16efbacba91ed898410b78f1f6796444ff on aviemzur:spark-metrics-source-step-name-issue into 00b39588110c1b5fb7e4a34586957cc05fbcd03c on apache:master.

Retest this please.

Coverage decreased (-0.003%) to 69.31% when pulling 6212cc16efbacba91ed898410b78f1f6796444ff on aviemzur:spark-metrics-source-step-name-issue into 00b39588110c1b5fb7e4a34586957cc05fbcd03c on apache:master.

Removed trailing underscores from step name and added a test.
PTAL @staslev

LGTM. Merged.


[REQ] Display channel names on bootstrapper dialogs

Acknowledgement of preliminary instructions

[X] I have read and acknowledged the preliminary instructions.

What idea do you have?
freaky

😮

is this going to be a ohhey only feature
you would have to enable it for it to display

i mean you can just like see it in the desktop app

i mean you can just like see it in the desktop app

ok but i'd prefer it to be on the bootstrapper dialog

but why


ARROW-8757: [C++][Plasma] Write Plasma header in little-endian format

This PR writes and reads Plasma header (version, type, and length) in the big-endian format. It allows us to make it easy to interpret a header of Plasma data among different endian machines.
The current issue is to write Plasma header in native endian at here. It is not possible to know version, type, and length of a given Plasma file among different platforms. Feather V2 also uses little-endian for the header based on the discussion. This PR uses little-endian by following this discussion.

Good catch. updated the title.

@github-actions rebase

Sorry, auto-rebase didn't work because there are changes to .github/workflows in master. IDK if the "C GLib & Ruby / AMD64 Windows MinGW 64 GLib & Ruby" failure is real or not, or if rebase would fix it, but that's what I was trying.

Rerunning fixed the test failure.
I've merged this.
Sorry. I forgot to merge this.


What is StockTradingRLEnv.StockEnv for?

HI @BruceYanghy
as you know I'm expanding your work for my masters thesis. And for that, I stepped over the following class:
StockEnv
As far as I scanned over the Code, this Env isn't used anywhere. Can you please explain why this orphan env is there and (more important) you built three different Envs for training validation and trading?
Would be great to hear from you :-)
Kind regards!

HI @BruceYanghy
as you know I'm expanding your work for my masters thesis. And for that, I stepped over the following class:
StockEnv
As far as I scanned over the Code, this Env isn't used anywhere. Can you please explain why this orphan env is there and (more important) you built three different Envs for training validation and trading?
Would be great to hear from you :-)
Kind regards!

That's not used. I will remove that. Thanks.

I just need a lead to the right direction.
Thank you!

 I just need a lead to the right direction. Thank you!

Sure.
The 3 used envs are for different purposes: training, validation, trading.
Training v.s. Validation and Trading: turbulence index is used as a risk signal after the actions which are the trading signals generated by the DRL algorithms. Turbulence index should not be included in training.
Validation v.s. Trading: Validation is just for hyperparameter tuning and model selection purposes, trading env has a previous_state parameter because it is quarterly rebalance, the DRL algorithms can't always start from the beginning (initial state is $1,000,000).


[Bug]: no Compare & PR on forked repo

What happened?
I found a BUG 🐞
I completed the instructions to add my details to the data directory as well as updated the ProfileList.json with my name.
All worked as expected.
Yet there is no 'Compare & Pull Request' button on my fork within my github!
See the attached screen images.
Add screenshots
Added screen images of no 'Compare & Pull Request'

What browsers are you seeing the problem on?
Firefox
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Hey @goobric You can manually open the PR by going to branch you have created.


[MM-46568] - AD-LDAP upsell banner

Summary
This PR adds an ADLDAP upsell banner for professional self-managed workspaces when they visit the user-groups list modal
Ticket Link
https://mattermost.atlassian.net/browse/MM-46571
https://mattermost.atlassian.net/browse/MM-46569
https://mattermost.atlassian.net/browse/MM-46568
Screenshots

Release Note
NONE

Hello @yasserfaraazkhan . Gentle ping

@AGMETEOR
thanks for the changes. I couldn't add e2e for it, but the tests component tests covers most scenarios.
MM-T5189

MM-T5189

Yes, there's only one scenario they don't cover. The journey from  when "Try free for 30 days" is clicked and the confirm modal opens

/update-branch

/e2e-test

Successfully triggered e2e testing!
https://git.internal.mattermost.com/qa/cypress-ui-automation/-/pipelines/247341

@AGMETEOR the only thing is the X icon should not be bold


Possible false positive renta.papy.co.jp

There is a reddit discussion around why renta.papy.co.jp is blocked. I don’t speak/read Japanese, but from a quick glance it looks like it might be a false positive.
Reddit discussion here: https://reddit.com/r/pihole/comments/d09920/wife_complaining_about_all_her_sites_being_blocked/

Whoops, this has already been fixed. Thanks! Sorry I missed your comment


Upgrade 21.1 sql playground to v21.1.0-alpha.3

Now that alpha.3 has been released: https://www.cockroachlabs.com/docs/releases/v21.1.0-alpha.3

This change is

Online preview: http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/107fac8e643b6e584ac8a1ab0b37f46d1535d0c3/


feat: auto detect nic name

What type of PR is this?

feat
What does this PR do?

auto detect nic name
Which issue(s) does this PR fix?

Fixes #119
Special notes for your reviewer:

Does this PR introduce a user-facing change?

auto detect nic name

/cc @hanweisen @ONE7live @wangyizhi1

please rebase and set the kind of pr @OrangeBao


Command line usage

Is it possible?
$ cat sun.lua
local http = require("http")

$ glua sun.lua
sun.lua:1: module http not found:
no field package.preload['http']
CreateFile .\http.lua: The system cannot find the file specified.
CreateFile C:\opt\lua\http.lua: The system cannot find the path specified.
CreateFile C:\opt\lua\http\init.lua: The system cannot find the path specified.

https://github.com/yuin/gopher-lua#standalone-interpreter

That is possible yes but you'll have to modify
https://github.com/yuin/gopher-lua/blob/f46add6fdb5c3d93936a840f565e8e753a79ca34/cmd/glua/glua.go#L62
And add
L.PreloadModule("http", gluahttp.NewHttpModule(&http.Client{}).Loader)

https://github.com/yuin/gopher-lua/issues/263


Convert from CommonJS to ES Modules

Since this library never saw much use in Node production servers, I think it's safe to require Node v13.2.0 or higher so we can start using import/export instead of require(). I'll open a separate issue related to specifying Node requirements. Note that we'll also need to enable this in our package.json, per https://nodejs.org/api/esm.html#esm_enabling.

Worth noting that CommonJS cannot load ES Modules with require() (they have to use the asynchronous import() instead), even though ES Modules can load all CommonJS modules. So we'll be losing a little bit of that flexibility, but I still don't think that's a deal-breaker.
More details from the Node docs:
https://nodejs.org/api/esm.html#esm_interoperability_with_commonjs


Kulfy: Watch kodaimatrimony.com

Kulfy requests the watch of the watch_keyword kodaimatrimony\.com. See the MS search here and the Stack Exchange search here.

kodaimatrimony\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by double-beep in Charcoal HQ


Error in deploying when the task has an array body.

Deployer version: v8.x-dev
Deployment OS: MacOS

I'm having a problem with deploying.
Deployer\Task\Task::setCallback(): Argument #1 ($callback) must be of type callable, array given, called in /home/runner/work/project/vendor/deployer/deployer/src/functions.php on line 205

It will have an error when the second parameter of the task is an array.
This is the task.
task('deploy', [
    'deploy:prepare',
    'deploy:vendors',
    'artisan:storage:link',
    'artisan:optimize',
    'artisan:migrate',
    'yarn:install',
    'yarn:run:prod',
    'artisan:horizon:terminate',
    'schedule-monitor:sync',
    'deploy:publish',
    'php-fpm:reload',
]);

Oh I just found out that this issue was fixed but not merge in v8 branch.


Failed to get first DHCP lease hostname in ARP list

Introduction:
I have some MAC addresses and I need to figure out their IP addresses for traffic shaping purposes.
Since there is no OPNsense API call to get the DHCP leases, I am using the ARP list (api/diagnostics/interface/getArp) to convert MAC to IP address.
However when the IP changes for a MAC address, I have more than one row in ARP list for the same MAC address (each one with a different IP address).
As there is no time information in each row from ARP list and the list is not ordered, the way I found to find out the current IP for a specific MAC is to check the hostname field in each row in ARP list, since the hostname will be present only for active leases (old IP addresses will have empty hostname in ARP list).
Bug:
In src/opnsense/scripts/interfaces/list_arp.py (lines 40 to 49), the parsing of /var/dhcpd/var/db/dhcpd.leases does not seem right.
Since my /var/dhcpd/var/db/dhcpd.leases has same comments and info at the beginning, the first lease fails to parse and its hostname is not populated in ARP list.
Here is my /var/dhcpd/var/db/dhcpd.leases file:
root@OPNsense:~ # cat /var/dhcpd/var/db/dhcpd.leases
# The format of this file is documented in the dhcpd.leases(5) manual page.
# This lease file was written by isc-dhcp-4.4.1

# authoring-byte-order entry is generated, DO NOT DELETE
authoring-byte-order little-endian;

server-duid (...)

lease <IP_ADDRESS> {
  (...)
}
lease <IP_ADDRESS> {
  (...)
}

The line if lease.strip().find('lease') == 0 and lease.find('{') > -1: in src/opnsense/scripts/interfaces/list_arp.py gets the word lease in position 53 (middle of the comment in first line) and the symbol "{" in position 293.
Since 53 != 0, the first lease is ignored and the ARP list only shows the hostname for IP <IP_ADDRESS>.
The expected behavior would be for the ARP list to show the hostname for both IP addresses: <IP_ADDRESS> and <IP_ADDRESS>.

@leonardorufino https://github.com/opnsense/core/commit/3a0b9e1620c7fa03bb645f78d2a248bd99d0caf2 should do the trick

3a0b9e1 solved the issue.
Thank you.

3a0b9e1 solved the issue for that /var/dhcpd/var/db/dhcpd.leases file I mentioned, but I still see the bug when there are non-lease lines between leases. Please check server-duid below:
root@OPNsense:~ # cat /var/dhcpd/var/db/dhcpd.leases
# The format of this file is documented in the dhcpd.leases(5) manual page.
# This lease file was written by isc-dhcp-4.4.1

# authoring-byte-order entry is generated, DO NOT DELETE
authoring-byte-order little-endian;

lease <IP_ADDRESS> {
  (...)
}
server-duid (...);

lease <IP_ADDRESS> {
  (...)
}

@leonardorufino you're right, this was too easy. I kind of forgot we already had a proper lease reader, https://github.com/opnsense/core/commit/eb0e73607e13cb2c9c399fc53b72706fad835352 implements the same thing we use for unbound.

Using this DHCP reader looks good.
However you need to change line 66 from
record['hostname'] = dhcp_leases[record['ip']]['hostname']
to
record['hostname'] = dhcp_leases[record['ip']]
since you removed the hostname dict key from dhcp_leases[ip].

@leonardorufino oops, totally forgot the hostname clause https://github.com/opnsense/core/commit/f5c2f7760bccf452e46b4254face61ab2da6b030.

No problem.
Thank you.


Use uniform access on Cloud Functions buckets.

There is no way to provide whether to use uniform access level or not other than provide own bucket.
Using uniform access in anyway recommended by GCP approach. If someone has use case, where ACL's are required, then they can provide they own bucket.
This makes life easier for cases, where uniform access is mandated by organization policy.
Apart from that, I've fixed few things around versioning:

missing activation of versioning
adding to the lifecycle rule that it affects only non-current versions of objects (otherwise, function will lose it's code after specified time)

Feel free to merge whenever you like!

Feel free to merge whenever you like!

Don't have access (yet 😉 )


Doesn't name Pokémon if the first word is spelled out without underscores

You can test it out with this string: "The pokémon is Iron __a___."

Should return Iron Leaves, but returns fearow instead

Yeah I'm aware, will look into a fix soon


Button height doesn't work well in Designer View. [WPF]

The height of button do not adapt properly on designer that view.
This works when I run the program but not 'quite' in the designer view.
example:
<Grid>
<Button Height="auto"
        VerticalAlignment="Stretch"
        HorizontalAlignment="Stretch"
        Text="Fill the Grid">
</Grid>

In the designer's view, only the HorizontalAlignment="Stretch" works. When I look at the properties on the Button, It says Auto (30). When I set a constant height like Height="10" then set it back Height="auto", The VerticalAlignment="Stretch" work.
Screenshots

Environment

.net : 4.8.04084
IDE : Microsoft Visual Studio Community 2019
Version : 16.11.5

Additional context
when you reopen the project/xaml, the VerticalAlignment won't work again, height will again auto(30) on the properties. Same if you increase the font size.
It works on Runtime but It would be nice if it works on designer view as well.
I am new to this wpf/programming and trying this wonderful

It is very common for weird issues to occur in the wpf designer. Most people would advise you not to use it, as it creates all sorts of problems. Often the app appears normal in the designer but turns out horrible on runtime (or the other way around).
I would advise you to don't rely on the designer and write your own xaml code and use "xaml hot reload" to view changes.
This issue has got nothing to do with HandyControls but with the designer itself.

It is very common for weird issues to occur in the wpf designer. Most people would advise you not to use it, as it creates all sorts of problems. Often the app appears normal in the designer but turns out horrible on runtime (or the other way around). I would advise you to don't rely on the designer and write your own xaml code and use "xaml hot reload" to view changes.
This issue has got nothing to do with HandyControls but with the designer itself.


fix: update calendar and fix reccurring end date input

Brief description. What is this change?

Wrong end date in form after editing
Disable ability to choose past dates

Implementation description. How did you make this change?

Fix reccurring end date input to display correct date
Add minDate to calendar to prevent user from clicking past dates

Steps to test

Schedule a donation - after clicking next, go back to first page to make sure reccurring end date field is correct

Check same field when editing the donation

Check calendar on homepage

Checklist

[ ] My PR name is descriptive and in imperative tense
[ ] My commit messages follow conventional commits and are descriptive. My commits are atomic and trivial commits are squashed or fixup'd into non-trivial commits
[ ] I have run the appropriate linter(s)
[ ] I have requested a review from the PL, as well as other devs who have background knowledge on this PR or who will be building on top of this PR
[ ] The appropriate tests if necessary have been written

Everything works as expected on my end :)


Is there a usage guide of this tool from build to use?

I want to measure OpenCL peak of my device. But I'm new to C/C++ project. I just executed these line below:
cd clpeak
mkdir build
cd build
cmake ..

eh,

followed by:

make
./clpeak

There is no usage guide as yet

Thanks

@krrishnarraj I tried, but failed
ysh329@firefly:~/code/clpeak$ make
make: *** No targets specified and no makefile found.  Stop.

make is to be done on build folder
mkdir build
cd build
cmake ..
make
./clpeak

Thanks, my big brother! :rofl:


onPress only applies the action to the last card

I have  wrapped items in the render method of the carousel, but the onpress only applies for the first/ or last item in the carousel

I'm having the same issue

@ssilverst I was able to get over this issue by removing the loop property

I have an issue like first CLICK on first item then the reality is it fire SECOND ITEM
I have custom style like this
const fadeInOutStyle = useCallback((value: number) => {
        'worklet';
        const zIndexAndOpacity = interpolate(value, [-1, 0, 1], [0, 1, 0], Extrapolate.CLAMP);

        return {
            opacity: zIndexAndOpacity,
            zIndex: zIndexAndOpacity,
        };
    }, []);

    return  <Carousel
                    loop
                    autoPlay
                    vertical={false}
                    snapEnabled
                    key={'feature-store'}
                    windowSize={3}
                    autoPlayInterval={1000 * interval}
                    data={chunkedStores}
                    width={SCREEN_WIDTH}
                    height={sliderHeight}
                    customAnimation={fadeInOutStyle}
                    withAnimation={withAnimation}
                    renderItem={renderSlideItem}
                    panGestureHandlerProps={panGestureHandlerProps}
                />

🤖
Great to hear that you were able to resolve the issue by removing the loop property! If you have any more questions or need further assistance with the react-native-reanimated-carousel or anything else, feel free to ask. I'm here to help!
This response is meant to be useful and save you time. It is not meant to be a precise solution, but rather a starting point for your own research.
Help me be more useful! Please leave a 👍 if this is helpful and 👎 if it is irrelevant.
If you want to continue the conversation, start your reply with @dosu-bot.

I have been resolved it like code I show above thx

🤖
Great to hear that you were able to resolve the issue by removing the loop property! If you have any more questions or need further assistance with the react-native-reanimated-carousel or anything else, feel free to ask. I'm here to help!
This response is meant to be useful and save you time. It is not meant to be a precise solution, but rather a starting point for your own research.
Help me be more useful! Please leave a 👍 if this is helpful and 👎 if it is irrelevant.
If you want to continue the conversation, start your reply with @dosu-bot.

I have resolved it like the code I show above thx and I just wanna share my solution

This works but it removes the "stack" effect e.g:


[Question] Harvester not connected URL Management VIP

I started a proof of concept on a Dell R640 server.
I installed the harvester on the first server, and I cannot connect to the management interface via kube-VIP (configured in STATIC mode).
The server is in a remote datacenter (baremetal), whose network management is done by an L2 switch.
I used 2 IP addresses (public IPS, my switch is not L3):
1xx.xxx.xxx.xx8/25(node)
1xx.xxx.xxx.xx1 (GW)
1xx.xxx.xxx.xx9 (VIP)
When I try to ping <IP_ADDRESS>, I notice that the output is by the IP of the node without success. The GW is also not pinged, only the VIP.
When trying to access the VIP, without success.
Below is the print of the description of my ticket:

Get Services:

Hi @mauriiciodias,
Could you show your detailed static configuration? (Surely you could hide your IP address).
And your mean that cannot connect to the VIP from external?
Thanks!


Configure timeouts after the configuration phase

My application has a backend where I store the idle timeout values and I retrieve those values with a RESTFul interface, which needs authentication, so not possible in configuration phase.
Is there a way to set the timeout values in a controller, instead of config function?
Maybe "Idle.watch()" can be updated to support getting timeout values as parameters. That would be really nice.

The idle and timeout values can now be set at any time after configuration. See Idle wiki entry

I just saw the Wiki. Thanks. Great work.


[BUG] integer division or modulo by zero

Mage version
v0.9.70
Describe the bug
Sometimes the following errors may occur when executing triggers
Traceback (most recent call last):

  File "/usr/local/lib/python3.10/site-packages/mage_ai/shared/retry.py", line 38, in retry_func

    return func(*args, **kwargs)

  File "/usr/local/lib/python3.10/site-packages/mage_ai/data_preparation/executors/block_executor.py", line 588, in __execute_with_retry

    return self._execute(

  File "/usr/local/lib/python3.10/site-packages/mage_ai/data_preparation/executors/block_executor.py", line 1077, in _execute

    result = self.block.execute_sync(

  File "/usr/local/lib/python3.10/site-packages/mage_ai/data_preparation/models/block/dynamic/child.py", line 183, in execute_sync

    parent_index = dynamic_block_index % count

ZeroDivisionError: integer division or modulo by zero

Stack trace

  File "/usr/local/bin/mage", line 8, in <module>
    sys.exit(app())

  File "/usr/local/lib/python3.10/site-packages/typer/main.py", line 311, in __call__
    return get_command(self)(*args, **kwargs)

  File "/usr/local/lib/python3.10/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)

  File "/usr/local/lib/python3.10/site-packages/typer/core.py", line 778, in main
    return _main(

  File "/usr/local/lib/python3.10/site-packages/typer/core.py", line 216, in _main
    rv = self.invoke(ctx)

  File "/usr/local/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))

  File "/usr/local/lib/python3.10/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)

  File "/usr/local/lib/python3.10/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)

  File "/usr/local/lib/python3.10/site-packages/typer/main.py", line 683, in wrapper
    return callback(**use_params)  # type: ignore

  File "/usr/local/lib/python3.10/site-packages/mage_ai/cli/main.py", line 163, in start
    start_server(

  File "/usr/local/lib/python3.10/site-packages/mage_ai/server/server.py", line 773, in start_server
    scheduler_manager.start_scheduler()

  File "/usr/local/lib/python3.10/site-packages/mage_ai/server/scheduler_manager.py", line 92, in start_scheduler
    proc.start()

  File "/usr/local/lib/python3.10/multiprocessing/process.py", line 121, in start
    self._popen = self._Popen(self)

  File "/usr/local/lib/python3.10/multiprocessing/context.py", line 224, in _Popen
    return _default_context.get_context().Process._Popen(process_obj)

  File "/usr/local/lib/python3.10/multiprocessing/context.py", line 281, in _Popen
    return Popen(process_obj)

  File "/usr/local/lib/python3.10/multiprocessing/popen_fork.py", line 19, in __init__
    self._launch(process_obj)

  File "/usr/local/lib/python3.10/multiprocessing/popen_fork.py", line 71, in _launch
    code = process_obj._bootstrap(parent_sentinel=child_r)

  File "/usr/local/lib/python3.10/multiprocessing/process.py", line 314, in _bootstrap
    self.run()

  File "/usr/local/lib/python3.10/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/db/process.py", line 15, in start_session_and_run
    results = target(*args)

  File "/usr/local/lib/python3.10/site-packages/mage_ai/server/scheduler_manager.py", line 53, in run_scheduler
    LoopTimeTrigger().start()

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/triggers/loop_time_trigger.py", line 14, in start
    self.run()

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/triggers/time_trigger.py", line 11, in run
    schedule_all()

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/pipeline_scheduler_original.py", line 1633, in schedule_all
    PipelineScheduler(r).start()

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/db/__init__.py", line 157, in func_with_rollback
    return func(*args, **kwargs)

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/pipeline_scheduler_original.py", line 190, in start
    self.schedule()

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/db/__init__.py", line 157, in func_with_rollback
    return func(*args, **kwargs)

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/pipeline_scheduler_original.py", line 317, in schedule
    self.__schedule_blocks(block_runs)

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/pipeline_scheduler_original.py", line 618, in __schedule_blocks
    job_manager.add_job(

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/job_manager.py", line 28, in add_job
    self.queue.enqueue(job_id, target, *args, **kwargs)

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/queue/process_queue.py", line 121, in enqueue
    self.start_worker_pool()

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/queue/process_queue.py", line 198, in start_worker_pool
    self.worker_pool_proc.start()

  File "/usr/local/lib/python3.10/multiprocessing/process.py", line 121, in start
    self._popen = self._Popen(self)

  File "/usr/local/lib/python3.10/multiprocessing/context.py", line 224, in _Popen
    return _default_context.get_context().Process._Popen(process_obj)

  File "/usr/local/lib/python3.10/multiprocessing/context.py", line 281, in _Popen
    return Popen(process_obj)

  File "/usr/local/lib/python3.10/multiprocessing/popen_fork.py", line 19, in __init__
    self._launch(process_obj)

  File "/usr/local/lib/python3.10/multiprocessing/popen_fork.py", line 71, in _launch
    code = process_obj._bootstrap(parent_sentinel=child_r)

  File "/usr/local/lib/python3.10/multiprocessing/process.py", line 314, in _bootstrap
    self.run()

  File "/usr/local/lib/python3.10/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/queue/process_queue.py", line 351, in poll_job_and_execute
    worker.start()

  File "/usr/local/lib/python3.10/multiprocessing/process.py", line 121, in start
    self._popen = self._Popen(self)

  File "/usr/local/lib/python3.10/multiprocessing/context.py", line 224, in _Popen
    return _default_context.get_context().Process._Popen(process_obj)

  File "/usr/local/lib/python3.10/multiprocessing/context.py", line 281, in _Popen
    return Popen(process_obj)

  File "/usr/local/lib/python3.10/multiprocessing/popen_fork.py", line 19, in __init__
    self._launch(process_obj)

  File "/usr/local/lib/python3.10/multiprocessing/popen_fork.py", line 71, in _launch
    code = process_obj._bootstrap(parent_sentinel=child_r)

  File "/usr/local/lib/python3.10/multiprocessing/process.py", line 314, in _bootstrap
    self.run()

  File "/usr/local/lib/python3.10/site-packages/newrelic/api/background_task.py", line 117, in wrapper
    return wrapped(*args, **kwargs)

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/queue/process_queue.py", line 315, in run
    start_session_and_run(args[1], *args[2], **args[3])

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/db/process.py", line 15, in start_session_and_run
    results = target(*args)

  File "/usr/local/lib/python3.10/site-packages/mage_ai/orchestration/pipeline_scheduler_original.py", line 1170, in run_block
    return ExecutorFactory.get_block_executor(

  File "/usr/local/lib/python3.10/site-packages/mage_ai/data_preparation/executors/block_executor.py", line 613, in execute
    result = __execute_with_retry()

  File "/usr/local/lib/python3.10/site-packages/mage_ai/shared/retry.py", line 46, in retry_func
    logger.warning(

  File "/usr/local/lib/python3.10/site-packages/mage_ai/data_preparation/logging/logger.py", line 39, in warning
    self.__send_message('warning', message, **kwargs)

  File "/usr/local/lib/python3.10/site-packages/mage_ai/data_preparation/logging/logger.py", line 65, in __send_message
    data['error_stack'] = traceback.format_stack(),

To reproduce
No response
Expected behavior
No response
Screenshots
No response
Operating system
No response
Additional context
No response

This issue has been resolved in the latest code in child.py line 122
if count is not None and count >= 1:
    parent_index = dynamic_block_index % count
...

This issue has been resolved with the code changes in this commitment


Adopt type-safety changes from OAuth2Strategy to AzureActiveDirectoryOAuth2Strategy

Use/implement the provided generic-type parameters on OAuth2Strategy to reduce/remove the usage of instanceof checks in the creation of request-related objects

See #94


Update to CodeIgniter v4.4.4

This PR updates CodeIgniter to v4.4.4

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 78.14%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
2277

Relevant Lines:
2914

💛  - Coveralls


Docker image version out of date

There is an issue currently where spectolabs/hoverfly:v0.11.0 reports its version as v0.10.2.
This version has impact on anything and the image includes all the features of v0.11.0.

This will get looked into before the next release.


Removing section on activating branches

Description
This is to test RTD behavior in a PR

Type of change

[ ] Bug fix
[ ] New feature
[x] Documentation update
[ ] Other

How Has This Been Tested?
This IS a  test.
Checklist:

[x] I have followed the style guidelines of this project.~~
[x] I have performed a self-review of my own code.~~
[ ] I have commented my code where applicable.
[ ] I have updated the release notes.
[x] I have made corresponding changes to the documentation.~~
[ ] I have added debugging support to my changes.
[ ] I have added tests that prove my fix is effective or that my feature works.
[ ] I have confirmed new and existing unit tests pass locally with my changes.
[ ] I have added new baselines for any new tests to the repo.
[x] I have NOT made any changes to protocol or public interfaces in an RC branch.~~
[x] I have assigned reviewers (see VisIt's PR procedures for more information).~~

Woohoo 🎉. It works! Thanks for mention @cyrush


add annotation

utility to add annotations to spatial maps

i updated comments and docstrings a bit to make things more clear. i made the input acq_ch always 0-indexed for no particular reason. would it be simpler to also be 1-indexed like the channel mappings?


BUG: Hovering over customers' review

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
When I hover my curser over the customers' review, the label flips to be :

As can be seen, this is not the optimal appearance, and I will correct this.
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

I corrected this to:

furthermore I also changed white background of card in light mode to black background:

Pull the existing changes.
Check it in the website whether it is bug there or not!

@anuragverma108 I viewed the site in the following browsers:
Firefox, Opera, Chrome, Brave, Edge; and the problem is occurring only in Firefox browser for some reason.
I would recommend you to check the same in Firefox yourself.
(index.html file)

@anuragverma108

@anuragverma108 please do go over it


Added more specific variables in the theme file to allow for easier customization

Summary of Changes
To help make Bifold more customizable, I tried to move a lot of the text styling and colors used throughout the app to their own individual assignments in the theme file. Please let me know if there is any feedback or ideas on how to improve these changes or make the naming / grouping more intuitive.
Also included in this PR - updated ContactListItem styling to better reflect the new chat functionality, and added a line to auto run the post-install patches following an npm install.
Related Issues
n/a
Pull Request Checklist
Tick all boxes below to demonstrate that you have completed the respective task. If the item does not apply to your this PR check it anyway to make it apparent that there's nothing to do.

[x] All commits contain a DCO Signed-off-by line (we use the DCO GitHub app to enforce this);
[x] Updated LICENSE-3RD-PARTY.md for any added dependencies or vendored components;
[x] Updated documentation as needed for changed code and new or modified features;
[x] Added sufficient tests so that overall code coverage is not reduced.

If you have any questions to any of the points above, just submit and ask! This checklist is here to help you, not to deter you from contributing!
Pro Tip 🤓

Read our contribution guide at least once; it will save you a few review cycles!
Your PR will likely not be reviewed until all the above boxes are checked and all automated tests have passed.

PR template adapted from the Python attrs project.

@ryanindicio you'll need to update it against the base branch before we do a review otherwise GitHub will just ask for us to re-review.


Challenge 4: Broken telegram link?

Hello,
In line 550 of the DEX challenge there is a link that takes you to a discussion on adding 1 wei for that especific calculation, however when I try to open the link it says that I'm not part of that group.
I'm already part of some telegram groups regarding SE-2 and the BuidlGuidl, what group should I join to open the link? or maybe is the link broken?
Thanks for your help

You have to join the telegram group chat of the DEX challenge in order to see that link... I feel kind of dumb 😅


data blocked in one candle

Hi,
I've a problem using candlesticks. I've a new Json every 2sec and I can see the candle moving at the good time but impossible to have a new candle on x-axis every Y-seconds or minutes or hour.
Here is my code:
binanceSocket.onmessage = event => {
      console.log(event.data);
      const msgObject = JSON.parse(event.data);

      /*
      * Transform unixstamp to Time method
      * works: look at the consol
       */
      const datetrade = Math.floor(msgObject.E / 1000);
      const date2 = new Date(datetrade);

      // Hours part from the timestamp
      const hours = date2.getHours();
      // Minutes part from the timestamp
      const minutes = '0' + date2.getMinutes();
      // Seconds part from the timestamp
      const seconds = '0' + date2.getSeconds();

      // Will display time in 10:30:23 format
      const formattedTime = hours + ':' + minutes.substr(-2) + ':' + seconds.substr(-2);

      tradeDive.append(msgObject.e);
      console.log(datetrade, '\n');

      candleSeries.setData([
        { time: msgObject.E , open: msgObject.k.o, high: msgObject.k.h, low: msgObject.k.l, close: msgObject.k.c}]);
    };

Trying to find a solution for a couple of days but nothing... help please!

From the docs:

Allows to set/replace all existing data with new one.

If you'd like to update the last candle (or add the new one), use update method instead.


Update all deps

@s3rius sorry for a bit of back and forth with force-pushes, have more changes piled up and I'm separating them into separate PRs

@s3rius rebased PR and it now passes all tests


Total energy

Per our conversation, you said that total energy is not in "per flash" units. I now know why I thought it was, per the metadata:
float total_energy(ntimes, nx, ny) ;
total_energy:long_name = "Total radiant energy" ;
total_energy:units = "J per flash" ;
total_energy:grid_mapping = "goes_imager_projection" ;
total_energy:missing_value = -9999.f ;
Not sure why I missed that this morning.
I think it would be good to just say "Joules" here.

This was a copy and paste from an ncdump of a *dx_total_energy.nc file.

Thanks for this report, and I see why you thought what you did. Your proposed fix is the correct language, and I'm going to use this as an opportunity to write a formal unit test to check for energy conservation.

An ad-hoc check shows that the energy calculation was being done correctly and in the units you stated.


Support for .dockerignore files in build context.

Hi,
I'm transitioning from the docker cli to this gem and I was wondering wether there is support for
.dockerignore files? I have a .dockerignore in my build context directory and in my case that makes a difference of 300-400 MB.
https://docs.docker.com/reference/builder/

To increase the build’s performance, exclude files and directories by adding a .dockerignore file to the context directory.

It should also respect .gitignore when there is not .dockerignore
working on a PR now ...

nvm ... current behavior seems to be that .gitignore is not supported in docker cli ...


Add (firewall management for) VPC support

My environment was set using:
VPC_PUBLIC_IP="<IP_ADDRESS>"
VPC_TIER_NAME="vpctiername"
VR_PUBLIC_IP="<IP_ADDRESS>"
VR_NETWORK_NAME="vrnetworkname"

NETWORK_NAME=$VPC_TIER_NAME
PUBLIC_SOURCE_NAT_IP=$VPC_PUBLIC_IP

The VPC_.. and VR_... are used to specifically target those. The last two are the "default" which are used in the other tests;  (VM Life Cycle) was thereby done in a VPC-tier.
The Networking features test, does the same testing as it used to, only now the 2 (tests/) vms specifically in a guest network/Virtual Router, and also the same (tests/)vms in a tier of a VPC.
Running RSpec tests in folder : vmlifecycle
Using Vagrant file            : Vagrantfile.advanced_networking

VM Life Cycle
  starts Linux and Windows VM
  destroys Linux and Windows VM

Finished in 3 minutes 31 seconds (files took 0.13409 seconds to load)
2 examples, 0 failures

Running RSpec tests in folder : networking
Using Vagrant file            : Vagrantfile.advanced_networking

Networking features
  creates firewall and portwarding rules for both Virtual Router and VPC

Finished in 4 minutes 53.8 seconds (files took 0.12909 seconds to load)
1 example, 0 failures

When using a scenario which doesn't use pf_ip_address, following error appears:
vagrant-cloudstack/action/run_instance.rb:315:in `block in configure_firewall': undefined method `has_key?' for nil:NilClass (NoMethodError)

Changes Unknown when pulling 8c8c01b77b0771a7aad8b1dbe73c2cc787549328 on refact/prepare_for_vpc into ** on master**.

Changes Unknown when pulling 7d8202c95f9819dfc7d3ca1ed119737aac9f38bc on refact/prepare_for_vpc into ** on master**.

Changes Unknown when pulling 54b9f0706c7f263dee6186e12b40d53e7ebeed04 on refact/prepare_for_vpc into ** on master**.

Changes Unknown when pulling 035e2c088cb474a661f2f7001d8b39ffe2e61e83 on refact/prepare_for_vpc into ** on master**.

Functional tests are successful now:
Running RSpec tests in folder : vmlifecycle
Using Vagrant file            : Vagrantfile.advanced_networking

VM Life Cycle
  starts Linux and Windows VM
  destroys Linux and Windows VM

Finished in 4 minutes 12.3 seconds (files took 0.13136 seconds to load)
2 examples, 0 failures

...

Running RSpec tests in folder : networking
Using Vagrant file            : Vagrantfile

Networking features
  creates firewall and portwarding rules for both Virtual Router and VPC

Finished in 5 minutes 40 seconds (files took 0.13841 seconds to load)
1 example, 0 failures

...

Running RSpec tests in folder : rsync
Using Vagrant file            : Vagrantfile.advanced_networking

VM RSync
Connection to <IP_ADDRESS> closed.
  does rsync to the VM

Finished in 1 minute 5.53 seconds (files took 0.09702 seconds to load)
1 example, 0 failures


Rollup

This is another proof of how and why the performance of atom-julia-client is suffering from the old JavaScriptsm and new wrong decisions.
Despite building, it throws all sorts of warnings and errors because of these wrong habits.
Circular dependencies are spread all over the codebase:
(!) Circular dependencies
lib\ui.coffee -> lib\ui\layout.js -> lib\runtime.coffee -> lib\runtime\evaluation.coffee -> lib\ui.coffee
lib\ui.coffee -> lib\ui\layout.js -> lib\runtime.coffee -> lib\runtime\evaluation.coffee -> lib\runtime\workspace.coffee -> lib\ui.coffee
lib\ui.coffee -> lib\ui\layout.js -> lib\runtime.coffee -> lib\runtime\evaluation.coffee -> lib\runtime\workspace.coffee -> C:\Users\yahyaaba\Documents\GitHub\JavaScript\github\julia-client\lib\ui.coffee?commonjs-proxy -> lib\ui.coffee
...and 7 more
created dist in 7.9s

Many unresolved dependencies:
lib/julia-client.coffee → dist...
(!) Unresolved dependencies
https://rollupjs.org/guide/en/#warning-treating-module-as-external-dependency
child_process (imported by lib\misc\paths.js, lib\connection\terminal.coffee, child_process?commonjs-external)
net (imported by lib\connection\terminal.coffee, net?commonjs-external, lib\connection\process\basic.js, lib\connection\process\remote.js, lib\connection\process\tcp.coffee)
vm (imported by lib\runtime\frontend.coffee, vm?commonjs-external)
shell (imported by lib\package\commands.coffee, shell?commonjs-external)
remote (imported by lib\ui\notifications.coffee, remote?commonjs-external)

Many other dynamic requires that I tried to solve using plugins.
My suggestion for this repository:

Use named exports/imports
Stop using dynamic require.
Use dynamic import inside a condition (if)
Avoid circular dependencies by restructuring the modules, use proper abstraction, using self-contained classes.
Don't try to do everything in one package. Use services from other packages like linter, atom-ide packages, etc. Modularity is the best development approach.
deferring execution should be the last thing to try. The program should already run fast synchronized and then could benefit from asynchronous execution.
JSfying does not help if you want to follow the same old procedure.
Many tools exist that tell you these kinds of things (Eslint, TypeScript, etc). They exist for some reason.
and lastly, be open to suggestions. People want to help.

Can you explain what rollup is and why we should use it?
Anyways, I agree with most of your points. We definitely should restructure code at the same time as translating it form CoffeeScript to JS, which is precisely why automating that task is only somewhat helpful.

Circular dependencies are spread all over the codebase:

Yeah, that's pretty bad...

Many unresolved dependencies:

Eh, those are whatever -- in theory we shouldn't rely on those being in the global context (just like the atom global, I suppose), but in practise that really doesn't matter much.

Use named exports/imports
Stop using dynamic require.

👍

Don't try to do everything in one package. Use services from other packages like linter, atom-ide packages, etc. Modularity is the best development approach.

Eh, not so sure about that. Most Atom packages aren't that great to interface with (and/or provide an awful UX). atom-linter is probably the exception there, and we should use it once we actually have a linter (and for the Traceur integration, I suppose).

deferring execution should be the last thing to try. The program should already run fast synchronized and then could benefit from asynchronous execution.

Hm, not sure what you mean here. I think we should make sure to (re-) design everything with lazy-loading and as much asynchronicity in mind -- it's pretty hard to shoehorn that in afterwards without making a mess of everything.

and lastly, be open to suggestions. People want to help.

👍
But also appreciate that we don't have an unlimited amount of time to work on this (and even reviewing PRs takes a lot of time when they touch huge parts of the codebase). I also think performance isn't the biggest problem Juno has right now.

Can you explain what rollup is and why we should use it?

It is a bundler similar to Webpack, but with better plugins. It reduced the load time even now that the code has many issues to half of its time. So once the Junos requires are converted to import,export, you can get a huge bump in the performance.

Don't try to do everything in one package. Use services from other packages like linter, atom-ide packages, etc. Modularity is the best development approach.

Eh, not so sure about that. Most Atom packages aren't that great to interface with (and/or provide an awful UX). atom-linter is probably the exception there, and we should use it once we actually have a linter (and for the Traceur integration, I suppose).

atom-ide-community packages are very well. linter is very good too. If there is something you don't like about them, you should improve those packages instead of writing everything from scratch here.

deferring execution should be the last thing to try. The program should already run fast synchronized and then could benefit from asynchronous execution.

Hm, not sure what you mean here. I think we should make sure to (re-) design everything with lazy-loading and as much asynchronicity in mind -- it's pretty hard to shoehorn that in afterwards without making a mess of everything.

Here I meant relying on deferring execution isn't good when the codebase already has other issues. It should be tried after.

and lastly, be open to suggestions. People want to help.

👍
But also appreciate that we don't have an unlimited amount of time to work on this (and even reviewing PRs takes a lot of time when they touch huge parts of the codebase).

That is why you opened the source of the packages. People will put time on helping the package improve.

I also think performance isn't the biggest problem Juno has right now.
Writing good code is always important, even if you don't care about performance. The things I mentioned are not that complicated, most of them are a matter of just replacing a few lines of code.

Regarding the Atom's performance, people complain about it all over the internet. Many (including the actual Atom developers) have already switched to other platforms! We should all write performant code, especially when we gain a lot with very minor adjustments (like import and require).


API calls failing, "Does not belong to allowed markets"

Describe the bug
Integration stopped working, all items say "unfortunately not supported by your vehicle."
I've had this integration working for quite some time, suddenly all items are failing saying "Does not belong to allowed markets". I noticed this after the latest update to 1.8.19, but I still had the same issue after reverting to older versions.
I've been using this with a 2023 Volvo C40 Recharge BEV
Snippet in log:
Nov 25 13:04:52 volvo2mqtt [106] - INFO: Failed, Average Speed is unfortunately not supported by your vehicle.
Nov 25 13:04:52 volvo2mqtt [106] - DEBUG: Starting GET call against https://api.volvocars.com/connected-vehicle/v2/vehicles/{0}/diagnostics
Nov 25 13:04:53 volvo2mqtt [106] - DEBUG: Response status code: 404
Nov 25 13:04:53 volvo2mqtt [106] - DEBUG: {
  "error" : {
    "message" : "NOT_FOUND",
    "description" : "Does not belong to allowed markets"
  }
}
Nov 25 13:04:53 volvo2mqtt [106] - ERROR: API Call failed. Status Code: 404. Error: {
  "error" : {
    "message" : "NOT_FOUND",
    "description" : "Does not belong to allowed markets"
  }
}

Expected behavior:
In the past I could monitor the state of my vehicle charge, doors, climate. Now everything reports "Unknown"
Screenshots:

Version info:
1.8.19 HA Add-on
Logs:
Enable the debug option and upload your logfile here.
volvo2mqtt.log

Same here (I'm in Australia with a XC40 BEV 2022) and I assume this is caused by a change of the API on Volvo's side (would be great to confirm).
The API documentation says

However, when published, only cars in the Europe / Middle East / Africa regions are available.

And the list of supported locations does not include Australia (and also not the US as described in #139).
The API documentation also states

We are working to bring other regions online.

Sounds as we have to wait for Volvo...

Same as #136. This is not a volvo2mqtt issue, sorry guys!

Just to be clear, the "published" reference is for when an app using the API is published (i.e. released to the public via, say, an App Store), not when the API is published (i.e. available for experimenting/testing, which is explicitly allowed worldwide according to the same page). Generally, "apps" created with credentials used by Volvo2MQTT are not ever "published" in the sense Volvo is using.

Any workaround for this? In Australia and would love to be able to use this.

Unfortunately not that I've seen so far. Volvo has been silent to my previous attempt to reach out, I might try again. Very frustrating as I was just getting it all set up.
I've not bothered to reset the API credentials, I don't think that will help.


Remove unneeded derives on transforms

The Clones are left over from when we used to Clone transforms to get a new one instead of using TransformBuilders.
I'm not sure where the Debug derives came from?
They could be useful for debug printing but I've never wanted to debug print an entire transform, printing just a few relevant fields has always been more useful for me.

Technically breaks our public API? I doubt it will matter in this instance, just something to keep in mind when changing the transform structs.

True, I'll add a note to the changelog.


Fix Python 3.11 compatibility problems for JAX/XLA.

We must use PyThreadState_GetFrame to obtain a traceback of the current thread, and we must use PyFrame_GetBack to obtain the previous frame. Both of these functions return strong references.
We must use Py_SET_TYPE to set types.
exc_traceback no longer exists, but we no longer need a C++ helper to set the exception traceback.

@pschuh Could you please reapprove this PR? I wasn't conservative enough with some of the version guards; I changed them to now just check for Python 3.11.


std::optional in fields

#include <optional>
#include <boost/pfr.hpp>

struct Foo {
    std::optional<int> a;
};

int main() {
    Foo f{5};
    boost::pfr::get<0>(f);
}

Is there any way to compile this code?
I compiled with gcc 6.3 and gcc 7.1 and get the following errors:
error: conversion from 'boost::pfr::detail::loophole_ubiq<Foo, 0>' to 'std::optional<int>' is ambiguous      : sequence_tuple::tuple< decltype(T{ loophole_ubiq<T, I>{}... }, 0) > // Instantiating loopholes.

Fixed the issue! Thanks for providing the test case.


New Quran data format (using fonts word by word)

We will be using fonts to display huge nicely arabic text, which is basically word by word fonts and not letter by letter (normal way)
Output example:

To Do Tasks:

[ ] https://github.com/GlobalQuran/images/blob/master/data/text.sqlite3.db
[ ] convert above db into our normal data files, which is line by line text files, containing 6236 ayahs all on each line in text file. - read more https://github.com/GlobalQuran/data/blob/master/README.md
[ ] create function to load font files https://github.com/GlobalQuran/images/tree/master/data/fonts - accept page number as parameters.
[ ] create function to parse above created data into html version for each given ayah. function will accept ayah at a time. (check if font is not loaded already, then load font)

Rules:

Please make sure the above two functions does not need any third party libraries. Because it will be injected with data file, so anyone can run on there website without any libraries.

@iBasit I also have SVG files of the Quran with tajweed word by word, Just wondering how difficult would it be to abstract the code logic to support SVG images.

@Ashraf-Ali-aa  is it completed for all of them?

@iBasit I do have all the GIF assets, but am using illustrator to batch process the images and convert them to SVG automatically, I have modified a script in illustrator to all the heavy lifting from by estimates it's going to take me a full month or a bit more to finish (just on my own). If anyone wants to help this would inshallah speed up the process, I have done surah 1 to 5.
If anyone wanted to help you can download a trial version of illustrator and use this script to convert the image https://gist.github.com/Ashraf-Ali-aa/38a8c0d381c120c2c378, I just leave illustrator running in the background and carry on with my other tasks.

We have to create new issue for this and put all the details on that insha'Allah. If we get more resources, then insha'Allah they would know how to do this from new issue.  As for displaying word by word svg files, it wont be issue.. we should test for first Surah, just to make sure everything is correct.
#6 more convo pls move to  > https://github.com/GlobalQuran/mobile-app/issues/6 or on slack.

Salam alaykoum, I'm working on a similar project, for Quran memorisation, do you have by any chance a working example of word by word Quran (with the right page width...). thanks in advance


Better error message when not enough devices connected

Description
Now "No suitable local device available" reported when need more devices and not found enough.
Expected something like: "1/2 suitable devices found" that it is more clear for user to add more devices
Original issue: https://github.com/ARMmbed/mbed-os/issues/8028

This PR should improve the situation here slightly: https://github.com/ARMmbed/icetea/pull/42

Fix will included in next release


Remove special handling for  tags.

This isn't safe until the JSON data is ready to roll.

Traces aren't bold anymore?

Traces aren't bold anymore?

Nope. I confirmed with Jamie.


Bidirectional streaming for pubsub

Description
Adds bidirectional streaming support for pub-sub, extending the API with the subscribe and subscribe_handler methods.
The subscribe method returns a Subscription object, which allows users to pull messages from the
stream by calling the next_message method. This will block on the main thread while waiting for messages.
When done, the close method should be called to terminate the subscription and stop receiving messages.
The subscribe_with_handler method accepts a user callback function that is executed for each message
received from the stream.
It runs in a separate thread, so it doesn't block the main thread. The callback function should return a
TopicEventResponseStatus, indicating whether the message was processed successfully, should be
retried, or discarded. Users can return these statuses using the Subscription.SUCCESS,
Subscription.RETRY, and Subscription.DROP class properties. The method will automatically manage
message acknowledgements based on the returned status.
The call to subscribe_with_handler method returns a close function, which should be called to terminate the subscription when done.
Issue reference
https://github.com/dapr/python-sdk/issues/730
Checklist
Please make sure you've completed the relevant tasks for this PR, out of the following list:

[X] Code compiles correctly
[X] Created/updated tests
[x] Extended the documentation

I am really grateful that somebody is finally working on this! I like how we can choose between subscribe and subscribe_with_handler, even though it's a bit unusual. It's a good approach imo. But from what I understand this doesn't use/support async iterator, which I think would be pretty useful if it did. I am not an expert, but adding an async iteration support should not be such a problem.
Here are some code changes that were suggested to me by an AI, but it looks pretty legit:

First, modify the Subscription class in dapr/aio/clients/grpc/subscription.py:

class Subscription:
    def __init__(self, stub, pubsub_name, topic, metadata=None, dead_letter_topic=None):
        # ... existing init code ...
        self._iterator_active = True

    async def __aiter__(self):
        """Make the subscription async iterable."""
        return self

    async def __anext__(self):
        """Get the next message from the subscription stream."""
        if not self._iterator_active:
            raise StopAsyncIteration

        try:
            message = await self.next_message()
            if message is None:
                # If no message is received, continue iteration
                return await self.__anext__()
            return message
        except StreamInactiveError:
            self._iterator_active = False
            raise StopAsyncIteration
        except StreamCancelledError:
            self._iterator_active = False
            raise StopAsyncIteration

    async def close(self):
        """Close the subscription and stop iteration."""
        self._iterator_active = False
        if self._stream:
            try:
                self._stream.cancel()
                self._stream_active.clear()
            except AioRpcError as e:
                if e.code() != StatusCode.CANCELLED:
                    raise Exception(f'Error while closing stream: {e}')
            except Exception as e:
                raise Exception(f'Error while closing stream: {e}')

    # ... other methods stay unchanged ...

Then update the subscribe_with_handler method in dapr/aio/clients/grpc/client.py to use async iteration:

async def subscribe_with_handler(
    self,
    pubsub_name: str,
    topic: str,
    handler_fn: Callable[..., Awaitable[TopicEventResponse]],
    metadata: Optional[dict] = None,
    dead_letter_topic: Optional[str] = None,
) -> Callable[[], Awaitable[None]]:
    """
    Subscribe to a topic with a bidirectional stream and a message handler function
    Args:
        pubsub_name (str): The name of the pubsub component.
        topic (str): The name of the topic.
        handler_fn (Callable[..., Awaitable[TopicEventResponse]]): The function to call when a message is received.
        metadata (Optional[dict]): Additional metadata for the subscription.
        dead_letter_topic (Optional[str]): Name of the dead-letter topic.
    Returns:
        Callable[[], Awaitable[None]]: An async function to close the subscription.
    """
    subscription = await self.subscribe(pubsub_name, topic, metadata, dead_letter_topic)

    async def stream_messages():
        try:
            async for message in subscription:
                try:
                    response = await handler_fn(message)
                    if response:
                        await subscription.respond(message, response.status)
                except Exception as e:
                    # Log error and continue processing messages
                    print(f"Error processing message: {e}")
                    continue
        except Exception as e:
            print(f"Stream error: {e}")

    # Start processing messages in background task
    task = asyncio.create_task(stream_messages())

    async def close_subscription():
        task.cancel()
        try:
            await task
        except asyncio.CancelledError:
            pass
        await subscription.close()

    return close_subscription

Add an example showing how to use the async iterator directly:

# examples/pubsub-streaming-async/subscriber-iterator.py
import argparse
import asyncio
from dapr.aio.clients import DaprClient
from dapr.clients.grpc._response import TopicEventResponse

parser = argparse.ArgumentParser()
parser.add_argument('--topic', required=True)
args = parser.parse_args()

async def main():
    async with DaprClient() as client:
        subscription = await client.subscribe(
            pubsub_name='pubsub',
            topic=args.topic,
            dead_letter_topic=f'{args.topic}_DEAD'
        )

        try:
            # Process messages using async for
            async for message in subscription:
                print(f'Processing message: {message.data()} from {message.topic()}...')
                # Process message here
                await subscription.respond_success(message)
        except Exception as e:
            print(f"Error: {e}")
        finally:
            await subscription.close()

if __name__ == '__main__':
    asyncio.run(main())

Update the tests to cover the async iterator functionality:

# tests/clients/test_dapr_grpc_client_async.py

async def test_subscribe_topic_iterator(self):
    dapr = DaprGrpcClientAsync(f'{self.scheme}localhost:{self.grpc_port}')
    subscription = await dapr.subscribe(pubsub_name='pubsub', topic='example')

    messages = []
    async for message in subscription:
        messages.append(message)
        await subscription.respond_success(message)
        if len(messages) >= 2:  # Get first two messages
            break

    self.assertEqual(2, len(messages))
    self.assertEqual('111', messages[0].id())
    self.assertEqual('222', messages[1].id())

    await subscription.close()

After that, hopefully the previous methods should still work the same way as before. So the user would have more options.

Thanks for the review @Aldraz! I like the iterator approach, it's much more pythonic. Let's do it!
We could probably use the same approach for the sync client too.
Since you already did the work here, would you like to send a PR to my branch so that you can get credit for it, and show up in the list of contributors for this release? :)

@elena-kolevska @Aldraz I will merge this PR so we can iteratively refactor things to use the async iterator instead.
This PR has always lingered on for a long while :)
Let's consider this PR to be Part 1 /2 of this feature.

Thanks @berndverst! :)
Sounds like a plan. I'll get to it as soon as possible.


complete-Front End

I'll give a rough draft of front end website , explaining what more things need to be done.

Collaborate with @techalien . He has the files.


[Feature] Add props config for heading

I added propsConfig in order to improve customization.

@Qadra42  0.2.9 is out, let me know if there is an issue.


swipeToSlide in vertical mode

It seems swipeToSlide in vertical mode doesn't work.

dragging or swiping in vertical mode works if you drag horizontally ... swipeToSlide in vertical mode works on this fiddle. The problem isn't swipteToSlide it's the direction.

I set verticalSwiping to true - so direction is not problem, but swipeToSlide is not reflected.

Did you try to drag horizontally?

+1, doesn't work with verticalSwiping: true

+1, still doesn't work


when null-safe is supported?

When to migrate to null-safe..  dart:sdk: ">=2.12.0 <3.0.0"

we've migrated to null-safety.


Solved2

Hello hello, I would like to ask, did you run through DCVC-DC directly according to the readme when you tested, my progress bar has been stuck at 0, and the memory of the graphics card is not occupied

我目前跑DCVC的進度條也是一直卡0 請問有人知道問題所在可以跟我說一下嗎!謝謝~


Use the OS CSPRNG to generate random bytes when using Linux

Goal
It should be an option to either use the Milagro CSPRNG or to use the
one provided by the OS.
The API should not change when using the OS CSPRNG
Resources
getrandom should be
used.
Acceptance criteria

Code is commented
Tests pass
Tests pass with more than 80% test coverage
Static analysis should pass
Code should be reviewed by two engineers

It should be also OS agnostic. For windows: https://learn.microsoft.com/en-us/windows/win32/api/bcrypt/nf-bcrypt-bcryptgenrandom?redirectedfrom=MSDN

I can do that. Or have you already the code for this?

Hi Gieorgio I have a simple fix in mind for Linux. Let me do that first and then you can do other OS's.


[Spark Connector] Escape column names when querying Pinot

This fixes issues with reading columns with reserved names like 'timestamp'.
Testing

Unit tests are updated accordingly
Manually tested using the ExampleSparkPinotConnectorTest suite

bugfix

Codecov Report

Merging #10663 (0474285) into master (178aa20) will increase coverage by 42.60%.
The diff coverage is 75.00%.

@@              Coverage Diff              @@
##             master   #10663       +/-   ##
=============================================
+ Coverage     27.74%   70.34%   +42.60%
- Complexity       58     6514     +6456
=============================================
  Files          2090     2108       +18
  Lines        112642   113665     +1023
  Branches      16987    17126      +139
=============================================
+ Hits          31247    79954    +48707
+ Misses        78272    28108    -50164
- Partials       3123     5603     +2480

Flag
Coverage Δ

integration1
24.39% <ø> (-0.07%)
:arrow_down:

integration2
24.00% <ø> (+0.09%)
:arrow_up:

unittests1
67.91% <ø> (?)

unittests2
13.87% <75.00%> (?)

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

Impacted Files
Coverage Δ

...nector/spark/common/query/ScanQueryGenerator.scala
93.93% <50.00%> (ø)

...ot/connector/spark/common/PinotClusterClient.scala
5.15% <100.00%> (ø)

... and 1496 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


How to integrate into Spring MVC Java web app that is not maven or springboot

I'm working on implementing SAML into an existing Java Spring MVC App that is NOT using maven or springboot.
Is this possible using this springboot/maven library?
How would we hook up and receive the callback from https://www.goobs.com/theapp/saml/SSO?SAMLResponse=jkghdkgdhjhdfgjdfjk

Definitely possible. You’d have to download spring-security-saml and all its dependencies and put that in your application’s classpath.
In terms of configuration you’d have to go with spring-security-saml, checkout their documentation which presents its config as XML. For javaconfig there’s an example in the examples repo of this plugin and although it’s for spring boot, the configuration it’s pretty generic. Checkout the readme

Would we download and compile https://github.com/spring-projects/spring-security-saml?
Reference that jar in our project, along with all the other jars that spring-security-saml references?
All the http endpoints to send the SAMLRequest and receive back the SAMLResponse can be setup in our config files?  I'll take a look at this library and ask more questions.

You can download the JAR files from any maven repo. You need to download spring-security-saml and all its dependencies, as well as any dependencies of the dependencies, and the dependencies of the dependencies of the dependencies and so on.... until you're done. I highly recommend using maven. You can setup a maven project and use this to get all the jars: https://maven.apache.org/plugins/maven-dependency-plugin/copy-dependencies-mojo.html
But this is as far as I'll go though, we already went outside of the scope of this plugin. This kind of questions are better asked at https://stackoverflow.com/


Refactor to reuse functions and improve code coverage

This PR refactors code to reuse functions and improve code coverage:

Remove encodeFixedLengthStruct() and reuse encodeStruct()
Previously, encodeStruct() used extra buffer to encode elements to get actual encoded element count.  To avoid this overhead, encodeFixedLengthStruct() was created to encode fixed length struct (struct without any "omitempty" fields) since encoded element count is always known in this use case.
Since @benluddy's PR #519, encodeStruct() doesn't use extra buffer any more, and encodeFixedLengthStruct() isn't necessary.  Thanks Ben!  :+1:

Combine encodeHead() and encodedHeadLen() to avoid these two functions out of sync.
encodeHead() is modified to return encoded head length so caller doesn't need to call encodedHeadLen() separately.

@benluddy  @x448 PTAL :pray:

Looks good!


v0.17.0

v0.17.0 July 14, 2022

Enhancements

Added ability to null invalid values for Double logical type #1449
Added ability to null invalid values for BooleanNullable logical type #1455
Added ability to null invalid values for IntegerNullable logical type #1456
Added ability to null invalid values for EmailAddress logical type #1457
Added ability to null invalid values for URL logical type #1459
Added ability to null invalid values for PhoneNumber logical type #1460
Added ability to null invalid values for AgeFractional and AgeNullable logical types #1462
Added ability to null invalid values for LatLong logical type #1465
Added ability to null invalid values for PostalCode logical type (US only) #1467
Added smarter inference for IntegerNullable and BooleanNullable types #1458

Fixes

Fixed inference of all null string values as Unknown instead of Datetime #1458

Changes

Set the minimum acceptable version of pandas to 1.4.0 for woodwork and 1.4.3 for spark add-on #1461
Dropped support for Python 3.7 #1461
Add pre-commit hooks for linting #1470

Do we need to add breaking changes for the pandas/python upgrade?
Otherwise, 🚢

I don't know if we need to include anything like the python 3.7 stuff in the testing changes either. Also lgtm otherwise!


Screenshot through Steam

I'm trying to takte 4k screenshots of Cyberpunk 2077, using the Steam Hotkey (F12) But it's not letting me. Also the hotkeys are all numpad, unfortunately I have a 60% keyboard. I changed the hotkeys but they don't seem to work at all.. it doesn't change.

I use F12 as well, works fine? For keybindings you have to enable keyboard input (normally bound to numpad .) to unblock the input, otherwise it will block a normal keybpress

I use F12 as well, works fine? For keybindings you have to enable keyboard input (normally bound to numpad .) to unblock the input, otherwise it will block a normal keybpress

I don't have a numpad though... I tried to change the keybindings but they don't seem to change, Because (Example) If i changed Numpad . to PageDown, and removed keybind on the original Pagedown keybind. When I go back into the game, Press Pagedown, it does what the original keybind was set to before, not what the new keybind is.. Does that make sense? x.x

I don't have a numpad though... I tried to change the keybindings but they don't seem to change, Because (Example) If i changed Numpad . to PageDown, and removed keybind on the original Pagedown keybind. When I go back into the game, Press Pagedown, it does what the original keybind was set to before, not what the new keybind is.. Does that make sense? x.x

The numpad . action (Block input to game) is only active when the camera is enabled. So if you want to test that, you have to enable the camera first, then press that key. I tried, it works fine, keybinding changes are followed and work as expected.

The numpad . action (Block input to game) is only active when the camera is enabled. So if you want to test that, you have to enable the camera first, then press that key. I tried, it works fine, keybinding changes are followed and work as expected.


Update README.md

Read through the recommended book and wrote a simple summary that covers concept of machine learning using TDD and SOLID principles to build well refactored code for stable, scalable, and easy-to-use models in Machin Learning.

This isn't original material and doesn't fit well as a paste-in


[DIAGNOSTICS][DCOS-47782] Add initial support for kubernetes diagnostic bundles

In this PR we refactor the code to allow the introduction of a kubernetes_bundle
Diagnostics for the following commands have been added in this patch:

manager describe
manager pod status --json
manager plan list and associated manager plan status for each plans from the list.
cluster list
cluster debug state properties
cluster debug endpoints
cluster debug pod status --json

Commands which deal with iterating through properties of the cluster such as
dcos kubernetes cluster debug config list aren't supported right now as not all commands in the dcos kubernetes cli sub-command group support a full JSON output as of this moment (particularly ones such as cluster list).
Lacking a JSON output makes it error-prone to parse the output. Work will be required on the kubernetes cli to emit full json versions before we can add diagnostic support for them here in a future release.

Ping @kaiwalyajoshi re: the above.


Debounce refreshing

When writing writing text using the Source Control dialog (and I assume also the COMMIT_EDITMSG editor), the experience seems very laggy. A common solution for preventing this is to debounce the update, which might also be the solution needed in this scenario.

Upping this issue, since it seems it even crashes the Source Control when we type too much... Some debouncing would definitely help !