Add Dash Apps Preview + PDF Generation

WIP
Part of https://github.com/plotly/streambed/issues/10698

@etpinard Can I please get an initial review on this.. I'll be adding some tests in the meantime.. !!

Looking good so far. Glad someone else is trying to add things to image-expoter. That was the goal all along.
Now, by preview you mean combining reports and thumbnail generation in one component? Electron's capturePage and printToPDF work very differently and support different options. So, I'd vote for splitting this thing into two separate components.

Now, by preview you mean combining reports and thumbnail generation in one component?

Yes, that was the my initial plan..

So, I'd vote for splitting this thing into two separate components.

In that case, I will remove the capturePage for now (if it seems ok to you), since we only need PDF generation for now (right @chriddyp ? ). I can add thumbnails after 2.4.0 release.

So, I'd vote for splitting this thing into two separate components.

In that case, I will remove the capturePage for now (if it seems ok to you), since we only need PDF generation for now

yeah, we only need PDF generation for now

@etpinard @chriddyp: Some comments/updates:

we are using 'waitfor' div in dash-apps to determine if the app has finished rendering (before taking snapshot)
printToPDF's pdfOptions will be present in the request body and supplied to printToPDF.

@etpinard Please review..
The node (V8) tests seem to be failing for reasons unrelated to this PR.. would be great if you could take a look at them.. !!

@etpinard @chriddyp Updates made:

Atleast one of loading_selector or timeout should be specified in request. If timeout is specified, we wait for this time before capturing the page.
pageSize should be specified either as the part of the request body or as the part of pdfOptions. We use it to determine the browser window size as indicated by Chris in https://github.com/plotly/image-exporter/pull/60#discussion_r177200389
Added tests for these ⬆ options as well as to check for rejected promises (executeJavascript.
Addressed minor code-style related comments.

Added integration test, and ran coverage:

Updates: Added integration test, and timeout code (526) for rendering related timeouts.
Still blocked by intermittently failing integration tests..

@tarzzz thanks for running npm run coverage. You can ignore the uncovered lines in plotly-dash-preview/convert.js. But it would be nice to bring up plotly-dash-preview/parse.js to 100% coverage.
As for our plotly-export-server integration tests. Perhaps we should skip them on CI for now (and open a new issue about it). I think booting up 6 browser windows on the CI machines might be a little too much for them to handle. We could revisit this later.

@etpinard : Coverage ..

Added issue to address intermittent errors: https://github.com/plotly/image-exporter/issues/61


Need to add Asyncio for better performance and non blocking code.

Asycio was added to the server.py file and has greatly improved it. Its still a work in progress but its a start


Small fixes in examples to avoid debug errors / warnings

avoiding double calling of start, and setting .blend which is now deprecated

not deprecated?

not => now


On restart/open of VSC it opens with older templates/editors not recent ones.

Issue Type: Bug
On restart of Visual studio it opens with some other editors which are not my last used editors. The editors that opens on restart are old ones, everytime I have to update or choose the folder from my source project location to open in here.
VS Code version: Code 1.33.1 (51b0b28134d51361cf996d2f0a1c698247aeabd8, 2019-04-11T08:27:14.102Z)
OS version: Windows_NT x64 10.0.17763

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-7440HQ CPU @ 2.80GHz (4 x 2808)

GPU Status
2d_canvas: enabledchecker_imaging: disabled_offflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: disabled_softwarerasterization: enabledsurface_synchronization: enabled_onvideo_decode: enabledwebgl: enabledwebgl2: enabled

Memory (System)
15.88GB (5.46GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions (7)

Extension
Author (truncated)
Version

path-intellisense
chr
1.4.2

gitlens
eam
9.7.1

tslint
eg2
1.0.43

csharp
ms-
1.19.0

debugger-for-chrome
msj
4.11.3

typescript-hero
rbb
3.0.0

autoimport
ste
1.5.3

@abhinashtripathy you are restarting Windows while VSCode is running right?

@bpasero  No. Whenever I open or restart Visual Studio Code, it does not open with last opened editors. I think this is related to issue no. 15949. You can close this issue. Thanks.


Refactor of Persistence to support dynamic persistWith on instances

This change was devised by John and I, as we tried to use the Persistence layer in the dash.  It add more flexibility for defining your persistWith for objects dynamically per instance, is more consistent with what we do for the components themselves, and gives the app much greater opportunity for re-use.  I think it also cleans things up by providing a PersistSupport mixin,
which is a well-defined and documented host for the functionality:
In particular:

A dedicated PersistSupport annotation that mirrors our other mixins.
A new method markPersistent() that is useful. for dynamically wiring your persistent properties within the constructor.  Objects supporting dynamic persistence would use this instead of the annotation.
Reverse the order that we apply the decorators to a more natural order.
Persistence is now part of the core:  less imports!

One question that I would like to revisit is the naming of the annotation and method.  Would like them to be named as similarly as possible, and also would be nice to have symmetry with @managed.  Was thinking of the following:
@persisted/markPersisted()
@persistent/markPersistent()
@persist/markPersistent().  [current]
@persistent/makePersistent()
etc., etc.
Hoist P/R Checklist
Pull request authors: Review and check off the below. Items that do not apply can also be
checked off to indicate they have been considered. If unclear if a step is relevant, please leave
unchecked and note in comments.

[x] Caught up with develop branch as of last change.
[x] Added CHANGELOG entry, or determined not required.
[x] Reviewed for breaking changes, added breaking-change label + CHANGELOG if so.
[x] Updated doc comments / prop-types, or determined not required.
[x] Reviewed and tested on Mobile, or determined not required.
[x] Created Toolbox branch / PR, or determined not required.

If your change is still a WIP, please use the "Create draft pull request" option in the split
button below to indicate it is not ready yet for a final review.

Pull request reviewers: when merging this P/R, please consider using a squash commit to
collapse multiple intermediate commits into a single commit representing the overall feature
change. This helps keep the commit log clean and easy to scan across releases. PRs containing a
single commit should be rebased when possible.

Reviewed by John


Release Official UKI images

we decided to not have official UKI images, but let the user build the images themselves, closing this.


Windows unexpected shutdown at 4am daily

Operating system
Windows 11 Pro
Description
Windows docker instance restarts on its own around 4am every morning. Event log in windows suggest unexpected shutdown.
Docker compose
not sure where to get this.
VM runs with 10 cores, 10GB of RAM
Docker log
BdsDxe: loading Boot0004 "Windows Boot Manager" from HD(1,GPT,13896C96-FF7B-46CE-8C6A-0153D1D0A9BF,0x800,0x40000)/\EFI\Microsoft\Boot\bootmgfw.efi
BdsDxe: starting Boot0004 "Windows Boot Manager" from HD(1,GPT,13896C96-FF7B-46CE-8C6A-0153D1D0A9BF,0x800,0x40000)/\EFI\Microsoft\Boot\bootmgfw.efi
❯ Windows started succesfully, visit http://localhost:8006/ to view the screen...
Screenshots (optional)

❯ Received SIGTERM, sending ACPI shutdown signal...
❯ Waiting for Windows to shutdown... (1/110)
❯ Waiting for Windows to shutdown... (2/110)
❯ Waiting for Windows to shutdown... (3/110)
❯ Waiting for Windows to shutdown... (4/110)
This was in the logs this time around, any reason this signal is being sent?

 Sorry man.


Allow the display of messages without failing

This implements functionality where a message can be used to determine if the usage of console[methodName] should cause an error. Fixes #28.
I'm not 100% confident on the naming, happy to take steer on this.
The call stack is a bit weird when echoed out (see below). Is this something we'd want to fix, or something that already occurs?
$ jest tests/index.test.js
  console.log
      console.error
        my error message that I do not control

          126 |       console[methodName] = (...args) => {
          127 |         newMethod(...args)
        > 128 |         originalMethod(...args)
              |         ^
          129 |       }
          130 |       unexpectedConsoleCallStacks.length = 0
          131 |     })

          at console.error (../../../index.js:128:9)
          at Object.<anonymous>.module.exports (index.js:2:11)
          at Object.<anonymous> (index.test.js:5:30)

      at Object.<anonymous> (tests/index.test.js:83:13)

I've not updated the README yet, but will do it once the direction is correct.

Regarding the stack trace, this is unfortunate indeed. It would be nice to find a solution because the point of this feature was to keep the original output of console methods 🙈

+1 for this feature.
Currently using silenceMessage as workaround to prevent some tests fails, but would prefer explicit pass a list of errors that make tests fail.

I'm really sorry about dropping the ball here. I've had some things going on and wasn't able to try to finish this off.  I'll update the naming soon 🤞

Regarding the stack trace, this is unfortunate indeed. It would be nice to find a solution because the point of this feature was to keep the original output of console methods 🙈

Yeah, I'm thinking to change it from how it is now, to checking for the "allowMessage" closer to where the method name is overwritten. Hopefully, this will keep the stack trace how we'd want it. This will diverge from the original implementation discussion, but I'm not sure how we could keep the stack trace with that implementation anyhow.
If someone gets to it first, please go ahead!

I just reviewed this PR and I adjusted the code a bit because I don't think it was matching the original intent. Indeed, when using allowConsole, the test was not failing but the logged message wasn't the original one but the one from the lib:

Let me know if this is still matching your needs and then we can merge this 🙂

@ValentinH This looks much better than my version! Thanks for taking the time to update it.
I think it will fit the needs still (as the test passes)!

Released as https://github.com/ValentinH/jest-fail-on-console/releases/tag/v3.2.0


Add copyright checks to sanity; make them verify copyright year is valid

Only the sanity check and comments were changed, and the sanity tests passed. The Mac tests seem to be taking a long time because we only have one running Mac worker.


C_CPP: Multilevel Inheritance

Description 📜
documentation

Domain of Contribution 📊

[x] C/CPP

/assign

Hey! I want to work on this issue.

@akratikushwah This issue has already been merged. See the comments. You can create a new issue.


Any problem with the Beta compile for windows?

Just to let you know that seems to be a problem with the windows beta compilations.
It seems that the latest Beta for Windows is v1.36-114-gcdacf026.

what kind of problem ?

Simply there were no Windows Beta versions since 116 to 117.
There're back since 119, so i close the issue.


Mobile drawer / styling

A start for #65

Hey @simplemachine92 . Thanks for the PR! Is this ready for review? You can tag me as the reviewer when ready.
@edakturk14 was assigned to the  #65 issue, but I think she hasn't started working on it yet, so all good. But next time check if the issue is taken before working on it.

My fault, I'll check in first next time. Also, this should be ready for review when

[ ] Drawer closes on selection
[ ] Drawer closes properly when hamburger is clicked
[ ] Wallet info is displayed after connecting wallet

hey @simplemachine92! no worries, thanks for providing the list & contributing to the project. I hadn't started working so it was good timing. Are you planning to continue to work on the points or should I continue with the issue?

Hey eda, I'll complete them, if that's okay. ty for having me

Hey @carletex, ready for review.

The mobile drawer looks nice, however the nav bar is looking like this where the window is not quite small enough...

@carletex Thanks for the review, and sorry about the ninja stuff, I didn't mean to add that to the same branch.
I've followed your review as closely as I could, but onClick={() => {           if (document.activeElement instanceof HTMLElement) {             document.activeElement.blur();           }         }} seems to work best with Navlinks being in a separate component, lmk what you think.

Thanks for the great notes @technophile-04. Lmk what you think about this revision!

@simplemachine92 thanks so much, this is really great !!
Added few comments, we are almost there 🙌

Also @simplemachine92 can we handle this too, since the links start wrapping too soon and for some users it might be the default behavior since the width range at which its breaks is common :
https://user-images.githubusercontent.com/80153681/208246657-5f75e3bc-e27d-43f0-be3b-36f54fea1351.mov
Thanks so much 🙌🙌

@technophile-04, here you are. lmk.

This is great ! thanks @simplemachine92,  great job !!! . Added a few commits to fix some minor issues 🙌.
@carletex would love it if you could review it once 🙌
PS: Currently the navbar is not optimized for devices like tabs and Ipads, the nav links wrap on these devices. Should we show the drawer on these devices too? or do we want to show links at these screen widths? A bit confused about this

Pushed a few tweaks. Merging this!
Thanks


undefined reference to `ring_buf_item_put'

Describe the bug
A clear and concise description of what the bug is.
What have you tried to diagnose or workaround this issue?
To Reproduce
Steps to reproduce the behavior:

mkdir build; cd build
cmake -DBOARD=board_xyz
make
See error

Expected behavior
When the project with ring buffer was built, it reported the following error:
undefined reference to "ring_buf_item_put"
Impact
Logs and console output
undefined reference to `ring_buf_item_put'
collect2: error: ld returned 1 exit status
Environment (please complete the following information):
OS -  Windows
Toolchain: Zephyr SDK
Additional context
Add any other context about the problem here.
#include <zephyr.h>
#include <device.h>
#include <drivers/gpio.h>
#include <sys/printk.h>
#include <sys/__assert.h>
#include <string.h>
#include <sys/ring_buffer.h>
/* size of stack area used by each thread */
#define STACKSIZE 1024
/* scheduling priority used by each thread */
#define PRIORITY 7
#define RB_DATA_TYPE1       ( 0x01 )
#define RB_DATA_TYPE2       ( 0x02 )
#define RB_DATA_TYPE1_VAL   ( 0x11 )
#define RB_DATA_TYPE2_VAL   ( 0x22 )
RING_BUF_ITEM_DECLARE_POW2(my_ring_buf, 4);
static void producer_thread( void);
K_THREAD_DEFINE(producer_thread_id, STACKSIZE, producer_thread, NULL, NULL, NULL,
PRIORITY, 0, 0);
static void producer_thread(void)
{
int ret;
uint32_t count = 0;
uint32_t data;
while (1) {
    printk( "Producer: putting data...\n" );
    if( 0x1 & count ) {
        ret = ring_buf_item_put( &my_ring_buf, RB_DATA_TYPE1, RB_DATA_TYPE1_VAL, &count, 1 );
    } else {
        ret = ring_buf_item_put( &my_ring_buf, RB_DATA_TYPE2, RB_DATA_TYPE2_VAL, &count, 1 );
    }
    if ( 0 != ret ) {
        printk( "No memory available\r\n" );
    }
    k_msleep( 5000 );
}

}

I ran into this, and was able to fix it by simply adding CONFIG_RING_BUFFER=y to my project configuration.
It looks like under Zephyr 1.14.2, at least, including the ring_buffer source file in the build is conditioned on this flag (see /lib/os/CMakeLists.txt) -- which results in the linker error.
I think this could be resolved by simply adding a note about the feature gate to the "Ring Buffer" documenation.

I ran into this, and was able to fix it by simply adding CONFIG_RING_BUFFER=y to my project configuration.
It looks like under Zephyr 1.14.2, at least, including the ring_buffer source file in the build is conditioned on this flag (see /lib/os/CMakeLists.txt) -- which results in the linker error.
I think this could be resolved by simply adding a note about the feature gate to the "Ring Buffer" documenation.


[ISSUE #3463] Fix CommitLog path error

Brief changelog
#3463

Need to determine whether the DLedger mode is turned on, and choose a different submission log path

Verifying this change

Fix-1

Fix-2

Follow this checklist to help us incorporate your contribution quickly and easily. Notice, it would be helpful if you could finish the following 5 checklist(the last one is not necessary)before request the community to review your PR.

[x] Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[x] Format the pull request title like [ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body.
[x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[x] Write necessary unit-test(over 80% coverage) to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add integration-test in test module.
[x] Run mvn -B clean apache-rat:check findbugs:findbugs checkstyle:checkstyle to make sure basic checks pass. Run mvn clean install -DskipITs to make sure unit-test pass. Run mvn clean test-compile failsafe:integration-test  to make sure integration-test pass.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Coverage increased (+0.03%) to 54.56% when pulling a6aaf0be84378acf2cac5d2094854d033242584c on Git-Yang:develop-commitLog-path into c6aeb782e59587c610ff8293462f028993fb8206 on apache:develop.

Codecov Report

Merging #3464 (a6aaf0b) into develop (1657475) will decrease coverage by 0.12%.
The diff coverage is 66.66%.

@@              Coverage Diff              @@
##             develop    #3464      +/-   ##
=============================================
- Coverage      48.39%   48.27%   -0.13%
+ Complexity      4618     4601      -17
=============================================
  Files            555      555
  Lines          36731    36725       -6
  Branches        4839     4840       +1
=============================================
- Hits           17776    17728      -48
- Misses         16726    16759      +33
- Partials        2229     2238       +9

Impacted Files
Coverage Δ

...ocketmq/broker/processor/SendMessageProcessor.java
39.64% <50.00%> (-0.05%)
:arrow_down:

...org/apache/rocketmq/store/DefaultMessageStore.java
56.04% <100.00%> (-0.24%)
:arrow_down:

...rg/apache/rocketmq/common/stats/StatsSnapshot.java
84.61% <0.00%> (-15.39%)
:arrow_down:

...ain/java/org/apache/rocketmq/test/util/MQWait.java
43.24% <0.00%> (-10.82%)
:arrow_down:

...tmq/logappender/log4j2/RocketmqLog4j2Appender.java
35.00% <0.00%> (-10.00%)
:arrow_down:

.../apache/rocketmq/common/stats/MomentStatsItem.java
38.09% <0.00%> (-9.53%)
:arrow_down:

...org/apache/rocketmq/common/stats/StatsItemSet.java
41.79% <0.00%> (-8.96%)
:arrow_down:

...ache/rocketmq/common/stats/MomentStatsItemSet.java
39.13% <0.00%> (-8.70%)
:arrow_down:

...ketmq/client/impl/consumer/PullMessageService.java
75.55% <0.00%> (-4.45%)
:arrow_down:

...va/org/apache/rocketmq/common/stats/StatsItem.java
50.00% <0.00%> (-4.17%)
:arrow_down:

... and 15 more

Continue to review full report at Codecov.

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


[menu item] Icon group is not correctly positioned

    User

     User

https://jsfiddle.net/757gxn2v/
workaround: wrap the icon group with an extra

oh, also note that the corner icon is not inverted

related: https://github.com/Semantic-Org/Semantic-UI/issues/3785
feels like class="icons" is not well handled in a few places

/mark not-stale

Fixed in https://github.com/fomantic/Fomantic-UI 2.4.4


[Feature request]: Follow systemState evolution in MceStartStop

There may be a discordance if system commands (such as MLxAbort or MLxReset) are run outside of MceStartStop.
The state machine should watch the systemState status to match reality.
Possible scenarios :

A system command is run outside of MceStartStop
An alarm is triggered and disable the servos (like a collision)

Possible scenarios :

A system command is run outside of MceStartStop

I prefer to keep this aspect out of the issue.
After running a system command, the SystemState can have some latency and the state machine may loop.
For example, after a restart, the state machine goes to 30 and immediately goes to state 40 because the SystemState is still 6-held.


fix product_grade_ error

fix #1287
**Note: DefectDojo is now on Python3 and Django 2.2. Please submit your pull requests to the 'python3_dev' branch as the 'dev' branch is only for bug fixes. Any PR's submitted to the 'dev' branch should also be converted to Python3 and submited to the 'python3_dev' branch.
When submitting a pull request, please make sure you have completed the following checklist:

[x] Your code is flake8 compliant
[ ] If this is a new feature and not a bug fix, you've included the proper documentation in the ReadTheDocs documentation folder. https://github.com/DefectDojo/Documentation/tree/master/docs or provide feature documentation in the PR.
[ ] Model changes must include the necessary migrations in the dojo/dd_migrations folder.
[ ] Add applicable tests to the unit tests.

going to close it. Travis test is failing. maybe because of the change in the db file.


Rendering a Blade View Component in PHP code does not work

Laravel Version: 8.14.0
PHP Version: 7.4.9
Database Driver & Version: PDO mysqlnd 7.4.9

Description:
I want to render a Blade View Component in PHP but when calling the 'render' method, I get 'Undefined variable: attributes':

I made sure to pass the attributes by calling 'withAttributes' which adds a 'ComponentAttributeBag'. This is how the object looks like:

Steps To Reproduce:

Instantiate a new view component.
Call the 'withAttributes' method on the component and pass any array.
Call the 'render' method.

No idea because there is no code here.


Fix incorrect list numbering in ecommerce.mdx

Description
I’ve noticed a small inconsistency in the Snipcart configuration section of the ecommerce.mdx page that could be slightly confusing to translators. The step numbering within the "Basic usage" subsection does not follow a sequential order. The current numbering sequence in the markdown is 1, 2, 4, 6. For clearer readability and future maintenance of the document, it may be beneficial to update the numbering to a sequential order: 1, 2, 3, 4.
I understand that when markdown is rendered, the list numbering is corrected automatically. However, for the ease of future documentation maintenance and clarity in the markdown source, adjusting the raw markdown numbers to be sequential could help reduce any potential confusion.

!coauthor


should we decrease the certbot renew frequency in docker-compose.yml?

Thanks for the nice repo, it helped me with my website's certification process.
Today when I try to redeploy my website, it reminds me .. too many certificates already issued for exact set of domains .... After a bit google, I got to know there is Duplicate Certificate limit of 5 per week, certbot renew now is counted within this limit from my understanding. So my question is should we decrease the renew frequency from 12h to like 48h?

The renew frequency doesn't matter b/c certbot renew only renews when necessary. See the below snippet from their docs.
https://certbot.eff.org/docs/using.html#renewing-certificates
This command attempts to renew any previously-obtained certificates that expire in less than 30 days. The same plugin and options that were used at the time the certificate was originally issued will be used for the renewal attempt, unless you specify other plugins or options. Unlike certonly, renew acts on multiple certificates and always takes into account whether each one is near expiry. Because of this, renew is suitable (and designed) for automated use, to allow your system to automatically renew each certificate when appropriate. Since renew only renews certificates that are near expiry it can be run as frequently as you want - since it will usually take no action.

I see, thanks @tjmoses  I will close this issue then.


Issue #82 - Added validation for the selected Region for AWS and Digital Ocean; Azure and Google Cloud are already OK

Issue #82 - Added validation for the selected Region for AWS and Digital Ocean; Azure and Google Cloud are already OK
Issue: https://github.com/rancherlabs/tf-rancher-up/issues/82
DO Regions: https://docs.digitalocean.com/products/platform/availability-matrix/
AWS Regions: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html

LGTM and tested with valid and invalid values for regions.
Is it possible to programmatically retrieve the region names instead of hard coding them?
Is it possible to consolidate the region validation for each cloud provider in a single place instead of one place for rke, one place for k3s, and another for rke2?
If so, let's get new issues open to make these changes.

Hey @dnoland1,
Automatically collecting regions can be done, although it might be complex...
I imagine it is necessary to have the CLI tool of all providers installed locally, export all credentials and create/run a script.
For the second question, I open an issue to investigate.

@glovecchi0 How about using this to get the list of all regions in Google Cloud:
terraform {
  required_providers {
    google = {
      source  = "hashicorp/google"
      version = "4.75.0"
    }
  }
}

provider "google" {
  project = "rancher-support-01"
  region  = "us-west-1"
}

data "google_compute_regions" "regions" {
}

output "regions" {
  value = data.google_compute_regions.regions.names
}

When I run this, I get:
Outputs:

regions = tolist([
  "africa-south1",
  "asia-east1",
  "asia-east2",
  "asia-northeast1",
  "asia-northeast2",
  "asia-northeast3",
  "asia-south1",
  "asia-south2",
  "asia-southeast1",
  "asia-southeast2",
  "australia-southeast1",
  "australia-southeast2",
  "europe-central2",
  "europe-north1",
  "europe-southwest1",
  "europe-west1",
  "europe-west10",
  "europe-west12",
  "europe-west2",
  "europe-west3",
  "europe-west4",
  "europe-west6",
  "europe-west8",
  "europe-west9",
  "me-central1",
  "me-central2",
  "me-west1",
  "northamerica-northeast1",
  "northamerica-northeast2",
  "southamerica-east1",
  "southamerica-west1",
  "us-central1",
  "us-east1",
  "us-east4",
  "us-east5",
  "us-south1",
  "us-west1",
  "us-west2",
  "us-west3",
  "us-west4",
])


Increased Jenkins core version to 1.565.1

Thank you for a pull request! Please check this document for how the Jenkins project handles pull requests


Exhaustive Pattern Matching in Deserialization

Description
Improves ToBytes/FromBytes implementations so they are less likely to have bugs in them. In particular, use enums and FromPrimitive to make sure we match on all cases of the *Tag constructor. This doesn't exactly fix everything, as implementors still need to add a *Tag variant, but I believe that seeing its lack in the ToBytes implementation will cause that. I had an idea like:
enum T<A, B, C> {
  A(A),
  B(B),
  C(C),
}

but I don't know how to make it repr(u8) only when A = B = C = (). Beyond that, there's the worse problem of not being able to specify the explicit numbers corresponding to each variant in this declaration. That may be fixed by the implicit derivation of FromPrimitive, haven't checked.
Risks
Any faulty modification of the serialization layer could lead to serious bugs in the Casper Network, its users' code, or in any of our tooling.
Issue
https://github.com/casper-network/casper-node/issues/2329

Closing due to work on consensus taking precedent.


PyO3: Add CI

You shouldn't have to trust me, that the tests i add actually pass. This PR adds a simple CI run to perform the following steps:

Build via maturin develop -r
Check that all stub files match the current implemenetation via: python stub.py --check
Check the formatting via: black --check .
Run the tests via: python -m pytest -s -v tests

This CI is only triggered if there were changes in the candle-pyo3 subdirectory, to not block the normal development of candle.

Thanks, that's a great thing to have!


Feature/add bat scripts for windows platform

Add windows (.bat) scripts for Docker Compose operations
Copy existing .sh scripts to .bat variant.

Hey @vojkog. Thanks very much for this. What to you think about moving all these docker-compose files to a folder? Maybe with linux and windows subfolders?

Hey @vojkog. Thanks very much for this. What to you think about moving all these docker-compose files to a folder? Maybe with linux and windows subfolders?

Also, what's the difference between linux and windows files?

Thank you, @francav, for your response.
I see your point; there is a bit of clutter in the project's root, especially with added Windows scripts.
As you have probably seen, there are no substantial differences between .sh and .bat files, but Windows doesn't natively understand or execute .sh˙ files.
Maybe we can leave docker files as-is and move only scripts into a single scripts dir or in the platform-specific sub dirs, e.g.:
/project-root
|-- /scripts
|   |-- /linux
|   |   |-- docker-full-startup.sh
|   |   |-- ....
|   |-- /windows
|   |   |-- docker-full-startup.bat
|   |   |-- ....
...
|-- README.md

This change will require updating documentation also.

That would be great @vojkog Would you like to help with that?

Hey @vojkog  thank you very much for that work!


feat: Pushed Authorization Request (PAR)

RFC: https://datatracker.ietf.org/doc/html/rfc9126
Open Questions

[ ] what to do if the PAR request fails, but PAR isn't required? Currently, we always use PAR if it's supported, and fail the URL generation if PAR fails.

Yep, I agree with that approach! That's how it's implemented now.

Preliminary review:

Add require_pushed_authorization_requests to client registration
Mention PAR in Supported Features of README

@maennchen let me know if the latest commit looks good and I'll rebase it into the previous commit.

@paulswartz Great job, thanks. A rebase is not necessary since the default is to squash PRs anyways at the moment.


recipientAddress variable name confusing?

I'm not sure about the name of recipientAddress property since it can be whether an Address or a NamespaceId
https://github.com/nemtech/nem2-sdk-typescript-javascript/blob/181fe8601ebc24d27f7c5df7b0149853812798ab/src/model/transaction/TransferTransaction.ts#L62

RecipientAddress to match catabuffer schema. It can be Address | ‘AddressAlias` as taken by transfer transaction.

NamespaceId in this case is acting as an UnresolvedAddress.

Yes I get the point, but still think that recipient makes more sense, because an AddressAlias is not an address

@decentraliser I am for @dgarcia360 's point plus we already discussed this before implementation. Shall we keep the name for now and if it really cause confusion to the wider group we can definitely change it since it's only a small change.


Indentation styles, infinite line

Hi there,
Just found out about this theme and looks amazing.
I was confused as to why the indentation lines looked so long. Here's a demo:

I've deactivated all my addons and here's how it looks:

It seems to be on only the first indentation and it works correctly afterwards.
I'm using version 1.0.8 of the theme. My system is Windows 11 and Obsidian is in version 1.5.3.
Please let me know if there's any other info I can help provide in order to further debug the issue.
Happy to help

For now I've deactivated the indents by using the Style Settings as suggested in a different issue. In any case the theme looks amazing, thanks for all the effort put into it.

Hi,
Please remove any space/tab before the numbering.
The indentation is very sensitive to any space before because is calculate the amount the space you have to draw the line. for example:
1. this is ok!
 1. this is not ok!
can you check and let me know.

hey @zaheralmajed thanks for responding
this is what I'm seeing:

The first bullet point doesn't have a manual extra space at the beginning. But as soon as I enter a point (1.) it auto indents. Is this what you are referring to? To be clear I'm not manually entering a space before the bullet number.

Hey there, just found what the problem was. My tab indentation level was a 2 points. When I reset it back to 4 points, that fixed it.


Make internal mask an option ?

Right now we are creating a internal bit mask from alpha/nodata/mask by default, but there is multiple problem with this approach.
https://github.com/mapbox/rio-cogeo/blob/eabf1203be691c2937d89e08a6e62349b594eca1/rio_cogeo/cogeo.py#L75-L86
Well we tend to create the simplest COG (author opinion here) rio-cogeo should maybe offer more flexibility especially for compression like WEBP which can handle RGBA data without needing internal mask.
Maybe the first step is to work on the documentation side of rio-cogeo to explain what are the pro/cons to internal mask and also define good habits for COG format

Right now we have those two options to give info about the input dataset:
  --nodata INTEGER                Force mask creation from a given nodata
                                  value
  --alpha INTEGER                 Force mask creation from a given alpha band
                                  number

and by default we create an internal mask.
If we make mask creation optional there are plenty of scenario we should take care:

input dataset has a nodata value (or user passes --nodata) :

rio-cogeo creates internal mask (--add-mask ?)
rio-cogeo creates an alpha band  (--add-alpha ?)
rio-cogeo passes the nodata value to the output dataset (and add a warning for lossless compression) if none of the --add-mask or --add-alpha are passed

input dataset has an alpha band (or user passes --alpha)

rio-cogeo creates internal mask (--add-mask ?)
rio-cogeo copy the alpha band to the output dataset (--add-alpha ?)

input dataset has a mask

rio-cogeo creates internal mask (--add-mask ?)
rio-cogeo creates an alpha band  (--add-alpha ?)

input dataset has no mask, alpha, nodata (✨ )

rio-cogeo creates internal mask (--add-mask ?) but will be useless
rio-cogeo creates an alpha band  (--add-alpha ?) but will be useless

Note:
we could also maybe rename --nodata to --src-nodata and --alpha to --src-nodata to avoid any ambiguity ?
cc @perrygeo @sgillies


malware with dpt-shell

My sister's cellphone accidentally installed an apk that steals OTP and other things, after I analyzed it there was a dpt-shell string, what is the way to find out the original base code?

My sister's cellphone accidentally installed an apk that steals OTP and other things, after I analyzed it there was a dpt-shell string, what is the way to find out the original base code?

It is located in the path /data/data/[PACKAGE]/code_cache/i11111i111.zip You need Root to access and extract
If it is convenient, please share or place the suspicious file here https://wormhole.app

I read a report from someone on

https://mediakonsumen.com/2024/12/21/surat-pembaca/penipuan-berkedok-ktp-digital-disdukcapil

They use the the outdated official app on the Play Store (typical gov developer, outdated) and were forced to install it externally from the website below.

https://identitaskita.com

Out of curiosity, I tried doing a bit of reverse engineering, which led me here.
sample apk

https://wormhole.app/ALy75#XTJku1xkPKbe8xgAaB99fw


not getting getting last seen for a user i'm using ChatSDK.lastOnline().getLastOnline(thread.otherUser()) getting null

unable to get last seen of user using ChatSDK.lastOnline().getLastOnline(thread.otherUser()) this method to get last seen but null is getting from the method
@bensmiley

You would need the last online module for this. https://www.patreon.com/chatsdk/


Testing .put() method using jasmine and karma

Method in a service-
saveEducationDetails: function(updatedEducation){
updatedEducation.put()
.then(function(response){
.......
}
});
Unit test-
it('should update education details', function() {
var edu = {
institutionName: "",
degree: "",
description: ""
};
$httpBackend.expectPUT( url)
.respond(edu);
educationService.saveEducationDetails(edu);
httpBackend.flush(1);
expect(educationService.education).toEqual(edu);
});
In this case, "edu" is not a restangularized object hence .put() is not recognised as a method so the unit test fails.
What is the correct way to unit test the put/save method(s) ?

You need to use restangularizeElement on the edu object to populate it with get(), put() etc before passing it to saveEditcationDetails().


Add support for zipkin collector port

DO NOT MERGE
@jpkrohling I've tested the all-in-one template with Istio and it works fine. I tried applying similar changes to the production template but I'm getting an error in the UI:

although the service was 'istio-proxy' when I pressed the 'Find Traces' button (probably due to a previous usage).
Any ideas what the problem is? Could you give the prod template a quick try?

[ ] Add test for reporting a zipkin span.

I cannot reproduce your error. Note that every re-deployment gets the service to be available on a different port. The fact that you see a service reported on a previous deployment means that you are indeed seeing a cached version.
One way to check this is to open the developer tools in your browser and watch the network connection. The interesting part is the destination URL, specially the port. It should match the one shown in Kubernetes:

In my case, the node port is 31020 (http://<IP_ADDRESS>:31020/search , with my node running on <IP_ADDRESS>)

@jpkrohling I was also using:

kubectl port-forward $(kubectl get pod -l app=jaeger -o jsonpath='{.items[0].metadata.name}') 9411:9411 16686:16686 &

although the 9411 port mapping is probably not required, and then accessing the UI via localhost:16686.

@jpkrohling @pavolloffay thanks.


Outdoor sensor

Hue Outdoor Sensor

@rindlerblabla "Don't know nothing...but..." lol... I'd say you are starting to get a good grip about it :)
Good catch! Fixed now.

Same here, please add to release notes for verison 1.4.5


Feature: Add Resources Section for Improving Skills of Students

Description:
I want to add a section on the left side of our website that lists resources for each skill required for job applications. This will help students identify and learn any missing skills they need for job applications. The resources should be categorized by skill and include links to tutorials, courses, articles, and other learning materials.
@SurajSanap, Could you please assign this issue to me under GSSOC'24

@SurajSanap, Could you please assign this issue to me under GSSOC'24

This functionality is already in resume analyzer program. Thanks for your interest in this project.


AppInsights: add more properties to the telemetries

Changes:

In ApplicationInsightsConsumeFilter, updated the properties added to the AppInsights telemetry:

Added DestinationAddress.
Replaced QueuePath by InputAddress which is the whole Uri, not just its local path.
MessageType now contains the full name of the actual message type, not the first item of context.SupportedMessageTypes.

In ApplicationInsightsPublishFilter and ApplicationInsightsSendFilter, added DestinationAddress to the AppInsights telemetry.
Reordered parameters in the constructors and extension methods so that they are the same.
Added more unit tests of the filters.
Removed extension methods UseApplicationInsightsOnPublish and UseAppplicationInsightsOnSend for type IPipeConfigurator. (@RDalziel was faster than me with the PR 1282).
Fixed code style and indentation.

I'm not very happy with the way the message type is obtained in the Send method of the filters:
public async Task Send(T context, IPipe<T> next)
{
    var contextType = context.GetType();
    var messageType = contextType.GetGenericArguments().FirstOrDefault()?.FullName ?? "Unknown";
    // ...
}

I tried to change the base type of the filters from IFilter<T> where T : class, PublishContext to IFilter<PublishContext<T>> where T : class as you suggested here but it makes it impossible to add the filter in the bus factory method:
var telemetryClient = new TelemetryClient();

var bus = Bus.Factory.CreateUsingAzureServiceBus(c =>
{
    c.ConfigurePublish(ppc =>
    {
        // The generic type 'T' is unknown here.
        ppc.AddPipeSpecification(new ApplicationInsightsPublishSpecification<T>(telemetryClient));
    });
});

Do you have any suggestion to avoid using reflection to get the message type?

@fhyvrier Apologies i did a formatting change as well which will be giving you the horrible merge conflicts. I just changed from tabs to spaces and aligned the function parameters.
Have you managed to get things functioning with App Insights to show full dependency graphs across multiple send/publish/consumes? I still haven't managed to get much going with this, although granted i've had limited time on it

Hi @RDalziel, I did a simple test and managed to get a correlation of the telemetries in App Insights: the dependency telemetry traced by the publisher, and the request telemetry traced by the subscriber on consumption.

@fhyvrier Thanks! Further than i got - i seemed to just get the isolated instances. Have you managed to hook it up to an ASP.NET Request as was referenced in the original PR?

This PR branch will likely need to be rebased off develop, or the CI build won't accept it. Too many conflicts from all the other merged PR's. If you beat me to it, great, otherwise I'll try to cherry pick your commits later today.

OK I just rebased the branch.

Merged.


Remove spurious key/cert loading code

We can use tls.LoadX509KeyPair from stdlib instead of our custom LoadKeyAndCertificate. This means we can also get rid of LoadKey, since we only need LoadCert for the client.

Also means your example code now works if you supply an ED25519 key, since LoadX509KeyPair supports that, but our custom LoadKeyAndCertificate didn't.


MenuItem onClick should have a Typecheck od function

[x] I have searched the issues of this repository and believe that this is not a duplicate.

Expected Behavior
when provide a prop with onClick in MenuItem like:
this.handleDialogControl('open', 'dialogPartManage')

a exec funtion, should throw Error

Current Behavior

when I use this to open dialog, and forget to set it as a arrow-function, like
() => this.handleDialogControl('open', 'dialogPartManage')

It will cause a crash that this page will keep loading.
Steps to Reproduce (for bugs)

create a dialog
open it with a MenuItem's onClick prop, with some
code like:

// handle method
handleDialogControl = (method, boxName) => {
    const list = [...this.state.openList];

    if (method === 'close') {
      const openList = removeFromOpenList(list, boxName, this.enum);
      return this.setState({ openList });
    }

    if (method === 'open') {
      list.push(boxName);
      return this.setState({ openList: list });
    }

    return new Error('UserError: params invalid');
  }
// use with onClick
<MenuItem onClick={this.handleDialogControl('open', 'dialogAddLink')}>

then open it in your browser
unexpected keep loading.

Context

the Error is difficult to find,(also meet) I should provide some suggest, for this case.
Your Environment

Tech
Version

Material-UI
^1.0.0-beta.16

React
^16.0.0

browser
chrome at 61.0.3163.100

etc

Regarding your code I think it's normal, on each render the function is called with a setState inside which will make another render etc ..

If you set an arrow function your function will only be called when an event is fired

so I sugguest a validate, It should be a function, in the PropType required, otherwise being errered for a good Tips
I meet this by a miss, there could be other unlucky guys

I can't understand at all what is being described here, but it doesn't seem to have anything to do with TypeScript...

so I sugguest a validate, It should be a function, in the PropType required, otherwise being errered for a good Tips

@CyanGlory This is outside of the scope of Material-UI. It sounds like a React related issue. Maybe it's React how should warn when providing a undefined onClick property.


Favicon for HackathonTheme

Here you go!
favicon_package_v0.16.zip

Extract to the root

Add the code from CODE FOR HEAD.txt to <head>

Delete CODE FOR HEAD.txt


[New Feature]: Navbar should be visible while scrolling

🎮 feature Request
feature logic and basic description
The navbar is currently not visible while scrolling down the page in all the pages. It should be visible even while scrolling.

Point down the features
feature points
Fixing the navbar on top, so that it's visible while scrolling
Adding a backdrop blue effect
Select program in which you are contributing
GSSoC24
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

I want to work on this issue. Please assign me this.

@Durgesh4993 I have already fixed the issue. Kindly assign it to me so that I can raise the pull request


Any hope of getting this updated to Haxe 4.2.3

I like playing around with Pico8, and one of the things I often find myself wishing for is to be able to have a typing system. Using Haxe for Pico8 seems like a great idea, since it has a great typing system and wonderful IDE support.
I tried using this library with the latest Haxe release (4.2.3) and it is giving me some errors. I tried fixing the issues that came up but sadly I'm not proficient enough with Haxe (and custom compilation targets) to tackle the issue.
These are the issues I get:
haxe/current/lib/hxpico8/git/Map.hx:33: characters 34-43 : Warning : This typedef is deprecated in favor of Unknown<0>
haxe/current/lib/hxpico8/git/Map.hx:52: characters 56-65 : Warning : This typedef is deprecated in favor of haxe.IMap<IMap.K, IMap.V>
haxe/current/lib/hxpico8/git/Map.hx:55: characters 50-59 : Warning : This typedef is deprecated in favor of haxe.IMap<IMap.K, IMap.V>
haxe/current/lib/hxpico8/git/Map.hx:58: characters 65-74 : Warning : This typedef is deprecated in favor of haxe.IMap<IMap.K, IMap.V>
haxe/current/lib/hxpico8/git/Map.hx:61: characters 53-62 : Warning : This typedef is deprecated in favor of haxe.IMap<IMap.K, IMap.V>
haxe/current/std/eval/_std/haxe/Exception.hx:18: characters 10-18 : Class<Std> has no field isOfType
haxe/current/std/eval/_std/haxe/Exception.hx:26: characters 10-18 : Class<Std> has no field isOfType
haxe/current/std/haxe/ds/EnumValueMap.hx:58: characters 18-26 : Class<Std> has no field isOfType
haxe/current/std/haxe/ds/EnumValueMap.hx:58: characters 45-53 : Class<Std> has no field isOfType
haxe/current/lib/hxpico8/git/Std.hx:13: lines 13-21 : Missing field downcast required by core type

Ideally would need to rewrite this from scratch (using sfhx like I have with sfgml) - I started doing so at some point, but the library had always been exotic at best, so I've not gotten too far with that

Oh well, no worries. Thanks for answering :) I'll go ahead close this issue


Release/0.2.1806

 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.:x: ArunkumarRamanan sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

master is already on the latest qdk version.


May Alby browser extension join?

About Alby
Alby is a versatile browser extension for the Bitcoin Lightning Network to serve as the bridge between wallets and Bitcoin Lightning websites with the following features:

Easy payments: Users finally interact natively with Lightning on the web based on the WebLN standard. No context switching when users have to picking-up the smartphone to scan a QR code. Users can even set budgets to automate payments.

Direct rewards: Alby brings bitcoin payments to traditional content platforms in the web (e.g. own websites, Twitter, YouTube, etc.). With its tipping features users can directly reward content creators or service providers on their existing platforms.

Passwordless logins: Passwords have problems. They can be too weak, reused on multiple systems, deliberately shared with other users, and socially engineered. With Alby users can conveniently sign into websites that offer simple logins with Lightning. without using passwords.

Connect own wallets: Users can connect their own Lightning wallets or nodes and remain with their trusted setup. To easily try out Bitcoin Lightning, Alby offers a custodial wallet directly in the extension. Although a non-custodial setup is recommended, users have the choice now.

The Alby browser extension was launched at Adopting Bitcoin in autumn 2021 and is publicly available at https://getalby.com/ for Chrome, Firefox and Brave.
Alby is an open-source project (MIT license) and is hosted by the Bitcoin Design Community. It is part of Summer of Bitcoin and has currently more than 18 contributors.
Getting the chance to represent Alby on the open source stage of Bitcoin 2022 would be amazing and highly appreciated.
Thank you so much!
Moritz
<EMAIL_ADDRESS>

👍


Use irate for CPU measurements

Currently, examples show to use rate() for nodeQuery. This causes the "flattening" of resource consumption as we get values affected by the past, causing a quite bad UX for people used to having top and kubectl top quite similar in functionality. The issue can be easily solved by swapping rate() to irate().
I am proposing this only for CPU and not for memory as the former is usually a faster changing and can have more benefits from using irate.
More on the differences between rate() and irate() can be found in https://www.robustperception.io/irate-graphs-are-better-graphs
Related https://bugzilla.redhat.com/show_bug.cgi?id=1812004
/cc @brancz @s-urbaniak

/cc @coreos/team-monitoring

lgtm as discussed out of band

lgtm on green

@paulfantom looks like something broke CI tests

Note that irate() doesn't capture spikes. Probably, this isn't the best function to use for CPU usage graphs, since it makes graphs noisy and this noise may be very far from real CPU usage. See https://valyala.medium.com/why-irate-from-prometheus-doesnt-capture-spikes-45f9896d7832 .

@valyala this is PR is not about graphs. It is about having kubectl top output similar to one from metrics-server.


Implicite Geom invalid

Hello, i would like to know why my citygml isn't valid, the validator said ImplicitGeometry isn't valid, but regarding the official spec on ogc and schema on opengis, it looks like i'm good.
You'r validator are used by many people so i would like to know where i'm wrong :)
Here is my citygml, a zip containing the file is also provided at the end:

Implicite geom on citygml spec

Export.zip

My validator doesn't anything but wrap the OGC CityGML v2 schemas into a web-service, and returns the error(s) to the user. So don't shoot the messenger please. Better to ask the OGC CityGML specialists about the error.
But I see several errors: remove core: since your default namespace has no name; mimetype is there twice, etc.


Update gRPC-Web dependency to 1.0.4

Update to gRPC-Web 1.0.4, which fixes a lot of bugs for code generation.

Thanks for creating the issue!

This is done in https://github.com/TheThingsIndustries/docker-protobuf/releases/tag/v3.1.3


Use same hasher for LogClient and trillian-log

We currently create the tree using log_payload.json which uses SHA256 as a hasher. The log-client created by the kt-signer used OBJECT_RFC6962_SHA256. A following PR should make this a param to config.LogClient and autom. read it (either from the json or from a cmd-flag/config flag).
Fixes WaitForInclusion timing out.
Together with google/trillian#729 this resolves #688

done

Codecov Report

Merging #691 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #691   +/-   ##
=======================================
  Coverage   57.38%   57.38%
=======================================
  Files          35       35
  Lines        2485     2485
=======================================
  Hits         1426     1426
  Misses        770      770
  Partials      289      289

Continue to review full report at Codecov.

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


download art when clicked

hi jennnnnn
Firefox and Chrome have gotten stricter about top-level navigation to data: URLs AS YOU NOTED IN ANGER this past Tuesday, so this uses the download attribute to try to get similar behavior without right-clicking.
I tested this by adding it by hand in the Inspector which is very much like actually testing it without being useful at all.

i could be easily hassled into making this randomly choose between naming the file lol.png, stuff.png, or art.png

wanna do the honors of updating the service worker to v3 so i don't have to :) https://github.com/jennschiffer/make8bitart/blob/master/service-worker.js#L34

ignore that request, i just went ahead and did it :) 🎅

bless 🙏


Async updates for the language service

This PR allows us to use async methods (e.g. for loading the project) when updating the compilation state in the language service, without interfering with read operations such as getCompletions.
We can divide language service methods into two kinds of operations: reads and updates. The CompilationState is shared.

Read operations, which are always synchronous, immutably borrow the CompilationState.
Update operations, instead of performing the update directly, post a message to a channel which is then read by an update worker that processes the updates one by one. The update worker can do asynchronous work without interfering with any other language service operations. The update worker only mutably borrows the CompilationState briefly to update it.

I notice that we don't check if the queue is getting backed up. Using a bounded queue (even with large bounds -- like 100-1000) would eliminate that as a possible failure mode. Do you think that's worth addressing?

This is a great question. I think we need to step back and ask ourselves "wtf are we doing" if we get even close to 100 messages backed up in the queue. Hence the warn! message about perf. Which I know doesn't fix anything but should at least prompt us to look for optimizations if we ever see it in real usage.
It would be nice to go further and use a bounded queue to force us "do something" if the queue is full, but what can the sender even do? The sender is calling from synchronous code and needs to post a message and get out fast. Blocking/awaiting here would defeat the purpose of the whole system. Dropping messages will lead to inconsistent compiler state. Having some kind of retry loop is equivalent to having another message queue, and what's the point. The receiver is already draining messages as fast as it can, backpressure or not. So I don't know what benefit a bounded queue would bring in this setup.

Will close and reopen this to trigger checks. I may have messed something up.


Vertical picker

Hey man, cool work you've done here!
Would it be possible to display the picker vertically ?

@OmarAflak, thank you!
I'll research that case.


Maintaining Grid State (Selected Rows) on Grid that uses Server Side Queries

First of all, i am really grateful for this module. It is so awesome, more awesome than any grid module that i found. I can do a workaround in this (create another grid displaying the selected items and not including it in server side queries), but i was just wondering if there is a default implementation of maintaining selected rows when using server side grids.
There is no documentation on how to maintain state of selected rows in a grid that uses server side queries, also the example on server side seems buggy (search filter not filtering correctly, items per page is limited to 5).
Thanks again!

You'll have to remember that whatever comes from the server translates into NEW items in the client. So assuming you keep a backup of the previous set of selected items, you'll need to match them with the new items manually (e.g. based on their Id if you have one) and re-create your selected items. Does it make sense?


highlighted marking needs a test (sticky marking)

Think the selected-marking-is-sticky.cy.js test as modified in a branch should work fine, but fixing the sticky-marking bug will require some more time.


add docs for WebSocketResponse's autoping parameter

Current coverage is 98.87% (diff: 100%)

Merging #1405 into master will not change coverage

@@             master      #1405   diff @@
==========================================
  Files            30         30
  Lines          6850       6850
  Methods           0          0
  Messages          0          0
  Branches       1134       1134
==========================================
  Hits           6773       6773
  Misses           33         33
  Partials         44         44

Powered by Codecov. Last update a29d9fb...a367f21

Thanks


Is z80 compiler still not support CONFIG_CPP_HAVE_VARARGS?

I saw that log related code check CONFIG_CPP_HAVE_VARARGS, but other function e.g. mq_open/ioctl/fcntl/printf doesn't. I am curious how z80 can pass the compile.

The refers only VARARGS are used in preprocessor macros.  Like in debug.h:
 104 #ifdef CONFIG_CPP_HAVE_VARARGS
 138 #  define _info(format, ...) \
 139    __arch_syslog(LOG_INFO, EXTRA_FMT format EXTRA_ARG, ##__VA_ARGS__)
 722 #else /* CONFIG_CPP_HAVE_VARARGS */
 739 #  define _info       (void)
1320 #endif /* CONFIG_CPP_HAVE_VARARGS */

This has nothing to do with the compiler.  It is a feature of the C preprocessor.  This is not a problem for the SDCC toolchain used with z80 and z180 because they use the same GNU pre-processor as does GCC.  However, it is a problem for the ZDS-II toolchain which use a different pre-processor and cannot handled pre-processor macros with a variable number of arguments.
The setting CONFIG_CPP_HAVE_VARARGS only applies to the pre-processor and has nothing to do with variadic C functions with is part of the C standard and is handled by all C compiler.

Thanks, got the CONFIG_CPP_HAVE_VARARGS meaning.

There are other issues with z80 and z180:  I have not verified that they build correctly with the latest configurations that always assume we can pass structures as arguments.  That is supposed to work with the lastest SDCC toolchain, but I have not yet tried.  I added this warning to the README file for both of these architectures:
IMPORTANT NOTE as of 2020-4-11:  Support for CONFIG_CAN_PASS_STRUCTS was
removed in NuttX-9.0.  This was necessary to enforce some POSIX interface
compliance but also means that ALL older SDCC versions will no long build
with NuttX.  I have been told that the newest SDCC compilers can indeed
pass structure and union parameters and return values.  If that is correct,
then perhaps the newer SDCC compilers will be used.  Otherwise, it will be
necessary to use some other, more compliant compiler.

I think that z80 is no longer a viable platform because of the 16-bit address space.  But the other variants are still good options for retro computing people includin the z180 which has an MMU and the z380 which can support up to a 32-bit address space.  Also the new newer ez80 which handles a 24-bit address space (but does not use SDCC).


Fix ruby-gems version check

The logic for this check was backwards. We are printing the gem warning and not proceeding with the update check for all ruby-gems versions > 2.1.0

:+1: :cyclone:

Fixes #3892


docs: cancel "PR" and "Build" jobs and pass GITHUB_TOKEN when fuzzers are built

[v1]
docs: cancel "PR" and "Build" jobs on every push
This should help to save some time and storage when PRs/codebases
are updated
[v2]
docs: pass GITHUB_TOKEN to PR jobs when fuzzers are built as well
The "build fuzzers" step needs the token to download coverage data.
Without it it fails with
root - INFO - Removing unaffected fuzz targets.
root - INFO - Diffing against master.
root - INFO - Files changed in PR: ['.clusterfuzzlite/bpf-object-fuzzer.c']
root - ERROR - Request to https://api.github.com/repos/evverx/libbpf/actions/artifacts?per_page=100&page=1 failed. Code: 401. Response: {'message': 'Bad credentials', 'documentation_url': 'https://docs.github.com/rest'}
root - ERROR - Could not get coverage: Github API request failed..
root - ERROR - Could not find latest coverage report.

Technically it's not necessary to pass it when coverage reports aren't
generated but since this particular workflow runs on PRs the token is
mostly read-only so it should be safe to always pass it around.
Closes google#78

LGTM

@oliverchang I guess this is evidence that our API is kinda error prone. If the build and run actions were combined this sort of mistake would be harder for us to make.
I'm going to go through the docs and check that this works in other places.

@jonathanmetzman what's weird though is that judging by
2022-01-21 13:24:08,818 - root - INFO - Fuzz target bpf-object-fuzzer is affected by: ['.clusterfuzzlite/bpf-object-fuzzer.c', 'include/linux/err.h', 'include/linux/list.h', 'src/btf.c', 'src/btf.h', 'src/gen_loader.c', 'src/hashmap.c', 'src/hashmap.h', 'src/libbpf.c', 'src/libbpf_internal.h', 'src/strset.c']

paths to covered files on CFLite are relative and I'm kind puzzled about prefixes like "/work/build/../.." on CIFuzz. Having said that I think https://github.com/google/oss-fuzz/pull/7142 should work on both CFLite and CFuzz (on GitHub at least) as far as I understand.


ITMS-90792: Invalid font (10.2.0) Issue persists

Environment
react-native-vector-icons 10.2.0
react-native 0.74.5
Description
I was under the impression that version 10.2.0 addressed this problem but unfortunately it's still rejecting my submissions, the latest rejection is clear:
ITMS-90792: Invalid font - There was an error validating the font named 'FontAwesome6Free-Solid' at<EMAIL_ADDRESS>‘glyf’ table instructions.
I tried to be thorough, I uninstalled the previous react-native-vector-icons, made sure the node_modules folder with this package was gone. I went to the ios/pods folder and removed it from there as well.
I ran npm install<EMAIL_ADDRESS>Afterwards I ran pod install from the ios directory
Everything looked great in TestFlight and of course as you can see it failed.
What might I be doing wrong here? Any guidance is deeply appreciated 🆘 😅

@JordanAlexa Looks like you are using @expo/vector-icons so you are using it's version of FontAwesome6_Solid.ttf and not the one that comes from react-native-vector-icons.

@JordanAlexa Looks like you are using @expo/vector-icons so you are using it's version of FontAwesome6_Solid.ttf and not the one that comes from react-native-vector-icons.

Interesting -- so it seems like what I need to do is remove the references to FontAwesome6 from @expo/vector-icons then? I fear removing @expo/vector-icons entirely may not be the right course.

You should be either using react-native-vector-icons or @expo/vector-icons but not both.

Probably worth opening a bug on @expo/vector-icons as well as this bug will affect their users too

@JordanAlexa Let me know if tihs persists and I'll reopen


Agree on a stopping condition for number of iterations.

Sometimes the rmse gets lower however the recall gets worse after more iterations.

@ndomar Here we can compute the log-likelihood and check if it doesn't increase a lot, then we can stop.
P.S. I think I have a proof that the log-likelihood only increases.


Site root '/'

Context
Site root '/'
Changes proposed in this pull request
Amended so that the '/' site root is now the wizard
Added redirect for '/start/location' to '/'

 Redirect start/location to root path


fix: More from this collection & Visited NFTS show 0 KSM

Thank you for your contribution to the KodaDot NFT gallery.
👇 _ Let's make a quick check before the contribution.
PR Type

[x] Bugfix
[ ] Feature
[ ] Refactoring

Context

[x] Closes #4350
[ ] Requires deployment <>

Before submitting pull request, please make sure:

[x] My contribution builds clean without any errors or warnings
[x] I've merged recent default branch -- main and I've no conflicts
[x] I've tried to respect high code quality standards
[x] I've didn't break any original functionality
[x] I've posted a screenshot of demonstrated change in this PR

Optional

[ ] I've tested it at </bsx/collection>
[ ] I've tested PR on mobile
[ ] I've written unit tests 🧪
[ ] I've found edge cases

Had issue bounty label?

[x] Fill up your KSM address: Payout

Community participation

[x] Are you at KodaDot Discord?

Screenshot 📸

[x] My fix has changed something on UI; a screenshot is best to understand changes for others.

😍 Perfect, I’ve sent the payout
💵 $50 @ 24.29 USD/KSM ~ 2.058 $KSM
🧗 Caiv9TbPz68q5dC8EcHu5xKYPRnremimGzqmEejDFNpWWLG
🔗 0xa85f35bf4b10480634f03e24d9a005518ec211325a72b6799a679896a30b5c9f
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues


Feature Request: Token Art If Unlinked

Foundry VTT 0.8.9, Image Hover 1.1.8
The "Art on hover" setting has an option to show the token art on wildcard. Presumably, this is intended to be used when a actor represents an NPC with multiple token art variations but no unique or interesting character artwork. Modules like Token HUD Wildcard leverage the wildcard feature to allow manually selecting token art from the wildcard list. This opens up the possibility of players and similarly unique characters to have multiple token art pieces, and the players selecting between them on the fly.

However, when using wildcards in this fashion, the available "Token Art If Wildcard" option (which works for NPCs) means the (generally more complete) character artwork won't be seen. I would like to see an additional option here: "Token art if unlinked". Linked actors (typically PCs & unique NPCs) would then show the selected character art, unlinked generic actors would show the token art.

Hi Tjlanzaz
This is a new feature in v2.0.1 of Image hover, you will need to update to v9 Foundry though for compatibility.


Optional notes for assessment

Assessments (aka meetings) should support an optional set of notes. These will capture any additional information gathered from the beneficiary whilst conducting the assessment which may have not related to any questions. It could also be used to record actions and goals.
Should expect the notes to be arbitrarily large.

 Assessment notes

This is basically a notes field for the whole meeting, right?

yes that is right @themakshter. I think it is important for the people doing the assessments to be able to capture notes that they can review at the next assessment.

@themakshter hope you dont mind me stealing this from you. Some of my frontend plans are reliant on this, so I would like to get it in.

Closed by d43fd63d691d009286d6e7092c891bed0d6ae354


assign users to groups from OIDC claims

closes #1105

coverage: 88.125% (+0.02%) from 88.106% when pulling 768aceaa83313f489bfe7b521fdcf6d4ba49287e on oidc-groups into 2f1731c2e24608c9be37d0dd68ff95b41b9912a7 on main.

From my, not Python- or Django-experienced perspective, only considering the overall OIDC stuff, this PR looks good.
Allowing dots for nested access only for the groups claim but not the other ones might seem like a random choice (especially for people not knwoing/using Keycloak's realm_access.roles default claim name). For consistency reasons, you might consider to add support for nested claims to all other claim identifiers or drop it from the groups.


review romain

[sqls] Avoid JSON.bigdataParse is not a function on result display
[release] Publish<EMAIL_ADDRESS>

Seems like it does not escape the / in the parsers for some reason btw.

Seems like it does not escape the / in the parsers for some reason btw.

Regenerated only or also jison changes?

IIRC it came via doing:
npm run publish-gethue
Will keep an eye for next time!


[R-package] deprecate the use of 'info' in Dataset

Addresses the rest of #4543 (changes not covered by #4571), as part of #4310.

deprecates keyword argument info in lgb.Dataset()
add keyword arguments group, weight, init_score, and label to lgb.Dataset()

Notes for Reviewers
While working through this, I realized that today the only way to pass new parameters through to Dataset when using lgb.Dataset.create.valid() is to pass them through .... So this PR also proposes adding a new keyword params to that function (and the corresponding public method Dataset$create_valid()), so that ... can be eliminated in release 4.0.0 while still allowing customization of parameters within lgb.Dataset.create.valid() calls.
No existing unit tests need to be changed in this PR, since there are not any that initialize a list info and pass it in. All of the tests and demo examples in this project are already passing weight, group, label, and init_score directly as keyword arguments.

I'm not sure I'm qualified enough to provide a thoughtful review

Thanks very much as always for the reviews, @StrikerRUS !
I'm confident in merging this without another reviewer's approval since it's an important step towards the next release, and since:

@Laurae2 already approved the general approach in Slack and on #4543
existing unit tests are passing without any changes


feat: responsive profile tab for mentor dashboard.

Description of Changes

add: apt icons and svg
reponsiveness/optimization

Checklist:

[x] My code adheres to the established style guidelines of this project.
[x] I have conducted a self-review of my code.
[x] I have included comments in areas that may be difficult to understand.
[x] I have made corresponding updates to the project documentation.
[x] My changes have not introduced any new warnings.

Screenshots

@anmode

it's looking great!. Thanks a lot and Just a request if you get time today if you can other parts too which you think need improvment...

all icons window in mobile needs some optimization like

For sure, I will do it


Social link having too small Tap targets - Mobile

increase the right margin to 4vw and bottom margin by 1vh


Please add the option to Show in Sidebar

Problem/Motivation

(Why the issue was filed)

Expected behavior

(What you expected to happen)

Actual behavior

(What actually happened)

Steps to reproduce

(How can someone else make/see it happen)

Proposed changes

(If you have a proposed change, workaround or fix,
describe the rationale behind it)

Please add the option to Show in Sidebar

Not possible as explained by Frenck himself on another thread

As per above, this is a technical limitation created by Uptime Kuma itself. There is nothing we can do about it.
../Frenck


local-switcher giving error

Description
Using the provided locale switcher example code from this:
https://next-intl-example-app-router.vercel.app/en
https://github.com/amannn/next-intl/blob/main/examples/example-app-router/src/components/LocaleSwitcherSelect.tsx
https://github.com/amannn/next-intl/blob/main/examples/example-app-router/src/components/LocaleSwitcher.tsx
Gives this error: TypeError: path.startsWith is not a function
src\app(app)[locale]\locale-switcher-select.tsx (23:13) @ replace
21 |     const nextLocale = event.target.value as Locale
22 |     startTransition(() => {

23 |       router.replace(
|             ^
24 |         // @ts-expect-error -- TypeScript will validate that only known params
25 |         // are used in combination with a given pathname. Since the two will
26 |         // always match for the current route, we can skip runtime checks.

Routing works just fine manually. Using the select gives this error.
Verifications

[X] I've verified that the problem I'm experiencing isn't covered in the docs.
[X] I've searched for similar, existing issues on GitHub and Stack Overflow.
[X] I've compared my app to a working example to look for differences.

Mandatory reproduction URL
I cannot give repo url.
Reproduction description
Steps to reproduce:

Open reproduction
Click on …
See error: …

Expected behaviour
I expect it to change locale when using the select.

My bad. I fixed it by changing the following code in routing.ts, to the code that is not commented.
// Lightweight wrappers around Next.js' navigation APIs
// that will consider the routing configuration
// export const { Link, redirect, usePathname, useRouter } = createSharedPathnamesNavigation(routing)
export const { Link, getPathname, redirect, usePathname, useRouter } =
createLocalizedPathnamesNavigation(routing)
I am not sure where i got the: createSharedPathnamesNavigation and createLocalizedPathnamesNavigation mixed up.


scheduler: Make job name and priority optional in API.

They are still required in the database - if missing from API request, default
values are assigned.
Fixes #268

One minor comment, else LGTM


Allow to customize an existing application (for tests, mocking, etc.)

Maybe using https://github.com/mockk/mockk.

Added a ticket https://github.com/mockk/mockk/issues/118

I finally had some times to play with Mockk, and it is now clear to me that it is what we should promote on Spring side to Mock beans in Spring applications written in Kotlin. @jnizet has created a nice @MockBean like support for Mockk with its springmockk, it will not be integrated for now in Spring Boot even if there is a big demand for that because current infra is sadly Mockito specific. But we can move forward on Spring Fu side by thinking what is missing for such first class support.
I think @sbuettner proposal about allowing to customize an existing application is interesting, and would be useful for other use case than mocking. We could maybe support something like as a first step:
fun beforeAll() {
  app.beans {
    bean { mock<Foo>(isPrimary = true)  }
    bean { mock<Bar>(isPrimary = true).every { ... } }
  }.run(profiles = "test")
}

Then as a second step (with another dedicated issue) we could provide a functional Mockk equivalent to @MockBean like beans { mockBean<Foo>() }.
Any thoughts?

Syntax looks good to me. Mockk was designed to have few front facing DSLs via so called Gateway API

It turned out to be quite easy and powerful since we now can customize an existing app with any DSL in an additive configuration mode, only beans { } have the isPrimary = true capability for now.
val app = application {
    beans {
        bean { Bar("original") }
    }
}
app.customize {
    beans {
        bean(isPrimary = true) {
            mockk<Bar>().apply {
                every { value } returns "customized"
            }
    }
}

@sdeleuze I like your approach as it uses the default infra to register mocks.
I could still see an extension method inside the beans {} context like mockk<Foo> {...} that internally calls bean(isPrimary = true) as this seems the be the main usage. A scenario where a mocked bean should not be registered as the primary one seems to be exception. As isPrimary in this case would have the default value of true one can always override it with false.

Since for now we recreate context every time with no specific caching involved, we can indeed maybe provide a simple mockkBean alias without having to invloved all the @MockkBean infrastructure. Let's discuss that as part of #151.


PG Syntax Error

I received multiple exception emails from the baw-server, that can be categorised into three different errors:
1.  audio_recordings#filter
An ActiveRecord::StatementInvalid occurred in audio_recordings#filter:
PG::SyntaxError: ERROR:  syntax error at or near ","
LINE 1: ...io_recordings"."site_id" IN (3, 2, 5, 4, 6, 7, 8, , 1, 9, 10...
^
: SELECT COUNT(*) FROM "audio_recordings"  WHERE ("audio_recordings"."deleted_at" IS NULL) AND "audio_recordings"."site_id" IN (3, 2, 5, 4, 6, 7, 8, , 1, 9, 10, 11, 12)
lib/modules/api/response.rb:217:in `add_paging_and_sorting'
Request:

URL        : http://baw.dev.bush.fm/audio_recordings/filter
HTTP Method: POST
IP address : <IP_ADDRESS>
Parameters : {"paging"=>{"items"=>10, "page"=>1}, "projection"=>{"include"=>["id", "siteId", "durationSeconds", "recordedDate", "createdAt"]}, "sorting"=>{"orderBy"=>"createdAt", "direction"=>"desc"}, "format"=>"json", "controller"=>"audio_recordings", "action"=>"filter", "audio_recording"=>{}}

2. user_accounts#audio_events
An ActionView::Template::Error occurred in user_accounts#audio_events:
PG::SyntaxError: ERROR:  syntax error at or near ","
LINE 1: ...io_recordings"."site_id" IN (3, 2, 5, 4, 6, 7, 8, , 1, 9, 10...
^
: SELECT DISTINCT COUNT(DISTINCT "audio_events"."id") FROM "audio_events"  WHERE ("audio_events"."deleted_at" IS NULL) AND "audio_events"."audio_recording_id" IN (SELECT "audio_recordings"."id" FROM "audio_recordings"  WHERE ("audio_recordings"."deleted_at" IS NULL) AND "audio_recordings"."site_id" IN (3, 2, 5, 4, 6, 7, 8, , 1, 9, 10, 11, 12))
app/views/user_accounts/audio_events.html.haml:9:in `_app_views_user_accounts_audio_events_html_haml___911526360752883964_70732160'
Request:

URL        : http://baw.dev.bush.fm/user_accounts/5/audio_events
HTTP Method: GET
IP address : <IP_ADDRESS>
Parameters : {"action"=>"audio_events", "controller"=>"user_accounts", "id"=>"5"}

3. audio_event_comments#index
An ActiveRecord::StatementInvalid occurred in audio_event_comments#index:
PG::SyntaxError: ERROR:  syntax error at or near ","
LINE 1: ...io_recordings"."site_id" IN (3, 2, 5, 4, 6, 7, 8, , 1, 9, 10...
^
: SELECT COUNT(*) FROM "audio_event_comments"  WHERE ("audio_event_comments"."deleted_at" IS NULL) AND "audio_event_comments"."audio_event_id" IN (SELECT "audio_events"."id" FROM "audio_events"  WHERE ("audio_events"."deleted_at" IS NULL) AND "audio_events"."audio_recording_id" IN (SELECT "audio_recordings"."id" FROM "audio_recordings"  WHERE ("audio_recordings"."deleted_at" IS NULL) AND "audio_recordings"."site_id" IN (3, 2, 5, 4, 6, 7, 8, , 1, 9, 10, 11, 12)))
lib/modules/api/response.rb:217:in `add_paging_and_sorting'
Request:

URL        : http://baw.dev.bush.fm/audio_events/26/comments
HTTP Method: GET
IP address : <IP_ADDRESS>
Parameters : {"format"=>"json", "action"=>"index", "controller"=>"audio_event_comments", "audio_event_id"=>"26"}

@cofiem has suggested that somehow you've managed to create a site will a null id.
Can you run this SQL against your DB to confirm?
SELECT * FROM sites WHERE id is NULL

Also, I think these are all the result of the same bug. From my previous investigations and the backtraces, this is the place to start looking: lib/modules/api/response.rb:217. Combining that with the query used in app/views/user_accounts/audio_events.html.haml:9 should give a hint as to the problem.

Problem located in common code in app/models/user.rb:170
user_sites = self.projects.map { |project| project.sites.map { |site| site.id } }.to_a.uniq

Somehow user_sites ends up with nils, which is then used in subsequent queries:
"audio_recordings"."site_id" IN (3, 2, 5, 4, 6, 7, 8, , 1, 9, 10, 11, 12)

A quick fix would be to add .compact. Would be better to find the source of the problem.
@alvinsw can you add .compact to the end of line 170 in /app/models/user.rb to see if that fixes the errors?

Could also try .reject(&:empty?) instead of .compact if the problem is empty strings rather than nils. I can't seem to reproduce this error.

SELECT * FROM sites WHERE id is NULL returns nothing. However, I checked all the entries from that table and one of the record has empty unpdater_id. For example:
id;name;longitude;latitude;notes;creator_id;updater_id
1;"Karawatha";153.080093;-27.631731;"";1;1
3;"Secondary (Savanna)";133.600000;-22.290000;"";5;
2;"Core Plot (Mulga)";133.300000;-22.280000;"";5;5
4;"Cumberland 1";150.738209;-33.619017;"";1;2
...
There are 12 sites in total with id exactly ranging from 1 to 12, and nothing is missing in between.

The null updater_id is expected behaviour for a record that has been created but never updated again - it is not your problem.
I'd suggest trying @cofiem's suggestions next

Adding .reject(&:empty?) seems to fix the error. But should we investigate further on why the
self.projects.map { |project| project.sites.map { |site| site.id } }.to_a.uniq

is able to produce (3, 2, 5, 4, 6, 7, 8, , 1, 9, 10, 11, 12) in the first place?

Also - since we can't reproduce this problem - we still think it might be a database consistency problem.
You haven't accidently deleted a site with pqsql? Rather than through the website?
Can you run the following queries against your database (the output should be the same):
SELECT s.id, ar.site_id AS audio_recording_site_id
FROM sites s
FULL OUTER JOIN (
	SELECT DISTINCT(site_id)
	FROM audio_recordings
) ar ON s.id = ar.site_id
ORDER BY s.id

SELECT s.id, ps.site_id AS projects_sites_site_id
FROM sites s
FULL OUTER JOIN (
	SELECT DISTINCT(site_id)
	FROM projects_sites
) ps ON s.id = ps.site_id
ORDER BY s.id

For either query we are testing to see if another table has a reference to a site that no longer exists. For both queries, when you run them, there should be NO nulls in the first column, but there may be nulls in the second column.

No, I have not done any direct modification to the pgsql.
Result from the first query:
1;1
2;2
3;
4;4
5;5
6;6
7;7
8;8
9;9
10;10
11;11
12;12

Result from second query:
1;1
2;2
3;3
4;4
5;5
6;6
7;7
8;8
9;9
10;10
11;11
12;12

Hmmm...
I'm stumped. @cofiem any idea?
Alvin, I think you need to debug this... set a breakpoint and step through the execution.
We really need to be able to reproduce this issue.
Alvin what would be amazing is if you could write a unit test that demonstrated the bug - that's the usual method of fixing bugs in rails/open source projects.

For diagnostic purposes, try this. Change this line
user_sites = self.projects.map { |project| project.sites.map { |site| site.id } }.to_a.uniq

to
user_sites = self.projects.map { |project|
      fail 'One or more sites were blank.' if project.sites.any? { |site| site.nil? }

      sites_array = project.site_ids
      fail 'One or more site ids were nil.' if sites_array.any? { |id| id.nil? }

      sites_array
    }.flatten

This will check for blank sites and nil site ids, as well as making use of the built-in site_ids method rather than multiple maps.

Hi @alvinsw, have you had a chance to try out the changes for diagnosing the problem?
There's a new release that includes these changes: https://github.com/QutBioacoustics/baw-server/releases/tag/0.13.1

Hi @alvinsw there's another new release you could try: https://github.com/QutBioacoustics/baw-server/releases/tag/0.14.0

Haven't heard anything for this issue in a while. Closing for now. Please comment or re-open if needed.


How to deploy on AWS?

If you have any questions feel free to ask

Hi, I feel dumb for asking this but I'm not sure where else to ask it. I managed to successfully deploy my laravel application with roadrunner, but now I want to go into production. Up until now I've been using the following command to start the server:
./rr -c ./.rr.yaml serve -d
I've tried the same command via putty to my EC2 instance and it's working. However, when I close my putty connection, the server also shuts down.
Is there a way to enable Roadrunner and keep it running?

Run rr as a daemon? If you do not use containers (like docker), you can run it using systemd, supervisord or any other on your choice.

Take a look at this configuration to run RR as service: https://github.com/spiral/roadrunner/tree/master/systemd

Take a look at this configuration to run RR as service: https://github.com/spiral/roadrunner/tree/master/systemd

Oh, thanks a lot!! I'm using that file and also following https://roadrunner.dev/docs/beep-beep-systemd
However I'm getting Unit rr.service could not be found. error
I updated the rr.service file as following:
[Unit]
Description=High-performance PHP application server
[Service]
Type=simple
ExecStart=/home/ubuntu/rr-laravel/public/rr serve -d -c /home/ubuntu/rr-laravel/public/.rr.yaml
Restart=always
RestartSec=30
[Install]
WantedBy=default.target

Did you register the service? Did you get any error while doing so?

When I tried
systemctl enable --user rr.service
I got the same error of could not be found.
But, when I tried
systemctl enable --user /home/ubuntu/ann/rr-laravel/public/vendor/spiral/roadrunner/systemd/rr.service
I got no response.
However, after that, I typed the start command but, when typing the full path like this:
sudo systemctl start /home/ubuntu/ann/rr-laravel/public/vendor/spiral/roadrunner/systemd/rr.service
I get a different error:
Failed to start home-ubuntu-ann-rr\x2dlaravel-public-vendor-spiral-roadrunner-systemd-rr.service.mount: Unit home-ubuntu-ann-rr\x2dlaravel-public-vendor-spiral-roadrunner-systemd-rr.service.mount not found.

I got it to work, had to copy the service to my /etc/systemd/system directory. However, the server is not working.  Maybe there's something wrong with this line?
ExecStart=/home/ubuntu/rr-laravel/public/rr serve -d -c /home/ubuntu/rr-laravel/public/.rr.yaml
I'm using the path to rr that's in my application folder and the .rr.yaml as well.


Unable to recreate 2/3 vault with if we add Ledger first.

In case of 2/3 vault creation if we add ledger device first then this error is coming on signing server.
And unable to recreate vault with Ledger and SS.

closing this issue for now.


Keyword Tag Duplicate Frames within Project

Ideally this would use plist XML, however it could also be done with FCPXML.
Assuming we're using plist XML:

When you press a shortcut key it will detect whether your focus is on the timeline or browser. If the browser it will select everything in the timeline and copy it to the pasteboard. If it's the browser, it will open the selected project in the timeline, then select all and again, copy it to the pasteboard.
Then the tricky stuff... we need to read the plist data from the pasteboard, then "process" it to add the appropriate keywords (assuming this is technically possible).
Once "processed" we then place this data back on the pasteboard, select everything in the Final Cut Pro timeline, delete, then paste.

Have discussed this feature a few times with Alex Gollner on Facebook.

I don't think you can add keywords to clips in the timeline, only in the
Browser. As such, you would have to match-frame each duplicate in the
browser, add the keyword, flip back to the timeline.
On Mon., 12 Dec. 2016 at 8:11 pm, Chris Hocking<EMAIL_ADDRESS>wrote:

Ideally this would use plist XML, however it could also be done with
FCPXML.
Assuming we're using plist XML:

When you press a shortcut key it will detect whether your focus is
on the timeline or browser. If the browser it will select everything in the
timeline and copy it to the pasteboard. If it's the browser, it will open
the selected project in the timeline, then select all and again, copy it to
the pasteboard.
Then the tricky stuff... we need to read the plist data from the
pasteboard, then "process" it to add the appropriate keywords (assuming
this is technically possible).
Once "processed" we then place this data back on the pasteboard,
select everything in the Final Cut Pro timeline, delete, then paste.

Have discussed this feature a few times with Alex Gollner on Facebook.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/fcpxhacks/fcpxhacks/issues/86, or mute the thread
https://github.com/notifications/unsubscribe-auth/ADbEwwHTtwezXAvbS3cbn4HU1oxFP0hbks5rHR3CgaJpZM4LKX_B
.

Correct - but it MIGHT be possible if you're manipulating the clipboard XML. Otherwise, I think it's definitely possible using FCPXML (as this is basically exactly what Sync-N-Link, etc. do).

Not on the Timeline. Sync--link works with Libraries.
As far as I know, keywords only exist at the Event level.
On Mon., 12 Dec. 2016 at 8:42 pm, Chris Hocking<EMAIL_ADDRESS>wrote:

Correct - but it MIGHT be possible if you're manipulating the clipboard
XML. Otherwise, I think it's definitely possible using FCPXML (as this is
basically exactly what Sync-N-Link, etc. do).
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/fcpxhacks/fcpxhacks/issues/86#issuecomment-266396308,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADbEw335YFqz_-HTX_xqFnyyNsNy-1dOks5rHST_gaJpZM4LKX_B
.

You're absolutely right. I just assumed that FCPX was smart enough to keep track of keywords when you export projects, but apparently not. I just exported a project out of one library and brought it into another, and none of the keywords have come across. Doh!
I guess the only way to make this work then would be to drag an Event to the drop zone, and prompt the user which project they want to apply the tags to (or maybe it just applies to all projects within the event)? I just tested and exporting an event as FCPXML definitely retains all the keywords.


Add user-defined upsamling resolution to time sync model

Story
As a user I want IF to run as fast as possible.
Rationale
The time sync model currently works by upsampling all time series to 1 second resolution everywhere before resampling to the desired interval. This probably creates some unnecessary work as the upsampling could be done at a coarser resolution in many cases, as long as the upsampling resolution is finer than the initial () resolution of the input data
pre-normalization and the desired interval.
Implementation details
Identify where we have hardcoded the upsampling resolution to 1 second and swap out for some custom logic, likely derived from a resolution parameter passed in model config.
Priority
2/5
The important thing is that the model works well. It is important, but not urgent, to add this optimization.
Scope
Affects time sync model
Size
1 -2 days
What does "done" look like?
Model runs with user defined upsampling resolution
Does this require updates to documentation or other materials??
Yes, model documentation will need updating.
What testing is required?
Unit tests have 100% coverage and 100% pass rate.
Is this a known/expected update?
Discussed between core devs during time sync model building

Hi @jmcook1186
I have some questions regarding this issue.
Given a simple input array :
[
  {
    "timestamp": "2023-12-12T00:00:00.000Z",
    "duration": 10,
    "carbon": 10
  }
]

with this basic config :
{
  "start-time": "2023-12-12T00:00:00.000Z",
  "end-time": "2023-12-12T00:00:10.000Z",
  "interval": 5,
  "allow-padding": true
}

the TimeSync Model currently upsamples each observation from the input array to a resolution of 1 and then resamples it to the desired interval resolution. I understand it would be more efficient if the user could choose a coarser resolution that also works Usually the largest common divisor between measurement frequency and the interval, which here would be 5.
However, I’m concerned about scenarios where the user specifies a different resolution, such as 3. I was thinking the upsampling process could handle remainders like this:
[
  { "timestamp": "2023-12-12T00:00:00.000Z", "duration": 3, "carbon": 3 },
  { "timestamp": "2023-12-12T00:00:03.000Z", "duration": 3, "carbon": 3 },
  { "timestamp": "2023-12-12T00:00:06.000Z", "duration": 3, "carbon": 3 },
  { "timestamp": "2023-12-12T00:00:09.000Z", "duration": 1, "carbon": 1 }
]

I am struggling to see how resampling to a resolution of 5 could work from here. Is there a flaw in my logic somewhere?

hi @mouhamadalmounayar - thanks a lot for looking into this issue - it's a bit of a thorny one.
There will need to be checks in place that the given timestep does not create issues for the resampling.
Maybe we have to assert that the resolution is smaller or equal to the smallest measurement frequency (across all tree components).
The problem with remainders is that it has to be the same across all components of the tree. Seems like this would only occasionally work.
I think it's useful to go through the design process and try to make this work because the pay off is some potentially substantial performance gains for time-sync, but if it turns out to be too complex (i.e. error-prone) we can just keep things the way they are.

hello again @jmcook1186, I looked a bit more into it, and I believe that the chosen time step should adhere to the following constraints:

It must be a divisor of the desired interval.
It must be a divisor of all the measurement frequencies (That way we won't have to deal with remainders).
It must be a divisor of the gaps and the padding.

Otherwise I don't think resampling would be possible.
Do you agree?
If one of those checks fail, we can always reset the resolution to 1, and maybe throw a warning.
For example, for this observation array :
 {
   "timestamp": "2023-12-12T00:00:00.000Z",
   "duration": 120
 },
  {
   "timestamp": "2023-12-12T00:02:00.000Z",
   "duration": 400
 },

with a desired interval of 10 the user can choose a resolution of 5 or even 10 instead of the predefined 1s resolution.

Is it possible to be assigned to work on this ? @jmcook1186

Absolutely - it's all yours

@zanete @jmcook1186 @mouhamadalmounayar I have left comments on PR.


logic error?

in file index_nsg.cpp:248
if (pool[start].id == q) start++;

in file index_nsg.cpp:251
while (result.size() < range && (++start) < pool.size() && start < maxc) {

if line 248 executed, it may have influence on line 251, the times of loop is not exact maxc.
so I think line 248 should be:
if (pool[start].id == q) start++, maxc ++;

It is not necessary for the times of loop to be maxc exactly, we are only want to make sure it will not exceed maxc, in case the pool.size() is too large to slow down the search process.
Larger maxc may lead to more accurate result, but with more search time.


Move c++ parsing code from slang-cpp-extractor to static library

Initial work on extracting c++ parsing code from slang-cpp-extractor to a separate static library. This will allow me to reuse the parser for my work on the language bindings generator. The current slang-cpp-extractor and newly created slang-cpp-parser can still use some refactoring but I feel like that is better left for future PRs once I know how much additional code can be shared with the binding generator.
Please ensure especially my changes to the CMake file look good, I'm not too familiar with it.

/format

@expipiplus1 can you please take a look?

This was discussed in #5565. My bad for not including it, I updated the PR description. It allows us to reuse the C++ parser code for generating C (and other) language bindings by parsing slang.h. I'd like to work on that in future PRs.
I didn't see any harm in renaming parts of CppExtract to CppParse because it felt like an internal API but I could be wrong.


Broken by Windows 11 update 22H2

Updating to windows 11 version 22H2 causes functionalities to break. I have not done an in-depth look at what breaks, but I know that the higher-level functions like getting the current desktop number and moving the active window to another desktop no longer work with this update.

The update broke some of the functionality of the DLL file, I've added a couple to increase stability. Your issues should be resolved with the new file.


[icu] Update, enable uwp, fix osx-dynamic

Update to 74.1.
Simplify portfile.
Enable uwp.
Fix https://github.com/microsoft/vcpkg/issues/33440, osx-dynamic, and simplify the portfile by achieving the effect already during linking. As before, users can choose an alternative to @rpath via a triplet variable. In addition, they could complete disable the effect by supplying --disable-rpath via CMAKE_CONFIGURE_MAKE_OPTIONS.

Microsoft, do you accept this uwp hack:
https://github.com/unicode-org/icu/blob/da83309900e90509d6d559e4ad5f9a2a0a1cef6b/icu4c/source/common/umapfile.cpp#L41-L58
?

icu is ready for review here.
cppcms is ready for review in https://github.com/Microsoft/vcpkg/pull/35578, merged here to disable it for uwp.
libzim is ready for review in https://github.com/Microsoft/vcpkg/pull/35576, merged here to disable it for uwp.

Microsoft, do you accept this uwp hack: https://github.com/unicode-org/icu/blob/da83309900e90509d6d559e4ad5f9a2a0a1cef6b/icu4c/source/common/umapfile.cpp#L41-L58 ?

I'll ask the rest of the team about their opinion on this patch, otherwise the changes LGTM

Microsoft, do you accept this uwp hack: https://github.com/unicode-org/icu/blob/da83309900e90509d6d559e4ad5f9a2a0a1cef6b/icu4c/source/common/umapfile.cpp#L41-L58 ?

I'll ask the rest of the team about their opinion on this patch, otherwise the changes LGTM

LGTM: we aren't the WACK


RFC: Finalizing more naming conventions

This conventions RFC tweaks and finalizes a few long-running de facto
conventions, including capitalization/underscores, and the role of the unwrap method.
See this RFC for a competing proposal for unwrap.
Rendered

Just came here to point out that ThisNamingConvention is more accurately referred to as Pascal Case.  In the documentation you refer to it as Camel Case, which more commonly follows thisPattern.

Hey, just came here to state the same thing as @pyython. You refer to PascalCase as CamelCase, while camel casing has the first letter not capitalized(camelCase).
Any chance of modifying it in the docs? 🙏

By docs, do you mean the RFC? Ideally, we'd have these docs living somewhere else and update there, but I'm not sure if they do. We don't generally modify the text of RFCs heavily after they're landed, prefering to keep more stable docs up to date.

This has already been addressed by #2389.