[BUG][WEBJS] -

Describe the bug
boosty in not acepting supscriptions !
Screenshots

If applicable, add screenshots to help explain your problem.

Additional context

Add any other context about the problem here.

It get stuck in this page forever!

@nataliafurtado hi! I see you did manage to subscribe, didn't you? Did you get access to portal?
Sorry, it was some platform or payment related issue.
Let me know if it happens again and we'll find a way to fix that!


[Calculator] Time of transition is different when hovering over 'Calculate' and 'How to use less' buttons

Environment: Windows 10 Pro 22H2 Google Chrome Version 122.0.6261.112 (Official Build) (64-bit)
Reproducible: always
Preconditions

Site https://zero-waste-staging.onrender.com/en is opened.

Steps to reproduce

Click 'Let's go' button on the main page
Hover over 'Calculate' green button
Hover over 'How to use less' green button

Actual result

'Calculate' button changes its color from green to dark green in 0.5 sec
'How to use less' button changes its color from green to dark green instantly

Expected result
Both 'Calculate' and 'How to use less' buttons should have the same time of transition 0.5 sec when hovering over
User story and test case links
E.g.: "User story #100
Test case"
https://github.com/ita-social-projects/ZeroWaste/assets/145603083/76458caa-e4d0-4d09-b2c4-55ee8838c258

Fixed


HADOOP-12366. expose calculated paths

Adapted the patch to apply cleanly on branch-2.7.1
This patch is need to unblock ODPI-57. Because this one is already adopted in the upstream, I will merge the PR shortly and will rebuild the stack binaries.

Pulling the change in.


Update regular expression

@queerviolet
With /^[[a-z0-9]\-]+$/, the package name needs to be a hyphenated word (ex. "bones-app") but the check would fail if the app name was a single word (like "bones").
Modified to /^[[a-z0-9]\-?]*$/, to make the hyphenation optional.
Tested:
const exp = /[[a-z0-9]\-?]*$/
exp.test('') 				// false
exp.test('__BONES__') 		// false
exp.test('bones')			// true
exp.test('bones-app')		// true

Whoops - moving this to the fullstack version!


SSLException: Connection Reset when migrating to 5.x

Hi!
I was tasked with refining our Gradle script, including the download of a single zip file.
However, when upgrading the version of the plugin to 5.x version from 4.1.2 and making the necessary changes to the run method, the download keeps crashing due to an SSLException, specifically javax.net.ssl.SSLException: Connection reset.
The task in question:
task downloadBundle {
    download.run {
        src "${externalArtifactoryURL}/Bundle/${bundleVersion}/Bundle.zip"
        dest file(bundleLocation + '.zip')
        username artifactoryUserAccount
        password externalArtifactoryPassword
    }
}

We also have a backup server (no SSL) that works fine, but I still want to be able to download from this server.
Thanks in advance!

Does the server use a self-signed certificate? Have you tried using the acceptAnyCertificate flag?

I forgot to mention that. Yes I tried using that flag, but it also didn't work.
As for the self signed certificate, I am unsure. How can I find that out?

Well, what happens if you open the URL in your browser?

Downloading/accessing the server from the browser works just fine, as does downloading with an older version of the plugin.

Do you happen to know which SSL/TLS version your server uses?

It's using TLS 1.2

This should work actually 🤔 I don't know... It's very hard to tell what's going on without access to the server. I'm almost out of ideas.
Is there a proxy involved maybe? If so, can you try to configure Gradle to skip the proxy for this server? (see docs: https://github.com/michel-kraemer/gradle-download-task#proxy-configuration)

Alright, so proxy settings are not necessary, however, I came across this JFrog wiki article. Do you think that could be an issue with the newest plugin?

I'm not sure. As I said, without more information, it's really hard to debug this issue.
I created a small reproducer for you: issue211.zip
Please edit the Main.java and change the host to your server. The run ./gradlew run -s from the command line. It should create a file download.log. Send it to me via email. It will hopefully contain enough information to debug this issue. If possible, send me the full stacktrace of the exception you get too. Thanks!

Thank you for your time and effort on this issue. I've used the tool and looked at the output myself and contacted our DevOps team in order to check this out as I already have a sneaking suspicion that this is an issue on our end. I will definitely update this issue and send you the log if I get permission to do so.
Thanks again!

Sounds good. Looking forward to your feedback.


Improve Data Collection Experience

Currently, there are some issues with the data collection. It does not look very appealing - it is simply text appearing on the screen. Here are some ideas:

Create a more compelling background/screen
Create graphics for each bit (like coins or something, still with 1s or 0s on them)
Make the bits hover or move enticingly
Create a pleasant "collection" experience when a bit is tapped

At this point, the collection of bits is the primary gameplay - it should be engaging and compelling.

This will involve the Phaser library quite a bit, but it will be a good opportunity to make a visual change. It could still be relatively simple - even just adding a circle around each number, or allowing for both 0 and 1 instead of just 1.
After the basics, adding some little touches like animation/movement could be cool, like this:

or this:

Meeting Notes

Upgrades: sweep, robot collection
Have falling green 1s and 0s
Background: terminal
Apps: terminal, user info, upgrades, settings, store(cosmetics), learning, restart(reset)
Colors --> dark cool colors: green, black(terminal), dark blue(computer background), dark purple(shop),
Sprites: icons for apps
Use coin as shop app icon
Have a computer screen or iPhone screen with different clickable apps
Have a log in screen with a guest option
Music: base/main screen, able to buy more tracks, sound effects
Have a credits page
For now: have single color buttons


refactor(NODE-3717): reorganize tests part 2

Description
NODE-3717
What is changing?

crud and bulk tests were moved to integration/crud; one prose test was separated into a prose file from bulk
max staleness test were moved to integration/max-staleness - they use a mock server but I think it's better to make them into proper integration tests than convert to a unit test (see my comment on this PR and new ticket)
load balancer, retryable reads, and retryable writes tests have all been moved into a corresponding integration directory

NOTE: The changes in this PR affect the configuration for run-serverless-tests.sh we should double check to make sure all desired tests are still running (see my comment on that file).
Is there new documentation needed for these changes?
N/A
What is the motivation for this change?
Better test organization
Double check the following

[x] Ran npm run check:lint script
[x] Self-review completed using the steps outlined here
[x] PR title follows the correct format: <type>(NODE-xxxx)<!>: <description>
[N/A] Changes are covered by tests
[x] New TODOs have a related JIRA ticket

I'm leaving the conversations unresolved so anyone else who wants a look can see them easily, but feel free to resolve them yourself when you want to merge. LGTM.


Adding logging for debugging slave lag

@jasonhl @sroysen

:+1:

@arthurnn yo ok with this, just adding logging for some fun debugging times

lol fixed

Lhm::changes::parallel#test_0002_should perserve deletes during migration:
ActiveRecord::StatementInvalid: Mysql2::Error: This connection is in use by: #<Thread:0x000000029ba580 sleep>: SELECT DATABASE() as db

^ this seems unrelated

sweet. squash and I will merge it.
thanks

HULK SQUASH

Smething is fucky with the tests, I think the connections might be shared, but seems unrelated, ok to merge now @arthurnn ?


full_text_search:synchronize failed when using emoji

If the ticket description contains emoji, it will not be saved in fts_targets in my environment.
When the character code of the emoji is not included, the synchronize ends normally and is searched normally.
If you save it including the character code of the emoji, the ticket will not be searched.
I wrote the following character codes in redmine description field.
🐳     (Whale)   🐳
Are there any restrictions or settings when using emoji?
Environment
CENTOS7.7 /MariaDB10.4 /Redmine4.0.5 devel
MariaDB is set to utf8mb4.
case 1. Synchronize

RAILS_ENV=production bin/rails full_text_search:synchronize
l FullTextSearch::Target:All [=        ] 14051/112601(12%) 28m59s 56.69/s  4m 8s
mqq Journal:New [===========================] 4133/4133(100%)  0s 57.36/s  1m 0s
..
mqq Issue:New [=======                   ] 9918/36170(27%)  8m15s 56.69/s  3m 7s
rails aborted!
ActiveRecord::StatementInvalid: Mysql2::Error: Incorrect string value: '\xF0\x9F\x90\xB3 a...' for column redmine.fts_targets.content at row 1: INSERT INTO fts_targets (source_id, source_type_id, project_id, is_private, last_modified_at, title, content, tag_ids) VALUES (80086, 2, 21, FALSE, '2018-12-16 00:40:12', 'redmine cannot deal with 4-byte utf-8 characters', 'When entering an issue description or a note, all text after a 4-byte utf-8 character seems to get truncated.\n\nTo reproduce just create a new issue\nin the description enter some text and a 4-byte utf-8 such a ? 梶nd

case 2. Issue description edit/save
No error is displayed, but the following log is recorded in production.log.

[ActiveJob] [FullTextSearch::UpsertTargetJob] [dda2755c-5a71-4e33-9d47-7922e0f644c8]
Error performing FullTextSearch::UpsertTargetJob (Job ID: dda2755c-5a71-4e33-9d47-7922e0f644c8)
from Async(full_text_search) in 85.86ms: ActiveRecord::StatementInvalid
(Mysql2::Error: Incorrect string value: '\xF0\x9F\x90\xB3' for column redmine.fts_targets.content at row 1:

Environment
CENTOS7.7 /MariaDB10.4 /Redmine4.0.5 devel
Full Text Search plugin 1.0.4
yum list

MariaDB-client.x86_64                    10.4.8-1.el7.centos      @mariadb-main
MariaDB-common.x86_64                    10.4.8-1.el7.centos      @mariadb-main
MariaDB-compat.x86_64                    10.4.8-1.el7.centos      @mariadb-main
MariaDB-devel.x86_64                     10.4.10-1.el7.centos     @mariadb-main
MariaDB-server.x86_64                    10.4.8-1.el7.centos      @mariadb-main
MariaDB-shared.x86_64                    10.4.8-1.el7.centos      @mariadb-main
mariadb-10.4-mroonga.x86_64              9.09-1.el7               @groonga-centos
roonga-libs.x86_64                      9.0.9-1.el7              @groonga-centos
groonga-normalizer-mysql.x86_64          1.1.3-1.el7              @groonga-centos
groonga-release.noarch                   1.5.2-1                  @/groonga-release-latest.noarchDlcbad

MariaDB [redmine]> show variables like "char%";
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8mb4                    |
| character_set_connection | utf8mb4                    |
| character_set_database   | utf8mb4                    |
| character_set_filesystem | binary                     |
| character_set_results    | utf8mb4                    |
| character_set_server     | utf8mb4                    |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.001 sec)

MariaDB [redmine]> show variables like 'coll%';
+----------------------+--------------------+
| Variable_name        | Value              |
+----------------------+--------------------+
| collation_connection | utf8mb4_general_ci |
| collation_database   | utf8mb4_general_ci |
| collation_server     | utf8mb4_general_ci |
+----------------------+--------------------+
3 rows in set (0.001 sec)

MariaDB [redmine]> show create database redmine;
+----------+---------------------------------------------------------------------+
| Database | Create Database                                                     |
+----------+---------------------------------------------------------------------+
| redmine  | CREATE DATABASE redmine /*!40100 DEFAULT CHARACTER SET utf8mb4 */ |
+----------+---------------------------------------------------------------------+

show create table issues;
..
) ENGINE=InnoDB AUTO_INCREMENT=107330 DEFAULT CHARSET=utf8mb4 |

Do you have encoding: utf8mb4 in your config/database.yml?

Thank you for the advice.
As you pointed out,
When redmine database.yml is changed to encoding utf8mb4,
We were able to successfully search for issues with emoji.
Thank you for publishing great software.


[l10n] Fix typo in csCZ translation of Pagination component

Fixed a typo in the csCZ translation of Pagination component.

[X] I have followed (at least) the PR section of the contributing guide.

@Martin005 It's a great first pull request on MUI 👌🏻. Thank you for working on it!


Adds a final step for circleci builds

Enables green-build requirements for pull requests.

          1 Error

:no_entry_sign:
Please include a CHANGELOG entry.

  Generated by :no_entry_sign: Danger

changes applied in #609


Simplify issuance backoff handling & improve error messages

This PR changes the internals of how the NodePublishVolume calls wait for an initial issuance of a Certificate.
Previously, a volume would be registered for management in the NodePublishVolume call, and then a wait function was used from the driver package to wait until the manager has successfully completed an issuance of the certificate.
This made it take longer for users to see errors if there are any (it'd always take a minimum of 30s to get errors) plus it has lead to poor handling of "backing off" in cases where requests continuously fail (see #30).
Instead, the driver will now attempt one issuance prior to beginning the long-running renewal loop in the manager, by using the new ManageVolumeImmediate method. This method:

registers the volume as under management (to prevent any other NodePublishVolume calls that run at the same time for the volume duplicating work/interfering) but does NOT start the renewal loop
makes a call to issue to attempt a single issuance
if this fails, it returns so the driver can call unmanage and clean up volume data on disk
if it succeeds, it begins the renewal goroutine like usual

This allows us to lean on the kubelet/CSI driver consumer  to define the retry behaviour if a pod isn't able to start.
In cases where a renewal is failing, the same exponential backoff behaviour we had before will be applied (and the exponent will not be thrown away every 30s, like described in #30).
I've also tuned the exponential backoff parameters so the initial 'base' backoff in these cases is 30s, with a factor of 2 and a max cap of 5 minutes. This leads to a pattern of waiting T seconds after each attempt:
T=0s
T=30s
T=60s
T=120s
T=240s
T=300s (5 minutes, the cap)
T=300s (5 minutes, the cap)
...

This backoff behaviour/configuration can now also be customised by library consumers to their liking.
As part of this, I've also improved the error messages returned to users in cases where their certificate requests are not being approved or issued (instead of just showing timed out waiting for the condition).
cc @7ing @JoshVanL

To note as well, the kubelet's standard backoff handling also appears to be exponential. We will rely on the kubelet to handle/time retries if a pod is in a ContainerCreating state - our own exponential backoff only comes into effect for renewals.
We may want to consider surfacing failed renewals via metrics in the CSI driver or something too, to make it easier for operators to identify 'stuck' renewals more easily.

/lgtm


Excessive error messages related to intrinsics

Here's an example:
storage {
    x: int,
}

predicate Test {
    state x = storage::x;
    var len = __state_len(x, 0);
}

I'm looking specifically at the first two errors below which are identical.
❯ pintc test.pnt
Error: this intrinsic takes 1 argument but 2 arguments were supplied
   ╭─[test.pnt:7:15]
   │
 7 │     var len = __state_len(x, 0);
   │               ────────┬────────
   │                       ╰────────── unexpected number of arguments here
───╯
Error: this intrinsic takes 1 argument but 2 arguments were supplied
   ╭─[test.pnt:7:15]
   │
 7 │     var len = __state_len(x, 0);
   │               ────────┬────────
   │                       ╰────────── unexpected number of arguments here
───╯
Error: unable to determine expression type
   ╭─[test.pnt:7:9]
   │
 7 │     var len = __state_len(x, 0);
   │         ─┬─
   │          ╰─── type of this expression is ambiguous
───╯
Error: constraint expression type error
   ╭─[test.pnt:7:5]
   │
 7 │     var len = __state_len(x, 0);
   │     ─────────────┬─────────────
   │                  ╰─────────────── constraint expression has unknown type
   │                  │
   │                  ╰─────────────── expecting type `bool`
───╯
Error: could not compile `test.pnt` due to 4 previous errors

To make things worse, the following:
storage {
    x: int,
}

predicate Test {
    state x = storage::x;
    var len = __state_len(x, 0);

    constraint len == 0;
    constraint len == 0;
    constraint len == 0;
    constraint len == 0;
    constraint len == 0;
    constraint len == 0;
    constraint len == 0;
}

results in even more repetition:
❯ pintc test.pnt
Error: this intrinsic takes 1 argument but 2 arguments were supplied
   ╭─[test.pnt:7:15]
   │
 7 │     var len = __state_len(x, 0);
   │               ────────┬────────
   │                       ╰────────── unexpected number of arguments here
───╯
Error: this intrinsic takes 1 argument but 2 arguments were supplied
   ╭─[test.pnt:7:15]
   │
 7 │     var len = __state_len(x, 0);
   │               ────────┬────────
   │                       ╰────────── unexpected number of arguments here
───╯
Error: this intrinsic takes 1 argument but 2 arguments were supplied
   ╭─[test.pnt:7:15]
   │
 7 │     var len = __state_len(x, 0);
   │               ────────┬────────
   │                       ╰────────── unexpected number of arguments here
───╯
Error: this intrinsic takes 1 argument but 2 arguments were supplied
   ╭─[test.pnt:7:15]
   │
 7 │     var len = __state_len(x, 0);
   │               ────────┬────────
   │                       ╰────────── unexpected number of arguments here
───╯
Error: this intrinsic takes 1 argument but 2 arguments were supplied
   ╭─[test.pnt:7:15]
   │
 7 │     var len = __state_len(x, 0);
   │               ────────┬────────
   │                       ╰────────── unexpected number of arguments here
───╯
Error: this intrinsic takes 1 argument but 2 arguments were supplied
   ╭─[test.pnt:7:15]
   │
 7 │     var len = __state_len(x, 0);
   │               ────────┬────────
   │                       ╰────────── unexpected number of arguments here
───╯
Error: this intrinsic takes 1 argument but 2 arguments were supplied
   ╭─[test.pnt:7:15]
   │
 7 │     var len = __state_len(x, 0);
   │               ────────┬────────
   │                       ╰────────── unexpected number of arguments here
───╯
Error: this intrinsic takes 1 argument but 2 arguments were supplied
   ╭─[test.pnt:7:15]
   │
 7 │     var len = __state_len(x, 0);
   │               ────────┬────────
   │                       ╰────────── unexpected number of arguments here
───╯
Error: this intrinsic takes 1 argument but 2 arguments were supplied
   ╭─[test.pnt:7:15]
   │
 7 │     var len = __state_len(x, 0);
   │               ────────┬────────
   │                       ╰────────── unexpected number of arguments here
───╯
Error: unable to determine expression type
   ╭─[test.pnt:7:9]
   │
 7 │     var len = __state_len(x, 0);
   │         ─┬─
   │          ╰─── type of this expression is ambiguous
───╯
Error: constraint expression type error
   ╭─[test.pnt:7:5]
   │
 7 │     var len = __state_len(x, 0);
   │     ─────────────┬─────────────
   │                  ╰─────────────── constraint expression has unknown type
   │                  │
   │                  ╰─────────────── expecting type `bool`
───╯
Error: constraint expression type error
   ╭─[test.pnt:9:5]
   │
 9 │     constraint len == 0;
   │     ─────────┬─────────
   │              ╰─────────── constraint expression has unknown type
   │              │
   │              ╰─────────── expecting type `bool`
───╯
Error: constraint expression type error
    ╭─[test.pnt:10:5]
    │
 10 │     constraint len == 0;
    │     ─────────┬─────────
    │              ╰─────────── constraint expression has unknown type
    │              │
    │              ╰─────────── expecting type `bool`
────╯
Error: constraint expression type error
    ╭─[test.pnt:11:5]
    │
 11 │     constraint len == 0;
    │     ─────────┬─────────
    │              ╰─────────── constraint expression has unknown type
    │              │
    │              ╰─────────── expecting type `bool`
────╯
Error: constraint expression type error
    ╭─[test.pnt:12:5]
    │
 12 │     constraint len == 0;
    │     ─────────┬─────────
    │              ╰─────────── constraint expression has unknown type
    │              │
    │              ╰─────────── expecting type `bool`
────╯
Error: constraint expression type error
    ╭─[test.pnt:13:5]
    │
 13 │     constraint len == 0;
    │     ─────────┬─────────
    │              ╰─────────── constraint expression has unknown type
    │              │
    │              ╰─────────── expecting type `bool`
────╯
Error: constraint expression type error
    ╭─[test.pnt:14:5]
    │
 14 │     constraint len == 0;
    │     ─────────┬─────────
    │              ╰─────────── constraint expression has unknown type
    │              │
    │              ╰─────────── expecting type `bool`
────╯
Error: constraint expression type error
    ╭─[test.pnt:15:5]
    │
 15 │     constraint len == 0;
    │     ─────────┬─────────
    │              ╰─────────── constraint expression has unknown type
    │              │
    │              ╰─────────── expecting type `bool`
────╯
Error: could not compile `test.pnt` due to 18 previous errors

The errors are coming from here:
https://github.com/essential-contributions/pint/blob/a8a93dcec0c90075ec165b2be1cd930e49a37f2f/pintc/src/predicate/analyse/intrinsics.rs#L469-L477
@mohammadfawaz is __state_len(..) supposed to be able to take more than one arg?

@mohammadfawaz
I've identified what is causing the excessive errors. Working on a solution.
https://github.com/essential-contributions/pint/blob/d92f7735d0bdbd852d9b72cbc5d64ebd86f028b6/pintc/src/predicate/analyse/type_check.rs#L420-L424
While type checking, all_expr_keys contains
(::len == __state_len(::x, 0))
storage::x
__state_len(::x, 0)

(::len == __state_len(::x, 0)) is type checked and results in an UnexpectedIntrinsicArgCount  error when inferring __state_len(::x, 0) then __state_len(::x, 0) is type checked again after checking storage::x. It fails again because we were never able to infer the type of __state_len(::x, 0).
I'll look into how to prevent this. If you have any insight here let me know :)
My first assumption is that we cannot modify the contents of all_expr_keys. We probably need it to remain as is and handle the scenario where we can't infer a type because it errored out.

If we're type checking the same expr key multiple times, that's not great. It sounds like we need to keep track of what expr keys have been checked before and not touch them again?

We sort of keep track right now. It's only for the happy path though. If we type check an expr_key and can infer it's type, then we associate it with it's type. In all other future type checks we first see if the expr_key has an associated type, and skip it.
We don't do this for the unhappy path. So we're on the same line of thinking. Inside of type_check_single_expr we are aware of exactly which expr_key fails (because they can be nested). But we lose that local context when we error and return to type_check_all_exprs.
I'll try to do the cleanest implementation I can think of to keep track of failing expr_keys and skip over type checking them again


Parent.controllers is different than current.controllers.

I have follow situation.
struct HomeView { ... Pages(currentPage: self.$currentPage) {    ChannelsView()    PublicationsView()    MarkedView() } ...
The problem is coming from that in PublicationsView, Im realoading some data and view should be rendered again. Then "controllers" array is updated and refill with newest views.
But in the Coordinator the parent reference keep the first "controllers" array. That follow to a bug:
in "viewControllerBefore" and "viewControllerAfter" -> "parent.controllers.firstIndex(of: viewController)" is returning nil and the pages cannot be changed.
I cannot find a easy solution. Could you help me?

For those reading along, update your updateUIViewController in PageViewController to:
func updateUIViewController(_ pageViewController: UIPageViewController, context: Context) {
    context.coordinator.parent = self
    pageViewController.setViewControllers(
        [controllers[currentPage]], direction: .forward, animated: false
    )
}

Worked for me!

Awesome, thanks guys. I don't have time right now but I'll try to add it this weekend. If anybody wants to submit a pull request feel free :)

Fixed


[match] select cert with the most furthest expiration date in the future

Checklist

[x] I've run bundle exec rspec from the root directory to see all new and existing tests pass
[x] I've followed the fastlane code style and run bundle exec rubocop -a to ensure the code style is valid
[x] I see several green ci/circleci builds in the "All checks have passed" section of my PR (connect CircleCI to GitHub if not)
[x] I've read the Contribution Guidelines
[x] I've updated the documentation if necessary.
[x] I've added or updated relevant unit tests.

Motivation and Context
In most cases, there is only one cert/key pair in the match storage.
But when dealing with developer_id certificates, there could be two or even three. The reason for this is that developer ID certs have a 5-year lifespan. And it looks like an app signed with developer_id cert stops working when the developer id cert used to sign it is expired. Every couple of years, we issue a new developer id cert and use it to sign new app versions. In this case, we are sure that the latest release will work for a couple more years, and users will have plenty of time to update the app.
Since the developer id cert is not expired we use manual import. After that, we have two cert/key pairs in the match storage.
The problem I want to address is that the match uses a cert with the biggest id (filename). And this is wrong. We need a match to select a cert with the furthest expiration date in the future.
Description

select_cert_or_key is now select_cert. The method returns the cert with the furthest expiration date.
New runner_unit_spec not to mix unit tests with looks like integration tests in the runner_spec.
There could be several cert/key pairs in the storage. Refactored cert deletion logic to address this case. There is no value in expired certs at all.

Cert renewal updates

cert_paths contain only valid certificates. It looks better and requires fewer checks in the code afterward.
There is no need for the renew_expired_certs option 😅.

Other improvements

There is no need in keys variable. We need only certs with corresponding p12 keys.
Updates some gsubs to use regex, indicating the correct file extension and the end of a string.

PS. Looks like failing tests on Ubuntu is not related to my changes.
Testing Steps
Run the match with storage having 2 or more certs of the same type.
Run the match with storage having 2 or more certs that are expired.

Well if that removes the just freshly added renew_expired_certs option, we need to either remove the previous PR before making a new release, or delay the release until we land this one, right?

I can create a small PR that removes the option, but the logic stays the same. Give me a couple of mins

And new PR: #21812

Hi, @rogerluan and @lacostej. We are experiencing some issues with encryption. I don't know at this moment if it's this PR, or https://github.com/fastlane/fastlane/pull/21691. It's a double encryption or no encryption at all, idk. I think it's better to revert to #21691, and I'll be able to return back to this PR in 2 weeks. I'll try to make it faster, but no promises. Sorry for the bother 😥.

@nekrich what encryption issues are you running into? Could it be related to the encryption changes I made since the last release?

@nekrich so to summarize.

you are having an encryption issure
#21812 disables the newly introduced feature, but keep most of the code in.
you are assuming that this one needs more work

and you would like #21812 to be merged while you fix this one.
The plan sounds OK, but I would really like to know more about the encryption failures you are having, and make sure they are not related to other changes.

@lacostej I'll be able to look only after Feb 20. I'll definitely describe what's wrong.

I've just merged https://github.com/fastlane/fastlane/pull/21691 — to proceed with this PR, could you rebase the PR, and revert the changes in https://github.com/fastlane/fastlane/pull/21691? So this PR ends up being a "revert the revert + fix the issue" 😅

Stumbled upon this and just want to let you know we've passed Feb 20 now :)

@nekrich looking forward to this feature 🙏

Any news here?

any plans to merge this one? we need it to be able to automatically renew expired certs. thanks

Any updates on this ? Can we have the steps that have to be done to renew them manually ?

Any updates on this feature? We really need it


serialize recursive elements

I try to read an xml with something like a Folderstructure and getting an error.
RecursionError: maximum recursion depth exceeded in comparison

XML simplified
<Folder Name="rootfolder">
	<Folder Name="subfolder">
		<Folder Name="subsubfolder"></Folder>
	</Folder>
	<Folder Name="subfolder">
		<Folder Name="subsubfolder"></Folder>
	</Folder>
</Folder>

Python Code i tried
from __future__ import annotations

class Folder(BaseXmlModel, tag="Folder"):
    name: Optional[str] = attr(name='Name')
    folder:  Optional[List['Folder']] = element(tag='Folder')

In the pydantic docs i found i should mark the class as string e.g ['Folder'] instead of [Folder]. But i was not successfull

Implemented self-referencing models support in version 0.3.0.

I'm really happy now. Thank you for your work.


Bump version to 0.4.1

Version 0.4.1 includes the following changes:

Remove fishhook as a dependency
Add support for installing via SPM

cc @Sherlouk

https://swiftpackageindex.com/cashapp/AccessibilitySnapshot
This is now a thing btw 😉


fix: Queries do not get exported in a git connected app, by using partial export.

Description
The issue happens on a feature branch for a git connected application. Works fine on master branch.
The reason is how the ids are handled for a git connected application. We use the defaultResource and map the actual id with defaultResourceId when sending the data to client. So for a git connected app the backend code was using the mongo _id to filter the selected action but the client sent the defaultResourceId in the request payload. Hence even though the mongo query returned the correct result the filter on the list was returning the empty list.
Used the default resource id for filtering
PR fixes following issue(s)
Fixes https://github.com/appsmithorg/appsmith/issues/29917
Type of change

Bug fix (non-breaking change which fixes an issue)

Testing
How Has This Been Tested?

[ ] Manual
[ ] JUnit

Test Plan

Add Testsmith test cases links that relate to this PR

Issues raised during DP testing

Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR)

Checklist:
Dev activity

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Speedbreak features have been covered
[ ] Test plan covers all impacted features and areas of interest
[ ] Test plan has been peer reviewed by project stakeholders and other QA members
[ ] Manually tested functionality on DP
[ ] We had an implementation alignment call with stakeholders post QA Round 2
[ ] Cypress test cases have been added and approved by SDET/manual QA
[ ] Added Test Plan Approved label after Cypress tests were reviewed
[ ] Added Test Plan Approved label after JUnit tests were reviewed

Summary by CodeRabbit

New Features

Enhanced export functionality in git-connected applications to allow filtering by branch name.

/build-deploy-preview

@rahulbarwal Working on adding the tests for this

/ok-to-test

/ok-to-test<EMAIL_ADDRESS>

Tested and verified. PR looks good to me!

/ok-to-test<EMAIL_ADDRESS>


[MB-5459] update jacquie's cac

Description
Update CAC info with new sha
Reviewer Notes
Is there anything you would like reviewers to give additional scrutiny?
Setup
Add any steps or code to run in this section to help others prepare to run your code:
echo "Code goes here"

Code Review Verification Steps

[ ] If the change is risky, it has been tested in experimental before merging.
[ ] Code follows the guidelines for Logging
[ ] The requirements listed in
Querying the Database Safely
have been satisfied.
Any new migrations/schema changes:

[ ] Follow our guidelines for zero-downtime deploys (see Zero-Downtime Deploys)
[ ] Have been communicated to #g-database
[ ] Secure migrations have been tested following the instructions in our docs

[ ] There are no aXe warnings for UI.
[ ] This works in Supported Browsers and their phone views (Chrome, Firefox, IE, Edge).
[ ] Tested in the Experimental environment (for changes to containers, app startup, or connection to data stores)
[ ] User facing changes have been reviewed by design.
[ ] Request review from a member of a different team.
[ ] Have the Jira acceptance criteria been met for this change?

References

Jira story for this change
Modifies old CAC migration https://github.com/transcom/mymove/pull/3638

Screenshots
If this PR makes visible UI changes, an image of the finished UI can help reviewers and casual
observers understand the context of the changes. A before image is optional and
can be included at the submitter's discretion.
Consider using an animated image to show an entire workflow instead of using multiple images. You may want to use GIPHY CAPTURE for this! 📸
Please frame screenshots to show enough useful context but also highlight the affected regions.

Messages

:book:
:link: MB-5459

  Generated by :no_entry_sign: dangerJS against 426e72ca7a20fdb6e8758a554babd2db07bb23b0


Get direct access to magnitude

Is your feature request related to a problem? Please describe.
I need to convert a biginteger value to another format to be stored in a database that stores a 128 integer in two 64-bit integers. I've written two conversion functions, but as this code will be run intensively, I don't like having to create unnecessary objects using the "getBackingArrayCopy" function.
Describe the solution you'd like
I would like to have direct access to the "magnitude" value.
Describe alternatives you've considered
If you think that these conversion functions can be integrated into your library, I can also provide you with the conversion functions. The database is called Firebird SQL and uses "libtommath" to manipulate 128bit signed integers without needing to manage the sign separately.

I've run extensive tests on these functions, and it's reliable.
inline fun fromBigInteger(value: BigInteger, block: (a:Long, b:Long) -> Unit) {
    val words = value.getBackingArrayCopy().toLongArray()
    val v0: Long = words[0]
    val v1: Long = if (words.size > 1) words[1] else 0L
    when (value.getSign()) {
        Sign.POSITIVE -> {
            if (v1 == 0L) {
                block(v0, 0L)
            } else {
                if (v1 % 2 == 0L) {
                    block(v0, v1 / 2)
                } else {
                    block(Long.MIN_VALUE + v0, (v1 - 1) / 2)
                }
            }
        }
        Sign.NEGATIVE -> {
            if (v1 == 0L) {
                block(-v0, -1L)
            } else {
                if (v0 == 0L) {
                    if (v1 % 2 == 0L)
                        block(0L, -(v1 / 2))
                    else
                        block(Long.MIN_VALUE, -(v1 + 1) / 2)
                } else {
                    if (v1 % 2 == 0L)
                        block(-v0, -(v1 / 2) - 1)
                    else
                        block(Long.MAX_VALUE - v0 + 1, -(v1 + 1) / 2)
                }
            }
        }
        Sign.ZERO -> ZERO
    }
}

fun toBigInteger(a: Long, b: Long): BigInteger {
    val sign = when {
        b == 0L -> if (a == 0L) Sign.ZERO else Sign.POSITIVE
        b > 0L -> Sign.POSITIVE
        else -> Sign.NEGATIVE
    }

    return when (sign) {
        Sign.POSITIVE ->
            createFromWordArray((if (a < 0)
                longArrayOf(a - Long.MIN_VALUE, b * 2 + 1)
            else if (b == 0L)
                longArrayOf(a)
            else
                longArrayOf(a, b * 2)).toULongArray(), sign)
        Sign.NEGATIVE ->
            createFromWordArray((when {
                a == 0L -> longArrayOf(0L, -b * 2)
                a == Long.MIN_VALUE -> longArrayOf(0L, (-b - 1) * 2 + 1)
                a < 0L -> {
                    val v2 = (-b - 1)
                    if (v2 == 0L)
                        longArrayOf(-a)
                    else
                        longArrayOf(-a, v2 * 2)
                }
                else ->
                    longArrayOf(Long.MAX_VALUE - a + 1, (-b - 1) * 2 + 1)
            }).toULongArray(), sign)
        Sign.ZERO -> BigInteger.ZERO
    }
}

Hi @hgourvest ,
I'll be traveling next two weeks so I probably won't have time to tackle this until I get back, but I'm sure we can figure something out, I feel like both options are possible, it's just deciding which approach is better.

Thanks, nothing urge.
The "inline" function saves an Object because of the Lambda function, but does not allow access to the class's private elements. So if you integrate this function in "inline" mode, you'll still need to make the "magnitude" variable public.

Thanks and congrats on the  release!


Presences with a null game causes crash

There's a work around by hacking the stdlib, but I'd rather not go that route.

Replacing marhsal.to[T](data) with json.to(data, T) in places where we're certain all fields will be present, fixes this.

PresenceUpdate event might be completely broken for the time being.

Added a workaround for the PresenceUpdate event. Closing this issue for now.


Butler install it too clever ^^

Hi,
Butler is very nice, there is only one thing that bugs me a tiny bit.
When installing it doesn't ask for directory, hence default directory is a user one.
Problem is I use external processes with isolated users for butler, and in these processse there is no access to user home directory sometime... ideally it would be cool If I could choose at install time to put the itch app in a less boxed location so that I can still used boxed process to perform deployment steps.
Feel free to close if it brings more problems than advantages.

I'm happy witch itch.io/app installing its dependencies to %APPDATA% - but nobody's saying you need to use the app's copy of butler for your own usage :)
Separate download/install instructions are available here: https://itch.io/docs/butler/installing.html - and although butler stores secrets in user directories by default, you can override that by passing --identity path/to/identity/file !
We've planned on adding an https://itch.io/butler page to have more visible download links (to stable versions, not just bleeding-edge)

Very fine for me, that's what i've done. I'll close for now ^^ Bises.


Update name of bokmål and nynorsk

Text representation of nynorsk and bokmål is prefixed with "Norwegian", to solve https://unit.atlassian.net/browse/NP-19673

Replaced by https://github.com/BIBSYSDEV/nva-language-js/pull/20


SHOW ONLY: DO NOT MERGE

ONLY test_create_read_record IS FULLY FUNCTIONAL
Idea:

An enriched Record class that returns always a unit. In this case PID + Record.
The pid manager will encapsulate anything that has to do with: resolver, fetcher, minters and providers.

Problems:

Some attributes like default_status and default_status_with_obj are class attributes on Providers, which does not make it easy to set on demand.
Many of the operations (e.g. pid creation) could be useful to do separately. However accesing Provider + Minter, defeats the purpose of the Minter. --> Up to what extent do we want to not change PIDStore?
Data validator module and classes si part of the service atm. However, it is imported in the pid_record. Solution: move to the record module, which would make sense. Do the same with schemas.

Alternative:

An instantiable class with pid and record attributes.
Problems most likely would persist on this approach.

Supersede by sep-branch and system fields.


Use existing topic config during stream PUT if topic already exits but is not registered

Desired Behavior
We need to programmatically register streams via the streams PUT call. This is failing with the error {"code":400,"message":"Error: Input configs={} and actual configs={min.insync.replicas=2} are not same for topic=<stream name>" when we issue a PUT to the endpoint v0/streams/<stream name>
Desired behavior:

if no topic exists, create the topic with the supplied config
If the topic already exists and is not registered with the stream registry, register the stream with the topic's current config
If the topic already exists and is registered with the stream registry, then it's a no-op

Benefits
Please list the benefits of updating the stream-registry project
to have the new behavior. E.g.:
Enables programmatic stream registration for different use cases.

@cstrombe thanks ... will have the team take a look at this.

"code":400,
"message":"Error: Input configs={} and actual configs={min.insync.replicas=2} are not same for topic=<stream name>"
}```

If the topic already exists and is not registered with the stream registry, register the stream with the topic's current config
@cstrombe
Lets say, the Topic Owner had a retention period of 1 year in Kafka.
While migration of the topic to streamregistry, the developer created the stream with no input(not noticing the expected config of `retention=1year`, if streamregsitry overrides the existing configs with user's input config, then the default config `retention=7days` will be effected

I believe, you encountered this error for the scenario 2 (topic already exists in kafka, but not in streamregistry)
In that scenario, throwing an error is the better behavior than
If the topic already exists and is not registered with the stream registry, register the stream with the topic's current config

Lets say, some one triggers their StreamRegistration call using a Automation Script or Terraform (checked in Git) with config={retention.ms=1year} for a Actual kafka Topic with config={retention=7days} then, if we register the stream with topic's current config, then the team would always assume that thier topic has the retention of 1 year which is not true.

It kind of seems like if the topic exists already, then it's safe to assume that the config it has is the desired config. One idea would be to include a parameter in the endpoint payload to make the choice explicit if topic already exists--"use the incoming config" or "keep existing config". And/or issue a warning in logs that "existing topic config retained". But maybe automatic stream registration is just not possible in all cases...anyway, just some ideas. Thanks for listening!

@cstrombe would a "-f" or "force==true" flag make sense ?
Or maybe called it "sync=true" ?
E.g. Make the stream metadata match the backend if it exists, failing otherwise ?


Demonstrate Dart calling into a .NET component via a CCW

Good suggestion from @escamoteur.
Requires:

Add support for remaining COM Callable Wrapper interfaces (https://docs.microsoft.com/en-us/dotnet/standard/native-interop/com-callable-wrapper)
Create a trivial component in C# or similar, and create a tlb for it
Create a demo app that calls the C# component from Dart
Test, document and publish

#111 takes care of the first one of these. Now to try it out.

Hey @timsneath!
Any ETA on the remaining steps?
Thanks.

Afraid not. I put this down to work on some other cool Win32 package-related things, and I haven't had a chance to pick it up again. I've marked it as 'help wanted' in case there are others who have the time to look at this specifically.


The Implementation Note for GET /batch/Subscription/{subscriptionId} is incorrect with respect to access_tokens

Need to change "client_access_token" to "access_token"

Fixed: https://github.com/energyos/OpenESPI-GreenButton-API-Documentation/commit/cd42b9c5a698a5caf35b3955bb5aa45b8e5e3cd5


Mouse sometimes stops jiggling

I've noticed that sometimes the mouse will stop jiggling for long enough to have my screensaver kick in (about 15 minutes).
The easiest way I've found to recreate this issue is to do a large network file copy, pushing from one computer to the one I'm trying to keep unlocked with mousejiggler. My test folder is about 78GB of mixed data, mostly photos and videos. I'm copying via robocopy with a command like as follows:
robocopy c:\sourcedir \\target\c$\destdir /E /Z /ZB /IS /XA:SH /XD AppData /XJD /R:3 /W:5 /TBD /V /MT:8
I can't reproduce this issue 100% of the time. It seems random, but a pattern is emerging with the combined network, disk, and CPU load.

Unfortunately, you're quite correct with the observation that it tends to happen at high load, because that's probably not something that can be fixed in Mouse Jiggler.
The most likely issue that you're having is caused by Windows not having sufficient time to process its input queue. The mouse movement simulated by Mouse Jiggler has to go through the Windows input queue (i.e., simulating actual mouse movement, not just moving the cursor) in order for the idle detector to see it, and so when Windows is loaded enough to not be able to keep up with the input queue, the idle detector doesn't see input often enough to keep the computer not-idle.
It is much less likely but still possible that the problem is Mouse Jiggler not getting enough priority to send the mouse events. You can test this by using Task Manager to set Mouse Jiggler's priority to "Above normal" and seeing if this corrects the problem, although it will also slow down the other processes on the computer accordingly.


MP protein kinase activator activity (F-P link)

MP protein kinase activator activity
should have an F-P links to
activation of protein kinase activity
(and all of the yucky gene product specific ones)
Reported by: ValWood
Original Ticket: geneontology/ontology-requests/11733

Suggested fix: obsolete all 'activation of X activity terms'.
For the MF terms, we already have a design pattern that works: doesn't distinguish degree of regulations, just specifies must be direct.

This ticket has been superseded by #12995


Make separate environment vars for SUBNET1 and SUBNET2

Latest workshop code seems to expect separate environment variables for each subnet; this will need testing but I think update is correct.
The only other hiccup I saw was that the Stack name is used in naming S3 buckets, which can cause a naming error (in my case due to using uppercase in the Stack name).
Thanks!

Also hit a glitch with the role name for the deployment using the 'simulation' instead of 'deployment' in the name...

Thanks Alex!


MINGW : WidenFilename() not declared

When cross-compiling for Windows the release tarball of OpenEXR-3.1.8 with x86_64-w64-mingw32-g++ (GCC) 12-posix from Debian Bookworm, the build fails because a declaration of WidenFilename() is not available.  This small patch seems to fix it:
diff --git a/openexr-3.1.8.old/src/test/OpenEXRTest/TestUtilFStream.h b/openexr-3.1.8.new/src/test/OpenEXRTest/TestUtilFStream.h
index 430bc2e..4d11977 100644
--- a/openexr-3.1.8.old/src/test/OpenEXRTest/TestUtilFStream.h
+++ b/openexr-3.1.8.new/src/test/OpenEXRTest/TestUtilFStream.h
@@ -104,7 +104,7 @@ OpenStreamWithUTF8Name (
     StreamType& is, const char* filename, std::ios_base::openmode mode)
 {
 #ifdef _WIN32
-    std::wstring wfn = WidenFilename (filename);
+    std::wstring wfn = OPENEXR_IMF_INTERNAL_NAMESPACE::WidenFilename (filename);
 # ifdef USE_WIDEN_FILEBUF
     using CharT   = typename StreamType::char_type;
     using TraitsT = typename StreamType::traits_type;

Thanks for the catch and the patch, can you confirm that #1454 fixes it?

Hi Cary,
It seems to fix that issue, but the branch now fails to build for a
different reason:
git clone -b WidenFilename-fix https://github.com/cary-ilm/openexr.git
# ...
cd openexr
export CPPFLAGS="-D__USE_MINGW_ANSI_STDIO=1"
export LDFLAGS="-static-libgcc -static-libstdc++ -Wl,-Bstatic -lpthread
-Wl,-Bdynamic"
mkdir -p build
cd build
cmake -DBUILD_SHARED_LIBS=OFF
-DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchain-mingw.cmake \
   -DCMAKE_INSTALL_PREFIX=$HOME/win/posix/x86_64
-DCMAKE_CXX_FLAGS=-I$HOME/win/posix/x86_64/include \
   -DZLIB_INCLUDE_DIR=$HOME/win/posix/x86_64/include
-DZLIB_LIBRARY=$HOME/win/posix/x86_64/lib/libz.a ..
# ...
make -k
# ...
make -k
[  2%] Built target Iex
[  5%] Built target IlmThread
[  5%] Building C object
src/lib/OpenEXRCore/CMakeFiles/OpenEXRCore.dir/compression.c.obj
/home/claude/exr/openexr/src/lib/OpenEXRCore/compression.c:11:10: fatal
error: libdeflate.h: No such file or directory
    11 | #include <libdeflate.h>
       |          ^~~~~~~~~~~~~~
compilation terminated.
make[2]: ***
[src/lib/OpenEXRCore/CMakeFiles/OpenEXRCore.dir/build.make:467:
src/lib/OpenEXRCore/CMakeFiles/OpenEXRCore.dir/compression.c.obj] Error 1
make[2]: Target 'src/lib/OpenEXRCore/CMakeFiles/OpenEXRCore.dir/build'
not remade because of errors.
make[1]: *** [CMakeFiles/Makefile2:1376:
src/lib/OpenEXRCore/CMakeFiles/OpenEXRCore.dir/all] Error 2
[  7%] Built target IexTest
make[1]: Target 'all' not remade because of errors.
make: *** [Makefile:146: all] Error 2
make: Target 'default_target' not remade because of errors.

I see that ef4b710f730b09bb40e630e596874438358cdc98 switched from zlib
to libdeflate.
I'll report back once I've tried again with libdeflate installed.
cmake warned that my ZLIB defines were ignored, but did not mention
libdeflate.
My system is Debian Bookworm, cross-compiling for Windows.
Claude
On 15/06/2023 02:15, Cary Phillips wrote:

Thanks for the catch and the patch, can you confirm that #1454
https://github.com/AcademySoftwareFoundation/openexr/pull/1454 fixes it?
—
Reply to this email directly, view it on GitHub
https://github.com/AcademySoftwareFoundation/openexr/issues/1446#issuecomment-1592187511,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACR3ILYJZIFPWRGCZE3IHNLXLJOZXANCNFSM6AAAAAAY5W5A6I.
You are receiving this because you authored the thread.Message ID:
@.***>

Having installed libdeflate, the only errors with make -k are now
related to __cpuid, which see:
https://github.com/AcademySoftwareFoundation/openexr/issues/1445


bug: Analytics - Error building iOS App

Plugin(s):
@capacitor-firebase/analytics
version: 0.2.1
Platform(s):
iOS
Current behavior:
During the iOS App build process, we are getting this error No such module 'FirebaseCore' from FirebaseAnalytics.swift
Expected behavior:
iOS builds without error
Steps to reproduce:
Created a sample ionic react project with analytics plugin as a dependency. This can be viewed here - https://codesandbox.io/s/quirky-nova-vpymls
This is basic ionic react template and the iOS project is synced with the plugin. After trying to build from this iOS project, we are getting the build error
No such module 'FirebaseCore'

Capacitor doctor:
Latest Dependencies:

  @capacitor/cli: 3.4.3
  @capacitor/core: 3.4.3
  @capacitor/android: 3.4.3
  @capacitor/ios: 3.4.3

Installed Dependencies:

  @capacitor/core: 3.4.1
  @capacitor/android: 3.4.0
  @capacitor/ios: 3.4.0
  @capacitor/cli: 3.4.1

Hi @robingenz,
Thanks for your time.
Sorry, I had completely missed this change. This works for me now.
Thanks again. I am closing this now.

Hi @robingenz
Every time I do cap sync the pod update revert to CapacitorFirebaseAnalytics

Hi @robingenz
Every time I do cap sync the pod update revert to CapacitorFirebaseAnalytics

@jongbonga In that case you add the line in the wrong place.
target 'App' do
capacitor_pods
	# Add your Pods here
+  pod 'CapacitorFirebaseAnalytics/Analytics', :path => '../../node_modules/@capacitor-firebase/analytics'
end

See https://github.com/robingenz/capacitor-firebase-plugin-demo/blob/d3237b0a3e4cc6a3fdd47f09d6b43c0057c61f18/ios/App/Podfile#L25

True... thanks


[cadl-ranch] lack test case for enum discriminator

https://github.com/Azure/autorest.python/pull/2188


Request failed: not found (404)

Getting the following error when creating pin:
Error Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: not found (404)" UserInfo=0x1742e1880 {com.alamofire.serialization.response.error.response=<NSHTTPURLResponse: 0x17003a7a0> { URL: https://api.pinterest.com/v1/pins/ } { status code: 404, headers {
"Accept-Ranges" = bytes;
"Access-Control-Allow-Origin" = "*";
"Cache-Control" = private;
Connection = close;
"Content-Length" = 64;
"Content-Type" = "application/json";
Date = "Thu, 29 Oct 2015 10:30:29 GMT";
"Pinterest-Generated-By" = None;
"Pinterest-Version" = f8e949f;
Server = nginx;
"X-Content-Type-Options" = nosniff;
"X-Pinterest-RID" =<PHONE_NUMBER>27;
"X-Ratelimit-Limit" = 200;
"X-Ratelimit-Remaining" = 196;
"X-Varnish" = 985568870;
} }, NSErrorFailingURLKey=https://api.pinterest.com/v1/pins/, com.alamofire.serialization.response.error.data=<7b226d65 73736167 65223a20 22426f61 7264206e 6f742066 6f756e64 2e222c20 22747970 65223a20 22617069 222c2022 70617261 6d223a20 22626f61 7264227d>, NSLocalizedDescription=Request failed: not found (404)}

I was able to create a pin using the sample app in the SDK. Does that work for you?
Authenticate, then choose "view boards". There you can add a new pin to a board.
Also, make sure your Podfile is pointing to the latest commit of the SDK.

I tried but that also didn't work.
Code:
    PDKClient.sharedInstance().authenticateWithPermissions([PDKClientReadPublicPermissions, PDKClientWritePublicPermissions, PDKClientReadPrivatePermissions, PDKClientWritePrivatePermissions, PDKClientReadRelationshipsPermissions, PDKClientWriteRelationshipsPermissions], withSuccess: { (object: PDKResponseObject!) -> Void in
        print("success")
        PDKClient.sharedInstance().getBoardWithIdentifier("Test", fields: NSSet() as Set<NSObject>, withSuccess: { (object: PDKResponseObject!) -> Void in
            print("success")
            }, andFailure: { (error: NSError!) -> Void in
                print(error.description)
        })
        }) { (error:NSError!) -> Void in
            print(error.description)
    }

Error Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: bad request (400)" UserInfo=0x1740e5c80 {com.alamofire.serialization.response.error.response=<NSHTTPURLResponse: 0x17022b600> { URL: https://api.pinterest.com/v1/boards/Moda/?access_token=AYfpudrRneBcMS02ePbeScXQaVkyFBGhlxnzp6pCl-eA-6AIiQAAAAA&fields= } { status code: 400, headers {
"Accept-Ranges" = bytes;
"Cache-Control" = private;
Connection = "keep-alive";
"Content-Length" = 173;
"Content-Type" = "application/json";
Date = "Fri, 30 Oct 2015 05:54:58 GMT";
"Pinterest-Generated-By" = "coreapp-devplatform-devapi-189";
"Pinterest-Version" = f8e949f;
Server = nginx;
"X-Content-Type-Options" = nosniff;
"X-Pinterest-RID" =<PHONE_NUMBER>07;
"X-Varnish" =<PHONE_NUMBER>;
} }, NSErrorFailingURLKey=https://api.pinterest.com/v1/boards/Moda/?access_token=AYfpudrRneBcMS02ePbeScXQaVkyFBGhlxnzp6pCl-eA-6AIiQAAAAA&fields=, com.alamofire.serialization.response.error.data=<7b227374 61747573 223a2022 6661696c 75726522 2c202263 6f646522 3a20312c 2022686f 7374223a 2022636f 72656170 702d6465 76706c61 74666f72 6d2d6465 76617069 2d313839 222c2022 67656e65 72617465 645f6174 223a2022 4672692c 20333020 4f637420 32303135 2030353a 35343a35 38202b30 30303022 2c20226d 65737361 6765223a 2022496e 76616c69 64207061 72616d65 74657273 2e222c20 22646174 61223a20 6e756c6c 7d>, NSLocalizedDescription=Request failed: bad request (400)}

I just want to share a post on Pinterest, I don't know why guys made it so complicated to just share a post. It should be as easy as Facebook and Twitter i.e they show a share dialog.

Done but too complicated, would've been made much easier like Facebook and Twitter.

@hassanizhar: There is an undocumented way to do this much more simply using the SDK. From the example app's pinItButtonTapped function:
[PDKPin pinWithImageURL:[NSURL URLWithString:@"https://about.pinterest.com/sites/about/files/logo.jpg"]
                       link:[NSURL URLWithString:@"https://www.pinterest.com"]
         suggestedBoardName:@"Tooty McFruity"
                       note:@"The Pinterest Logo"
                withSuccess:^
    {
        weakSelf.resultLabel.text = [NSString stringWithFormat:@"successfully pinned pin"];
    }
                 andFailure:^(NSError *error)
    {
        weakSelf.resultLabel.text = @"pin it failed";
}];

This will launch the Pinterest app with a board chooser dialog and does not require to you authenticate the user yourself against the SDK. The problem with this approach is that this only works if the user already has the Pinterest app installed on their device. I've added a workaround in my app to deal with this scenario:
// This should really be a part of the SDK
NSString * const PinterestSDKUrl = @"pinterestsdk.v1://pinit/";
-(BOOL)canPinWithSDK {
    return [[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:PinterestSDKUrl]];
}
NSString * const PinterestAppStoreUrl = @"https://itunes.apple.com/us/app/pinterest/id429047995";

-(void)performPinterestShareWithImageURL:(NSURL *)imageURL sourceURL:(NSURL *)sourceURL description:(NSString *)description
{
    if ([self canPinWithSDK]) {
        [PDKPin pinWithImageURL:imageURL link:sourceURL suggestedBoardName:@"Board Name" note:description withSuccess:^{
        } andFailure:^(NSError *error) {
        }];
    } else {
        // Point App Store to Pinterest App like the old SDK used to do
        [[UIApplication sharedApplication] openURL:[NSURL URLWithString:PinterestAppStoreUrl]];
    }
}

Also make sure that you're overriding both handleOpenURL and openURL in your AppDelegate calling [[PDKClient sharedInstance] handleCallbackURL:url] to make sure the SDK can switch to the Pinterest app and back to yours properly.

 We didn't mention the unauth method in the documentation. I'll make sure that gets updated. Sorry about that!!!


fix when the task details are not modified, the predecessor node cannot be modified

fix when the task details are not modified, the predecessor node cannot be modified
closes: #13421

Codecov Report

Merging #13422 (924cb43) into dev (3a6e103) will decrease coverage by 0.04%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                dev   #13422      +/-   ##
============================================
- Coverage     39.55%   39.52%   -0.04%
+ Complexity     4326     4322       -4
============================================
  Files          1084     1084
  Lines         40916    40884      -32
  Branches       4697     4677      -20
============================================
- Hits          16186    16158      -28
  Misses        22927    22927
+ Partials       1803     1799       -4

Impacted Files
Coverage Δ

...er/api/service/impl/TaskDefinitionServiceImpl.java
43.92% <ø> (+0.11%)
:arrow_up:

...r/plugin/registry/zookeeper/ZookeeperRegistry.java
43.54% <0.00%> (-7.26%)
:arrow_down:

...er/master/dispatch/host/assign/RandomSelector.java
77.77% <0.00%> (-5.56%)
:arrow_down:

...erver/master/processor/queue/TaskEventService.java
75.00% <0.00%> (-5.36%)
:arrow_down:

...org/apache/dolphinscheduler/remote/utils/Host.java
42.55% <0.00%> (-2.13%)
:arrow_down:

...hinscheduler/plugin/alert/script/ScriptSender.java
70.58% <0.00%> (-1.64%)
:arrow_down:

...e/dolphinscheduler/remote/NettyRemotingClient.java
51.38% <0.00%> (-1.39%)
:arrow_down:

...cheduler/plugin/alert/dingtalk/DingTalkSender.java
34.13% <0.00%> (-0.78%)
:arrow_down:

...rver/master/runner/task/BlockingTaskProcessor.java
75.86% <0.00%> (-0.55%)
:arrow_down:

...inscheduler/plugin/registry/etcd/EtcdRegistry.java
50.69% <0.00%> (-0.35%)
:arrow_down:

... and 18 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

I got you. The root cause that cannot be modified is here. You can try to add the judgment of predecessor tasks to this. @jackfanwan
https://github.com/apache/dolphinscheduler/blob/66e20271ad04c571dbd05c114ccbc050ee128dfb/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinition.java#L275-L303


Predict proteomic subtypes of MOLM14 and HL60 cell lines

what are the predicted clusters of the cell lines? does the subtype change with drug treatment?

Where can I find the data for this?

There are files on synapse right? The drug response study
On Fri, Apr 15, 2022, 16:23 CamiloPosso @.***> wrote:

Where can I find the data for this?
—
Reply to this email directly, view it on GitHub
https://github.com/PNNL-CompBio/BeatAMLproteomics/issues/58#issuecomment-1100376639,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA6NQWB4BIKFLUN6WNHBMHDVFHF2RANCNFSM5SXB6DDQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Ahh I think these should be the ones, "amlDrugCombos Molm14 Proteomics" and "amlDrugCombos HL60 Proteomics" on synapse, right?


LogWorker shouldn't spam docker logs

See https://github.com/kontena/kontena/blob/master/agent/lib/kontena/workers/log_worker.rb#L69
I get this message logged seemly every few milliseconds: WARN -- Kontena::Workers::LogWorker: queue size is 1600.  I think this code should never log this same warning more frequently than say 5 seconds.
This isn't a bug; just an improvement.

Also seeing this.

Those warnings should never be logged more than once every 10s. This might be related to #2232, does it only happen after the agent websocket has reconnected several times?


New azure 2023-07-01-preview api version STREAMING is not supported

I'm currently trying to use the new 2023-07-01-preview api but when i set the streaming parameter to true the result in
generations is an empty array.
to test it is just necessary to use as configuration:
const llm = new ChatOpenAI({
    streaming: true,
    azureOpenAIApiDeploymentName: "GPT350613",
    azureOpenAIApiInstanceName: "...",
    // azureOpenAIApiVersion: "2023-05-15",
    azureOpenAIApiVersion: "2023-07-01-preview",
    azureOpenAIApiKey: "...",
    temperature: 0,
});

with streaming setted to false, it works perfectly

Thanks for raising this - it's a duplicate of #1914.


RFC: Externals generation

I've been working on generating externals using this utility, and have worked-up the changes in this PR. Could you take a look to see how sane my changes are and comment on improvements I can make to get this into a mergable state?
There is an example of the output of Run.hx when parsing WordPress at https://gist.github.com/diddledan/b8d3907788052deac00c94a028f507df
I am very much novice with Haxe so I might have made terrible decisions :-)

Thanks for your contribution! It's a big step forward for PHP extern generator.

Thank you for the thorough review :-) I'll get right onto the suggested changes!

There's a bug that I'm not sure how to handle: https://github.com/RealyUniqueName/peg/pull/2/files#diff-143d53e0b6f3e16e8dc9a05eec9c3070R228 is using the value from type.toLowerCase() so for example WP_Post is getting saved into TClass as wp_post.. Would it be appropriate to swap:
case path: TClass(path);

with:
case _: TClass(type);

?

I discovered I had missed-off parsing of doctags for var and const so I've added this. I also took the time to refactor the three doctag parsing functions which were largely similar into three inline functions which simply call the main parsing function with a dependency-injected regex specific to the item-type (variable, const, or parameter) that we want to match. This allows for less code duplication.

Thanks!


upgrade-postgresql: Ensure the new PostgreSQL is running.

If a previous attempt at an upgrade failed for some reason, the new PostgreSQL may be installed, and the conversion will succeed, but the new PostgreSQL daemon will not be running (Puppet does not force it to start).  This causes the upgrade to fail when analyzing statistics, since the daemon isn't running.
Explicitly start the new PostgreSQL; this does nothing in most cases, but will provider better resiliency when recovering from previous partial upgrades.

Self-review checklist

[ ] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[ ] Explains differences from previous plans (e.g., issue description).
[ ] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[ ] Each commit is a coherent idea.
[ ] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[ ] Visual appearance of the changes.
[ ] Responsiveness and internationalization.
[ ] Strings and tooltips.
[ ] End-to-end functionality of buttons, interactions and flows.
[ ] Corner cases, error conditions, and easily imagined bugs.

Backportd as f28eced39108b18a7e3b259737dc0b55297b5c65.


fix: typos in documentation files

This pull request contains changes to improve clarity, correctness and structure.
Description correction:
Corrected "Notice that you can configure you ape project" to "Notice that you can configure your ape project".
Please review the changes and let me know if any additional changes are needed.

Hi @fubuloubu. Could you please let me know if there's anything that needs to be addressed before the final merge?


Incorrect License report in artifacts

This project is licensed via MIT but the pom file still reports BSD:
https://search.maven.org/remotecontent?filepath=com/facebook/stetho/stetho/1.5.1/stetho-1.5.1.pom

It is still reporting a BSD License in the maven repository.


Refactored test suite to use camelCase instead of deprecated snake_case

This should work better in IDE's.. there's still the issue of unresolved properties as they're not explicitly written into snoowrap. Should we refactor the properties to use ['property'] notation instead of .property to not get any IDE complaints?
Also, the tests are not executed to see if it fails or not. Setting up the testing for someone who isn't @not-an-aardvark is very difficult to do as the tests are so interconnected with specific subreddits, users, posts, comments, live threads, and old modmails. And I couldn't find a good way to get the OAuth config to work correctly with it.
I changed most of the fixed Reddit variables and setup the oauth JSON but 145 of the tests failed.
@not-an-aardvark Would it be much work for you to write the tests of pull requests, or for you to refactor the suite and document how to get it running locally?

The snake_case test has now been reinstated. Didn't mean to remove it but somehow did (hence the noinspection comments)


Rename 'setUpClass' as 'setup_class' and 'tearDownClass' as 'teardown_class'.

In the _unittest_ironpython folder I renamed 'setUpClass' as 'setup_class' and 'tearDownClass' as 'teardown_class'.
All methods, class methods or instance methods must follow the snake_case convention.
Fix issue #689 .

The camelCase naming of the class methods comes from the PytestMockup class inherited from TestCase in the unittest module.
Those methods are overridden.


Implementing search term highlighting across multiple fields

Addressing issue F1:4

Added logic to highlight search term matches in the question, topic, difficulty, and peer fields.
Enhanced the search functionality to filter across multiple fields.

hmmm, just a question, this is for the attempts listed in the dashboard of the user and not the questions right, LGTM if its for the filtering of attempts

@chiewyx  yes this is for the attempts in the dashboard, currently there's no list of questions page yet right?

LGTM!


updated FAQ to reflect progress. Changed and improved wording

Just realized that this likely conflicts with an earlier pull request. I'm not sure what the protocol is on that since the other pull req isn't only FAQ stuff

Just realized that this likely conflicts with an earlier pull request. I'm not sure what the protocol is on that since the other pull req isn't only FAQ stuff

Yout have to walk through the merge conflicts either through the web here or through intellij, I really like intellij's system. I can walk you through that if you call me, or search up a youtube vid, the intellij UI will smooth it over nicely. Essentially you have to decide what you want to keep from each version.

What Daniel said - whichever PR came first, fix the merge conflicts on that and push to main then come back here and do the same. Intellij is super easy, just follow the github instructions for command line fixes - also if you right click on the conflicted file once you try to merge in Intellij, click -> Git, then -> Resolve Conflicts, there should be a helpful window where you can merge them


Gated marketplaces: Finish CRUD extrinsics for marketplaces.

The current workflow allows creating and reading marketplaces, we should implement extrinsics to update & delete marketplaces.

[x] Add update_marketplace extrinsic
[x] Add delete_marketplace extrinsic

Done.


[jmxtrans] Jun/able to remove prefix

/cc @alexism @schleyfox
Currently, jmxtrans will always put rootPrefix.aliasPrefix before the actual metric name.  If their properties are missing, the default values will be used.  Here, I provide an option that we can remove both prefix.  With this change, if we set any prefix (rootPrefix or alias) value as empty string in the configuration file, jmxtrans will not add this prefix to the full metric name.

could you add unit test on that in JmxUtilsTests please

Remove prefixes from datadog metric names.

LGTM


Radial Bar Animations to lower numbers snappy and inconsistent depending on value

Description
The animations, at least for the radial gauge, follow the animation duration property sometimes, but other times is just either transitions way faster than expected, or just blinks to the second point.
For example: 0 to 100 transitions as expected.
100 to 0 the bar just disappears immediately.
0-50 works. 50 to 10 moves way too quickly.
I'm not certain on the pattern, but it looks like the further from a high number down to a low number it transitions, the jankier/jumpier the animation.
I'm also not sure if it's just my animation variables, but I kinda doubt it.
Steps to Reproduce
Using the below codepen, just test out various transition values

Use the text box in the upper left corner to enter a number (100) and press the button. It'll transition smoothly
Enter the number 0 and press the button. It'll just disappear.
Test any transition range. Large numbers going down to a lower number will jump or glitch.

Expected Behavior
A smooth transition from a large to small number as it is from a small to a large number
Actual Behavior
Jumpy cuts from high to low numbers, but smooth transitions from low to high numbers.
Reproduction Link
https://codepen.io/Fresh4/pen/XWgbzmm

As tested on the latest version 3.54.1, this is fixed


Add cardano sl mnemonic to seed function

conveniently add the function to convert the mnemonic to the seed as implemented in cardano-sl:
see : https://github.com/input-output-hk/cardano-sl/blob/f5b8073b92b8219ae5fbb038c0ceb4a19502a86b/wallet/src/Pos/Util/BackupPhrase.hs#L59-L65
and : https://github.com/input-output-hk/cardano-sl/blob/429efc2426c63802ae86789f5b828dcbb42de88a/wallet/src/Pos/Util/Mnemonics.hs#L66-L87
also update the test vector to output the same results as would cardano-sl

probably a good idea to move to a different module, this is not BIP39 related, just happen to use the BIP39 encoding (opposed to the BIP39 seed generation)


Nil pointer error after "context deadline exceeded (Client.Timeout exceeded while awaiting headers)"

Describe the bug
If we failed to request from remote server, the system reported nil pointer error.
This happened because the handler would be called twice if retry of api request occurred.
When the handler is called at the second time, the res is still nil and the err is also nil.
How to fix
We directly return the result of retry.
Screenshots

Additional context
Add any other context about the problem here.

This bug seems like an internal bug of gitlab itself

@warren830 do not post private repo information directly here

@warren830 do not post private repo information directly here

Sorry, will delete it

relate to #1501


Don't Merge! PR real time test for target branch full build

Docs Build status updates of commit ce92cc2:
:clock10: Full build: the average full build time is 5 min(s) 56 sec(s), this is based on the last 676 build(s) for this repository.

Docs Build status updates of commit ce92cc2:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details
Dependent Files

docs-ref-conceptual/testing.md
:white_check_mark:Succeeded
View (azure-cli-latest) View (azure-cli-2017-03-09-profile) View (azure-cli-2018-03-01-hybrid)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Connection cleanup blocks websockets server

Hi,
I've been doing some stress testing using https://github.com/aaugustin/websockets/blob/master/example/counter.py and wsstat (https://github.com/Fitblip/wsstat/) - a tool which uses this library, by the way. When I run wsstat against this server, the first run works fine. Once I quit wsstat, a stream of errors about disconnected connections (websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason) is generated by the server. This exception handling seems to block, so that subsequent runs of wsstat hang until those exceptions are cleared.
Is there some way of preventing these exceptions generated from old connections from interfering with new connections?
Here is the exact wsstat command I'm running -  wsstat -n 1000 ws://localhost:6789

What operating system are you running these tests on?

Yes. Adding this line reduces the connection wait time from 2m50.425s to 0m14.826s, which seems a lot more reasonable. Thanks for your help!

OK - I think this is the right order of magnitude given what counter.py does.
When a client disconnect, this is broadcasted to all other clients. With 1000 clients, this involves sum(range(1000)) = 499500 messages`. Sending half-a-million messages in 15 seconds means over 30k messages per second, which isn't too shabby in Python.
Furthermore, counter.py is a simple example, not a robust one. It has no error handling: it broadcasts messages with asyncio.wait([user.send(message) for user in USERS]).
Broadcast a message to a thousand of users who all suddenly disconnected at the same time — your test script doesn't close connections — doesn't work too well.
I don't think websockets is at fault here, so I'm going to close the issue.

Modifying counter.py as follows:
And your test script as follows:
#!/usr/bin/env python3

import asyncio
import websockets
from tqdm import tqdm
import sys

n = int(sys.argv[1])

URI = "ws://localhost:6789"

async def main():
    print("Connecting...")
    connections = [
        await websockets.connect(URI)
        for i in tqdm(range(n))
    ]
    print("Disonnecting...")
    [
        await connection.close()
        for connection in tqdm(connections)
    ]

asyncio.get_event_loop().run_until_complete(main())


[IT-23] upgrade dependencies

Dependencies were upgraded to latest versions

Hey man, cool project. Thanks for your work on this!
But btw I think you have to click "approve" or something to make this PR merge into master.

Hey man, cool project. Thanks for your work on this!
But btw I think you have to click "approve" or something to make this PR merge into master.

You are right) I just needed some time for testing pr on all my devices (linux, mac, windows)


TINKERPOP-916 Provide more robust SimpleClient implementations.

https://issues.apache.org/jira/browse/TINKERPOP-916
These implementations provide for a no-frills way to test Gremlin Server. Added methods to collect all messages returned from the server as opposed to just capturing messages via callback.  Updated all integration tests that were using the old methods.
I will update CHANGELOG after the merge for this one.
Tested with: mvn clean install && mvn verify -pl gremlin-server -DskipIntegrationTests=false
VOTE: +1

I ran mvn clean install. All good. VOTE +1.

mvn clean install: passed
integration tests: passed

Code looks good.
VOTE: +1


feat: add test results output

Added a testResultsObject output that contains a strigified JSON object with the test results.
Object
{
  "success": true,
  "totalPassed": 5,
  "totalFailed": 2,
  "totalPending": 0,
  "totalSkipped": 1,
  "totalDuration": 25
}

Stringified
"{\"success\": true,\"totalPassed\": 5,\"totalFailed\",\"totalPending\": 0,\"totalSkipped\": 1,\"totalDuration\": 25}"

Usage
...
  steps:
    - name: Parse results
      uses<EMAIL_ADDRESS>      with:
        script: |
          const testResults = JSON.parse('${{ steps.cypress-run.outputs.testResultsObject }}')
          console.log(testResults.success)
          console.log(testResults.totalPassed)
          ...

resolves #810

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@mihaisee can you add me as a reviewer? seems this is stuck now for some time, I would like to make use of these changes.

@mihaisee can you add me as a reviewer? seems this is stuck now for some time, I would like to make use of these changes.

Looking forward to see that change approved!

Would love to see this as well +1

Any progress on getting this reviewed?

@mike-plummer
I see that you assigned this to yourself several months ago. Is it still in your region of interest or are you refocussed on other topics now?

@mihaisee
Would you set up a Cypress Cloud project for your fork so we can see if the changes you made to .github/workflows/example-recording.yml are successful? The workflow is being skipped because you do not have this defined. See https://github.com/cypress-io/github-action/tree/master/examples/recording#using-your-own-cypress-cloud-project for instructions.

@mihaisee
Would you set up a Cypress Cloud project for your fork so we can see if the changes you made to .github/workflows/example-recording.yml are successful? The workflow is being skipped because you do not have this defined. See https://github.com/cypress-io/github-action/tree/master/examples/recording#using-your-own-cypress-cloud-project for instructions.

@MikeMcC399 I have added the Cypress Cloud project keys to my fork. Should be good now, thank you

Can I provide any help to get this moving @mihaisee ?
@mschile @MikeMcC399  any concslusion on the runResults vs testResults ?

Hi @mihaisee, will you have time to make the updates asked as Emily outlined above?

@mihaisee Just checking in again with the status of this PR

Closing as stale. Please open a new PR if the work can be pulled out to the smaller results output requested.


Feat: Add more Gemini tests

Is your feature request related to a problem? Please describe.
No.
Describe the solution you'd like
Add unit tests that validate added features

All ingredients in the ingredients list should be edible
Inappropriate ingredients are excluded from the ingredients list

Don't think I should test inappropriate words...


What is the meaning of metrics: nv_inference_load_ratio?

What exactly does the metrics measure?

this maybe?
https://github.com/NVIDIA/tensorrt-inference-server/blob/7ef0e3eba8d48c6d78a8b9cebc480f7883f16379/src/core/server_status.cc#L396

@nieksand  Thanks! That should be it. The file is useful too.


Add SpEL support for table and column names

We're from the [Seata] https://github.com/seata/seata community, we're a highly available, high-performance distributed transaction component, and currently our server side is considering moving from using jdbc to spring-data-r2dbc, but we've found some issues
Our transaction information is stored in mysql, oracle and other databases, because we support the resource isolation of transactions by configuring different table names, and then assembling them into corresponding sqls to use, which makes us unable to use @Table to set a fixed table name, perhaps we can set the right through environment.resolvePlaceholders() or open doSelect table
If this requirement is reasonable, I am willing to complete this job

I'm highly sceptical of this since it seems likely to open us up to SQL injection.
https://xkcd.com/327/

I'm highly sceptical of this since it seems likely to open us up to SQL injection.
https://xkcd.com/327/

I don't think there is an SQL injection problem with @Table("${dynamic_table:user_01})
Environment is determined by the application developer and there should be no possibility of SQL injection

Environment is determined by the application developer
That is exactly the problem. A developer can use any variable and sooner than later will use untrusted data. And since bind variables can't be used, it has to be done by String concatenation, which pretty much the definition of a SQL injection problem.

If it is because the environment variable is set by the developer, then the @Table can also be set by the developer and becomes a point of existence for sql injection.
Is there a greater risk associated with methods like update or delete intable?

If it is because the environment variable is set by the developer, then the https://github.com/table can also be set by the developer and becomes a point of existence for sql injection.

No, the Table annotation is safe because its values have to be compile time constants. Therefore they are trusted values by definition. This is not about the developer doing something malicious. It is about untrusted data (input from the user, data from a database ...) ending up as part of a sql statement.

If it is because the environment variable is set by the developer, then the https://github.com/table can also be set by the developer and becomes a point of existence for sql injection.

No, the Table annotation is safe because its values have to be compile time constants. Therefore they are trusted values by definition. This is not about the developer doing something malicious. It is about untrusted data (input from the user, data from a database ...) ending up as part of a sql statement.

I still don't quite understand, even the parameters of properties, env, -D are set by the developer, who will attack their own application? I just wish this feature could be more flexible?

Assuming I have multiple shards in my database, how do I aggregate the results of select * from table1 and select * from table2 when I use spring-data-r2dbc?

unless I go to use DatabaseClient

for example
java -jar -DTABLE=abc   app.jar   or  export TABLE=abc  java -jar app.jar
@Table("${TABLE:cba}")

The feature should also apply to reference and key columns specified via @MappedCollection

@schauder
Hi，How long before the feature is expected to be available

We don't have schedule for this. And to be honest I don't consider it high priority.
Of course if there would be a good pull request ...

We don't have schedule for this. And to be honest I don't consider it high priority.
Of course if there would be a good pull request ...
@schauder @mp911de
Can I overload the following method.
createPersistentEntity(TypeInformation,NamingStrategy)->createPersistentEntity(TypeInformation,NamingStrategy,ApplicationContext)
or
public JdbcMappingContext(NamingStrategy namingStrategy) -> public JdbcMappingContext(NamingStrategy namingStrategy,ApplicationContext)

This gives me a way to pass the ApplicationContext into the RelationalPersistentEntityImpl for support of spel expressions
I'd be happy to submit a relevant pull request

I'm not sure what method you want to overload, my IDE doesn't find any with that signature.

I'm not sure what method you want to overload, my IDE doesn't find any with that signature.

https://github.com/spring-projects/spring-data-relational/blob/main/spring-data-jdbc/src/main/java/org/springframework/data/jdbc/core/mapping/JdbcMappingContext.java
public JdbcMappingContext(NamingStrategy namingStrategy) -> public JdbcMappingContext(NamingStrategy namingStrategy,ApplicationContext)
or
https://github.com/spring-projects/spring-data-commons/blob/main/src/main/java/org/springframework/data/mapping/context/AbstractMappingContext.java
createPersistentEntity

I don't think we want to overload that. PersistentEntity and PersistentProperty are static objects, in the sense that they are created once in the lifetime of an application and then don't change.
It feels off to have it reference a context that may include request scoped variables.
I therefor would prefer their methods that provide column/table names to take a SpelQueryContext.
@mp911de your thoughts on this?

Maybe replace ApplicationContext with Environment, holding it just to resolveRequiredPlaceholders for tableName and schemaName in @Table when creating PersistentEntity

Maybe MappingContext would be a good choice too


Add the opaque data type

How did I forget this as a feature?
"opaque" data represents some kind of data within C that Toy can't understand, and only passes from one place to another. An example of this would be a pointer to an EngineNode in airport.
var node = makeNode(); //node is an opaque value
processNode(node);

Finished this this morning.


Add Peckas tomater

Hi,
I'd like to add Peckas tomater (Pecka's tomatoes) they're doing really cool stuff with aquaponics.

Thanks @nglgzz for pointing out the error in the url.


Release 0.0.23

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

Project coverage is 81.31%. Comparing base (53e7731) to head (c4569de).

Files
Patch %
Lines

src/sdr/_detection/_theory.py
40.00%
9 Missing :warning:

src/sdr/_probability.py
90.41%
7 Missing :warning:

src/sdr/_filter/_iir.py
28.57%
5 Missing :warning:

src/sdr/_filter/_polyphase.py
70.00%
3 Missing :warning:

src/sdr/_link_budget/_antenna.py
0.00%
2 Missing :warning:

src/sdr/_filter/_delay.py
75.00%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #427      +/-   ##
==========================================
- Coverage   81.33%   81.31%   -0.02%
==========================================
  Files          63       63
  Lines        3798     3854      +56
==========================================
+ Hits         3089     3134      +45
- Misses        709      720      +11

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


Add build targets for each explicit debug/flash option

Its possible that boards support multiple flash/debug choices (ie boards/arm/frdm_kw41z/board.cmake).  We need a way to allow for the user to do something like 'make debug-jlink' or 'make debug-daplink' and have the right thing happen if the board supports both.

To implement this I suspect one would add a nested foreach loop in cmake/flash/CMakeLists.txt.

Was also thinking we'd add something like variables in the board.cmake files like BOARD_SUPPORTS_DEBUG_JLINK, BOARD_SUPPORTS_DEBUG_DAPLINK, etc that the board would define and maybe some means of saying which one was default so that 'make flash' would get the default choice.

Was also thinking we'd add something like variables in the board.cmake files like BOARD_SUPPORTS_DEBUG_JLINK, BOARD_SUPPORTS_DEBUG_DAPLINK, etc that the board would define and maybe some means of saying which one was default so that 'make flash' would get the default choice.

maybe add those to the board yaml file instead

Was also thinking we'd add something like variables in the board.cmake files like BOARD_SUPPORTS_DEBUG_JLINK, BOARD_SUPPORTS_DEBUG_DAPLINK, etc that the board would define and maybe some means of saying which one was default so that 'make flash' would get the default choice.
maybe add those to the board yaml file instead
Write

do we p

maybe add those to the board yaml file instead

Do we parse the board yaml in cmake?

Not yet. So what @galak  proposed is easier to implement today.

Was also thinking that we should have the zephyr_flash_debug.py report back what flashers, debugers, etc are supported to give a list back to cmake.  So that way we don't need to update multiple places when adding a new debug/flash target.  I asked @mbolivar to try and look at adding that support to zephyr_flash_debug.py

This is possible now with west flash -r jlink, west flash -r <some-other-runner>, etc.


use a backported py3 Semaphore() to allow non-busy blocking

This branch is a possible solution to #172
This branch uses a Semaphore to avoid busy-waiting in simpleconsumer.  This uses almost no cpu when blocking for messages.   I have attempted to preserve all other semantics.
All OwnedPartitions share a Semaphore with their owning SimpleConsumer.
When a message arrives into the Queue of an OwnedPartition, the semaphore is incremented.
When the SimpleConsumer wishes to consume a message, it decrements the semaphore (or sleeps until it can do so without making the count negative)
A verbatim backport of threading.Semaphore() from python 3 is used to allow for timeouts in Semaphore.acquire(...) replacing the internal tracking of _last_message_time (this could still be tracked if useful though)

This looks great. It seems to me that the fundamental insight is that python's threading.Condition implements the sleeping and waking of threads in a non-busy way, and that Semaphore here is just a convenient wrapper around a counter and some of these Conditions. Huge thanks for checking this in.
I've tested it locally with a simple and a balanced consumer, and it works fine so far. I'll run a few more tests, but I don't see any reason why this shouldn't make its way into master.
One thing I'd ask you to change is to move the compat file into the utils directory. Once that's done, though, I think I'll be ready to merge it in.

Here are some throughput numbers from a test against Parsely's internal topic:
This branch:
9290.16101693 messages per second
16691.8994126 messages per second
11514.1634643 messages per second
17355.3029494 messages per second
9688.64737541 messages per second
16467.9632443 messages per second
12575.0801395 messages per second
15365.8437233 messages per second
13834.7782301 messages per second
13275.5227708 messages per second

Current master:
2934.39524262 messages per second
8103.0306952 messages per second
8826.44237952 messages per second
7031.17096217 messages per second
14678.3146102 messages per second
9461.40953258 messages per second
9376.80358197 messages per second
12602.9718947 messages per second
15952.4283669 messages per second
8307.68101976 messages per second

This branch might actually make the overall throughput slightly higher, which would be awesome.

This branch is currently running on a high-throughput test system in Parsely. I'll watch it for a bit to make sure things are working fine, but so far so good.


Fix for proper progress bar display

Type of Change

[X] Bug fix (non-breaking change, fixes #)
[ ] New feature (non-breaking change, adds functionality)
[ ] Breaking change (effects multiple commands or functionality)
[ ] Ran manual Pester test and has passed (`.\tests\manual.pester.ps1)
[ ] Adding code coverage to existing functionality
[ ] Pester test is included
[ ] Nunit test is included
[ ] Documentation
[ ] Build system

Purpose
Somehow progress bar was broken
Approach
Fixed progress ID parenthesis and proper completing
Some 'house cleaning' included too
Commands to test
Restore any database with Restore-DbaDatabase
Screenshots

Fantastic!! I've been waiting for this one for a while, thanks so much @Zhunya ! Looking fwd to the review from Stuart or Niph

Arrgh, so sorry, I thought I was on my PR. I'll do a bunch of testing to ensure this works, the code makes sense.


Feature Request - Query Schema Enums

I couldn't find evidence of this feature. Please advice if this is already possible.
It would be helpful to be able to generate enum queries like the following:
query {
  __type(name: "CountryCode") {
    enumValues {
      name
      description
    }
  }
}

where CountryCode is defined in the schema as:
"Country codes"
enum CountryCode {
  "Afghanistan"
  AF
  "Albania"
  AL
  "Algeria"
  DZ
  "American Samoa"
  AS
  ...
}

This seems like something your server needs to support?

Alright, I think I understand what you are raising. The newest release should support introspection on __schema and __type.

@budde377 works beautifully. Cheers!


fix(multigrid_ndt_omp_impl): changed counting timing and break confition for nr_iterations

changed counting timing and break confition for nr_iterations
to be the same as the original pcl ndt.hpp.
https://github.com/PointCloudLibrary/pcl/blob/424c1c6a0ca97d94ca63e5daff4b183a4db8aae4/registration/include/pcl/registration/impl/ndt.hpp#L73-L180
Evaluation
I degraded the accuracy of the localization and set NDT to run at its maximum iterations, then ran Autoware.
(The value of the nr_iterations result is now also logged.)
Before
1697693397.9528966 [ndt_scan_matcher-32] [WARN<PHONE_NUMBER>.950331137] [localization.pose_estimator.ndt_scan_matcher]: The number of iterations has reached its upper limit. The number of iterations: 32, Limit: 32 (validate_num_iteration() at /home/shintarosakoda/autoware/src/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp:667)
1697693397.9645364 [ndt_scan_matcher-32] [WARN<PHONE_NUMBER>.950700494] [localization.pose_estimator.ndt_scan_matcher]: ndt_result.iteration_num = 32 (callback_sensor_points() at /home/shintarosakoda/autoware/src/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp:470)
1697693397.9658964 [ndt_scan_matcher-32] [WARN<PHONE_NUMBER>.950753594] [localization.pose_estimator.ndt_scan_matcher]: Nearest Voxel Transformation Likelihood is below the threshold. Score: 2.252171, Threshold: 2.300000 (validate_score() at /home/shintarosakoda/autoware/src/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp:681)
1697693397.9663808 [ndt_scan_matcher-32] [WARN<PHONE_NUMBER>.950843704] [localization.pose_estimator.ndt_scan_matcher]: Not Converged (callback_sensor_points() at /home/shintarosakoda/autoware/src/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp:479)
1697693398.1865647 [ndt_scan_matcher-32] [WARN<PHONE_NUMBER>.184562626] [localization.pose_estimator.ndt_scan_matcher]: The number of iterations has reached its upper limit. The number of iterations: 32, Limit: 32 (validate_num_iteration() at /home/shintarosakoda/autoware/src/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp:667)
1697693398.1926742 [ndt_scan_matcher-32] [WARN<PHONE_NUMBER>.189360289] [localization.pose_estimator.ndt_scan_matcher]: ndt_result.iteration_num = 32 (callback_sensor_points() at /home/shintarosakoda/autoware/src/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp:470)
1697693398.1938219 [ndt_scan_matcher-32] [WARN<PHONE_NUMBER>.189526006] [localization.pose_estimator.ndt_scan_matcher]: Nearest Voxel Transformation Likelihood is below the threshold. Score: 2.273700, Threshold: 2.300000 (validate_score() at /home/shintarosakoda/autoware/src/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp:681)

The maximum value for ndt_result.iteration_num is 32.
After
1697693659.0905447 [ndt_scan_matcher-32] [WARN<PHONE_NUMBER>.079994469] [localization.pose_estimator.ndt_scan_matcher]: Not Converged (callback_sensor_points() at /home/shintarosakoda/autoware/src/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp:479)
1697693659.4372418 [ndt_scan_matcher-32] [WARN<PHONE_NUMBER>.434358792] [localization.pose_estimator.ndt_scan_matcher]: ndt_result.iteration_num = 30 (callback_sensor_points() at /home/shintarosakoda/autoware/src/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp:470)
1697693659.4378357 [ndt_scan_matcher-32] [WARN<PHONE_NUMBER>.434570744] [localization.pose_estimator.ndt_scan_matcher]: Nearest Voxel Transformation Likelihood is below the threshold. Score: 2.298781, Threshold: 2.300000 (validate_score() at /home/shintarosakoda/autoware/src/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp:681)
1697693659.4379599 [ndt_scan_matcher-32] [WARN<PHONE_NUMBER>.434605390] [localization.pose_estimator.ndt_scan_matcher]: Not Converged (callback_sensor_points() at /home/shintarosakoda/autoware/src/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp:479)
1697693659.6430864 [ndt_scan_matcher-32] [WARN<PHONE_NUMBER>.641192762] [localization.pose_estimator.ndt_scan_matcher]: ndt_result.iteration_num = 30 (callback_sensor_points() at /home/shintarosakoda/autoware/src/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp:470)

The maximum value for ndt_result.iteration_num is 30.

With this change, the minimum number of nr_iterations has been reduced from two to one.
I have determined that there is no negative impact on the accuracy, so this pr is merged.