422: "value is not a valid dict" on Form() BaseModel validation - @app.post uses Path(), File() and Form() - Request called from SwaggerUI

First Check

[X] I added a very descriptive title to this issue.
[X] I used the GitHub search to find a similar issue and didn't find it.
[X] I searched the FastAPI documentation, with the integrated search.
[X] I already searched in Google "How to X in FastAPI" and didn't find any information.
[X] I already read and followed all the tutorial in the docs and didn't find an answer.
[X] I already checked if it is not related to FastAPI but to Pydantic.
[X] I already checked if it is not related to FastAPI but to Swagger UI.
[X] I already checked if it is not related to FastAPI but to ReDoc.

Commit to Help

[X] I commit to help with one of those options 👆

Example Code
from enum import Enum

from fastapi import (
    FastAPI,
    File,
    UploadFile,
    Form,
)
from pydantic import BaseModel, Field

app = FastAPI()

# Models
class ModelProcessor(str, Enum):
    CPU = "cpu"
    GPU = "gpu"
    TPU = "tpu"
    DEFAULT = CPU

class ModelThresholds(BaseModel):
    confidence: float = Field(0.5, ge=0.0, le=1.0, descritpiton="Confidence Threshold")
    nms: float = Field(
        0.4, ge=0.0, le=1.0, description="Non-Maximum Suppression Threshold"
    )

class ModelOptions(BaseModel):
    processor: ModelProcessor = Field(None, description="Processor to use for model")
    height: int = Field(
        416, ge=1, description="Height of the input image (resized for model)"
    )
    width: int = Field(
        416, ge=1, description="Width of the input image (resized for model)"
    )
    square: bool = Field(False, description="Zero pad the image to be a square")
    fp_16: bool = Field(False, description="model uses Floating Point 16 Backend (EXPERIMENTAL!)")

    thresholds: ModelThresholds = Field(
        default_factory=ModelThresholds, description="Thresholds for the model"
    )

@app.post("/detect/{model_uuid}", summary="Run detection on an image")
async def object_detection(
        model_uuid: str,
        model_options: ModelOptions = Form(),
        image: UploadFile = File(..., description="Image to run the ML model on"),
):
    print(f"Running detection on image '{image.filename}'")
    return {"filename": image.filename}

if __name__ == "__main__":
    import uvicorn

    uvicorn.run(app, host="<IP_ADDRESS>", port=5001)

Description
What I am doing

Open browser and head to http://localhost:5001/docs to open the SwaggerUI
Try out the only defined endpoint, you can enter any string into model_uuid field and any image for the image: UploadFile, the model_options is prefilled with proper JSON based upon the BaseModel.
Hit execute, a '422: Unprocessable Entity' error is returned.

What is happening
Error returned is 422: Unprocessable Entity ->
{
  "detail": [
    {
      "loc": [
        "body",
        "model_options"
      ],
      "msg": "value is not a valid dict",
      "type": "type_error.dict"
    }
  ]
}

What I expect to happen
I expect that the return statement is returned with a 200 response code.
Operating System
Linux
Operating System Details
No response
FastAPI Version
0.79.0
Python Version
3.10.6
Additional Context

I don't think we can use a Pydantic model with Form() in a straightforward way. I will verify anyway

Hi all.

Hi! As described in documentation:
https://fastapi.tiangolo.com/tutorial/request-forms-and-files/

You can declare multiple File and Form parameters in a path operation, but you can't also declare Body fields that you expect to receive as JSON, as the request will have the body encoded using multipart/form-data instead of application/json.
This is not a limitation of FastAPI, it's part of the HTTP protocol.

The workaround for this would be to send JSON as a string and parse it on your own. But I'm not sure if it's recommended.

Hi! As described in documentation:
https://fastapi.tiangolo.com/tutorial/request-forms-and-files/

You can declare multiple File and Form parameters in a path operation, but you can't also declare Body fields that you expect to receive as JSON, as the request will have the body encoded using multipart/form-data instead of application/json.
This is not a limitation of FastAPI, it's part of the HTTP protocol.

The workaround for this would be to send JSON as a string and parse it on your own. But I'm not sure if it's recommended.

Hi, I did see this in the docs but I was not certain of if that applied as in the same bit of docs it describes using Form() for JSON? Or maybe I am misunderstanding?

@baudneo any reason why you want ModelOptions to be form data instead of JSON?

The only limitation here is you will not be able to have nested JSONs within form.
from enum import Enum
from typing import Type
import inspect

from fastapi import (
    FastAPI,
    File,
    UploadFile,
    Form, Depends,
)
from pydantic import BaseModel, Field

app = FastAPI()

def as_form(cls: Type[BaseModel]):
    new_parameters = []

    for field_name, model_field in cls.__fields__.items():
        model_field: ModelField  # type: ignore

        new_parameters.append(
             inspect.Parameter(
                 model_field.alias,
                 inspect.Parameter.POSITIONAL_ONLY,
                 default=Form(...) if not model_field.required else Form(model_field.default),
                 annotation=model_field.outer_type_,
             )
         )

    async def as_form_func(**data):
        return cls(**data)

    sig = inspect.signature(as_form_func)
    sig = sig.replace(parameters=new_parameters)
    as_form_func.__signature__ = sig  # type: ignore
    setattr(cls, 'as_form', as_form_func)
    return cls

# Models
class ModelProcessor(str, Enum):
    CPU = "cpu"
    GPU = "gpu"
    TPU = "tpu"
    DEFAULT = CPU

class ModelThresholds(BaseModel):
    confidence: float = Field(0.5, ge=0.0, le=1.0, descritpiton="Confidence Threshold")
    nms: float = Field(
        0.4, ge=0.0, le=1.0, description="Non-Maximum Suppression Threshold"
    )

class ModelOptions(BaseModel):
    processor: ModelProcessor = Form(None, description="Processor to use for model")
    height: int = Form(
        416, ge=1, description="Height of the input image (resized for model)"
    )
    width: int = Form(
        416, ge=1, description="Width of the input image (resized for model)"
    )
    square: bool = Form(False, description="Zero pad the image to be a square")
    fp_16: bool = Form(False, description="model uses Floating Point 16 Backend (EXPERIMENTAL!)")

    # thresholds: ModelThresholds = Form(...)

@app.post("/detect/{model_uuid}", summary="Run detection on an image")
async def object_detection(
        model_uuid: str,
        model_options: ModelOptions = Depends(),
        image: UploadFile = File(..., description="Image to run the ML model on"),
):
    print(f"Running detection on image '{image.filename}'")
    return {"filename": image.filename}

if __name__ == "__main__":
    import uvicorn

    uvicorn.run(app, host="<IP_ADDRESS>", port=5001)

@iudeen - I am just following what the docs say about uploading an image with extra data -> https://fastapi.tiangolo.com/tutorial/request-forms-and-files/
Perhaps I am misunderstanding though?

Examples in documentation have str type of Form. You've used ModelOptions.
You can use @iudeen's solution, but you can't nest your models.
Or send JSON as a string if you have to nest:
@app.post("/detect/{model_uuid}", summary="Run detection on an image")
async def object_detection(
        model_uuid: str,
        json_as_str: Json = Form(),  # from pydantic import Json
        image: UploadFile = File(..., description="Image to run the ML model on"),
):
    print(f"Running detection on image '{image.filename}'")
    return {"filename": image.filename}

which will result in this:

Thank you for that, I am just trying to understand my error. So Form() will only accept str input? pydantic Json will take JSON formatted as a str and load it into a python dict?
Meaning I would need to instantiate a ModelOptions object using ModelOptions(**json_as_str) and then pass it to whatever function?

pydantic Json will take JSON formatted as a str and load it into a python dict?

Yes. I haven't tested it, but I guess you can do something like:
@app.post("/detect/{model_uuid}", summary="Run detection on an image")
async def object_detection(
        model_uuid: str,
        model_options: Json = Form(),
        image: UploadFile = File(..., description="Image to run the ML model on"),
):
    print(f"Running detection on image '{image.filename}'")
    options = ModelOptions.parse_obj(model_options)
    return {"filename": image.filename}

and options would be an instance of ModelOptions.
I can't provide answers for other questions, since I'm not sure.

Thank you for the help, I am testing a few things out with the supplied options. Appreciate it very much @iudeen and @mbroton!

@baudneo one last attempt to get as close as you want this to be. This handles everything.
import json
from enum import Enum
from typing import Type, Dict, Optional
import inspect

from fastapi import (
    FastAPI,
    File,
    UploadFile,
    Form, Depends,
)

from dataclasses import dataclass, field

from pydantic import BaseModel

app = FastAPI()

# Models
class ModelProcessor(str, Enum):
    CPU = "cpu"
    GPU = "gpu"
    TPU = "tpu"
    DEFAULT = CPU

class ModelThresholds(BaseModel):
    confidence: float = Form(0.5, ge=0.0, le=1.0, descritpiton="Confidence Threshold")
    nms: float = Form(
        0.4, ge=0.0, le=1.0, description="Non-Maximum Suppression Threshold"
    )

@dataclass
class ModelOptions:
    processor: ModelProcessor = Form(None, description="Processor to use for model")
    height: int = Form(
        416, ge=1, description="Height of the input image (resized for model)"
    )
    width: int = Form(
        416, ge=1, description="Width of the input image (resized for model)"
    )
    square: bool = Form(False, description="Zero pad the image to be a square")
    fp_16: bool = Form(False, description="model uses Floating Point 16 Backend (EXPERIMENTAL!)")

    thresholds: Optional[str] = Form(ModelThresholds().json())

@app.post("/detect/{model_uuid}", summary="Run detection on an image")
async def object_detection(
        model_uuid: str,
        model_options: ModelOptions = Depends(),
        image: UploadFile = File(..., description="Image to run the ML model on"),
):
    threshold = ModelThresholds(**json.loads(model_options.thresholds))
    print(threshold.dict())
    print(f"Running detection on image '{image.filename}'")
    return {"filename": image.filename}

if __name__ == "__main__":
    import uvicorn

    uvicorn.run(app, host="<IP_ADDRESS>", port=5001)


Improved Camera Support

It appears that PlayCanvas does not support off-center projection, nor fish-eye projections, etc. Also, the API for LookAt does not contain eyePos. I'd like to suggest allowing the ViewMatrix and ProjectMatrix to be set arbitrarily by developers.

BTW, you can't make fish-eye projection with just matrices, because it's not linear, it's usually simulated with pixel shader, or tessellated geometry and similar vertex shader.

Thank you for pointing that out. I was actually discussing in a general sense. My petition to the team is that the design should not inhibit developers, if possible.

I totally agree that there should be no limitations, and developer should have possible access to as many properties as possible, not everything should be publicly exposed though.
So potentially it is possible already, but by inspecting actual data and modifying not exposed values.

Just a point in response to:

Also, the API for LookAt does not contain eyePos.

You set eyePos by simply using the setPosition/setLocalPosition functions. e.g.:
cameraEntity.setPosition(1, 1, 1);
cameraEntity.lookAt(0, 0, 0);

Closing this ticket due to lack of activity.


Animation Events weird firing behavior

Here is what my animation clips look like in Unity.  All of these events are baked into the clips themselves before being loaded into the AnimationPlayer:
Timeline below with events A() and D():
0               1               2               3               4               5               6               7
<---------------------A()--------------------------------D()------------------------------>
The events DO fire when I play the animation, however they fire like this
frame    | event firings
0             D() and A() simultaneously fire (backward order) immediately around the first frame of the animation.
1             --
2             A() normal/expected
3             --
4             --
5             D() normal/expected
I'm going to attempt to ignore the first 2 firings because I haven't figured out what is causing this yet.  If you can figure it out, let me know :)

Hi!
I can't reproduce this. If I put in two events, they fire as expected. Could you post the stack trace of the events that fire at frame 0?
I just did a look over the Animation Event system due to this issue, and while I didn't find the cause of the bug, I did clean up some strange handling of the special case of the default state having an animation event registered at time 0, which is the only thing I could see that could cause something to be off.
I also introduced two new settings for events that has been in my backlog - a toogleable requirement for the state to be active for the state to be fired, and a minimum weight required for the state to be fired (relevant during blending). The related cleanup might have fixed your bug - or caused new ones! Please tell me if either's the case.


dynamically remove split

I want to be able to dynamically create and remove splits. Obvs we can create splits but is there a way to dynamically remove splits also?

There isn't at the moment. What's the desired functionality? When the split is removed, it would remove the gutter and dragging?

Yes,. essentially return everything to the state it was before the splits were added.

Right. Except for the sizes, the sizes would stay as they were last dragged?

I'd remove the size attribs also but not a big deal either way as I would still need to do some other clean up.

Ok, I'll have it keep the latest size when it's removed because that seems the most user friendly.

When this functionality will be ready?

I also need a similar functionality. I want users to be able turn off (then back on again) the panels that are shown on page load. Just hiding/revealing the panels via CSS classes is good enough for me (and probably the better way) but then the remaining active panels should be refreshed to fit nicely on the page again.

We were using splitter.js to allow the user to open a split screen, show some relevent data and then go back to full screen mode.  It would be very useful to remove the split.  I like being able to use your splitter because of the dragable sizing.

@nathancahill Hey Nathan, is this feature being worked upon? If not, I would like to contribute here.

This is implemented in the latest release, v1.1.1.
var instance = Split([], ...)
instance.destroy()

It removes the gutters and removes the CSS sizes that Split.js set on the elements. Please update to the latest version. Thanks!


ERRAI-1017: Replace history token on navigation initialization.

Replace history token instead of push on navigation initialization.
This one fixes duplicated history entries after loading gwt host-page.

Can one of the admins verify this PR? Comment with 'ok to test' to start the build.

ok to test

Thanks @axls!

@mbarkley Thank you.
Is there a chance to see this commit in 3.2 branch?

@axls Typically when we plan for a maintenance release, we will go through issues fixed on master and back-port fixes for critical bugs or fixes that are low risk (like this one). We do not currently have another 3.2 release scheduled, but if we do this will be included.


Add to inventory option on Snap It

Is your feature request related to a problem? Please describe.
It's not exatcly an issue but managing inventory is kinda hard on Warframe considering we can't use the API to get a player's inventory, so having an app to control it is nice.
Describe the solution you'd like
Having the option to scan your own inventory of primed parts using snap it and having the option to add each one to your inventory inside the app, but don't make it automatic as sometimes it gets the name of the item wrong and it could mess everything up.
Either add a button below it (not ideal considering the boxes are very small) or add the function to Right Click a box to add one of that item to your inventory.
First issue would be having time to read everything carefully so you don't add the wrong items to your inventory, it would require the user to be fast or to raise the duration of the boxes, both are bad solutions as having the boxes for longer would affect every box, including relic drops info, which would be annoying.
Two solutions, either make a separate button for that or, a better option and easier to implement, make it so whenever you right click (or click the add to inv button, w/e you choose to do) the boxes don't disappear and you have a cross inside a square (or w/e you want to represent a close button) on the top right corner for when you're done.
This would make it easier to use the inventory function as I just don't use it because it would take some time to organize everything.

Duplicate of https://github.com/WFCD/WFinfo/issues/66
Currently it's on indefinite hold due to some limitations:
Snap-it can not interpret numbers, this was deliberate chosen in order to remove false positives with characters like i/l >1 and o > 0
Any string shorter than 2 characters will be dropped to reduce false positives, many of the false positive scans are only one character long, and not a single prime item in the game has a one character long name.
Item quantity is not necessary for the program to find a reward, due to how snap-it works, the image processing is relative and only that what the user scans. This is done to speed up performance of the already rather slow scanning. This can cause issues with item quantities becoming out of sync

As stated inside my suggestion it'd only add one of that item to your inventory, which ultimately skips the need for the program to find the amount, letting the user right click as many times as they want would be more than enough, generally you won't have more than 10 of an item anyways.
Also, do consider that the amount of an item is displayed in a different position always at the same offset from one another, making a grid system is not that hard and it would allow for the OCR to only check the bounding boxes of those specific coordinates that would have the needed info instead of reading the entire screen, that, however, would require this feature to be separate from the snap it function and also would require the user to not use the scrolling bar and just the scroll wheel as that would affect the offsets.


sql_last_value only support time?

my input-jdbc statement:
statement => "SELECT * from log_info where id > :sql_last_value";
in table log_info ,the filed id is int type and auto_increment.
but the logstash  log is

ok  !  I  see  the logstash  document  find the solution.

ok ! I see the logstash document find the solution.
https://www.elastic.co/guide/en/logstash/current/plugins-inputs-jdbc.html


Release file not found

Looks like you guys very recently changed the user account associated with the package and haven't made the release files for the module yet.
Error: An unexpected error occurred when downloading file https://github.com/wanderers-guide/foundry-vtt-import/releases/download/0.1.0/module.zip: Not Found

I experience the same issue. Was thinking about permanently switching from Pathbuilder. But now this.

I experience the same issue. Was thinking about permanently switching from Pathbuilder. But now this.

It's a relatively minor issue to fix, they just need to tag a commit and tell GitHub that it's a release tag. I would do it, but I'm not a maintainer on the project 🤷♂

I am interested in changing to Pathfinder 2e and looking at using this mod to help play the game. Hopefully, it can be fixed soon.

same - even tried grabbing the raw file linked here and it also failed.  The instructions provided in the Readme similarly failed with the following error:
FoundryVTT | 2023-01-19 00:11:41 | [error] Invalid module "wanderers-guide-character-importer" detected in directory "pf2e-wanderers-guide-character-importer"

Well, crap. I was really hoping this would work.

 I was really hoping this would work.

I expect it will, just a matter of waiting for the dev to fix whatever issues there are that are preventing the file from downloading/installing as expected.

Same issue here. Hopeful and waiting!

Quzzar has confirmed on the Discord server that they fixed the installation issue. The release file has been created and uploaded to the github repo.
I have personally confirmed that it works by installing it on my personal instance. You should delete the Data/modules/pf2e-wanderers-guide-character-importer folder as the module has been moved to the Data/modules/wanderers-guide-character-importer folder.

It now installs fine. However, it now gives an unmaintained/stability warning when launching the table.


Restore the test coverage of COMP_rle and SSL_COMP_add_compression_me…

This PR restores test coverage for the COMP_rle and SSL_COMP_add_compression_method.
It turned out that also the simplistic COMP_rle stuff was actually not working,
because it was unable to compress/decompress zero byte messages.
I did this for the 1.0.2-branch only at this time.
I have the impression, that it is impossible to write a test case for the SSL_COMP_add_compression_method in the 1.1.0 branch, because the
you cannot create an object of type COMP_METHOD any more, because
the structure type is now opaque.
I think it would be better to make the SSL_COMP_add_compression_method
return 1 (error) unconditionally in trunk and 1.1.0 branch.

wanna make a PR for master/1.1.0 that does the no-op/error thing?

Yes, will do a PR for master, note that it will conflict with PR#2559.

Fun fact: when using the #2559 syntax to describe issues or PRs, GitHub will automatically link to the them: #2559.

Ping?

Ah, now I see, this needs merging, not a re-approval

Merged.<PHONE_NUMBER>34dd791f73d0cda15d3f17f513f2a5

At least on 1.0.2, this breaks 'make test' when configured with no-comp, as ssltest will give a usage() error on the now-unrecognized argument -rle.

The test/Makefile bit being the relevant one.  1.1.0 is fine due to the new build system.

Given the inflexibility of the 1.0.2 config/build system, I think this is the easiest patch:
; g diff ssltest.c
diff --git a/ssl/ssltest.c b/ssl/ssltest.c
index 8bac2bb..a20bac9 100644
--- a/ssl/ssltest.c
+++ b/ssl/ssltest.c
@@ -1242,10 +1242,13 @@ int main(int argc, char *argv[])
 #ifndef OPENSSL_NO_COMP
         else if (strcmp(*argv, "-zlib") == 0) {
             comp = COMP_ZLIB;
-        } else if (strcmp(*argv, "-rle") == 0) {
-            comp = COMP_RLE;
         }
 #endif
+        else if (strcmp(*argv, "-rle") == 0) {
+#ifndef OPENSSL_NO_COMP
+            comp = COMP_RLE;
+#endif
+        }
         else if (strcmp(*argv, "-named_curve") == 0) {
             if (--argc < 1)
                 goto bad;
;

Yes, maybe with a comment.

This duplicates the behaviour of -named_curve below, and should not make the test fail.
How about this?

I opened this in a separate PR #3545 as it really is different to the original PR.


hot reload is disable show,i enable in flutter setting and restart IDE but they continuously show disable

Hi @junaidirshad098
Which IDE you're using? Was hot reload disable by default? Did you run the project first?
can you please provide your flutter doctor -v?
Thank you

Without additional information we are unfortunately not sure how to resolve this issue.
We are therefore reluctantly going to close this bug for now.
Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.


[Feature Request] 3D surface/contour/line plotting?

What is the feature ?
Support for 3D plots (lines, contours, surfaces).
(Optional) Why this feature is useful and how people would use the feature ?
Many mature plotting libraries provide support for plotting 3D shapes (lines, contours, surfaces).

igiagkiozis/plotly, which is bindings for the plotly.js library, supports 3D lines and surfaces.
siegelord/rustgnuplot supports 3D contours and surfaces.

Now, I understand these libraries are actually just bindings for plotting libraries written in other languages, but 38/plotters is the only library (that I have found so far) that natively supports the EvCxR Jupyter Kernel. 3D plotting is one thing I think most people expect from a mature plotting library (at least in the data science realm). I'm aware, that 38/plotters is technically a drawing library vs a plotting library. But, even an example of how to generate a 3D plot would be a nice springboard.
Thoughts?

Hi there, thank for using Plotters. You have already realized that the plotters is more like a drawing library vs plotting library. Unfortunately the low level drawing API only support for 2D drawing and 3D drawing is on my backlog for a long time.
For the roadmap of the 3D plots, I am going to support CPU 3D rendering first which I am planning to support it after the next major release which is happening in this or next month. For hardware accelerated rendering, it will take a longer time.
Cheers!

Supported in v0.3


Fix some translations

(Issues transfered from private repo at https://github.com/basxsoftwareassociation/basxconnect_urbanmosaic/issues/32)
The following strings are untranslated:
Block "Personal Data" --> Edit
Block "Adresses" --> Add
Blocks "Tags" --> Edit
Need to mark the strings as translatable.

Done in #214

Ready for testing on connect.basx.ch. UM projects will automatically follow in the next update of the according instances.

Perfect, thanks


Add ICM-42688 imu and MMC5983MA magnetometer

both ICM-42688 and MMC5983MA are working, data can be received by the tracker, and it looks correct. Not able to test calibration or fusion of the data, the tracker completely died (I shorted something?) before i could do more and I give up.

This needs to be updated


Support SlidesPerColumn option in slider component

Ionic version:  (check one with "x")
[ ] 1.x (For Ionic 1.x issues, please use https://github.com/ionic-team/ionic-v1)
[ ] 2.x
[x] 3.x
I'm submitting a ...  (check one with "x")
[ ] bug report
[x] feature request
[ ] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or http://ionicworldwide.herokuapp.com/
Current behavior:
The property is hidden
Expected behavior:
Using slidesPerColumn in slider component to show multi-column slides.

Hello! While we appreciate you opening an issue with us i am going to close this issue and ask that you open a new one that has the issue template filled out please. Thanks for using Ionic!


Implement pre-commit hook. Either precommit or husky.

This repo contains eslint but even if contributor tries to push changes with lint error, they are able to do that. One better way could be preventing contributors from making any push unless lint issue is resolved
@warriordog, LMK If you think this implementation would be fruitful to the repo, I can work on this. otherwise you can close this.

@Vhndaree Thank you, this is a good idea. There are currently GitHub actions configured to review all PRs and commits, but it would be helpful for a dev to know if there are any errors before they commit. If you can configure a pre-commit hook to run an NPM script, then it would be very helpful to run at least the "rebuild", "test", "and lint-fix" scripts.


Changed the order of edit and filter on Dashboard

What it Does

Closes #144
switches the order of toolbar items

How I Tested

Add a list of steps to show the functionality of your feature
For example:
Run the application
check the Dashboard screen and see filter is before the +

Notes

Nothing as such

One side note, a better branch name would've been 144-order-switch branch names typically don't use underscores
It doesn't affect the PR or anything, but note for yourself, that's the best practice

Noted

@mikaelacaron will this be considered for the hactoberfest contribution ?

@majeedyaseen  Yes! Because it's been merged into the codebase
The other way is for it to be labeled hacktoberfest-accepted on the PR
You won't see the confirmation on Hacktoberfest for 7 days though


Localize runtime error messages

See #908, #548

✅ No public API change.

✅ No public API change.

    private static string GetDefaultErrorMessage(ErrorKind errorKind)

All those default error messages will need to be localized

Refers to: src/libraries/Microsoft.PowerFx.Interpreter/Functions/Library.cs:2473 in 1692e01. [](commit_id = 1692e013404a4112a78859fca7e158d760b79aba, deletion_comment = False)

                Message = $"Lower value cannot be greater than Upper value",

This needs to be localized

Refers to: src/libraries/Microsoft.PowerFx.Interpreter/Functions/LibraryMath.cs:1288 in 1692e01. [](commit_id = 1692e013404a4112a78859fca7e158d760b79aba, deletion_comment = False)

                Message = $"Lower value cannot be greater than Upper value",

This needs to be localized

Refers to: src/libraries/Microsoft.PowerFx.Interpreter/Functions/LibraryMath.cs:1330 in 1692e01. [](commit_id = 1692e013404a4112a78859fca7e158d760b79aba, deletion_comment = False)

                Message = $"Places argument must be big enough to hold the result",

This needs to be localized

Refers to: src/libraries/Microsoft.PowerFx.Interpreter/Functions/LibraryMath.cs:1543 in 1692e01. [](commit_id = 1692e013404a4112a78859fca7e158d760b79aba, deletion_comment = False)

                Message = "Filter() only supports one predicate",

This needs to be localized

Refers to: src/libraries/Microsoft.PowerFx.Interpreter/Functions/LibraryTable.cs:499 in 1692e01. [](commit_id = 1692e013404a4112a78859fca7e158d760b79aba, deletion_comment = False)

        var invalidSortColumnTemplate = "The specified column '{0}' does not exist or is an invalid sort column type.";

This needs to be localized

Refers to: src/libraries/Microsoft.PowerFx.Interpreter/Functions/LibraryTable.cs:694 in 1692e01. [](commit_id = 1692e013404a4112a78859fca7e158d760b79aba, deletion_comment = False)

                    Message = "Order table can't have duplicate values",

This needs to be localized

Refers to: src/libraries/Microsoft.PowerFx.Interpreter/Functions/LibraryTable.cs:831 in 1692e01. [](commit_id = 1692e013404a4112a78859fca7e158d760b79aba, deletion_comment = False)

        return CommonErrors.CustomError(irContext, "Only managed connections can be refreshed.");

This needs to be localized

Refers to: src/libraries/Microsoft.PowerFx.Interpreter/Functions/LibraryTable.cs:1159 in 1692e01. [](commit_id = 1692e013404a4112a78859fca7e158d760b79aba, deletion_comment = False)

                    Message = "Untyped number is not a valid Decimal value, possible overflow",

This needs to be localized

Refers to: src/libraries/Microsoft.PowerFx.Interpreter/Functions/LibraryUntypedObject.cs:223 in 1692e01. [](commit_id = 1692e013404a4112a78859fca7e158d760b79aba, deletion_comment = False)

                    Message = "Untyped number is not a valid Decimal value, possible overflow",

This needs to be localized

Refers to: src/libraries/Microsoft.PowerFx.Interpreter/Functions/LibraryUntypedObject.cs:286 in 1692e01. [](commit_id = 1692e013404a4112a78859fca7e158d760b79aba, deletion_comment = False)

            Message = $"The untyped object argument to the '{functionName}' function has an incorrect type. Expected: {expectedType}, Actual: {actualValue.Type}."

This needs to be localized

Refers to: src/libraries/Microsoft.PowerFx.Interpreter/Functions/LibraryUntypedObject.cs:557 in 1692e01. [](commit_id = 1692e013404a4112a78859fca7e158d760b79aba, deletion_comment = False)

We typically don't check in translated (satellite) resources, those are managed by the localization team.

Refers to: src/strings/PowerFxRuntimeResources.pt-BR.resx:1 in 1692e01. [](commit_id = 1692e013404a4112a78859fca7e158d760b79aba, deletion_comment = False)

✅ No public API change.

✅ No public API change.

✅ No public API change.

✅ No public API change.

✅ No public API change.

                return CommonErrors.CustomError(formulaResult.IRContext, string.Format(CultureInfo.InvariantCulture, "Return type should have been {0}, found {1}", retType, formulaResultType));

This should be localized

Refers to: src/libraries/Microsoft.PowerFx.Interpreter/CustomFunction/ReflectionFunction.cs:375 in 8b9a944. [](commit_id = 8b9a944b04fa5124f71cd9a9dec927208f6228b8, deletion_comment = False)

That's a question for the localization team - if they're ok with having this file here for now, then it's ok. If that will mess their pipeline, then we should remove it.

In reply to:<PHONE_NUMBER>

Refers to: src/strings/PowerFxRuntimeResources.pt-BR.resx:1 in 1692e01. [](commit_id = 1692e013404a4112a78859fca7e158d760b79aba, deletion_comment = False)

✅ No public API change.

✅ No public API change.

✅ No public API change.


Feature/pre release

:shipit: :+1:

Comment accepted. Will treat it ASAP

Squashing and checks in progress.


CDPT-1562: Issue with dropdown

Increase the page limit on the dropdown editor

@EarthlingDavey thanks for the feedback :)
Please could you clarify:

And, is there a css property that we could set in editor.scss to make the dropdown select list higher? I think this would vastly improve the editor experience.

Do you mean move it up the page, or something else?

Do you mean move it up the page, or something else?

Oops, sorry... I mean increase the hight so editors can scroll through and see maybe a half a dozen to a dozen at a time.
It might be easy enough to target the element with css and over-ride the hight.

Do you mean move it up the page, or something else?

Oops, sorry... I mean increase the hight so editors can scroll through and see maybe a half a dozen to a dozen at a time.
It might be easy enough to target the element with css and over-ride the hight.

Thanks @EarthlingDavey, I've updated that. I've tripled the box height; any more and it flickers quite badly when the list updates.

I've tripled the box height

Looks good to me. I think the editors will appreciate it! I've added a final couple of minor points.


chore(main): release 0.4.1

:robot: I have created a release beep boop
0.4.1 (2024-05-05)
Bug Fixes

update poetry and virtualenv (#489) (1376595)

Dependencies

bump pytest-asyncio from 0.21.2 to 0.23.6 (#657) (f785186)
bump ruff from 0.0.275 to 0.4.3 (#655) (6de87bb)
bump types-croniter from <IP_ADDRESS> to <IP_ADDRESS>40423 (#654) (50f8bba)

Documentation

fixes get_check args (#597) (cb862fa)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/andrewthetechie/py-healthchecks.io/releases/tag/v0.4.1 :sunflower:


Double dots around the last dot for Playground evaluations

It looks like this:

It does not happen if we do not have a dot at the end.

I suspect it's an issue related to the attribute when it's associated to one character.

Another case:

I was able to reproduce, however the bug is in the playground logic

The dot is wrapped in two AttributeRopes. I suspect it may be the problem

Reproduced locally

Fixed

requires more work, the fix didn't really worked

It looks like it works now. I close it.


Expose controller in constructor to initialize with starting text

When using a normal TextField, I can initialize the starting text:
Widget getAuthorField(Bloc bloc) {
  return StreamBuilder(
    stream: bloc.customAuthor,
    builder: (context, AsyncSnapshot<String> snapshot) {
      if (!snapshot.hasData) return SizedBox();
      final author = snapshot.data;
      authorController = TextEditingController.fromValue(
          TextEditingValue(
          text: author,
          selection: new TextSelection.collapsed(offset: author.length)
        )
      );
      return TextField(
        controller: authorController
      );
    },
    initialData: ''
  );
}

I'm not able to do this with AutoCompleteTextField:
Widget getAuthorField(Bloc bloc) {
  return StreamBuilder(
    stream: bloc.customAuthor,
    builder: (context, AsyncSnapshot<String> snapshot) {
      if (!snapshot.hasData) {
        return SizedBox();
      }
      autoCompleteAuthorField = createAutoCompleteAuthorInput(context, bookList, bloc);
      // both of these don't work inside the StreamBuilder
      // authorInputKey.currentState.textField.controller.text = snapshot.data;
      // autoCompleteAuthorField.textField.controller.text = snapshot.data;
      return autoCompleteAuthorField;
    },
    initialData: '',
  );
}

AutoCompleteTextField<ApprovedBook> createAutoCompleteTitleInput(BuildContext context, List<ApprovedBook> approvedBooks, Bloc bloc) {
  return AutoCompleteTextField<ApprovedBook>(
    key: titleInputKey,
    textChanged: (text) {
      bloc.changeCustomTitle(text);
    },
    decoration: storytimeInputDecoration('Title', Theme.of(context).accentColor, 'The title of the book', ''),
    itemSubmitted: (ApprovedBook book) {
      bloc.submitApprovedBook(book);
      _resetForm();
      Navigator.pushNamed(context, '/confirm_book');
    },
    suggestions: approvedBooks,
    itemFilter: (suggestion, input) {
      return suggestion.title.toLowerCase().startsWith(input.toLowerCase());
    },
    itemBuilder: (context, ApprovedBook suggestion) => Padding(
      padding: EdgeInsets.all(8),
      child: ListTile(
        title: Text('${suggestion.title} by ${suggestion.author}')
      )
    ),
    itemSorter: (a, b) => a.title.compareTo(b.title),
  );
}

I saw #11, where we can access the textField property after the AutoCompleteTextField has been built. But, that is not working for me using StreamBuilder. I get error:
flutter: isAuthenticated? true
flutter: ══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
flutter: The following NoSuchMethodError was thrown building StreamBuilder<String>(dirty, dependencies:
flutter: [_LocalizationsScope-[GlobalKey#4ef5a], _InheritedTheme], state: _StreamBuilderBaseState<String,
flutter: AsyncSnapshot<String>>#fe9e7):
flutter: The getter 'textField' was called on null.
flutter: Receiver: null
flutter: Tried calling: textField
flutter:
flutter: When the exception was thrown, this was the stack:
flutter: #0      Object.noSuchMethod (dart:core/runtime/libobject_patch.dart:50:5)
flutter: #1      FindBookScreenState.getAuthorField.<anonymous closure>

same problem here, i need a initial value

I'll have to look a bit deeper into this one, thanks for raising the issue though.

This one should be fixed now.


Replace :wq with :x in vimtutor

https://github.com/vim/vim/blob/6a89c94a9eeee53481ced1a1260a177bffde4c0f/runtime/tutor/tutor#L142
I think all occurences of :wq should be replaced with :x. :wq is harmful, it writes the file no matter if it was changed, resulting in updates in modification time. :x only writes when there were changes.

I think :wq is essentially fine to learn Vim. If you are more proficient in Vim, you can read all the details about :w vs :x to write and quit, but as a beginner guide to make sure the file is saved and the editor is quit this is fine as is. And it least from my personal experience watching people using vim, :wq is much more known than :x.


Discuss omitting id from columnAttrs JSON output

Description
When requesting columnAttrs in the case where column keys are used, the output returns both the column key and the id with value 0. For example:
  "columnAttrs": [
    {
      "id": 0,
      "key": "one",
      "attrs": {
        "name": "To Kill a Mockingbird",
        "year": 1960
      }
    },
    {
      "id": 0,
      "key": "two",
      "attrs": {
        "name": "No Name in the Street",
        "year": 1972
      }
    }
    }
  ]

PR #1677 adds an omitempty to the json tag, but I think this may omit valid 0 columns in the case where column keys are not used.
Decide if it makes sense to write a custom JSON marshaler for columnAttrs to include either id or key depending on index.Keys().

How about starting the id counter from 1? Would that break anything?


Compatibility of reload without aiming option with a mod that change control layout.

Describe the feature you'd like to see added
Hi, i did this mod a while ago where i change a bit control layout matching modern RE like RE2R or RE8 where you open inventory with Y and change item position with X.
I like the reloading option without aiming but with my mod "KEY_OK" in input.ini is no more X in setting III.
Any way i could make it work with my mod and X to reload?
www.nexusmods.com/residentevil4/mods/129

Hmm, well, re4_tweaks is changing the reload key to KEY_Y when Type III is used.
Is there a way for you to add another binding in input.ini that will change the KEY_Y binding to X?
I haven't messed with input.ini for a while now, so I don't remember if that's possible. I also have no controller at the moment, so testing your mod myself wouldn't be possible :/


Vertical swipe on mobile devices with normal functionality

On body start, I have slider with height:100% and under rest of other content.
On mobile devices is imposibble to scroll to content under slider, because vertical scrolling its not working, setting vertical for true its not helping.

Hey I think this might duplicate some of these. Holler back if that's not the case. Thanks!


Multiple calls onFetchData with page=NaN in production

What version of React-Table are you using?
6.8.0
What bug are you experiencing, or what feature are you proposing?
I am using react table manual version. On first time render onFetchData gets called multiple times with ?page=NaN and once with page=0. This only happens when NODE_ENV=production. In development it works fine.
<ReactTable 	columns={columns} 	manual 	data={data} 	pages={pages} 	loading={loading} 	onFetchData={this.fetchSagaData.bind(this)} 	showPageSizeOptions={false} 	defaultPageSize={5} 	multiSort={false} 	className="-striped -highlight" />

Take control of the ReactTable's page prop.
E.g:
class DataTable extends React.Component {
	constructor() {
		super();
		this.state = {
			page: 0
		}

        this.onPageChange = this.onPageChange.bind(this);
	}

    onPageChange(pageIndex) {
        this.setState({
            page: pageIndex
        });
    }

    render() {
	    return (
	    	<ReactTable
    			page={this.state.page}
				onPageChange={this.onPageChange}
			/>
	    )
    }
}

React table version 6.9.2.
I'm not sure whether this has resolved the issue for @shift-keshav-pudaruth but I think I'm getting the same issue as original poster and the recommended solution does not fix it.
        const table = () => {
               const [pageSize, setPageSize] = useState(10)
               const [page, setPage] = useState(0)
               const [filtered, setFiltered] = useState([])
               const [sorted, setSorted] = useState([])

               return (
                 <ReactTable
                        manual
                        loading={orderSearchLoading}
                        filterable={false}
                        data={dataForTable}
                        onPageChange={(pageIndex) => {

                            setPage(pageIndex)
                        }}
                        onPageSizeChange={(pageSize) => {

                            setPageSize(pageSize)
                        }
                        }
                        onFilteredChange ={(filtered) => {

                            setFiltered(filtered)
                        }
                        }
                        onSortedChange={(sorted) => {
                            setSorted(sorted)
                        }
                        }
                           page={page}
                           defaultPageSize={pageSize}
                           onFetchData={(state, instance) => {

                            getData({
                                page: state.page,
                                pageSize: state.pageSize,
                                sorted: state.sorted,
                                filtered: state.filtered
                            })
                        }}

                        className="-striped -highlight"
                    />
               )
    }

Putting my cursor into the pagination box and entering a number returns a console error:
`The specified value "NaN" is not a valid number. The value must match to the following regular expression: -?(\d+|\d+\.\d+|\.\d+)([eE][-+]?\d+)?'

And the resulting console.log of state in onFetchData returns page as NaN and a result continually loops calling onFetchData, eventually crashing chrome.
Any advice?


Fix broken documentation

Fix documentation broken by all the new refactoring done on the dev/main branch.

Finally done!


Update Microsoft Application Registration Portal instructions

Hi! For this section (https://docs.microsoft.com/en-us/azure/active-directory-b2c/active-directory-b2c-setup-msa-app#create-a-microsoft-account-application), the Microsoft Application Registration Portal (https://apps.dev.microsoft.com/?referrer=https%3A%2F%2Fazure.microsoft.com%2Fdocumentation%2Farticles#/appList) has a new interface in the Azure portal, but the instructions do not reflect that. It should probably be updated.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 7646910a-39c5-eebd-97f9-db6e7e55d1fa
Version Independent ID: 34f989f5-05ea-19ad-7db9-40cc0a753b29
Content: Set up sign-up and sign-in with a Microsoft account - Azure Active Directory B2C
Content Source: articles/active-directory-b2c/active-directory-b2c-setup-msa-app.md
Service: active-directory
Sub-service: b2c
GitHub Login: @davidmu1
Microsoft Alias: davidmu

@amchew Thanks for the feedback !  I have assigned this issue to content author to investigate and update the document as appropriate.

@SaurabhSharma-MSFT: Please assign this item to @mmacy who is now supporting Azure AD B2C.

Thanks @davidmu1 and @SaurabhSharma-MSFT !
@mmacy - let me know if you need any clarification on my comments. I'm from the App Center team, and App Center Auth is powered by Azure AD B2C. been speaking with a few users who mention that the documentation needs updating.

@SaurabhSharma-MSFT The updated article is now live - #please-close.
Cc: @amchew


ConnectionError on Client

Issue when starting client right after player selection. Does not occur consistently and my be related to issue #4.
Choose player 1 or 2: 2
Traceback (most recent call last):
File "client.py", line 82, in
player.ConnectToServer('<IP_ADDRESS>', 5000)
File "client.py", line 51, in ConnectToServer
self.sio.connect('http://' + ipAddress + ':' + str(port))
File "/home/eric/.local/lib/python3.8/site-packages/socketio/client.py", line 338, in connect
raise exceptions.ConnectionError(
socketio.exceptions.ConnectionError: One or more namespaces failed to connect

you need to pip install requests


Mark IClassFixture as code in prose

IClassFixture<WebApplicationFactory<TEntry>> was rendering as IClassFixture<WebApplicationFactory>. Adding backquotes gets it to render the missing <TEntry> part at least.
Summary
In the functional testing section, IClassFixture<WebApplicationFactory<TEntry>> was not rendering correctly. The <Tentry> part was being removed by the markdown renderer. Putting backquotes around it fixes it not rendering, however rendering in fixed width may not be what you want, but it was the quickest fix. I'm happy to play around with escaping to get it to render in non-fixed-width if preferred.
Fixes #Issue_Number (if available)

I have made the requested change and it looks like it renders correctly. Thank you for your help.

Thanks, @MartinWilkerson, for making the additional change. I'll merge your PR now. The change should be live on docs.microsoft.com in the next day or two.


Reduce complexity of Clowder methods

The goal of this PR is to reduce the complexity of Clowder methods as much as possible during the tech debt sprint. In an effort to go about this in a data driven way I'm using complexity measures based on cyclonic complexity and halstead metrics as provided by the go-complexity-analysis go vet plugin. The goal to to get as many high complexity methods under a cyclonic measure of 10 as possible within the time frame.

Gave up on keda provider method getTriggerRoute - I tried to refactor it multiple times and there's something wrong with my approach. I don't see the problem no matter how much I look and I can't reproduce the failures locally. Decided to just give up on it becuase the method has a high complexity score, but it is artificial - there's a huge empty switch block in it.

/retest

/retest

OK, so its passing tests now. I'll do some tidying up and then get it ready for review.

/retest

/retest


NOMERGE 101134658 Fix Build Error

NOMERGE 101134658 Fix Build Error
Description

There is a build error that must be fixed.
After grabbing the most recent commit to this branch, run npm install; gulp test and see what happens. YMMV. Gav is getting different error logs than me.

Side Note

This continues the conversation started in PR #11.
Because PR #11 is only concerned with updating the license, I moved the build debugging task to a separate branch with a separate PT story.

Corrected by #13, which was merged into #11.


Link CI wiki for Op compatibility issue

在文档“进阶使用”中修改 “5.Op兼容性问题”相关内容，并添加wiki链接。

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

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


[Pulsar Client Tools]Support generate documentation of pulsar admin cli automatically

Motivation
Currently, the commands on the page http://pulsar.apache.org/docs/en/pulsar-admin/ are all manually added. when the document changes, there are often wrong contents. in order to solve this problem, we expect the commands on this page to be automatically generated. this pr is the first step. If it passes, we will add a new page on the website to show the automatically generated commands later.
Modifications

Add a hidden command --generate-doc to automatically generate command line documents
Add integration tests

Usage
./bin/pulsar-admin --generate-doc tenants
./bin/pulsar-admin --generate-doc namespaces
.....

The following is what we expect:

Verifying this change
Integration test pass

removed the milestone for now. If we can make it before releasing 2.5.0, we can mark it for 2.5.0.

Thank you for your suggestion. The situation you mentioned is my initial implementation plan. However, when I tested it, I found that different command objects jcommand was used in the PulsarAdminTool and CmdBase.
PulsarAdminTool:
https://github.com/apache/pulsar/blob/master/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/PulsarAdminTool.java#L87
CmdBase:
https://github.com/apache/pulsar/blob/master/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdBase.java#L38
All the child commands were inherited from the class CmdBase. In subclasses such as CmdTopics, we cannot get the commandMap object. Therefore, it may be necessary to pass down the commandmap object and the jcommand object of PulsarAdminTool. therefore, it is necessary to add some logic to the PulsarAdmintool. I am not sure if my understanding is correct. I hope to get your reply, but I will try this implementation as much as possible.
@sijie

I found that different command objects jcommand was used in the PulsarAdminTool and CmdBase.

The jcommand in PulsarrAdminTool is the root command.The jcommand in CmdBase is for a command group.

All the child commands were inherited from the class CmdBase. In subclasses such as CmdTopics, we cannot get the commandMap object.

You can get the command groups from the commandMap of PulsarAdminTool. Then you can iterate the command group.


Should there be a desktop version of Readium-2?

This is a discussion

Should there be a desktop version?
If so, should it be native, like today?
Or only a hybrid version?
Does it need to support DRM?

Definitely yes, and it should be an hybrid version (Windows/Mac/Linux).
The existence of a Readium desktop application targeting accessibility and content protection will be a very useful thing for both public library patrons and print-disabled people (using a screen reader).
The EDRLab Electron prototype works pretty well, it embeds the Readium SDK and Readium LCP,  we'll finalize it after the LCP developments are done.

As a publisher, we also have urgent need of a desktop reading system for proofreading, etc.

CloudReader + Electron = Desktop client

CloudReader + Electron = Desktop client
Well CloudReader + optimum Zip handling + DRM support + Electron = Desktop client
so CloudReader + Readium SDK (current) + Electron = Desktop client

@llemeurfr Well, one key question is DRM required on the desktop?  At this point, I don't know of anyone asking for it. For proofreading I don't think it is needed. So what is the use case where a desktop reader with DRM is needed? I'm not saying there isn't one, only that I am not aware of one.

Surprising numbers of people read ebooks on computers, at least in 2012.
http://libraries.pewinternet.org/2012/04/04/the-rise-of-e-reading/

42% of readers of e-books in the past 12 months said they consume their books on a computer
41% of readers of e-books consume their books on an e-book reader like original Kindles or Nooks
29% of readers of e-books consume their books on their cell phones
23% of readers of e-books consume their books on a tablet computer.

Well, one key question is DRM required on the desktop?

Why wouldn't it be? People reading with ADE will be pleased to get rid of it and read LCP books with their readium desktop reader.

@rkwright,well, DRM support is not useful for proofreading, but it is for public libraries (for me this is the main use case, managing rental time) and it is required by publishers for any end-user RS. Public libraries provide RS on their site, on PCs, so they need a DRM support. Print disabled people need screen readers, so they use PCs, and they want to be able to access natively accessible EPUB. These will also protected by a DRM (accessible-friendly).


Return ConstraintViolation objects from validation test helpers

Change void methods in SoftValidationTestAssertions and ValidationTestHelper to return a Set of ConstraintViolation objects or a single ConstraintViolation object, as appropriate.
The void methods in ValidationTestHelper that validate there are no violations, and which do not use SoftAssertions, remain as void. This is simply because when the assertion passes, the set of constraint violations will always be empty, so returning it provides no value.
Perhaps surprisingly at first, the validation methods using SoftAssertions always have a return value. Because of how soft assertions work (i.e. they collect errors and do not fail immediately), you cannot know exactly what the validation results are, so we therefore always have to return the violations for inspection. For example, validating that there are two errors on an object using soft assertions when there are actually none, will result in a Set of ConstraintViolation objects being returned that is empty. So, any further (soft or not) assertions performed on the returned Set will also result in errors. Or, validating that there are no errors on an object, again using soft assertions, when there are actually three errors, will return a Set of ConstraintViolation that contains those three errors. When using soft assertions, the return values will be most useful to perform additional (soft) assertions on the ConstraintViolation objects, but they may also be useful during debugging such as when you aren't expecting any validation errors but there are some.
Closes #403

And yes @dsingley I recently actually did want to perform more assertions after asserting that there were some assertions, so this one isn't me just making up stuff 😀


Older OCP version (4.12,4.11) are run on demand for all repos

Slack discussion link
The goal is to reduce cloud resource spending.

/approve
/lgtm


Update subscriptions.rs

Summary
Fixed a typo
Checklist

[ ] ran cargo make fmt
[ ] using conventional commits to hightlight user-facing fixes and features

Thank you!

:tada: This PR is included in version 0.37.3 :tada:
The release is available on:

v0.37.3
GitHub release

Your semantic-release bot :package::rocket:


Doesn't work wih Silverstripe 3.1.14 +

Something changed which breaks the link with the document. In 3.1.13 the module still works.
Example:
/dmsdocument/1
Shows:
This asset does not exist.

This issue seems to be caused by the Folder field not being set on the DMSDocument model when a new document is uploaded

Added a fix here:
https://github.com/silverstripe-labs/silverstripe-dms/pull/73
Problem was that the Folder field needed to be set as a string instead of an integer when being saved to the database.

Updated pull request here:
https://github.com/silverstripe-labs/silverstripe-dms/pull/75
Problem was that the Folder field needed to be set as a string instead of an integer when being saved to the database. This is likely due to some changes that requires values to be cast matching the type expected in the database.

can be closed, #75 is merged.


Allows middle-click and ctrl+click outbound clicks to properly open as user intended?

There's been this fix to the default outbound link click script so unsure if something needs to be changed in the WordPress plugin implementation too? https://github.com/plausible/analytics/pull/494

@metmarkosaric Yes, this improvement is required to be added in minified format.


Render Tags and Categories on Posts

I've been putting tags and categories in the frontmatter of blog posts. All that's left is to render them.

See: https://www.gatsbyjs.org/blog/tags

only rendering tags in #42, categories are... not sure what to do with them yet
I still need to make a dedicated page that behaves like:

See: https://www.gatsbyjs.org/blog/tags


Create ADRs describing Light Client

[ ] #532

ToDo:

[ ] Header Sync

[ ] Extract Node Header Package in own Repo
[ ] Write Header Interface ADR in that Repo

[ ] Rollmint Transaction Lifecycle
[ ] Message Inclusion Proof


Fix nftables mode for ipv4 only / ipv6 only

We also need same check in add decisions too

https://github.com/crowdsecurity/cs-firewall-bouncer/blob/0bbb486a4f0a72accdc1e8e01a677f416e2038ed/pkg/nftables/nftables.go#L619-L621 put this check within the if n.conn

Check if n.conn is not nil
https://github.com/crowdsecurity/cs-firewall-bouncer/blob/0bbb486a4f0a72accdc1e8e01a677f416e2038ed/pkg/nftables/nftables.go#L435-L439


Fixes for building yosys on M1 and M2 Macs

Fixes #6.
This assumes using brew to build (needed for yosys build anyhow, so fair assumption).
It checks the architecture, installs any needed dependencies with brew, picks up the right WASI SDK, and removes the upper bound on wasmtime version.
It may make sense to shift to wasmtime 1.0.x now it is out, or put in an upper version of 0.40.1, the minimum needed for M1/M2 compatibility.

Building amaranth-yosys on anything but Linux is unsupported. The only build environment that actually matters for amaranth-yosys is the GitHub CI runner build environment.


addressed issue 26590

Summary
This PR addresses the issue linked below, providing necessary bug fixes/improvements (briefly describe what it does).
Ticket Link
Fixes Issue #26590
Checklist

[ ] Added/updated tests
[ ] UI changes included
[ ] Text/localization updates

Device Information
Tested on: (iOS17)
Screenshots
(Attach if applicable)
Release Note
(Your note here)

Hello @pranavkasula,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.
Per the Mattermost Contribution Guide, we need to add you to the list of approved contributors for the Mattermost project.
Please help complete the Mattermost contribution license agreement?
Once you have signed the CLA, please comment with /check-cla and confirm that the CLA check is green.
This is a standard procedure for many open source projects.
Please let us know if you have any questions.
We are very happy to have you join our growing community! If you're not yet a member, please consider joining our Contributors community channel to meet other contributors and discuss new opportunities with the core team.

This PR has been automatically labelled "stale" because it hasn't had recent activity.
A core team member will check in on the status of the PR to help with questions.
Thank you for your contribution!


Use .NET's automatic library name resolution logic.

As explained in https://learn.microsoft.com/en-us/dotnet/standard/native-interop/cross-platform#library-name-variations .NET has some automatic rules to allow loading native libraries in a cross-platform way. This PR takes advantage of this. In the P/Invoke definitions it changes the library name from libtiledb to tiledb, and removes the custom native library resolver; .NET will do the exact same thing.
I also removed commented-out mentions of libc; should we ever need to call malloc/free we should do it through the NativeMemory class.

Searching for dylib_compatibility_version in dotnet/runtime produced no results. This concept seems very platform-specific for .NET to support.


Fix python-opencv for Ubuntu focal (20.04)

As of 20.04, python-opencv is no longer present in the APT repositories, and was superseded by python3-opencv.
This is also coherent with the switch from python2 to python3 that happened between ROS Melodic and Noetic.
Solves https://github.com/IFL-CAMP/easy_handeye/issues/74

Alright, thanks!

Apparently it was already present. Sorry for the inconvenience.

No problem, glad it's already working.
If you need to span a package across distros you can use the the conditional dependency in package.xml https://www.ros.org/reps/rep-0151.html
  <depend condition="$ROS_PYTHON_VERSION == 2">python-opencv</depend>
  <depend condition="$ROS_PYTHON_VERSION == 3">python3-opencv</depend>


Right control sidebar auto hide

Please help me
By default, control sidebar on the right will show and hide by clicking button. I want to make control sidebar auto hide when i clicked outside sidebar area. How to do that?
Thanks and regards

Hello,
Unfortunately that feature is not available and you may need to implement it yourself. Sorry for the inconvenience!
Thanks.


Code Linting

What
Extend pipeline to run ./gradlew lintRelease before the Build step.
Why
Obvious reasons.
How
More info in android docs.
It should report and stop the pipeline in case of:

unused dependencies
code smells?

We actually run lint on CI https://github.com/hCaptcha/hcaptcha-android-sdk/runs/6782858337?check_suite_focus=true#step:4:221
For more code quality check I think make sense to add checkstyle or something similar
@DSergiu how do you think?

Can lint.xml be configured to catch unused variables?
Can pipeline fail when there are linting issues? In the CI run above, I see 2 issues found but pipeline continued.> Task :sdk:lint
Ran lint on variant debug: 2 issues found
Ran lint on variant release: 1 issues found

As far as I know, lint is more about "android" than about "java", and it cannot catch such issues. I totally agree that CI should catch such issues and checkstyle can help us here. I will create PR


Docker installation steps have discrepancies between docs and citus/readme.md

I ran through the Docker installation steps in our docs and noticed a few discrepancies between them and our Readme.md. Also, I had already installed following the steps in our readme.md and the steps in our docs didn't work for me.

We give the user the option to install Docker Engine or Docker Compose in our docs. What's the difference? Can we recommend the option that we think is the best?
In our Readme.md, we recommend Docker Compose. We provide separate steps for Linux or Mac. We also ask the user to run eval on Mac. We don't provide those steps in our docs. Why?

I see that @begriffs was already on this. :)
I'm adding the following as a related issue: https://github.com/citusdata/citus/issues/1227


telegraf: 1.28.5 -> 1.29.0

Diff: https://github.com/influxdata/telegraf/compare/v1.28.5...v1.29.0
Changelog: https://github.com/influxdata/telegraf/blob/v1.29.0/CHANGELOG.md
Description of changes

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 273675 run on x86_64-linux 1

1 package built:

telegraf


Remove references to color formatting

Noticed this on Ruby Weekly, and the color thing caught my attention.  :)

Good eye, thanks! I was considering adding a whole bunch of different categories (colors, planets, animals, ...), but I stopped before it got totally out of hand.


SyntaxError: Missing parentheses in call to 'print'. Did you mean print(...)?

Checkboxes

[ Checked] Updated fsociety
[ Checked] Issue does not already exist
[ Checked] fsociety issue, not a tool issue

Expected Result
fsociety execute
Actual Result
fsociety
File "/home/kali/.fsociety/fsociety.py", line 1194
print "-------------------------"
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(...)?

same i also had this error

i tryed to excute this in kali linux

Just make it runned with python2:
sudo ln -sf /usr/bin/python2 /usr/bin/python
Note: I run this command in Kali Linux and working.

This repository is extremely old and outdated- I highly recommend the new repository instead.

Simply run fsociety.py with python2 and not python3
Like that : pyhton2 fsociety.py

Please do not use this version, this repo has been EOL (End-of-life) for many years. Update to the new repo -> society


fit-trackee: pin flask-sqlalchemy to 3.0.5

FitTrackee currently requires SQLAlchemy 1.4.49 (upstream has plans to upgrade). The commit e3c822682230 updated flask-sqlalchemy to 3.1.1, and that version dropped support for pre 2.0 SQLAlchemy.
As such we pin the flask-sqlalchemy dependency to the last version supporting the required SQLAlchemy version.
Description of changes

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 267545 run on x86_64-linux 1

2 packages built:

fit-trackee
fit-trackee.dist

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/2932


Build crashes with thot

This build crashes: https://github.com/sillsdev/machine.py/actions/runs/8991708022/job/24699887705
ChefBuildError

  Backend subprocess exited when trying to invoke build_wheel

  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-10.9-universal2-cpython-311
  creating build/lib.macosx-10.9-universal2-cpython-311/thot
  copying thot/py.typed -> build/lib.macosx-10.9-universal2-cpython-311/thot
  creating build/lib.macosx-10.9-universal2-cpython-311/thot/translation
  copying thot/translation/__init__.pyi -> build/lib.macosx-10.9-universal2-cpython-311/thot/translation
  creating build/lib.macosx-10.9-universal2-cpython-311/thot/common
  copying thot/common/__init__.pyi -> build/lib.macosx-10.9-universal2-cpython-311/thot/common
  creating build/lib.macosx-10.9-universal2-cpython-311/thot/alignment
  copying thot/alignment/__init__.pyi -> build/lib.macosx-10.9-universal2-cpython-311/thot/alignment
  running build_ext
  -- The CXX compiler identification is AppleClang <IP_ADDRESS>00040
  -- The C compiler identification is AppleClang <IP_ADDRESS>00040
  -- Detecting CXX compiler ABI info
  -- Detecting CXX compiler ABI info - done
  -- Check for working CXX compiler: /Applications/Xcode_15.0.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ - skipped
  -- Detecting CXX compile features
  -- Detecting CXX compile features - done
  -- Detecting C compiler ABI info
  -- Detecting C compiler ABI info - done
  -- Check for working C compiler: /Applications/Xcode_15.0.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - skipped
  -- Detecting C compile features
  -- Detecting C compile features - done
  CMake Error at /private/var/folders/3m/p59k4qdj0f17st0gn2cmj3640000gn/T/tmpydazrrhr/.venv/lib/python3.11/site-packages/cmake/data/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
    Could NOT find OpenMP_C (missing: OpenMP_C_FLAGS OpenMP_C_LIB_NAMES)
  Call Stack (most recent call first):
    /private/var/folders/3m/p59k4qdj0f17st0gn2cmj3640000gn/T/tmpydazrrhr/.venv/lib/python3.11/site-packages/cmake/data/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
    /private/var/folders/3m/p59k4qdj0f17st0gn2cmj3640000gn/T/tmpydazrrhr/.venv/lib/python3.11/site-packages/cmake/data/share/cmake-3.29/Modules/FindOpenMP.cmake:581 (find_package_handle_standard_args)
    CMakeLists.txt:19 (find_package)
...

Note: This error originates from the build backend, and is likely not a problem with poetry but with sil-thot (3.4.3) not supporting PEP 517 builds. You can verify this by running 'pip wheel --no-cache-dir --use-pep517 "sil-thot (==3.4.3)"'.

It appears to need an update to thot to account for the most recent macos updates.

This is fixed by PR #109.


added a feature to the rate_estimation function...

that calculates the optimizes kernel width when the kernel width is specified as 'auto' rather than a fixed value.

Coverage decreased (-0.32%) to 98.99% when pulling ccf347e59494f03df45c76e7316b6ac853695e38 on INM-6:feature/rate_estimate into d121768276a2069df2b870580d3801014fd0e54e on NeuralEnsemble:master.

Coverage decreased (-0.32%) to 98.99% when pulling ccf347e59494f03df45c76e7316b6ac853695e38 on INM-6:feature/rate_estimate into d121768276a2069df2b870580d3801014fd0e54e on NeuralEnsemble:master.

Coverage decreased (-0.32%) to 98.99% when pulling c5b70c0b175410c1a3800fbffce9edb424c67a3c on INM-6:feature/rate_estimate into d121768276a2069df2b870580d3801014fd0e54e on NeuralEnsemble:master.

Coverage decreased (-0.32%) to 98.99% when pulling c5b70c0b175410c1a3800fbffce9edb424c67a3c on INM-6:feature/rate_estimate into d121768276a2069df2b870580d3801014fd0e54e on NeuralEnsemble:master.

Coverage decreased (-0.33%) to 98.99% when pulling d947107180eda3b5b9cc4fcbbf9d6c0f67838b62 on INM-6:feature/rate_estimate into d121768276a2069df2b870580d3801014fd0e54e on NeuralEnsemble:master.

Coverage decreased (-0.33%) to 98.99% when pulling d947107180eda3b5b9cc4fcbbf9d6c0f67838b62 on INM-6:feature/rate_estimate into d121768276a2069df2b870580d3801014fd0e54e on NeuralEnsemble:master.

I'm sorry about this, I don't know much about licensing and what can or cannot be used. I tried to find contact information of Subhasis Ray but wasn't successful. I sent him a message via Google+, as it was the only way possible for me to contact him. Additionally, I sent an email to the author of the original publication, Hideaki Shimazaki, and asked him whether he can provide any contact information. I will let you know as soon as I get a response but in the meantime you may be more successful that I was.

I am in contact with Subhasis and this is what he replied in his email:
"Dear Richard,
I have no problem with switching to modified BSD license used in  ElePhAnT, which is compatible with gpl2."
Is this email response enough to use the code or are there any other steps on his side that need to be made?

I think the e-mail from Subhasis is good enough. You should now remove the copyright statement and licence information from the docstring, and add Subhasis' name and affiliation (and your own) to doc/authors.rst.

Coverage decreased (-0.33%) to 98.99% when pulling e4c533fdf5f16ff19fecdade2c831256d25144d7 on INM-6:feature/rate_estimate into d121768276a2069df2b870580d3801014fd0e54e on NeuralEnsemble:master.

Okay, I made the changes to the author list and removed the license information form the quote. I hope it's good to go now :)

Coverage decreased (-0.33%) to 98.99% when pulling ea4d52e2a8e1223af73302c6d2d061f10c275b08 on INM-6:feature/rate_estimate into d121768276a2069df2b870580d3801014fd0e54e on NeuralEnsemble:master.

Oh I see, thanks for the clarification. As I said, I'm not an expert on those licensing issues. Sorry for the confusing commit comment. Thanks for merging!


Always shows F:0

First off, this is useful. Thank you!
Just getting the number of lines in a project didn't seem to be something that was available until I found this.
I'm always seeing "F:0" in the footer, however, even though my files are not empty. It seems to show the number of lines in the workspace, which is primarily what I wanted. (I'm editing a C# project if that has any relevance).
Does the workspace count these include empty lines? Comments etc?
Cheers

Hi kuiperzone
Thanks for the feedback. It’s great to hear that you find the extension useful🙌
Regarding "F:0" Issue
"F:0" should not appear when a file is open. I couldn’t recreate the error on my end. What is the file type you have opened, which shows you F:0? Because the extension checks a list of file types that it should count. So may be the file type you are using doesn't get count.
Counting Lines in the Workspace
Yes, the line count includes all lines, including empty lines and comments, since there isn't a filter implemented yet. Adding an option to exclude these could be a feature for a future version.
Could you also provide:

The version of VSCode you're using.
The Version of the CodeQuantum extension. (Newest version: 1.2.0)

Thank you for your report.
Regards
Dario

No need. Seems to be working now. I saw the issue when first installing the plugin. I'm assuming a restart of vscode sorted it out.
Thanks for the reply.

I've actually only got verion 1.0.1, but I am running VsCodium. Sorry, should have made that clear.


Support NumPy 1.24: Adding strict option to testing.assert_array_equal and testing.assert_array_list_equal.

Added strict option to the two related functions assert_array_equal() and assert_array_list_equal() conforming to the respective new feature in NumPy 1.24, discussed in #7250.
[This is my very first PR in a big project. Let me know if I violated anything :) ]

Thanks, LGTM! Let me run remaining tests after the release this week.

/test mini


If evolve list is empty, it would not iterate

Expected Behavior
pokemon should evolve
Actual Behavior
File "./plugins\evolver_init_.py", line 31, in _do_evolve
if base_name in evolve_list and evolve_list[base_name]["evolve"] is True:
TypeError: argument of type 'NoneType' is not iterable
Steps to Reproduce
pokemon tries to evolve
Other Information
OS: windows
Git Commit: most recent...

If you want an empty evolve list, replace the list with []. So your config should only have evolve_filter: []


@conda-forge-admin, please add noarch: python

@conda-forge-admin, please add noarch: python

Hi! This is the friendly automated conda-forge-webservice.
I just wanted to let you know that I made the recipe noarch: python in conda-forge/h2-feedstock#20.


Long-living Access Token needed for internal batch processes/offline tasks?

The current spec states:
"Even for long-running "batch" jobs, a longer lived access token should be used to initiate the request to the batch endpoint. It then obtains short-lived Txn-Tokens that may be used to authorize the call to downstream services in the call-chain."
I assume the reasoning behind this is that there would be no need to define a Txn-Token Request without an original Access Token. However, I think that creating long-living Access Tokens just for the purpose of exchanging them for short-lived Txn-Tokens and then throwing them away can be considered wasteful (energy costs). Every internally originating job would need at least two calls instead of just one to obtain the Txn-Token.
Keeping those long-living Access Tokens around to re-use them for longer time is usually not useful for batch processes as those processes operate on a lot of user accounts in quick succession. Maintaining all those Access Tokens in memory is often not feasible. Neither is a storage system. I also think that using long-living Access Tokens in this scenario can add security risks. Those Access Tokens could leak and another party could use them to create Txn-Tokens or access resources the Access Token was meant for.
In our own implementation of a Txn-Service, the Txn-Service (Token Exchange) is also providing the Token endpoint and allows specific internal clients to use the Client Credentials Grant Type (mTLS client certificates) to obtain Txn-Tokens right away. The necessary input parameters are essentially a combination of the Token Request based on Client Credentials Grant and Token Exchange with a Txn-Token profile.
Is it possible to extend the Txn-Token Service interface to allow Txn-Token Requests without the Access Token as input? This would essentially mean to define a Txn-Token profile for the Token endpoint in addition to the Token Exchange protocol.

The use cases you mention are pretty much what we had to implement.

For incoming mails we have a mail delivery agent which wants to use the mail storage system service to store the mail in the user mailbox. In order to write to the mailbox of a user, the delivery agent needs a Txn-Token with the sub of the user. The delivery agent asks the TTS about a Txn-Token and presents its client credentials and the mail address of the recipient/user. The TTS allows issuing Txn-Tokens to the delivery agent. There is no long-living access token involved. The issued Txn-Token is short lived (1 minute in our deployments).

Whenever a user cancels their contract, we have to keep the data for some time (number of days depending on type of data, legal restrictions, etc.) after the delete operations are performed. The delayed delete operation is done by batch processes. Now, instead of creating and storing long-living access tokens which could be leaked and abused elsewhere, we decided to retain the short-lived Txn-Tokens and allow only those batch processes to ask the TTS to issue new Txn-Tokens for already expired Txn-Tokens to perform the actual delete operation which requires a valid and not expired Txn-Token when calling the storage system services.

So my argument is against using (and potentially abusing) long-living access tokens, and instead for allowing expired Txn-Tokens to be presented to the TTS to re-issue Txn-Tokens for the purpose to finalize a delayed operation.

I do not think we should allow the use of expired TraTs to authorize the issuance of new TraTs. This can be abused for token replay attacks, and negates the security we get through short-lived TraTs.

@tulshi Good point. In order to get a new TraTs, the caller needs proper client authentication (e.g. SPIFFE, mTLS, or Basic Auth credentials). My point was to only allow specific authenticated clients the exchange of expired TraTs. It is true that if those clients get hacked themselves (and the client authentication can be done by an attacker) new TraTs can be created and abused.
However, longer living TraTs have also the risk of being abused with replay attacks. I think the risk for replay attacks with longer living TraTs is even higher as an attacker would just need to get hold of the long-living TraTs and does not have the need to renew it.

Using an expired Txn-Token has some interesting properties. Assuming the purp claim is narrowly scoped, the TTS should NOT issue a new Txn-Token with a different purp value.
I would probably recommend creating very specific purp values for this use case and then only allowing specific clients to request a Txn-Token where the subject_token value is the expired Txn-Token. This is currently allowed within the spec... the question might be whether we want to explicitly encourage or discourage such behavior.
In my mind, using an expired Txn-Token is a bit like requesting a replacement Txn-Token except the processing rules are even more strict.

Indeed, the spec does not say anything about whether and how the TTS is validating the txn token before issuing a replacement txn-token. So presenting an already expired txn-token can be accepted based on the authenticated client, purpose and scope. After all, it can be a specifically defined policy.
I recommend that we at least acknowledge this case in the spec and give guidance when to use it. As we also have the case of not presenting any token when requesting a txn-token (see #53), I think that as long as a workload is in possession of a txn-token - even if it is expired - we should recommend to present it when requesting replacement txn-tokens. It should be the decision of the TTS whether to accept the expired txn-token and not of the workload (the workload could just take the subject from the expired token and present it as the subject_token to the TTS).
One additional aspect came to our attention. There are actually two cases for expired txn-tokens:

The exp claim says it is expired, but the signature is still valid
The signature is not valid (anymore) as the key used to sign the token is not available anymore

Depending on how frequently a TTS is rotating its key material, the second case might occur for such long running processes like deleting account data several weeks after the customer has cancelled their contract. For instance our TTS implementation is rotating the keys daily. Only the next, current and previous signing keys are provided to workloads (via JWKS uri). Even if a workload is not able to verify the signature of a txn-token it received several weeks ago, the TTS might still be able to keep the old key material for a longer period so that it can at least validate the signature of those txn-tokens.


Add nodeInfo GRPC methods

Add GRPC methods required for nodeInfo implementation (https://github.com/ledgerwatch/erigon/issues/2679)

Thank you! Would you mind making a corresponding PR into ledgerwatch/interfaces ? Once that is merged, we can update git subtree thing for this PR

Done, are there any more steps? I didn't find any docs about the workflow, unfortunately.

Great, you can use this to bring the interfaces change into your PR: https://github.com/ledgerwatch/interfaces#suggested-integration-into-other-repositories (the option with 3 commands)

I mean this:
git rm -rf interfaces
git commit -m"Remove interfaces for replacement"
git subtree add --prefix interfaces --squash https://github.com/ledgerwatch/interfaces <tag_or_commit>

Done, thank you.

Ok, now you can use commit da3c239ed6a13e64a93d1e44e26f2856335bcbfe to update the PR in Erigon:
``
go get github.com/ledgerwatch/erigon-lib/direct@da3c239ed6a13e64a93d1e44e26f2856335bcbfe
go mod tidy


Only update Firebase Node dependencies.

I'd like to only automate updating the Firebase Node modules dependencies. Let me know if this works :)

@tswast PTAL! :)


fedora rawhide: Failed to pull from repository: g-io-error-quark

In edge-installer, virt-install is not able to boot BIOS VM with installer blueprint.
Fedora rawhide compose Fedora-Rawhide-20230716.n.0
osbuild-89-2.fc39.noarch.rpm
osbuild-composer-85-1.fc39.x86_64.rpm
weldr-client-35.11-1.fc39.x86_64.rpm
BIOS VM issue log:
================================================================================

================================================================================
Installation

1) [x] Language settings                 2) [x] Time settings
       (English (United States))                (America/New_York timezone)
3) [x] Installation Destination          4) [x] Network configuration
       (Automatic partitioning                  (Connected: enp1s0)
       selected)
5) [ ] Root password
       (Root account is disabled)

================================================================================
================================================================================
Progress

Setting up the installation environment
.
Configuring storage
Creating disklabel on /dev/vda
Creating ext4 on /dev/vda2
Creating ext4 on /dev/vda1
.
Running pre-installation scripts
.
Running pre-installation tasks
.
Installing the software
Starting pull of fedora/39/x86_64/iot from fedora
================================================================================
================================================================================
Error

The following error occurred while installing the payload. This is a fatal error
and installation will be aborted.

Failed to pull from repository: g-io-error-quark: opening repo:
opendir(/run/install/repo/ostree/repo): No such file or directory (1)

Press ENTER to exit:

Filed bug https://bugzilla.redhat.com/show_bug.cgi?id=2223289


Docker version 1.8.2

Bump Docker version to latest stable.
$ docker run -ti --rm -v /var/run/docker.sock:/var/run/docker.sock -v /etc:/etc spotify/docker-gc sh
/ # docker version
Client:
 Version:      1.8.2
 API version:  1.20
 Go version:   go1.4.2
 Git commit:   0a8c2e3
 Built:        Thu Sep 10 19:10:10 UTC 2015
 OS/Arch:      linux/amd64

Server:
 Version:      1.9.0-dev
 API version:  1.21
 Go version:   go1.4.2
 Git commit:   02ae137
 Built:        Fri Sep 25 17:37:00 UTC 2015
 OS/Arch:      linux/amd64
 Experimental: true
/ #

Signed-off-by: Thomas Sjögren<EMAIL_ADDRESS>

For people not using latest stable on their servers, it means docker image won't work anymore. Is there any known docker-gc bug fixed by upgrading docker on the client side?

Sorry for the late reply @dangra, and yes you are correct, this will break backwards compatibility.
And while there isn't a known docker-gc bug 1.6.2 was released around six months ago, so this PR is more about keeping system and application up-to-date.

hi @konstruktoid, I understand your motivation and I don't mind maintaining an older version of docker-gc for my systems, but to be clear it is not 1.6.2 what worries me but 1.7.1 that was released 3 months ago. Worth saying 1.7.1 is coreos stable default too.

So 1.7.1 could be some sort of middle-ground?
I tried to get current docker versions in various distros, RHEL missing since I dont have any account ...
Alpine - 1.8.2-r3
Fedora, OpenSuSE - 1.8.2
CoreOS - 1.7.1
Debian Jessie - 1.6.2
Ubuntu trusty 14.04LTS - 0.9.1(!?)

1.7.1 sounds reasonable to me but I'm afraid I am not involved with Spotify nor I am a maintainer of this project. IMHO at the end the minimum version will depend on what Spotify uses internally.

Thanks @konstruktoid for the contribution!
As @dangra guessed, we are using 1.6 internally at the moment so I am loathe to merge this at this time.
However since building the image for a different Docker version only requires editing this one line, I'll make sure to document how it can be build for other Docker versions in the README.

Thanks @mattnworb for letting me know. Closing.


Trainer.validate crashes for certain validation_step output and hook combinations

🐛 Bug
If the validation_step returns a complex output, and if the validation_epoch_end hook is not implemented in the LightningModule, there is a failure in the metrics holder when reducing the outputs.
This occurs on master
cc @carmocca
fyi @simran2905 @ytsheng
Please reproduce using the BoringModel
Repro: https://gist.github.com/ananthsub/5a027e24c91c2fa179b081e959583a00
Stack trace: https://gist.github.com/ananthsub/9b677206c98840f463c3aa9ef9d27fba
Expected behavior
There shouldn't be any crash
Environment
Note: Bugs with code are solved faster ! Colab Notebook should be made public !

IDE: Please, use our python bug_report_model.py template.

Colab Notebook: Please copy and paste the output from our environment collection script (or fill out the checklist below manually).

You can get the script and run it with:
wget https://raw.githubusercontent.com/PyTorchLightning/pytorch-lightning/master/tests/collect_env_details.py
# For security purposes, please check the contents of collect_env_details.py before running it.
python collect_env_details.py

PyTorch Version (e.g., 1.0):
OS (e.g., Linux):
How you installed PyTorch (conda, pip, source):
Build command you used (if compiling from source):
Python version:
CUDA/cuDNN version:
GPU models and configuration:
Any other relevant information:

Additional context

The error is not related to validate or test. It's due to logging a tensor with more than one element, which is not supported. From your snippet:
return {"output": output, ...}
where output is the network's output with 2 elements (2 output features).
So, unless I am missing something, this is working as intended. Tried reverting to older lightning versions, and the same error appears.
I have created https://github.com/PyTorchLightning/pytorch-lightning/pull/6645 to provide a better error message.

After further investigation, you are correct that it should work for val/test just as for training. Will take a look at the cause.


casync: 2-219-ga8f6c84 -> 2-219-ga8f6c84

Changes:
 - bd8898e Merge pull request #244 from timgates42/bugfix_typo_distinguish
 - a904fda docs: fix simple typo, distuingish -> distinguish
 - 4ad9bcb caprotocol: fix typo in protocol description
 - 6cfe2d4 Call stat again after changing ownership of created files, so we detect reset setuid/setgid bits and reset them.
 - d246d6d We erroneously use the st_dev value in place of the magic value if the st_dev value is cached. This causes problems extracting trees containing subvolumes.
 - f9718df Merge pull request #228 from johannbg/FEDORA31
 - 1abde25 Update to Fedora31

Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

The commit message is wrong, otherwise LGTM.

The commit message is wrong, otherwise LGTM.

Uh, not sure what happened there. Updated.

Result of nixpkgs-review pr 113398 at 8b6562bd run on aarch64-linux 1

1 package built:

casync

1 suggestion:

warning: unclear-gpl
lgpl21 is a deprecated license, check if project uses lgpl21Plus or lgpl21Only and change meta.license accordingly.
Near pkgs/applications/networking/sync/casync/default.nix:61:5:
   |
61 |     license = licenses.lgpl21;
   |     ^

I updated the license in b804a0da3e3e6ce2e01382daefc4df3ae20e20eb.


fix regression in 0.9.5 server error when using filter with dot in name and custom applier

fixes #1214
All Submissions:

[x] I've checked to ensure there aren't other open Pull Requests for the same update/change.
[x] I've submitted a ticket for my issue if one did not already exist.
[ ] My submission passes all tests. (Please run the full test suite locally to cut down on noise from travis failures.)
[ ] I've used Github auto-closing keywords in the commit message or the description.
[ ] I've added/updated tests for this change.

New Feature Submissions:

[ ] I've submitted an issue that describes this feature, and received the go ahead from the maintainers.
[ ] My submission includes new tests.
[ ] My submission maintains compliance with JSON:API.

Bug fixes and Changes to Core Features:

[ ] I've included an explanation of what the changes do and why I'd like you to include them.
[ ] I've provided test(s) that fails without the change.

Test Plan:
Reviewer Checklist:

[ ] Maintains compliance with JSON:API
[ ] Adequate test coverage exists to prevent regressions

@senid231 Thanks! I merged this with one minor change. Using try instead of &. to maintain compatibility with ruby versions earlier than 2.3. We don't officially support them, but I didn't want to lock someone out of the next 0.9 release.

@lgebhardt thanks


Add AMD support. Fixes #50

Usage

<script src='require.js'></script>
<script>
	require(['/path/to/t3'], function(Box) {
		console.log(Box);
	});
</script>

or

<script src='require.js'></script>
<script src='path/to/t3.js'></script>
<script>
	require(['t3'], function(Box) {
		console.log(Box);
	});
</script>

Verified that @priyajeet has signed the CLA. Thanks for the pull request!

+1

+2


Generated code can nest "ng-if" blocks that should be siblings, when using both "ng-if" and "ng-controller"

Needs investigation. Noticed in Jade code that looked something like this:
div(ng-if="conditionA" ng-controller="fooController as ctrl")
    include ./templateFoo
div(ng-if="conditionB" ng-controller="barController as ctrl")
    include ./templateFoo
div(ng-if="conditionC" ng-controller="bazController as ctrl")
    include ./templateBaz

(The two conditions using "templateFoo" is intentional)
The generated code will nest the "ng-if" blocks within each other, rather than keeping them at the same level.

An element that creates multiple "scopes", e.g. one containg both "ng-if" and "ng-controller" directives, would only break out of the last scope, instead of all scopes created at the same level. This lead to nodes being added as siblings of the inner scope, instead of the outer scope.
This is fixed by tracking the element used when creating each scope, and when a new scope is created, checking if it is for the same element as the previous scope. If so, we do a sneaky "pop()" to get rid of the previous scope, and only retain the most recent scope on the scope stack.


Add batchify transformer to help end to end models

Description
Add new transformer in Gluon "Batchify". This transformer joins/batchify a list of tensors of shape (C x H x W) into a single tensor of shape (N x C x H x W).
This will be helpful when users have created a fused end to end model (transformers + network), saved the graph and this end to end model is deployed in production for "single request inference" or "mini-batch inference". The raw input can be of different shapes, till the input reaches resize transformation, if running a mini batch inference, then input will be a list of NDArrays. After Resize, these individual NDArrays will batched with this transformer.
Checklist
Essentials
Please feel free to remove inapplicable items for your PR.

[X] Changes are complete (i.e. I finished coding on this PR)
[X] All changes have test coverage:
Unit tests are added for small changes to verify correctness (e.g. adding a new operator)
[X] Code is well-documented:
For user-facing API changes, API doc string has been updated.
Check the API doc at http://mxnet-ci-doc.s3-accelerate.dualstack.amazonaws.com/PR-$PR_ID/$BUILD_ID/index.html
[X] To the my best knowledge, examples are either not affected by this change, or have been fixed to be compatible with this change

Changes

Add new transformer Batchify to take list of NDArrays and batchify them in to 1 NDArray

@stu1130

@sandeep-krishnamurthy Could you please look into the review comments above?

Closing this PR because having is transformer is more confusing than useful for users. As suggested above in reviews, such transformer should be internally managed by respective export/import APIs.


Uploading failed in React native ( IOS )

Describe the bug
APP is crashed during uploading in IOS.
Setup details
Please provide following details, if applicable to your situation:

Runtime environment:  React Native
Used tus-js-client version: ^1.8.0-2

Is this a duplicate of https://github.com/tus/tus-js-client/issues/179#issuecomment-584089549?