imazen / imageflow-dotnet

The official .NET API for Imageflow, the Rust image processing and optimization engine for web servers
GNU Affero General Public License v3.0
143 stars 25 forks source link

Invalid Json Error using CreateCanvasBgra in 0.13.1 #59

Closed jakenuts closed 3 months ago

jakenuts commented 3 months ago

Updated from 0.10.2 to 0.13.1 but operations using CreateCanvasBgra32 cause a json exception.

Imageflow.Bindings.ImageflowException: 'InvalidJson: Json Error: missing field `format` at line 44 column 11:           >}, at

Additional info: JSON:
{
  "framewise": {
    "graph": {
      "edges": [
        {
          "from": 0,
          "to": 2,
          "kind": "canvas"
        },
        {
          "from": 1,
          "to": 2,
          "kind": "input"
        },
        {
          "from": 2,
          "to": 4,
          "kind": "canvas"
        },
        {
          "from": 3,
          "to": 4,
          "kind": "input"
        },
        {
          "from": 4,
          "to": 5,
          "kind": "input"
        },
        {
          "from": 5,
          "to": 6,
          "kind": "input"
        }
      ],
      "nodes": {
        "0": {
          "create_canvas": {
            "w": 1200,
            "h": 800,
            "color": {
              "black": null
            }
          },
          "format": "bgra_32"
        },
        "1": {
          "decode": {
            "io_id": 0
          }
        },
        "2": {
          "draw_image_exact": {
            "w": 1200,
            "h": 800,
            "x": 0,
            "y": 0,
            "blend": "compose",
            "hints": {}
          }
        },
        "3": {
          "decode": {
            "io_id": 1
          }
        },
        "4": {
          "draw_image_exact": {
            "w": 1200,
            "h": 800,
            "x": 0,
            "y": 0,
            "blend": "compose",
            "hints": {}
          }
        },
        "5": {
          "crop": {
            "x1": 0,
            "y1": 0,
            "x2": 1200,
            "y2": 800
          }
        },
        "6": {
          "encode": {
            "io_id": 2,
            "preset": {
              "pngquant": {
                "quality": 90,
                "minimum_quality": 90
              }
            }
          }
        }
      }
    }
  },
  "security": {
    "max_frame_size": {
      "w": 15000,
      "h": 15000,
      "megapixels": 150
    }
  }
}'
lilith commented 3 months ago

What code is generating the invalid json?

On Mon, May 13, 2024, 10:10 PM James White @.***> wrote:

Updated from 0.10.2 to 0.13.1 but operations using CreateCanvasBgra32 cause a json exception.

Imageflow.Bindings.ImageflowException: 'InvalidJson: Json Error: missing field format at line 44 column 11: >}, at

Additional info: JSON: { "framewise": { "graph": { "edges": [ { "from": 0, "to": 2, "kind": "canvas" }, { "from": 1, "to": 2, "kind": "input" }, { "from": 2, "to": 4, "kind": "canvas" }, { "from": 3, "to": 4, "kind": "input" }, { "from": 4, "to": 5, "kind": "input" }, { "from": 5, "to": 6, "kind": "input" } ], "nodes": { "0": { "create_canvas": { "w": 1200, "h": 800, "color": { "black": null } }, "format": "bgra_32" }, "1": { "decode": { "io_id": 0 } }, "2": { "draw_image_exact": { "w": 1200, "h": 800, "x": 0, "y": 0, "blend": "compose", "hints": {} } }, "3": { "decode": { "io_id": 1 } }, "4": { "draw_image_exact": { "w": 1200, "h": 800, "x": 0, "y": 0, "blend": "compose", "hints": {} } }, "5": { "crop": { "x1": 0, "y1": 0, "x2": 1200, "y2": 800 } }, "6": { "encode": { "io_id": 2, "preset": { "pngquant": { "quality": 90, "minimum_quality": 90 } } } } } } }, "security": { "max_frame_size": { "w": 15000, "h": 15000, "megapixels": 150 } } }'

— Reply to this email directly, view it on GitHub https://github.com/imazen/imageflow-dotnet/issues/59, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAA2LH5SF5DAJN6NF2RTOQLZCGFEVAVCNFSM6AAAAABHVL2EDWVHI2DSMVQWIX3LMV43ASLTON2WKOZSGI4TIMZVGU4TMNY . You are receiving this because you are subscribed to this thread.Message ID: @.***>

lilith commented 3 months ago

I've added tests to fix this coverage oversight, it will work in the next release