DirectMLX doesn't support transposing a tensor

Transpose is used to permute the axes of a tensor, e.g. the Transpose operator of ONNX.
According to DirectML doc, this operator probably can be implemented by DML_ELEMENT_WISE_IDENTITY_OPERATOR_DESC.
However, it is unclear to me how to transpose a tensor with DirectMLX.

DirectML tensor descriptions have strides, which enable you to logically transpose, broadcast, pad, and permute tensor data without the need for a copy. In short, strides combined with an element-wise identity will transpose a tensor. Read on if you want to know more details.
Example
As an example, consider the following tensor:
x = [[1,2,3],
     [4,5,6]]

Assuming the buffer backing the above 2x3 tensor is stored in row-major order, the elements would ordered 1, 2, 3, 4, 5, 6 in linear memory:

Offset
2D Coordinates
Element Value

0
0,0
1

1
0,1
2

2
0,2
3

3
1,0
4

4
1,1
5

5
1,2
6

The strides of a tensor are an expression of how to translate the N-dimensional coordinates to the 1-dimensional offset in memory: the dot product of the strides and the coordinates yields the offset. In the example above, the strides are (3,1):

You jump 3 elements in memory to move to the next element in dimension 0 (the leftmost dimension)
You jump 1 element in memory to move to the next element in dimension 1 (the rightmost dimension)

Take x[1][2]: the dot product of its coordinates ((1,2)) and strides ((3,1)) gives the offset 1*3 + 2*1 = 5. At offset 5 you get the value 6. You might start seeing how this can help you transpose a tensor. If you flip the strides and sizes of the spatial dimensions (only 2D here, so that means both dimensions in this example) you'll reverse the order in which elements are visited in memory. If you keep the same tensor memory but use shape (3,2) and strides (1,3):
With shape=(2,3) and strides=(3,1):

Coordinates
Strides
Offset
Value

(0,0)
(3,1)
0
1

(0,1)
(3,1)
1
2

(0,2)
(3,1)
2
3

(1,0)
(3,1)
3
4

(1,1)
(3,1)
4
5

(1,2)
(3,1)
5
6

Logical View:
[[1,2,3],
 [4,5,6]]

With shape=(3,2) and strides=(1,3):

Coordinates
Strides
Offset
Value

(0,0)
(1,3)
0
1

(0,1)
(1,3)
3
4

(1,0)
(1,3)
1
2

(1,1)
(1,3)
4
5

(2,0)
(1,3)
2
3

(2,1)
(1,3)
5
6

Logical View:
[[1,4],
 [2,5],
 [3,6]]

You don't need to specify strides for multi-dimensional arrays in programming languages, like C, since there is an implicit memory layout (e.g. row-major order). Similarly, DirectML assumes a default memory layout that's consistent with C/C++. A few operators explicitly make a note of the layout when it's not just spatial data (e.g. NCHW for some ops that work on 4D tensors).
DirectML also gives you the option of specifying strides to take complete control, which is useful for avoiding copies and higher memory overhead. There is a cost to this flexibility, however: changing memory access patterns can dramatically affect performance because of cache lines. This isn't something you need to worry about when transposing a tensor, it's merely a tip to keep tensor data in the same physical layout that DML expects when possible.

DirectML tensor descriptions have strides, which enable you to logically transpose, broadcast, pad, and permute tensor data without the need for a copy. In short, strides combined with an element-wise identity will transpose a tensor. Read on if you want to know more details.
Example
As an example, consider the following tensor:
x = [[1,2,3],
     [4,5,6]]

Assuming the buffer backing the above 2x3 tensor is stored in row-major order, the elements would ordered 1, 2, 3, 4, 5, 6 in linear memory:

Offset
2D Coordinates
Element Value

0
0,0
1

1
0,1
2

2
0,2
3

3
1,0
4

4
1,1
5

5
1,2
6

The strides of a tensor are an expression of how to translate the N-dimensional coordinates to the 1-dimensional offset in memory: the dot product of the strides and the coordinates yields the offset. In the example above, the strides are (3,1):

You jump 3 elements in memory to move to the next element in dimension 0 (the leftmost dimension)
You jump 1 element in memory to move to the next element in dimension 1 (the rightmost dimension)

Take x[1][2]: the dot product of its coordinates ((1,2)) and strides ((3,1)) gives the offset 1*3 + 2*1 = 5. At offset 5 you get the value 6. You might start seeing how this can help you transpose a tensor. If you flip the strides and sizes of the spatial dimensions (only 2D here, so that means both dimensions in this example) you'll reverse the order in which elements are visited in memory. If you keep the same tensor memory but use shape (3,2) and strides (1,3):
With shape=(2,3) and strides=(3,1):

Coordinates
Strides
Offset
Value

(0,0)
(3,1)
0
1

(0,1)
(3,1)
1
2

(0,2)
(3,1)
2
3

(1,0)
(3,1)
3
4

(1,1)
(3,1)
4
5

(1,2)
(3,1)
5
6

Logical View:
[[1,2,3],
 [4,5,6]]

With shape=(3,2) and strides=(1,3):

Coordinates
Strides
Offset
Value

(0,0)
(1,3)
0
1

(0,1)
(1,3)
3
4

(1,0)
(1,3)
1
2

(1,1)
(1,3)
4
5

(2,0)
(1,3)
2
3

(2,1)
(1,3)
5
6

Logical View:
[[1,4],
 [2,5],
 [3,6]]

You don't need to specify strides for multi-dimensional arrays in programming languages, like C, since there is an implicit memory layout (e.g. row-major order). Similarly, DirectML assumes a default memory layout that's consistent with C/C++. A few operators explicitly make a note of the layout when it's not just spatial data (e.g. NCHW for some ops that work on 4D tensors).
DirectML also gives you the option of specifying strides to take complete control, which is useful for avoiding copies and higher memory overhead. There is a cost to this flexibility, however: changing memory access patterns can dramatically affect performance because of cache lines. This isn't something you need to worry about when transposing a tensor, it's merely a tip to keep tensor data in the same physical layout that DML expects when possible.

@jstoecker , thanks for the detailed explanation. It is very helpful!

You can use dml::Reinterpret to attach custom strides to the output of a DMLX graph node, which is then fed into another op (or dml::Identity if you want a true copy).

I tried this solution and it works for me to transpose a tensor.

@jstoecker , thanks for the detailed explanation. It is very helpful!

You can use dml::Reinterpret to attach custom strides to the output of a DMLX graph node, which is then fed into another op (or dml::Identity if you want a true copy).

I tried this solution and it works for me to transpose a tensor.


Refactor imports to follow Google's Style Guide

There are many import statements throughout the code base that don't follow the Google Style Guide, in particular Use imports for packages and modules only.
One example is in tests/test_client.py
It should be refactored into
import oauth2client
from oauth2client import _helpers
from oauth2client import client
from oauth2client import clientsecrets
from oauth2client import service_account
from oauth2client import util

By adding the module names, we may need to split some of the lines, but it would adhere to the Style Guide.
Also, what is everyone's thoughts on possibly changing the line lengths from 80 to 100 or 120 in the style guide?  I know there are many projects that follow PEP8 with the exception of line length.

:+1: to everything except line length.

Question:  When making a line longer than 80 characters, at what point should we go from option 1 (breaking within the parameters) to option 2 (breaking at the open parenthesis)?
For example:
# Original
        flow_from_clientsecrets(filename, None, cache=cache, message=message)
# Option 1: Break within parameters
        client.flow_from_clientsecrets(filename, None, cache=cache,
                                       message=message)
# Option 2: Break at open parenthesis
        client.flow_from_clientsecrets(
            filename, None, cache=cache, message=message)

I don't have very strong feelings on this but @jonparrott and @nathanielmanistaatgoogle do somewhat. It's tough to enforce style like that if it isn't encoded in tooling.

I've gone over to using option 2 exclusively and am very happy with it and would recommend it in all line-wrapping cases.

Will do.
What about in this something like this?
            return service_account.ServiceAccountCredentials.from_json_keyfile_name(
                filename, scopes=scopes, token_uri=token_uri,
                revoke_uri=revoke_uri)

Should I assign service_account.ServiceAccountCredentials to a temporary variable and use that or do you have another suggestion?

What's wrong with the way you've written that? It looks like return <call expression> with the call expression appropriately wrapped? Definitely don't introduce a local field.
Sometimes I make a personal decision and choose to separate the positional arguments and the keyword arguments on different lines, but that's when I'm feeling extreme.

The name( part is over 80 characters.
According to the style guide, there are 2 exceptions where it is okay to go over 80, and this isn't one of them.

Exceptions:

Long import statements.
URLs in comments.

Oh, that. Another reason to never use @classmethod and @staticmethod. :-P
I'm actually not sure what the most-right solution is, but parentheses and then wrapping after one of the dots should work?

Unfortunately, putting a parentheses before or after one of the dots comes up with a syntax error.  In one case, I was able to put a parentheses wrap after the equal sign and had enough room to keep it under 80, but in another case, it was still too long.
I see a few ways to refactor it, but it may be beyond the scope of this PR.
One is to move to function-based fixture, for creating and deleting the temporary file.  This would allow us to remove the try/finally parts, but would still need to be combined with a starting parenthesis to have enough room.
Another way would be to refactor ServiceAccountCredentials, but that may be a change for a major release.  service_account.ServiceAccountCredentials can probably be changed to service_account.Credentials.  Jack Diederich has a good talk on this called Name Things Once
Looking at from_json_keyfile_name and from_json_keyfile_dict, they may be able to be refactored into from_json_keyfile with required keywords of filename or keyfile_dict.

Import have been updated, can we close this?

@jonparrott, I think so.


policy: egress policy tracing support

TODO: Need to iron out requirements.

Closing, duplicates #3394 .


Python tests fail to build on Windows

https://grpc-testing.appspot.com/job/gRPC_master/config=dbg,language=python,platform=windows/17001/console

python tools/run_tests/run_tests.py -t -l python -c dbg -x report.xml -j 2
START: vsprojects\build_vs2013.bat

c:\jenkins\workspace\gRPC_master\config\dbg\language\python\platform\windows>setlocal
Microsoft (R) Build Engine version 12.0.40629.0
[Microsoft .NET Framework, version 4.0.30319.42000]
Copyright (C) Microsoft Corporation. All rights reserved.
MSBUILD : error MSB1009: Project file does not exist.
Switch: vsprojects\shared_c.sln
FAILED: vsprojects\build_vs2013.bat [ret=1, pid=6680]
FAILED: Some tests failed

TESTS_FAILED=true
'[' '!' -e reports/index.html ']'
mkdir -p reports
echo 'No reports generated.'
'[' true '!=' '' ']'
exit 1
Build step 'Execute shell' marked build as failure
Started to fail with build #16913.

Is there any relationship between this issue and issue 6565 which was active last week?

I think it's the same. Closing this one.


CUDA error: device-side assert triggered on Tusimple

Hi,
I have some difficulties training the model on Tusimple. I get a "CUDA error: device-side assert triggered" message.
/pytorch/aten/src/ATen/native/cuda/IndexKernel.cu:84: operator(): block: [123,0,0], thread: [60,0,0] Assertion index >= -sizes[i] && index < sizes[i] && "index out of bounds" failed.
/pytorch/aten/src/ATen/native/cuda/IndexKernel.cu:84: operator(): block: [123,0,0], thread: [61,0,0] Assertion index >= -sizes[i] && index < sizes[i] && "index out of bounds" failed.
/pytorch/aten/src/ATen/native/cuda/IndexKernel.cu:84: operator(): block: [123,0,0], thread: [62,0,0] Assertion index >= -sizes[i] && index < sizes[i] && "index out of bounds" failed.
/pytorch/aten/src/ATen/native/cuda/IndexKernel.cu:84: operator(): block: [123,0,0], thread: [63,0,0] Assertion index >= -sizes[i] && index < sizes[i] && "index out of bounds" failed.
0%|                                                                                | 0/100 [00:02<?, ?it/s]
Traceback (most recent call last):
File "main.py", line 61, in
main()
File "main.py", line 54, in main
runner.train()
File "/disk/no_backup/zl254/LaneATT/lib/runner.py", line 51, in train
outputs = model(images, **self.cfg.get_train_parameters())
File "/disk/no_backup/zl254/venv/lib/python3.8/site-packages/torch/nn/modules/module.py", line 722, in _call_impl
result = self.forward(*input, **kwargs)
File "/disk/no_backup/zl254/LaneATT/lib/models/laneatt.py", line 108, in forward
proposals_list = self.nms(reg_proposals, attention_matrix, nms_thres, nms_topk, conf_threshold)
File "/disk/no_backup/zl254/LaneATT/lib/models/laneatt.py", line 130, in nms
keep = keep[:num_to_keep]
RuntimeError: CUDA error: device-side assert triggered
0%|
Has anyone an idea how to solve this?

Have you made any modifications to the source code?

No, I didn't. But I could solve it by using the newest Pytorch version.

Hello, @Christin95! I have the same problem. I tried with pytorch 1.6 and also with 1.10.0 and it's still not working. The only difference I have with the env specified in the readme.md is the cuda version (I used 11.1). Could you tell me which pytorch and which cuda version you used?

Hi, I installed Pytorch 1.10 with the following command:
conda install pytorch torchvision torchaufio cudatoolkit=11.3 -c pytorch
After that it worked fine.
I hope that solves the issue!

Thank you so much!
Meanwhile, I tried this command: conda install pytorch==1.6 torchvision cudatoolkit=10.2 -c pytorch and it finally worked.


dfu: mcuboot: define boot_img_magic when FLASH_AREA_IMAGE_SECONDARY

boot_img_magic[] is needed for boot_magic_write() function, which is
defined if FLASH_AREA_IMAGE_SECONDARY is defined as well.
Make sure boot_img_magic[] is defined when FLASH_AREA_IMAGE_SECONDARY.
Fixes: #30075

According to the description of the problem (https://github.com/zephyrproject-rtos/zephyr/issues/30075), the desired result is to be able to use CONFIG_IMG_MANAGER=y  without support for MCUBOOT:

It is possible to use functionality provided by IMG_MANAGER without building firmware for chain-loading with mcuboot.

Shouldn't then the solution be to make a compilation of mcuboot.c optional within CMakeList.txt ?

We decided not to use not in zephyr tree defined Kconfig properties here.

But still decided to make a logic based on "not in zephyr tree" code, its public functions etc. IMO it doesn't seem any better, because dependency is still there. The only thing is that Compliance check is satisfied, which is kind of artificial gain.

Then fastest patch is to add || defined(CONFIG_IMG_MANAGER) or || !defined(CONFIG_IMG_MANAGER) where needed.

Unfortunately defined(CONFIG_IMG_MANAGER) still doesn't tell us if we are building within mcuboot or not.

Also want to emphasize that I will work on #29963 soon

Seems like a very good idea, we really need that! Any estimates on that already?
What about adding a helper macro #define WITHIN_MCUBOOT (whatever_magic_needs_to_be_here) and then use #if WITHIN_MCUBOOT and #if !WITHIN_MCUBOOT statements all across the codebase? This will at least show what logic we are relying on, while defined(CONFIG_BOOTLOADER_MCUBOOT) doesn't tell anything for now. Personally I think that we should use CONFIG_MCUBOOT, but if that is really not desirable then at least:
#if !defined(CONFIG_BOOTLOADER_MCUBOOT) && !defined(CONFIG_IMG_MANAGER) && !defined(CONFIG_ZTEST)
#define WITHIN_MCUBOOT 1
#endif

WITHIN_MCUBOOT sound ok to me.

I am not sure that adding a check around CONFIG_IMG_MANAGER (when defining WITH_MCUBOOT) makes sense, because then we will run into function name conflicts with MCUboot once again, because mcuboot.c is compiled only when CONFIG_IMG_MANAGER=y. @nvlsianpu could you confirm?

@mniestroj ^^ obviously you are right.
looks like need to find another way - new kconfig or so

I started working on https://github.com/zephyrproject-rtos/zephyr/issues/29963

@mniestroj shall we close this?

@mniestroj shall we close this?

This has been superseded with #30370.

This has been superseded with #30370.


Google map Native shows blank after navigation from Tab page

Short description of the problem:
Currently loading google map on in tab page. On clicking on marker of map navigating to the new map page but new map page shows blank screen .
this.mapDir.one(GoogleMapsEvent.MAP_READY).then(() => {
});
Above code is not getting fired in the new google map page .
System Info
@ionic/cli-utils  : 1.19.1
ionic (Ionic CLI) : 3.19.1

global packages:
cordova (Cordova CLI) : 7.1.0

local packages:
@ionic/app-scripts : 3.1.6
Cordova Platforms  : android 6.3.0
Ionic Framework    : ionic-angular 3.9.2

System:
Android SDK Tools : 25.1.7
Node              : v8.9.2
npm               : 5.5.1
OS                : Windows 10

In order to reproduce your issue, please share your project files on github.

do you mind but please share your personal email id ? i'll send on it.

https://github.com/wf9a5m75

thanks share project file on mail please check

I haven't received any e-mail yet. It's already midnight, so I will check your repo tomorrow.

I guess @bhumin3i  has the same problem as mine, try what @wf9a5m75 told me too:
https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/2049

Thanks @thezakman  yes it is look like same as my issue. but I'm facing new issue while call https //maps.googleapis.com/  http.get on iOS give me on subscribe error Response with status: 0  for URL: null
can you please help me on this you have some idea ?

@bhandaribhumin This plugin does not use the google maps JavaScript API v3. It means you are wrong place to ask your question.

@wf9a5m75 below my issue is not related to your google maps, but if you have any idea about this so can you please suggest me solution my issue is same as https://stackoverflow.com/questions/47741693/ionic-2-http-get-request-null-response
can you please help me on this.
I'm facing issue only on iOS. :(

@bhandaribhumin please do not ask about the non-related issue at repository issue. That is out of manners.
Unfortunately, I'm not familiar with ionic. Please ask at https://forum.ionicframework.com/

Since @bhumin3i tell me the problem is solved about the original issue by e-mail, I close this thread. The Google Maps JS API is not under the coverage at here.

@bhandaribhumin This plugin does not use the google maps JavaScript API v3. It means you are wrong place to ask your question.

https://github.com/Mekosam/maps    please check my repository about the same issue


How can i add all my discord user account bots to a server all at once?

How can i add all my discord user account bots to a server all at once? i have 9 of them.

First of all, user bots are forbidden by Discord. Secondly, this is for issues with the library, not questions on how to implement something.


Not syncing a 2nd activity

Bug description: I did a sync earlier in the day, after I went ice skating with my kids... which I saved on strava more because I saw you could! - and I'd been intrigued to see my HR while doing so scateing teaching. Then went on Zwift for 90 minutes (132 - TRIMP) which the sync isn't catching.
Actual Behavior: a manual resync produces: "Sync done." - but the (much more TRIMP) isn't being included
**Expected Behavior: ** the resync to catch and represent this new activity
Steps to Reproduce:

... do an activity (maybe it has to be an ice skate?)
...sync your activities
...do another and attempt to sync again.

Chrome version Version 54.0.2840.99 m
Plugin version: StravistiX for Strava 5.0.2
Activities links?:
Skate: https://www.strava.com/activities/798782833
Virtual Ride: https://www.strava.com/activities/798941270
Console errors? (press F12 to see developer console, and copy paste here):
StravistiX.js:85 Skip handlePluginInstallOrUpgrade since we are on a sync
d3nn82uaxijpm6.cloudfront.net/assets/strava/feed/manifest-d9b50e4e26912c61cb8a693a79de40c1.js:76 Uncaught TypeError: Failed to execute 'unobserve' on 'IntersectionObserver': parameter 1 is not of type 'Element'.(…)
StravistiX.js:693 A previous sync exists on Sat Dec 10 2016 22:50:42 GMT+0000 (GMT Standard Time)

Hope that helps, great extension and fabulous feature.
Rob

A 5.1.0 will be released on sunday. It should fix some sync issue like yours. Keep me updated after update ;)

Wow, that was quick. I guessed I couldn't be alone... unless it was an ice
skate - virtual ride special, when I might be pretty unique.
Ta.
On Sat, Dec 10, 2016 at 11:01 PM, Thomas Champagne<EMAIL_ADDRESS>
wrote:

A 5.1.0 will be released on sunday. It should fix some sync issue like
yours. Keep me updated after update ;)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/thomaschampagne/stravistix/issues/313#issuecomment-266245981,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AXXVqNNfRBPOVGUNdodzxBwKTFpYHuhRks5rGy85gaJpZM4LJyGc
.

It's in the process of Alpha versions ;) Bugs and fixes ;) Beta for christmas ;)

been there. That's why I was trying to be as specific as I could be...
incase what the activities were mattered.
Rob
On Sat, Dec 10, 2016 at 11:06 PM, Thomas Champagne<EMAIL_ADDRESS>
wrote:

It's in the process of Alpha versions ;) Bugs and fixes ;) Beta for
christmas ;)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/thomaschampagne/stravistix/issues/313#issuecomment-266246456,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AXXVqFQ2mkZq1w_RhtnF3CVMZlOM8ffTks5rGzCLgaJpZM4LJyGc
.

Fixed


Refresh with new version of bootstrapper.exe - #53

Addresses #53
I'm not sure exactly how the integrity of the included exe files can be checked.
This also updates the paket.restore.targets

Thanks.


Me.ShowMessageAsync and MultiThreading

Hi,
I'm actually trying in VB.Net to start another thread but it seems impossible if I show a MahApps message box inside like this :
Private Sub MySub
(MyCode...)
Try
(...)
Me.ShowMessageAsync("Title","text")
Catch Ex As Exception
Me.ShowMessageAsync("Title","text")
End Try
End Sub

That is how multi-threading works in the .NET Framework.
You have the UI thread, on which your window and all the elements inside are running. There is also your own thread where you are probably doing some CPU-intensive work. This second thread cannot access the UI thread because the UI thread owns that window and accessing it might cause other exceptions.
See StackOverflow for further details. The accepted answer would in VB.NET be
Me.Dispatcher.BeginInvoke(Sub()
                              Me.ShowMessageAsync("Title", "Text")
                          End Sub)

Thank you so much ! :D


Bump API version

Updated APIVERSION to 1.22 for 1.10 release.
Signed-off-by: Nishant Totla<EMAIL_ADDRESS>

LGTM

LGTM


App Center distribute fails with a DatabaseError when marking the package as available

Required Information
Entering this information will route you directly to the right team and expedite traction.
Question, Bug, or Feature?
Type: Bug
Enter Task Name: App Center distribute v3.173
list here (V# not needed):
https://github.com/Microsoft/azure-pipelines-tasks/tree/master/Tasks
Environment

Server - Azure Pipelines

If using Azure Pipelines, provide the account name, team project name, build definition name/build number:
https://dev.azure.com/HQCdevops/HQC/_releaseProgress?releaseId=3833

Agent - Hosted

If using Hosted agent, provide agent queue name: vs2017-win2016

Issue Description
When the old release upload API got deprecated, we tried transitioning over to the App Center distribute task as we didn't knew that the downtime was generalized at the time. Since the transition, we keep on getting database errors when the package is flagged as available.
Task logs
2020-12-09T14:38:31.0108382Z ##[debug]-- Mark package available.
2020-12-09T14:38:31.0109151Z ##[debug]---- url: https://api.appcenter.ms/v0.1/apps/FOO/BAR/releases/123/groups
2020-12-09T14:38:31.2666442Z ##[debug]---- {"code":"dependent_service_error","message":"Error: {\"error\":{\"code\":\"DatabaseError\",\"message\":\"Conversion failed when converting from a character string to uniqueidentifier.\"}}"}
2020-12-09T14:38:31.2668136Z ##[debug]---- http call status code: 500
2020-12-09T14:38:31.2680065Z ##[debug]task result: Failed

After a lot of fumbling around, our team figured out that while the previous API we were using required to pass the distribution group as names, the tasks needed the ids...
I will keep this bug opened as this should return a 400 with a validation error on the distribution group field.

I'm facing this error today. Is there any temporary solution until this is fixed?

@NaagAlgates There is nothing to fix. The bug is only opened because the error should be more clear to the user.
It happened because you are using distribution group names instead of their guid.

Yes. Thanks. You're right.


Deprecated with php v8.2

Hi!
copy/paste error notification
Deprecated: Creation of dynamic property Securimage::$code_entered is deprecated in /srv/vhost/terramagica.es/home/html/pre_reservas/funciones/securimage/securimage.php on line 1028
Deprecated: Creation of dynamic property Securimage::$correct_code is deprecated in /srv/vhost/terramagica.es/home/html/pre_reservas/funciones/securimage/securimage.php on line 1029
Warning: No captcha ID supplied to Securimage::check(). Captcha code cannot be validated in /srv/vhost/terramagica.es/home/html/pre_reservas/funciones/securimage/securimage.php on line 1059
Do you can I help me work arround this?
Thank you in avdance.

@LVWRZ Have a look at my fork: https://github.com/flipreverse/securimage
I've just fixed some PHP 8.2 deprecated warnings including a quick and dirty try for your isse.


CF-CLI input in CATS task is not used correctly

The CATS tasks allows to provide a cf-cli input. However in the task itself it expects that CF CLI is provided as binary which the CF CLI Github release does not provide.
Additionally it's unclear if the PATH is set correctly so that CATS would use the provided CF-CLI.

Hi @johha,
❓ Out of curiosity, what is causing you to want to provide the run-cats task with a cf CLI input?

the task itself it expects that CF CLI is provided as binary which the CF CLI Github release does not provide.

True, it would be more convenient for the task to extract a binary from a provided cf CLI GH release. I imagine it may not have been added because that creates more potential tech debt for the task itself 🤷
✍ If you want to PR this change, I would accept it.
In the meantime, you could write an in-between task in your concourse pipeline to extract the appropriate binary and provide it to the run-cats task.

it's unclear if the PATH is set correctly so that CATS would use the provided CF-CLI.

What makes you say that? It seems like a cf binary in the cf-cli input path, if provided, would be set at the front of the PATH.

Hi @ctlong 👋
last week when we had this regex issue in CATS (https://github.com/cloudfoundry/cf-acceptance-tests/pull/1105) we wanted to downgrade the CF CLI version, however as described above this didn't work.
@philippthun and me tried to fix it by adjusting the task to download the CLI (https://github.com/cloudfoundry/cf-deployment-concourse-tasks/commit/db9978c3fdba0da4604e6e7bbf2b1fc0b61f8e67). However still CATS was using the newer CLI version (part of the image) 🤷♂
I'd say it's not a urgent issue but something we would look into eventually. If you want I can assign it to myself.


Test and update to Konvajs 4.x.y

See if we can update to version 4 without (big) issues.

Now it's 9.3.3 https://github.com/konvajs/konva/releases


Support graphql-import plugin (or similar function)

Hi, thank you for developing this great tool for typescript and graphql !
I wonder if graphql-import will be supported or planned. I think it will be much easier to add than supporting fragment colocation.
https://the-guild.dev/graphql/tools/docs/schema-loading#using-import-expression

Thank you for suggestion! The #include syntax looks good.
I've been looking for a good syntax for expressing imports in .graphql. Maybe I can go with this one.
By the way, do you want this to be supported for schema loading or operation loading (or both)?

Thank you for your patience! The #import syntax is available in nitrogql 1.4.0. Please try 🙂
See also: https://nitrogql.vercel.app/blog/release-1.4

I'm beyond words with happiness. Thank you so much.
I will definitely try using this feature at work.


AWS Adapter Behavior: Objectives

Objective 1:
When the results of AWS cloud config are accidentally deleted or lost, there must be a way for the user to recover that information without having to uninstall and install the helm chart again.
Objective 2:
It is a common scenario that the user would not have provided the right settings when installing the adapter. When the user encounters some error in the adapter logs that leads to an error in fetching the cloud-config information, they can take necessary measures to fix the error (it could be correcting typos  in values.yaml or some fixes in the prerequisite steps needed for the adapter). Once the errors are fixed, the adapter should reconcile and provide the output. Again, in this case, the user does not have to uninstall and install the helm chart.

Objective 1
The best thing would be to not need config parameters to generate status in the first place, but somehow, the EKS cluster does not have its name and region details stored in any standard place within the cluster. So we need those.
If the user loses the status downloaded earlier, then the following options can be considered.

If status fields are clubbed with config fields in same CR, then the config is also deleted with status. This becomes to Objective 2, described later.
Split the CR into config and status CRs. If user deletes status CR, then it can easily be recreated from config (assuming the config was correct earlier). Of course, user could delete the config CR too, but that is Objective 2.
Prevent deletion of the status CR in the first place (can be done via webhook, need to write one)

The case where config itself is deleted; either accidentally, or consciously to correct errors, we cover that under Objective 2 described below.
Objective 2
If the AWS adapter config itself is deleted, then we can try auto creating that with earlier known config params (clustername and region). It can be achieved by storing earlier parameters somewhere, say an internal configmap. We have various options for reinstating those earlier params.

Reinstate to first set of config parameters provided at helm install time if any
Reinstate to last available config parameters, after user has tried changing those multiple times
Reinstate to last known config parameters which had returned a successful result
Try multiple of the above in some sequence and reinstate to one that works
Use helm upgrade, instead of helm delete-install, it will created the deleted CR.
Prevent deletion of the config CR in the first place, (via webhooks)

Another line of reasoning
It is likely that user landed up accidentally deleting the Status+Config CR because, changing the Config was not resulting in fetching new AWS parameters, or not even giving a proper indication that a fetch had reattempted, but failed again. And this led to the above two Objectives being very important.
The late refresh problem was present in an earlier version where the user had to wait till the next sync period for the fetch attempt. So, we provided a workaround where the deployment could be scaled down to 0 and scaled up, to trigger the status fetch immediately. Perhaps, had it not been for this behaviour, the probability of a user deleting CRs (accidentally or to force a refetch with new params), would have reduced significantly.


setup testing

Setup Unit Tests
Are there unit tests for most major methods that directly call the unit (not over the network)? Are the unit tests organized to all run automatically from a test runner? Do the unit tests or test classes include setup/teardown code (where applicable)? Do they use mocks (where applicable)?

Completed #23


do not count offline contracts in redundancy reporting

Code and commits should be relatively easy to follow. This adds a field Offline to the fileContracts and changes f.redundancy() so it doesn't count pieces from offline contracts. This should more accurately reflect the file's redundancy on the network.

as @DavidVorick pointed out, this will have to be changed once the contractor changes are merged (IsOffline is gone), but only slightly, and those changes would have had to occurred anyway.

should we hold off on reviewing this until the contractor changes are merged, then?

This is mostly testing, the critical logic is very small and easy to update

Yeah I think this will not be so bad to update.
One thing that worries me here is that the contractor has a rather loose definition of 'IsOffline' and later 'InGoodStanding' - it'll give hosts a few days before demoting them. But, if a bunch of hosts on your particular file are not 'InGoodStanding' technically, but haven't been online enough to earn the demotion yet, you may still want to do the repair.
So the renter probably needs a little more resolution than that, maybe we add a variable like 'CurrenltyOnline' or 'Online', so that if a file does end up with 75% of its spare pieces offline but "InGoodStanding" it knows to do some repairs anyway.
That I think can be out of scope for this PR. Maybe just add a TODO or something.

Re: review, I'm pretty sure the changes will be basic. We're just switching from IsOffline() to InGoodStanding, the core logic should otherwise be the same.
So we can merge this, and the resulting conflicts should be fine to fix in the contractor

latest commit changes this PR to add a offlineContracts map to the renter, which gets persisted. fileContracts were persisted using the encoding package, so adding the Offline field broke persist from old contracts. Latest commit fixes that.

Should be ready for verification tests


Fix Response.send_chunk() and helpers.sendfile()

Description
When using Response.send_chunk() or helpers.sendfile() which relies on it, the payload can get corrupted if there is back-pressure from the client. The beginning of the chunk gets sent again when on_writeble() is called.
This PR fixes https://github.com/cirospaciari/socketify.py/issues/149
Detailed description in issue above.  I have tested this many times using both curl and Chrome and serving from both sendfile() and also large (1MB) send_chunk() chunks.  All on my MacOS M1 localhost.

Thank you soon I will do a new release!


Run devfile docker url tests without kube config

Signed-off-by: John Collier<EMAIL_ADDRESS>What type of PR is this?

Uncomment only one  /kind line, and delete the rest.
For example, > /kind bug would simply become: /kind bug

/kind cleanup
/area devfile
What does does this PR do / why we need it:
Currently, the Docker odo url tests require both a Docker daemon and a Kube config to run, because of a couple tests that test switching back and forth from a Kube pushtarget and a Docker pushtarget. This means that bugs that occur when there's no Kube config, go unnoticed.
To fix this, I've separated out those test cases to their own test file (cmd_docker_devfile_url_pushtarget_test.go) that will run alongside the devfile Kube tests on Travis (where Docker and a Kube config is available). Then I moved the remaining odo url Docker tests to run in a kube-less environment (where the rest of the Docker tests currently run)
Which issue(s) this PR fixes:
Fixes https://github.com/openshift/odo/issues/3148
How to test changes / Special notes to the reviewer:

make test-cmd-docker-devfile-url
make test-cmd-docker-devfile-url-pushtarget

/retest

/approve
/retest

Currently, the Docker odo url tests require both a Docker daemon and a Kube config to run, because of a couple tests that test switching back and forth from a Kube pushtarget and a Docker pushtarget. This means that bugs that occur when there's no Kube config, go unnoticed.
To fix this, I've separated out those test cases to their own test file (cmd_docker_devfile_url_pushtarget_test.go) that will run alongside the devfile Kube tests on Travis (where Docker and a Kube config is available). Then I moved the remaining odo url Docker tests to run in a kube-less environment (where the rest of the Docker tests currently run)

+1
/lgtm


[qos] process IPv6 packet priority

@abtink @jwhui Could you give me comments about this PR at you convenience?

@abtink @LuDuda Could you review this PR again at your convenience.


New collections extensions to enable merging collections uniquely

Reality Collective - Reality Toolkit Pull Request
Overview

Added some extensions to allow a list to accept multiple values in either array or list form, to combine the collections

Anything I add to the Utilities is always driven by need.  In this case, exactly like it says in the extensions, I wanted to merge two collections.
Specifically, I had a recursive function building up lists and needed to merge the results.


Config option to enable dimension stack (Forge)

Is your feature request related to a problem? Please describe.
I'd like to make a modpack where dimension stack is enabled by default with specific dimensions in it. Currently, if I make a modpack based around dimension stack, the player would have to manually add all the dimensions.
Describe the solution you'd like
A config option to enable dimension stack and all the dimensions included.
Describe alternatives you've considered
n/a
Additional context
n/a

As a temporary alternative, is there a file that is created in the world folder that creates the dimension stack? I would be able to copy those file(s) into each new world using the CopyPaste mod.

no

@qouteall Heya, I know you probably are a little busy, but is it possible that I can have a confirmation that this will be worked on? If so, do you have a time frame for release?
Sorry to bother, thank you!

Unfortunately, it's in low priority

Already implemented


Agent: add support for fixtures with evaluate-autocomplete

Previously, we only supported evaluating one concrete fixture (set of
config options). For example, this meant that we could evaluate BFG
in isolation but we couldn't compare it against non-BFG. This PR fixes the problem by adding the notion of "fixuture", which is a set of configuration options.
Test plan
Manually tested with the command
❯ pnpm agent evaluate-autocomplete --evaluation-config ~/dev/sourcegraph/bfg-evaluation/evaluation.json --test-count 400

Resulted in this chart, which is the first time we see an actual difference between BFG vs non-BFG.

The error is probably happening because the new config options need to be documented in vscode/package.json


Variables inside var blocks are duplicated

Hi!
First of all this is an awesome project!
I noticed that in var blocks like
var(
  ...
)

the variables are duplicated.

Ah, I was able to reconfigure the template. Instead of .FullDecl, I'm using just .Decl:
=== {{.VarAssignment.Name}}
[source, go]
----
{{.VarAssignment.Decl}}
----
{{.VarAssignment.Doc}}

Thanks! @ccremer  :) - I'll add this as a bug! - It should be fixed in next release
https://github.com/mariotoffia/goasciidoc/blob/master/asciidoc/defaults.go#L130
Cheers,
Mario :)

@ccremer  I've changed the default to use .Decl instead.


build piraeus-ha-controller for arm64 and amd64

The need for this change has been discussed in piraeusdatastore/piraeus#74

@toelke do you want to apply the same triggers as in the other projects:

build on PR, without push
pushes on master + tags with push

As you wish :-D

Thank you!

Sure. Thanks for your guidance!


Possible CDN issue for new gem index for "inspec" gem

Given a simple gemfile like this:
source "https://rubygems.org"

gem "inspec", "~> 0.20.1"

I'm getting:
bundle install
Fetching gem metadata from https://rubygems.org/
Fetching version metadata from https://rubygems.org/
Could not find inspec-0.20.1 in any of the sources

The same gemfile works fine with 1.11.x of bundler. I originally thought this had something to do with windows/not windows, but my windows machines are in Azure and my machines that do not see this problem are elsewhere, so it could be a CDN issue instead. I can repro the issue on a Windows VM and on my host OS (OS X) on my laptop.
Also, I've found that version 0.20.1 is not included if I navigate to https://index.rubygems.org/info/inspec in a browser (tried chrome and safari), but for whatever reason, I do see it if I fetch the data with curl.

This issue really belongs over on the bundler/bundler-api repo

Ok, I didn't know that existed, moved to https://github.com/bundler/bundler-api/issues/167


Code License

Would it be possible to add a license to this code? I see you've released other things under MIT. Thank you!

👍 Also updated the code.

Thank you very much! I'm working on some additions to the tool that I'll publish under MIT.


Feature request: Spark 2.x

Coming very very soon!

@simplyianm  we merged Spark 2.0 in to Universe https://github.com/mesosphere/universe/commit/6de81579d6770a45214ddc30f5440c5a2a45e9b5. Please give is to try and let us know how it works for you.


[6.0] Use the BorrowingSwitch implementation for all noncopyable switches.

Explanation: This changes the backend implementation of noncopyable pattern matches to always use the new implementation that supports borrowing switches, even if BorrowingSwitch itself is not enabled. This new implementation is more correct and robust even if a consuming switch is being performed. The experimental flag still enables the surface syntax until the final proposal is accepted.
Scope: New feature enablement.
Issue: rdar://126209276
Original PR: https://github.com/apple/swift/pull/72577
Risk: Low. Although this changes the implementation of an existing feature, the old implementation was limited in the situations it could actually handle correctly, and the adoption of noncopyable enums thus far has been limited. This is therefore unlikely to break existing code.
Testing: Swift CI, Swift compatibility suite
Reviewer: @eeckstein

@swift-ci Please test


Theme doesn't look at all like advertised? What am I doing wrong?

nvm I found this thread https://github.com/Tetrax-10/Nord-Spotify/issues/10 sorry


How to redirect with a saved url after login

Hello everyone and thank you for your hard work.
I have an application that uses react oidc, if a user comes to my site with the url : mysite.com/books/12, he will be redirected to the login page and then come back to my site but will have lost this url and will arrive at the base on mysite.com.
Is there any way to keep this url with react oidc?
Thank you, everyone.
Versions
3.0.8

Hi @MickaelMuller, do you have more detail like your provider and your configuration.
Are you using redux or context version?
I am using the context version and my url is still the samedi After login.
Does your provider Givenchy you back the context statue?

Thank you for your response @guillaume-chervet, and I'm sorry for the delay.
I use react-oidc-context version
Here is my configuration
import { AuthenticationProvider } from '@axa-fr/react-oidc-context';
import React from 'react';
import ReactDOM from 'react-dom';

import { Authenticating, Callback, NotAuthenticated, NotAuthorized } from './components/Authentication';
import App from './App';
import configuration from './configurationOIDC';

const Start = (
  <AuthenticationProvider
    authenticating={Authenticating}
    callbackComponentOverride={Callback}
    configuration={configuration}
    notAuthenticated={NotAuthenticated}
    notAuthorized={NotAuthorized}
  >
    <App />
  </AuthenticationProvider>
);

ReactDOM.render(Start, document.getElementById('root'));

const configuration = {
  authority: 'https://a08cars001/identity',
  automaticSilentRenew: true,
  client_id: 'cars-front-client',
  loadUserInfo: true,
  post_logout_redirect_uri: 'http://localhost:3000/',
  redirect_uri: 'http://localhost:3000/authentication/callback',
  response_type: 'code',
  scope: 'openid cars-front-api',
  silent_redirect_uri: 'http://localhost:3000/authentication/silent_callback ',
  triggerAuthFlow: true,
};

export default configuration;

My contextProvider actually give me back state: {url: '/'}

Solved it ! I just put my <BrowserRouter> before  <AuthenticationProvider> :
<BrowserRouter>
    <AuthenticationProvider
      authenticating={Authenticating}
      callbackComponentOverride={Callback}
      configuration={configuration}
      notAuthenticated={NotAuthenticated}
      notAuthorized={NotAuthorized}
    >
      <App />
    </AuthenticationProvider>
  </BrowserRouter>

Now my provider gives me back the context state with the url.
But i got another problem now => I use React-admin for my application. React-admin manages urls internally and puts a # at the beginning of the url : mysite.com/#/books/12
So, when i type mysite.com/#/books/12 => i got '/' in my provider state and redirect at mysite.com/#/
when i type mysite.com/books/12 => i got '/books/12' in my provider state and redirect at mysite.com/books/12#/
I think it's a React-admin problem but i ask anyway if you have a solution with OIDC


Print channel name in learnAnchorPeers

This change set adds printing of the channel name the anchor peers
are part of, in the function learnAnchorPeers.
This change set adds printing of the channel name the anchor peers
are part of, in the function learnAnchorPeers.
Change-Id: I00b8d6a0c40254c943b96bee468a9e19a8270ef2
Signed-off-by: yacovm<EMAIL_ADDRESS>

@yacovm Can you rebase to pick up the change that fixed this failure


UserCmd to string?

Hey, how can i convert cmd's into string? I want to save my cmd's into a txt or ini file, and load back etc..., but i cant covert it into string, can you help me?

cmd?

cmd?

I tried this, but i dont know how can i save that because if i try to put it into WritePrivateProfileString, i get error.
Code:
namespace MovementRB {
	struct Record {
		Vector origin;
		float simulationTime;
		matrix3x4 matrix[256];
	};
	extern std::deque<Record> records[1000];
}

std::deque<MovementRB::Record> MovementRB::records[1000];

MovementRB::Record record{ };

Save:
for (int i = 0; i < recording.size(); i++)
	{
		std::string cframe = "frame";
		cframe = cframe + std::to_string(i);
		//std::string cvector = recording.at(i);
		WritePrivateProfileString("Movement", cframe.c_str(), record, file.c_str());
	}

Movement:
auto recordss = &MovementRB::records[recording.size()];
		recordss[current_recording_frame].push_front(record);

look at config.cpp

When u done make pr please

When u done make pr please

I think i can't make that :/

When u done make pr please

I didnt know how to make it in the easiest way, so i think i cant make that, i make a pr, and if anyone can make save file i add it to update

Hey, i have same problem, idk how to save movement into a file, and i have some problems with the visualize movement positions. Currently i make a pr about that


arch: arm: Enable stack guard before starting main

This patch fixes a hole in the stack guard configuration.  The initial
branch to main is missing the stack guard configuration.
Fixes: Issue #3718
Signed-off-by: Andy Gross<EMAIL_ADDRESS>

Fixes: Issue #3178

is this the right issue?

Fixed the issue number to 3718 instead of 3178.


Clarify documentation around async.map and Request.send

I added a sentence to advanced.rst to help future readers avoid the confusion I expressed in IRC today.

Thank you sir! Make sure to add yourself to AUTHORS. :)


Add guides link in with metadata and rephrase docs link in main body

See https://quarkusio.zulipchat.com/#narrow/stream/187030-users/topic/Extension.20page.20should.20have.20a.20link.20to.20its.20guide/near/442079744

Hmm, the preview didn't trigger, but merging based on local inspection.


How to get image file content (e.g. alt text) from blocks?

This is a general limitation I've hit with KQL. Wondering if you've figured out any workarounds here.
Wasn't able to find anything from looking at the source and docs. Your example here shows how to output images from blocks but not how to get their alt text (or any other field content that's stored on the file entry).

Hey there! It's a bit tricky, as you have noticed. You'll have to fetch images for the current page with KQL to be used in blocks.
Take a look into the starter kit, specifically a notes page: https://github.com/johannschopplich/kirby-nuxt-starterkit/blob/845ecc80ce5c337a6be82acad94d2e87dab5daeb/pages/notes/[...id].vue#L18
With the data of the current page made available globally, we can then access this data (thus, all image data) with the useCurrentPage composable within the image block.
To get image data apart from a block component, take a look into the query for cover.

Thanks @johannschopplich!
Unfortunately the project at hand stores images at the root level of the site, so there's not a page-level image collection to query.
Previously we simply got all images and then used a map (filename to alt text) for outputting the alt text, but this approach doesn't scale (which is why we can't use it anymore).
I'd be nice if Kirby had some type of "auto resolve" feature. The idea is that toFile would always be called when returning an image (or other file) via the API. Unsure of whether to make this an official feature request or not (thoughts welcomed).

I see. Kirby provides all the tools, you will have to write the logic, as auto-resolving is custom logic which probably won't be baked into the Kirby core.
You can add a custom file resolver yourself:
use Kirby\Filesystem\F;

\Kirby\Cms\App::plugin('igregson/resolve-file', [
    'routes' => function ($kirby) {
        return [
            /**
             * Resolve a file by its path
             *
             * @returns array The file data as JSON
             */
            [
                'pattern' => 'resolve-file/(:all)',
                'action' => function ($path) use ($kirby) {
                    if (empty($path)) {
                        return [];
                    }

                    $extension = F::extension($path);

                    if (empty($extension)) {
                        return [];
                    }

                    $id = dirname($path);
                    $filename = basename($path);

                    // Try to resolve image urls for pages and drafts
                    if ($page = $kirby->site()->findPageOrDraft($id)) {
                        return $page->file($filename)->toArray();
                    }

                    // Try to resolve site files at least
                    if ($file = $kirby->site()->file($filename)) {
                        return $file->toArray();
                    }
                }
           ]
        ];
    }
]);

You can now fetch data for a file like image.jpg from the API: /resolve-file/image.jpg. It will return the file data as JSON.
I recommend my kirby-headless-starter for further use and more easy setup of custom routes.

Kirby provides all the tools, you will have to write the logic, as auto-resolving is custom logic which probably won't be baked into the Kirby core.

This seems to be one of the areas where Kirby suffers from not being headless-only/first (i.e. it being a traditional CMS initially and later adding headless features). It seems expected that alt text being returned with images used in blocks would work "out of the box". All the while, knowing that blocks are a new feature in Kirby, perhaps this will come at some point.

Your code helped point me in the right direction for my particular use case.
I've ended up, on the Kirby side, with the below custom endpoint. It takes a filenames property passed in the body. It returns an object, where the each entry's key is a filename and its value is the image's alt text.
'api' => [
   'routes' => function ($kirby) {
      return [
         [
            'pattern' => '/image-alts',
            'method' => 'POST',
            'action' => function () use ($kirby) {
               $body = $kirby->request()->body();

               $imageFiles = $kirby
                  ->site()
                  ->page('images')
                  ->files()
                  ->find($body->get('filenames'));

               $images = [];

               foreach ($imageFiles as $imageFile) {
                  $images[$imageFile->fileName()] = $imageFile
                     ->content()
                     ->alt()
                     ->value();
               }

               return $images;
            },
         ],
      ];
   },
],

Example response:
{
   "quote-backgrounds5.jpeg": "Fruit tree blossoms with blurry background",
   "quote-backgrounds1.jpeg": "Grass in water",
   "quote-backgrounds2.jpeg": "White flowers on branching vegetation",
   "quote-backgrounds4.jpeg": "Flowers on plants with thick green leaves in flats",
}

This is how I'm extracting image strings from the Kirby layout/block objects returned via KQL:
function getKirbyImageFilenames(srcObj) {
   // Returns an array of all Kirby-based image source strings by recursively traversing `srcObj`
   let imagesSources = []

   // Adapted from https://stackoverflow.com/a/722676/1971662
   function traverse(obj) {
      if (obj && typeof obj === 'object') {
         Object.entries(obj).forEach(([key, value]) => {
            // key is either an array index or object key
            traverse(value)
         })
      }
      // Otherwise, `obj` is a string or a number.
      else if (obj && typeof obj === 'string' && obj.startsWith('images/')) {
         imagesSources.push(obj)
      }
   }

   traverse(srcObj)
   return imagesSources.map((i) => i.replace('images/', ''))
}

Thanks again for sharing your insight!


Preserve hidden properties

Setting new hiddenProperties overrides the original defined in the Entity. Merging the original with the new fix the problem.
Also add PHPDoc blocks to EntitySchema methods.

[Current coverage][cc-pull] is 100%

Merging [#4][cc-pull] into [master][cc-base-branch] will not change coverage

File ...ema/EntitySchema.php was modified. more

Misses 0
Partials 0
Hits -1

File ...View/JsonApiView.php (not in diff) was modified. more

Misses 0
Partials 0
Hits -1

@@           master    #4   diff @@
===================================
  Files           2     2
  Lines          74    73     -1
  Methods         8     8
  Messages        8     0     -8
  Branches        0     0
===================================
- Hits           74    73     -1
  Misses          0     0
  Partials        0     0

Powered by Codecov. Last updated by [3236e6a...de90452][cc-compare]
[cc-base-branch]: https://codecov.io/gh/josbeir/cakephp-json-api/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/josbeir/cakephp-json-api/compare/3236e6af22d616d5f5489b0d49ece8bd0fd04192...de90452a04d2e99efa6e830d36186a5c2294873c
[cc-pull]: https://codecov.io/gh/josbeir/cakephp-json-api/pull/4?src=pr

I didn't changed the JsonApiView.php file here but fixed the phpcs error in the pull request #5 so this check can be ignored.

Oh wait, these are unrelated changes to #5, looks like i missed that.
Thanks again @alysson-azevedo !


Design of inputs

As I mentioned in another issue, I was hoping to write a SystemdRunLimits Input, and a couple of questions came up:

Why is Input a class? All of the inputs are just representing ProcessConfiguration -> ProcessConfiguration functions. So they could just be combined via <> rather than anything fancier. E.g.:

run (cmd "mycmd" <> args ["arg1", "arg2"] <> stdinHandle hdl <> workingDir "some-dir")

Type inference would improve, the codebase would be simpler, and the types much easier to read.

Why is the command (and, I would think, also the arguments) not a "proper" argument to run (instead of an Input)? The disadvantages are that a clearly wrong use of run typechecks but throws a runtime error, and that other Inputs that may want to modify the command (e.g.: a Sudo Input), now have to be run in a very specific order which is opaque to the user (and, to me at least, it's harder to read or understand what each command is doing).

(Combined with 2 the above example would be:
run "mycmd" ["arg1", "arg2"] (stdinHandle hdl <> workingDir "some-dir")

And run :: (MonadIO m, Output a) => String -> [String] -> (ProcessConfig -> ProcessConfig) -> m a (though having a newtype for ProcessConfig -> ProcessConfig might be nice).

Interesting. Personally I really like that cradle allows very short syntax for very simple invocations, e.g. run "tree" or run "ls" "." or run (words "ls -la ."). So I think for those your proposed interface would be worse. (I.e. run "tree" [] id, run "ls" ["."] id and run "ls" (words "-ls .") id.)
I definitely do somewhat like the ProcessConfig -> ProcessConfig idea. But again, that would make e.g. run ("tree" :: String) impossible.


feat(config): add support for runtime-defined env vars for rekor endpoint

This PR adds support for runtime-defined environment variables in Next.js, namely the NEXT_PUBLIC_REKOR_DEFAULT_DOMAIN environment variable.
Changes:

Adds getServerSideProps to pass environment variable to the client
Transpiles the patternfly-icons package
Exposes the environment variables globally to window object
Checks that we are not exposing any sensitive information by excluding anything other than vars starting with NEXT_PUBLIC_

In the future, we should switch to App Router and get rid of runtimeConfig, as it is a deprecated Next.js feature.
Relates to issue: SECURESIGN-435

/lgtm


WorkflowEventBinding CRD has no documentation

Summary
It is customary for K8S CRDs to be self documenting, enabling one to run kubectl explain <CRD path> (or use your IDE's features to do so) to assist in defining K8S resources. This is missing from WorkflowEventBinding, making it unnecessarily burdensome to figure out proper usage.
Here's the current output when running kubectl explain WorkflowEventBinding.spec.
GROUP:      argoproj.io
KIND:       WorkflowEventBinding
VERSION:    v1alpha1

FIELD: spec <Object>

DESCRIPTION:
    <empty>

Note: This may apply to other Argo CRDs; this is just the one I'm attempting to use right now.
Use Cases
When implementing Argo event bindings.

Message from the maintainers:
Love this enhancement proposal? Give it a 👍. We prioritise the proposals with the most 👍.

WorkflowEventBinding also appears to be missing from https://argoproj.github.io/argo-workflows/fields/


Remove Kinde Authentication for Future Integration of Passport.js

Describe the feature
Description: The current implementation of Kinde authentication in the frontend is causing conflicts and preventing the successful integration of Passport.js. Additionally, this setup has led to CORS errors that are blocking the backend from functioning properly.
Tasks:
Remove all Kinde authentication-related code from the frontend.
Impact: This change is critical to ensure the proper functionality of the backend and to allow for the planned integration of Passport.js for authentication.
Add ScreenShots

Record

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

go for it @samar12-rad

solved via #169


Update FEATURES.md

Add Graphing Knowledge and possible test case scenarios

@afomi

GraphQL is a query language, often for relational data.

Agreed. But wait there's more.
As the GraphQL home page states:
'GraphQL provides a complete and understandable description of the data in your API.'
Most often this is depicted in a textual manner. Can and should this data also be depicted/depictable visually in 3D? In my mind, yes, GraphQL and Mind Map are different perspectives on the same territory.

Node4j,

If you mention something, kindly always check then send a link to whatever you are talking about.
I do not believe you are referring to this project: https://github.com/jtulach/node4j

@afomi
https://neo4j.com/graph-visualization-neo4j/

They look just like mind maps to me. ;-)
So here is the challenge:
GitHub has a very cool GraphQL API. It enables near real-time no cost transactions with the GitHub severs.
Will we be able to use the GitHub GraphQL API to direct our client-side 3D mind maps so we can take a bunch of components and show and tell you how they should be assembled in 3D and then how to disassemble them and get them to recycling??
BTW, over in Connecticut, er, connect-edit there's some fun going on with your STL files.

Yes, the representation of data can still be viewed as a mindmap. Node graphs are connected with edges and relational data is linked as well. Just optimal at different structures.
I'm not sure how to use GitHub GraphQL can be leveraged. It is more about the how to access resources in their api. We will need our own data store at some point, beyond using .json files hosted via GitHub.
Structuring of putting components together and disassembling can be stored anywhere, but we need to model it first.


Apollo Store as submodule

Proposal: extract Apollo store as separate submodule
Motivation: Apollo store became mature and independent thing with own imperative API, we should consider to move it to separate submodule, so apollo-runtime will be pure for making network calls, apollo-store pure for storing response data. And it will be optional for user in case if he needs only pure network layer.

@digitalbuddha @BenSchwab let me know what do you think?

All these classes will be moved to this module

Good idea. Was hoping to avoid using it altogether if possible. Sometimes app wants just simple graphql client

sgtm

Normalized cache is so tightly coupled with the core Apollo runtime that makes almost impossible to extract it as submodule, the effort of doing this is too much than the benefit. Closing it for now.


Cannot upgrade REMnux VM

Hello!
saltstack.log
I've attached the saltstack log, seems to be some issues regarding
remnux.addon.remnux-addon-version-file
remnux.python3-packages.malwoverview.remnux-python3-packages-malwoverview-config-file
remnux.python3-packages.remnux-python3-packages

@CataTBH, I just issued a new release (v2024.23.1) in attempt to address this issue. Please run remnux upgrade when you get the chance to see if it works as intended.

@CataTBH, I just issued a new release (v2024.23.1) in attempt to address this issue. Please run remnux upgrade when you get the chance to see if it works as intended.

Fixed it.Thank you very much.


Correct truncated charts in internet explorer

Set dimensions of svg using style attribute. Solves the tearing problem sometimes observed when using internet explorer (issues #200 and #226)

Thanks!


StreamBuilder in ConnectionState.waiting after moving widget + hot reload

I've made the following changes the the moor_flutter/example project:
diff --git a/moor_flutter/example/lib/main.dart b/moor_flutter/example/lib/main.dart
index cc3d04b..b153615 100644
--- a/moor_flutter/example/lib/main.dart
+++ b/moor_flutter/example/lib/main.dart
@@ -11,10 +11,11 @@ class MyApp extends StatefulWidget {
   }
 }

+TodoAppBloc bloc;
 // We use this widget to set up the material app and provide an InheritedWidget that
 // the rest of this simple app can then use to access the database
 class MyAppState extends State<MyApp> {
-  TodoAppBloc bloc;

   @override
   void initState() {
@@ -37,7 +38,7 @@ class MyAppState extends State<MyApp> {
             tall: Typography.tall2018,
           ),
         ),
-        home: HomeScreen(),
+        home: TestPage(),
       ),
     );
   }

class TestPage extends StatefulWidget {
  @override
  TestPageState createState() {
    return TestPageState();
  }
}

class TestPageState extends State<TestPage>{

  Stream<List<CategoryWithCount>> stream;

  @override
  void initState() {
    super.initState();
    stream = bloc.db.categoriesWithCount();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: StreamBuilder(
          stream: stream,
          builder: (BuildContext context, AsyncSnapshot<List<CategoryWithCount>> snapshot) {
            print('snapshot.connectionState: ${snapshot.connectionState}');
            print('snapshot.data: ${snapshot.data}');
            return Text('connectionState: ${snapshot.connectionState}. data: ${snapshot.data}');
          }
        ),
      ),
    );
  }
}

Doing a hot reload works as expected and prints:
I/flutter (25408): snapshot.connectionState: ConnectionState.active
I/flutter (25408): snapshot.data: [Instance of 'CategoryWithCount', Instance of 'CategoryWithCount']

However, moving the StreamBuilder to a different part of the widget tree (for example, by wrapping the Center in a Container) and doing a hot reload prints:
I/flutter (25408): snapshot.connectionState: ConnectionState.waiting
I/flutter (25408): snapshot.data: null

Thanks for the report! I was able to reproduce this locally, the problem was that we only emit cached data to the first listener, it should work now.

Ah nice catch! I tried to track it down but the stream API is a bit confusing so I didn't get far.


Use prop-types package

This removes errors for users upgrading to react v16.0.0-alpha.12

Duplicate of https://github.com/react-native-community/react-native-linear-gradient/pull/186


county vaccinations initiated estimated from completed

This PR addresses https://trello.com/c/viK0GcTL/1265-estimate-1st-dose-based-on-cdc-second-dose-for-places-without-1st-dose

 Estimate 1st dose based on CDC second dose for places without 1st dose

Looking at the data update output this needs some work, though your comments on the general structure of the code are welcome.


False position on variable-declaration & exception

My code is something like this :
    try {
      activeDocument.Content = $("textarea#umlDocument").val();
      JUMLY.eval($("textarea#umlDocument"), {
        into: $("div#renderer")
      });
    } catch (_error ) {
      var ex: any = _error;
      $("div#status").text(ex);
   }

I got this:
variable-declaration: '_error' to have a typedef
Which is wrong as according to TS1013, Catch clause parameter cannot have a type annotation

which version of tslint are you using?

I'm seeing this as well:
try {
  console.log("test");
} catch (err) {
  console.error("test");
}

Gives test.ts[3, 13]: expected variable-declaration: 'err' to have a typedef
Using tsling 2.2.0-beta

this was fixed by #422, which will be included in v2.3.0


Markdown PDF and stargazer resizing table

Might be a little late, but nevertheless is driving me nuts.
Whenever I add a stargazer regression table to the markdown (knit as pdf), I only get one long column.
Is there a way to fit the table to the page?
Several forums suggest, that this issue remains untackled by the developers, might this be true, or did someone find a solution?
Thanks in advance.

Dear Björn,
I dont have a solution, but an idea - in case you know how to do it with LaTeX (which I dont):
You can save the LaTeX output of stargazer and manually manipulate it (with LaTeX code that does what you want). The code is explained here:
http://stackoverflow.com/questions/33543159/how-to-align-stargazer-table-to-the-left-when-type-latex
Hope that helps,
Lars

Is this related to having many variables in your model? If so you can omit certain variables from the table to focus on key ones using the omit argument to stargazer.

I've had the same issue, best work around I found was to generate the stargazer output outside of Rmarkdown then copy and paste it into the markdown body and add the latex commands  "\resizebox{\linewidth}{!}{  %% " and  "} %resizebox" to fit the output to page.
i.e....
Example Stargazer Output:
\begin{table}[!htbp] \centering
\caption{}
\label{}
\resizebox{\linewidth}{!}{   %%
\begin{tabular}{@{\extracolsep{5pt}}lc}
\[-1.8ex]\hline
\hline \[-1.8ex]
& \multicolumn{1}{c}{\textit{Dependent variable:}} \
\cline{2-2}
\[-1.8ex] & y \
\hline \[-1.8ex]
x & $-$1.587 \
& (2.701) \
& \
Constant & 50.500$^{}$ \
& (2.911) \
& \
\hline \[-1.8ex]
Observations & 100 \
\hline
\hline \[-1.8ex]
\textit{Note:}  & \multicolumn{1}{r}{$^{}$p$<$0.1; $^{}$p$<$0.05; $^{***}$p$<$0.01} \
\end{tabular}
} %resizebox
\end{table}
This solution comes from- https://stackoverflow.com/questions/16507191/automatically-adjust-latex-table-width-to-fit-pdf-using-knitr-and-rstudio


Ladda button and validator

Hello, I'm working with Ladda buttons for my ASP.Net webforms application. So far they are working perfectly with one only detail.
Suppose that I have a textbox with one validator. I also have a button which will implement the Ladda appearance when clicked. Suppose that I click the button and the validator triggers responding that the textbox is invalid. In this case the the button continues to display the spinner.
Any Idea on how to approach that scenario specifically for ASP.Net webforms will be appreciated.
thank you in advance
Adrian

To have amentaties and products of their own make it  feel important to the customer. As if they have the best and do not need to settle for less.  So unlimited access to buy what they want and need is my advice.


Is there a instruction for how to run this?

This is a brilliant idea to separate runtime from the process flow. But I  am wondering how can I run drone runtime in a kubernetes cluster, is there some instruction or readme file for this?

No. Currently not. It's also WIP and right now rather far from actually being merged into drone.


Responsive Web Design Principles: Create a Media Query - Test won't pass

Challenge Name
Responsive Web Design Principles: Create a Media Query
https://beta.freecodecamp.org/en/challenges/responsive-web-design-principles/create-a-media-query
Issue Description
Even though the correct answer was submitted it shows the error message, the output of the code is changed properly in the preview panel but the instructions panel is still showing the error message as "Declare a @media query for devices with a height less than or equal to 800px".
Browser Information

Browser Name, Version:  Google Chrome, Version 65.0.3318.0 (Official Build) canary (64-bit)
Operating System: MacOS High Sierra
Mobile, Desktop, or Tablet: Desktop

Your Code

@media (max-width: 800px) {
     p {
       font-size: 10px;
    }
  }

Screenshot

the same issue for me....
even I entered correct answer, the test still fail...

Please report a fresh issue with the details on the tracker.


[SPARK-50565][SS][TESTS] Add transformWithState correctness test

What changes were proposed in this pull request?

As title
Why are the changes needed?

Test coverage
Does this PR introduce any user-facing change?

No
How was this patch tested?

Test only addition
Was this patch authored or co-authored using generative AI tooling?

No

Thanks! Merging to master.


Can I user nodejs-polars also in the browser

Hi,
I would love to use the library also in the frontend, but receive module not found messages for "none" browser libs like fs, path and so on..
Is it possilbe to configure/import the library also into a web application and run it in the browser?
Kind Regards,
Oliver

You are probably going to run into some sort of browser security issue trying to execute this lib in a browser.
I would suggest using this lib in a server side API and interacting with it from a JS front end like React.

Thanks for the clarification...

given that it's just wrangling data, what are the aspects that block it from working in the browser? I know things like file loading won't work the same, but general data wrangling should be ok right?


Try to compact else if again

Should fix #47 on both Mac and Linux this time.
I also simplified (I think) the if_stack code by just using a counter and only incrementing it on IF - not on ELSE IF.

The if_stack isn't incremented in my ELSE IF code. Does this branch work with LBI? If so, just go ahead and merge it :+1: :smile:

Yes it does! Awesome project btw!
$ uname
Linux
$ ldpl LBI.ldpl
LDPL: Compiling...
* File(s) compiled successfully.
* Saved as LBI-bin
$ cat ok.bf
++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.
$ ./LBI-bin ok.bf
Hello World!

Awesome! Thank you very much!


State Preservation Issue with Nested Navigators in Voyager

I am currently working on a project that uses Voyager for navigation. My application has a hierarchical structure of navigators and screens, which is causing an issue with state preservation.
Here’s the structure of my navigators and screens:
A root Navigator is present at the main level.
Inside this root Navigator, there is a HomeScreen.
Within the HomeScreen, I have another TabNavigator which contains three tabs: TabA, TabB, and TabC.
In TabA, I have constructed a TabAScreenModel using the getScreenModel() composable function. This TabAScreenModel is provided by Koin.
The issue arises when I navigate from HomeScreen (which is currently displaying TabA) to another screen (ScreenX) using the parent navigator. ScreenX is not inside the TabNavigator, but is instead a part of the root navigator.
When I navigate back to HomeScreen from ScreenX, the TabAScreenModel associated with TabA is destroyed and re-constructed. This results in the loss of its previous state.
I would like to preserve the existing state of TabAScreenModel when navigating away from HomeScreen and then returning to it. Any guidance or suggestions on how to achieve this would be greatly appreciated.

I've encountered this as well, by the way. I have Voyager pretty deeply integrated into my app, so I may just end up having to submit a fix PR myself here sometime soon.

Have you tried to set disposeNestedNavigators = false in the root navigator?

To obtain the parent navigator I am using this => val parentNavigator = LocalNavigator.currentOrThrow.parent and is working for me.
@creativedrewy

@shpasha how exactly has this be done? I have exactly the similar structure, and when opening ScreenX for full screen in root navigator, tabs are hidden, after returning back to tabs, all viewmodels are recreaded.
As a workaround I store screenViewModels in RootNavigator


Tests and diagnostic integration

cc @Florin-Popescu from https://github.com/microsoft/vscode/issues/107467#issuecomment-767521331, and @connorshea from https://github.com/microsoft/vscode/issues/107467#issuecomment-699096166
My current plan is to make testing separate from diagnostics on an API level, as their lifetime and properties are different than those of diagnostics. However I will have an option (on by default) show test errors/failures the Problems panel and navigable using the diagnostics keybindings.

When implementing a test provider, does the test provider need to update the location of the diagnostic as the user edits the file?
In other words, if I had an assertion failure and I add a newline above the diagnostics, does the test provider need to update the TestItem to have the location adjusted?

After exploring testing output and peeks some more, I now think that a dedicated peek and flow is probably better


Add [...]Request.cs objects to SpiceDb.Models or remove all and use Authzed.Api.V1 classes

Having methods with a combination of fields and Model objects that are not compatible with Authzed.Api.V1 classes is hard to use.:
 public async IAsyncEnumerable<SpiceDb.Models.LookupResourcesResponse> LookupResources(string resourceType, string permission, ResourceReference subject, Dictionary<string, object>? context = null, ZedToken? zedToken = null, CacheFreshness cacheFreshness = CacheFreshness.AnyFreshness)

SpiceDbClient.LookupResources() method does not accept/have a LookupResourcesRequest object from SpiceDb.Models nor does accept the Authzed.Api.V1.LookupResourcesRequest object.
Also if you decide to have your own in SpiceDb.Models, maybe name them a bit differently (Eg: LookupResourcesReq instead of LookupResourcesRequest, LookupResourcesRes instead of LookupResourcesResponse, etc)

Next I'll be adding unit tests and validating the correctness of each method.

The interface is of bigger importance, as I'd like to leave it open to potentially having clients for other implementations of Zanzibar (Keto, Permify, etc). It would require some name changes to refactor but I wanted at least one layer of abstraction from the grpc client.

Thank maybe you should publish 2 Nuggets: SpiceDb.Client and SpiceDb.Wrapper.
Or if you want some others in the future: [Zanzibar|FGA|FineGrainedAccess|RBAC].Wrapper.SpiceDb and [Zanzibar|FGA|FineGrainedAccess|RBAC].Wrapper.SpiceDb.Client.
PS: I havent tested Keto or Permify, but I have tested OpenFGA and compared to SpiceDb. Altotugh they are at V2 and have Auth0 behind, they are still behind (they have bugs in the multiple list of objects retrieval) ..at least 1 month ago they had.

I'm not keen on doing 2 of these.  If someone wants a plain grpc client they can just grab the proto files and generate one for themselves.  There are some things that I'm adding that are more ease of use issues.
For one, I don't want to be tying all of my code to specific permission system prefixes/slugs.  I'm looking at deploying the same software but with configurable prefix slugs.
So creating a client would now require a slug:
var client = new SpiceDbClient(secrets.ServerAddress, secrets.Token, "arch");

And then instead of:
var bobCanRead = client.CheckPermission(new Permission("arch/document:firstdoc#reader@arch/user:bob"));

I want the more generic (although the above would still certainly work):
var bobCanRead = client.CheckPermission(new Permission("document:firstdoc#reader@user:bob"));

The prefix slug will be attached to the initialized client and every resource/subject type will be enforced to begin with that prefix.  Furthermore, the schema that is imported can come straight out of the Authzed playground and any imported relationships don't need prefixes either.
Then I can completely control the applied schema with a config file.

Also..
client.AddRelationship("document:firstdoc#reader@user:kevin");

Creates the relationship arch/document:firstdoc#reader@arch/user:kevin
The original API methods are still available but wrapped.  I'm working on the testing fixtures next.


Update in hacs

Describe the bug
I updated the integration from hacs. Now everything is unavailable. It worked before the update.
I can login to dab to the live app so it seems I've been logged out in home assistant.
Should I uninstall the integration although I cannot see how to uninstall?
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

As a workaround for this issue, could you please try the following:
Open the DAB Pumps integration, press '...' and choose remove. Then restart HA.

All sensor history will still be there after this process; it is how I update during development because I cannot update when my work in progress is not yet on GitHub, and I cannot put it on GitHub while it is still in progress...
Please let me know whether this workaround resolves your issue, it will give me clues about what went wrong during the update.

Thanks for the reply Anko,
That didn't work so I deleted it and reinstalled it but then no devices
or entities?
Uninstalled and tried reinstalling the previous version but same result.
I'll wait and see if anyone else has trouble.
Regards,
Norman Deards
t: 0488 718 508
e: @.***
On Mon, 22 Jan 2024, 3:43 pm Anko Hanse, @.***> wrote:

As a workaround for this issue, could you please try the following:
Open the DAB Pumps integration, press '...' and choose remove. Then
restart HA.

All sensor history will still be there after this process; it is how I
update during development because I cannot update when my work in progress
is not yet on GitHub, and I cannot put it on GitHub while it is still in
progress...
Please let me know whether this workaround resolves your issue, it will
give me clues about what went wrong during the update.
—
Reply to this email directly, view it on GitHub
https://github.com/ankohanse/hass-dab-pumps/issues/10#issuecomment-1903239884,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA4QTMPNE7TARNCCAXVUBXLYPXU7NAVCNFSM6AAAAABCEQX5LCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMBTGIZTSOBYGQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

I restored from last night's backup.
I'll wait before updating your dab integration still. 😁
Regards,
Norman Deards
t: 0488 718 508
e: @.***
On Mon, 22 Jan 2024, 3:43 pm Anko Hanse, @.***> wrote:

As a workaround for this issue, could you please try the following:
Open the DAB Pumps integration, press '...' and choose remove. Then
restart HA.

All sensor history will still be there after this process; it is how I
update during development because I cannot update when my work in progress
is not yet on GitHub, and I cannot put it on GitHub while it is still in
progress...
Please let me know whether this workaround resolves your issue, it will
give me clues about what went wrong during the update.
—
Reply to this email directly, view it on GitHub
https://github.com/ankohanse/hass-dab-pumps/issues/10#issuecomment-1903239884,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA4QTMPNE7TARNCCAXVUBXLYPXU7NAVCNFSM6AAAAABCEQX5LCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMBTGIZTSOBYGQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

Odd, and unfortunately not much information for me to analyse why this happened.

Are there any errors or warnings showing in the logs at the time you did the upgrade and then reinstall (main menu -> logbook, or somewhere in the filesystem) ?

Also, what type of pump do you have?

Can you do a 'download diagnostic' from the downgraded version (I hope that version already had that functionality) and send me the resulting file?

I restored from backup but here is some info from before restoring.
2024-01-22 14:36:50.289 WARNING (SyncWorker_1) [homeassistant.loader] We
found a custom integration bureau_of_meteorology which has not been tested
by Home Assistant. This component might cause stability problems, be sure
to disable it if you experience issues with Home Assistant
2024-01-22 14:36:50.290 WARNING (SyncWorker_1) [homeassistant.loader] We
found a custom integration dabpumps which has not been tested by Home
Assistant. This component might cause stability problems, be sure to
disable it if you experience issues with Home Assistant
2024-01-22 14:36:50.290 WARNING (SyncWorker_1) [homeassistant.loader] We
found a custom integration hacs which has not been tested by Home
Assistant. This component might cause stability problems, be sure to
disable it if you experience issues with Home Assistant
2024-01-22 14:36:50.291 WARNING (SyncWorker_1) [homeassistant.loader] We
found a custom integration localtuya which has not been tested by Home
Assistant. This component might cause stability problems, be sure to
disable it if you experience issues with Home Assistant
2024-01-22 14:36:50.740 WARNING (MainThread)
[homeassistant.components.lovelace] Lovelace is running in storage mode.
Define resources via user interface
2024-01-22 14:37:27.695 WARNING (MainThread) [homeassistant.helpers.entity]
Updating state for calendar.ndeards_gmail_com (<class
'homeassistant.components.google.calendar.GoogleCalendarEntity'>) took
2.297 seconds. Please create a bug report at
https://github.com/home-assistant/core/issues?q=is%3Aopen+is%3Aissue+label%3A"integration%3A+google"
2024-01-22 14:37:29.327 WARNING (MainThread)
[homeassistant.components.songpal.media_player] [Sony Audio5097(
http://<IP_ADDRESS>:10000/sony)] Unable to connect
2024-01-22 14:37:29.355 WARNING (MainThread)
[homeassistant.components.media_player] Platform songpal not ready yet:
Unable to do POST request: Cannot connect to host <IP_ADDRESS>:10000
ssl:default [Connect call failed ('<IP_ADDRESS>', 10000)]: None; Retrying
in background in 30 seconds
2024-01-22 14:37:29.362 ERROR (MainThread)
[homeassistant.components.camera] Error requesting stream: Camera not found
2024-01-22 14:37:29.466 WARNING (MainThread) [aioecowitt.server] Unhandled
sensor type heap value 26084
2024-01-22 14:37:30.971 WARNING (MainThread)
[homeassistant.components.media_player] Setup of media_player platform
dlna_dmr is taking over 10 seconds.
2024-01-22 14:37:35.457 ERROR (MainThread)
[homeassistant.components.sensor] Error while setting up dabpumps platform
for sensor
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py",
line 360, in _async_setup_platform
await asyncio.shield(task)
File "/config/custom_components/dabpumps/sensor.py", line 54, in
async_setup_entry
await helper.async_setup_entry(Platform.SENSOR, create_entity,
async_add_entities)
File "/config/custom_components/dabpumps/helper.py", line 119, in
async_setup_entry
entity = create_entity(self.coordinator, self.install_id, object_id,
device, params, status)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/dabpumps/sensor.py", line 61, in
create_entity
return DabPumpsSensor(coordinator, install_id, object_id, device,
params, status)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/dabpumps/sensor.py", line 85, in init
self._update_attributes(device, params, status, True)
File "/config/custom_components/dabpumps/sensor.py", line 138, in
_update_attributes
attr_unit = self._convert_to_unit(params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/dabpumps/sensor.py", line 245, in
_convert_to_unit
_LOGGER.warn(f"DAB Pumps encountered a unit or measurement '{unit}'
that may not be supported by Home Assistant. Please contact the integration
developer to have this resolved.")
^^^^
NameError: name 'unit' is not defined
2024-01-22 14:37:56.475 WARNING (MainThread) [zigpy.application] Zigbee
channel 15 utilization is 85.82%!
2024-01-22 14:37:56.476 WARNING (MainThread) [zigpy.application] If you are
having problems joining new devices, are missing sensor updates, or have
issues keeping devices joined, ensure your coordinator is away from
interference sources such as USB 3.0 devices, SSDs, WiFi routers, etc.
2024-01-22 14:37:57.175 ERROR (MainThread) [homeassistant.helpers.event]
Error while processing template:
Template<template=({{(states('sensor.headermean') | float ) | round(2) }})
renders=2>
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/template.py", line
1984, in forgiving_float_filter
return float(value)
^^^^^^^^^^^^
ValueError: could not convert string to float: 'unavailable'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/template.py", line
567, in async_render
render_result = _render_with_context(self.template, compiled, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/template.py", line
2305, in _render_with_context
return template.render(**kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/jinja2/environment.py",
line 1301, in render
self.environment.handle_exception()
File "/usr/local/lib/python3.11/site-packages/jinja2/environment.py",
line 936, in handle_exception
raise rewrite_traceback_stack(source=source)
File "
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/template.py", line
693, in async_render_to_info
render_info._result = self.async_render(
^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/template.py", line
569, in async_render
raise TemplateError(err) from err
homeassistant.exceptions.TemplateError: ValueError: Template error: float
got invalid input 'unavailable' when rendering template
'{{(states('sensor.headermean') | float ) | round(2) }}' but no default was
specified
2024-01-22 14:37:57.184 ERROR (MainThread)
[homeassistant.components.template.template_entity]
TemplateError('ValueError: Template error: float got invalid input
'unavailable' when rendering template '{{(states('sensor.headermean') |
float ) | round(2) }}' but no default was specified') while processing
template 'Template<template=({{(states('sensor.headermean') | float ) |
round(2) }}) renders=4>' for attribute '_attr_native_value' in entity
'sensor.template_test_water_pressure'
2024-01-22 14:37:57.186 ERROR (MainThread) [homeassistant.helpers.event]
Error while processing template:
Template<template=({{((states('sensor.headermean') | float - 1.5) * 400 |
float ) | round (0) }}) renders=2>
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/template.py", line
1984, in forgiving_float_filter
return float(value)
^^^^^^^^^^^^
Regards,
Norman Deards
t: 0488 718 508
e: @.***
On Tue, 23 Jan 2024, 7:51 am Anko Hanse, @.***> wrote:

Odd, and unfortunately not much information for me to analyse why this
happened.

Are there any errors or warnings showing in the logs at the time you
did the upgrade and then reinstall (main menu -> logbook, or somewhere in
the filesystem) ?
2.
Also, what type of pump do you have?
3.
Can you do a 'download diagnostic' from the downgraded version (I hope
that version already had that functionality) and send me the resulting file?
—
Reply to this email directly, view it on GitHub
https://github.com/ankohanse/hass-dab-pumps/issues/10#issuecomment-1904786189,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA4QTMP5K6T22VWEWPUKVVTYP3GO3AVCNFSM6AAAAABCEQX5LCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMBUG44DMMJYHE
.
You are receiving this because you authored the thread.Message ID:
@.***>

The pump is an Esybox mini3

Thank you, that trace is very helpful and precisely indicates where I made a coding mistake.
Will try to come with a fixed version in the next days and will add a comment in this issue once it is available

A new version v2024.01.2 is now available.
Please let me know if you still encounter issues with this new version.


NullPointerException will be thrown if defined custom scope and factories

package my

import com.softwaremill.macwire.Macwire
import com.softwaremill.macwire.scopes.{ProxyingScope, Scope}

import scala.collection.mutable

class Group {
  def helloGroup(): Unit = {
    println("Hello group")
  }
}

object UserServiceFactory {
  type UserService = UserServiceFactory#create
}

class UserServiceFactory(group: Group) {
  case class create() {
    def helloService() = group.helloGroup()
  }
}

class User(userServiceFactory: UserServiceFactory) {
  def helloUser() = userServiceFactory.create().helloService()
}

trait Module extends Macwire {
  lazy val group = projectScope(wire[Group])
  lazy val userServiceFactory = projectScope(wire[UserServiceFactory])
  lazy val user = projectScope(wire[User])
  def projectScope: Scope = new ProjectScope
}

class ProjectScope extends ProxyingScope {
  private val map = mutable.HashMap[String, Any]()
  override def get[T](key: String, createT: => T): T = {
    map.get(key) match {
      case Some(v) => v.asInstanceOf[T]
      case _ => val v = createT
        map.put(key, v)
        v
    }
  }
}

object Main extends App with Module {
  user.helloUser()
}

When run it, it will throw exception:
Exception in thread "main" java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at com.softwaremill.macwire.scopes.ProxyingScope$$anon$1.invoke(ProxyingScope.scala:16)
	at my.User_$$_jvst16_0.helloUser(User_$$_jvst16_0.java)
	at my.Main$.delayedEndpoint$my$Main$1(User.scala:48)
	at my.Main$delayedInit$body.apply(User.scala:47)
	at scala.Function0$class.apply$mcV$sp(Function0.scala:40)
	at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12)
	at scala.App$$anonfun$main$1.apply(App.scala:76)
	at scala.App$$anonfun$main$1.apply(App.scala:76)
	at scala.collection.immutable.List.foreach(List.scala:381)
	at scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:35)
	at scala.App$class.main(App.scala:76)
	at my.Main$.main(User.scala:47)
	at my.Main.main(User.scala)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)
Caused by: java.lang.NullPointerException
	at my.UserServiceFactory$create.helloService(User.scala:20)
	at my.User.helloUser(User.scala:25)
	... 22 more

One way to fix it, is to add val to parameters of the factories:
class UserServiceFactory(val group: Group)
class User(val userServiceFactory: UserServiceFactory)

Any thoughts?

It seems that there's a problem when using both proxies and nested-case classes. I don't think it's a problem with MacWire itself, rather some interaction between the way nested case classes are compiled and the dynamic proxying mechanism from java.
However, I think factories can be better expressed using methods inside modules or plain methods inside classes - and that also solves the NPE problem.

Could you give me one example?
I use the case class create approach because I saw an article recommended that, not sure if there is any other better solution?

Yes, the approach with the case classes was kind of an expirment, it works for some cases but overall the code can end up being confusing. Take a look here: http://di-in-scala.github.io/#factories there are two examples on how to create factories

@adamw thanks for the link, but I couldn't understand the second example well:
trait StationModule {
      def trainStation(name: Name) = wire[TrainStation]

      lazy val trainDispatch = wire[TrainDispatch]

      // dependencies of the module
      def trainShunter: TrainShunter
      def trainLoader: TrainLoader
}

We defined a factory method trainStation in a trait, but how can I use it as a dependency in other classes?
Say I have another class which want the factory to create a trainStation:
class City(val trainShunter: TrainShunter, val trainLoader: TrainLoader) extends StationModule {
    val traintStation1 = trainStation(name1)
    val traintStation2 = trainStation(name2)
}

What should I put in the ??? part? Does the City class need to extends the StationModule trait, like:
class City(trainStationFactory: ???) {
    val traintStation1 = trainStationFactory.apply(name1)
    val traintStation2 = trainStationFactory.apply(name2)
}

So here I would rather use the first approach. Modules should only be extended when you wire the whole application, not by individual classes. That is, define a type of your factory and a value:
package object my.package { // or anywhere else where the definition will be visible
   type TrainStationFactory = Name => TrainStation
}
trait StationModule {
   val trainStation = (name: Name) => wire[TrainStation]
}

class City(..., tsf: TrainStationFactory) {
   val trainStation1 = tsf(name1)
}

Thanks, so we can just define a function, it's also a very good approach


docs: Adds administrator manual

This commit adds a new top-level category for the "administrator manual". This is a parallel category to the "user manual" and "developer manual" being added in #6869
This commit:

transfers the CI code samples from the "user manual -> CI" section to a new "integrations" section

it also adds pages for Tekton and Kubernetes integrations based on the guides at https://archive.docs.dagger.io/0.9/194031/kubernetes, https://archive.docs.dagger.io/0.9/237420/ci-architecture-kubernetes and https://archive.docs.dagger.io/0.9/213240/tekton
redirections are in place for the changes; however note that this will impact some of the links on https://dagger.io/integrations @mircubed @d3rp3tt3

transfers administration-related pages from the "user manual -> Dagger Cloud" section to an "admin manual -> Dagger Cloud" section

redirections are in place for the changes; however note that this will impact the docs link in https://dagger.cloud @d3rp3tt3

transfers content related to setting up a custom runner/custom registry mirror from the operator guide to an "admin manual -> Dagger Engine" section
adds a new "admin manual -> tutorials" section for administrator-related tutorials

it populates this "tutorials" section with a slightly-revised version of the content at

~~https://archive.docs.dagger.io/0.9/934191/eks-github-karpenter~~
~~https://archive.docs.dagger.io/0.9/488564/openshift-gitlab~~
~~https://github.com/dagger/dagger/blob/main/core/docs/d7yxc-operator_manual.md~~

@shykes please review and let me know your thoughts. A few questions:

Should "integrations" be moved up on level ie. to the top level of the nav tree?
Should the list of integration be further categorized?

As discussed live today with @vikram-dagger.
Note: I recommend breaking this up in 2 PRs:

Merge new admin manual without tutorials section. This can be fast-tracked.
Add contents from the tutorial section, merged into integrations content. This can happen later.

OK. I have removed the tutorials from the current PR and noted the pending items in Linear for follow-up in a separate PR.

@shykes please re-review - thanks!

Doing a quick pass now - OK to merge before if you want to get this out @vikram-dagger.

Doing a quick pass now - OK to merge before if you want to get this out @vikram-dagger.

If possible, I'm going to wait to merge this until #6869 is also approved, because there are some interdependencies between the two PRs. eg. the Integrations section in this manual overrides the CI section in the user manual in #6869 and eg. language consistency, because it will be odd to see a user "guide" and an admin "manual" coexisting in the nav bar.


Cat state separation

@tomohiro-soejima are you interested in continuing?
I allowed myself to rebase main into this branch, so the tests can run

Sorry about dropping this! Yes, I'd like to continue working on this. I can probably take a look again sometime next week.

great! just @ me here if i can help.