Create hello world. 2D world

What does the program do ?
'hello world' in 2d world <3
In what programming language it is written?
p5js

Thank you for participating  in hacktoberfest ❣ if you liked working on this repo you can share it with friends and star this project for helping others


MITMH 2024 instance

It's mostly set up now at https://cardboard.rocks. See the Prod Setup section in this doc for changes made from last year: https://docs.google.com/document/d/1WlosF6VLQJnuEn8wcq4PPTNTX5zsJKDbDp6XsquTKlw/edit#heading=h.4ukz24y3h6gh
We still need to:

[ ] Add individuals to the Google Drive to grant login access to Cardboard
[ ] Backup the database just before the hunt starts (prehunt backup)


compiler error in spirv.CompositeConstruct on M1 moltenVK (239)

What happened?
Compiling latest Stable Diffusion Unet on MacOS M1 with moltenvk (1.3.239) fails with:
<stdin>:1035:11: error: 'spirv.CompositeConstruct' op operand element type mismatch: expected to be 'f32', but provided 'f16'
    %71 = linalg.conv_2d_nchw_fchw {dilations = dense<1> : vector<2xi64>, strides = dense<1> : vector<2xi64>} ins(%padded_736, %cst_13 : tensor<2x320x66x66xf16>, tensor<320x320x3x3xf16>) outs(%70 : tensor<2x320x64x64xf16>) -> tensor<2x320x64x64xf16>
          ^
<stdin>:28:3: note: called from
  func.func @forward(%arg0: tensor<1x4x64x64xf16>, %arg1: tensor<1xf16>, %arg2: tensor<2x64x1024xf16>, %arg3: tensor<f32>) -> tensor<1x4x64x64xf16> {
  ^
<stdin>:1062:11: error: failed to run translation of source executable to target executable for backend #hal.executable.target<"vulkan", "vulkan-spirv-fb", {spirv.target_env = #spirv.target_env<#spirv.vce<v1.6, [Shader, Float64, Float16, Int64, Int16, Int8, StorageBuffer16BitAccess, StorageUniform16, StoragePushConstant16, StorageBuffer8BitAccess, UniformAndStorageBuffer8BitAccess, StoragePushConstant8, GroupNonUniform, GroupNonUniformVote, GroupNonUniformArithmetic, GroupNonUniformBallot, GroupNonUniformShuffle, GroupNonUniformShuffleRelative, GroupNonUniformQuad, VariablePointers, VariablePointersStorageBuffer], [SPV_KHR_16bit_storage, SPV_KHR_8bit_storage, SPV_KHR_storage_buffer_storage_class, SPV_KHR_variable_pointers]>, api=Vulkan, Apple:IntegratedGPU, #spirv.resource_limits<max_compute_shared_memory_size = 32768, max_compute_workgroup_invocations = 1024, max_compute_workgroup_size = [1024, 1024, 1024], cooperative_matrix_properties_nv = []>>}>
    %79 = linalg.generic {indexing_maps = [#map11, #map12, #map11], iterator_types = ["parallel", "parallel", "parallel", "parallel"]} ins(%71, %expanded_737 : tensor<2x320x64x64xf16>, tensor<2x320x1x1xf16>) outs(%40 : tensor<2x320x64x64xf16>) {
          ^
<stdin>:28:3: note: called from
  func.func @forward(%arg0: tensor<1x4x64x64xf16>, %arg1: tensor<1xf16>, %arg2: tensor<2x64x1024xf16>, %arg3: tensor<f32>) -> tensor<1x4x64x64xf16> {
  ^
<stdin>:1062:11: error: failed to serialize executables
    %79 = linalg.generic {indexing_maps = [#map11, #map12, #map11], iterator_types = ["parallel", "parallel", "parallel", "parallel"]} ins(%71, %expanded_737 : tensor<2x320x64x64xf16>, tensor<2x320x1x1xf16>) outs(%40 : tensor<2x320x64x64xf16>) {
          ^
<stdin>:28:3: note: called from
  func.func @forward(%arg0: tensor<1x4x64x64xf16>, %arg1: tensor<1xf16>, %arg2: tensor<2x64x1024xf16>, %arg3: tensor<f32>) -> tensor<1x4x64x64xf16> {
  ^
<stdin>:1188:12: error: 'spirv.CompositeConstruct' op operand element type mismatch: expected to be 'f32', but provided 'f16'
    %101 = linalg.conv_2d_nchw_fchw {dilations = dense<1> : vector<2xi64>, strides = dense<1> : vector<2xi64>} ins(%padded_744, %cst_19 : tensor<2x320x66x66xf16>, tensor<320x320x3x3xf16>) outs(%100 : tensor<2x320x64x64xf16>) -> tensor<2x320x64x64xf16>
           ^
<stdin>:28:3: note: called from
  func.func @forward(%arg0: tensor<1x4x64x64xf16>, %arg1: tensor<1xf16>, %arg2: tensor<2x64x1024xf16>, %arg3: tensor<f32>) -> tensor<1x4x64x64xf16> {
  ^
<stdin>:1194:12: error: failed to run translation of source executable to target executable for backend #hal.executable.target<"vulkan", "vulkan-spirv-fb", {spirv.target_env = #spirv.target_env<#spirv.vce<v1.6, [Shader, Float64, Float16, Int64, Int16, Int8, StorageBuffer16BitAccess, StorageUniform16, StoragePushConstant16, StorageBuffer8BitAccess, UniformAndStorageBuffer8BitAccess, StoragePushConstant8, GroupNonUniform, GroupNonUniformVote, GroupNonUniformArithmetic, GroupNonUniformBallot, GroupNonUniformShuffle, GroupNonUniformShuffleRelative, GroupNonUniformQuad, VariablePointers, VariablePointersStorageBuffer], [SPV_KHR_16bit_storage, SPV_KHR_8bit_storage, SPV_KHR_storage_buffer_storage_class, SPV_KHR_variable_pointers]>, api=Vulkan, Apple:IntegratedGPU, #spirv.resource_limits<max_compute_shared_memory_size = 32768, max_compute_workgroup_invocations = 1024, max_compute_workgroup_size = [1024, 1024, 1024], cooperative_matrix_properties_nv = []>>}>
    %103 = linalg.generic {indexing_maps = [#map11, #map13, #map11], iterator_types = ["parallel", "parallel", "parallel", "parallel"]} ins(%102, %cst_0 : tensor<2x320x64x64xf16>, tensor<f64>) outs(%40 : tensor<2x320x64x64xf16>) {
           ^
<stdin>:28:3: note: called from
  func.func @forward(%arg0: tensor<1x4x64x64xf16>, %arg1: tensor<1xf16>, %arg2: tensor<2x64x1024xf16>, %arg3: tensor<f32>) -> tensor<1x4x64x64xf16> {
  ^
<stdin>:1194:12: error: failed to serialize executables
    %103 = linalg.generic {indexing_maps = [#map11, #map13, #map11], iterator_types = ["parallel", "parallel", "parallel", "parallel"]} ins(%102, %cst_0 : tensor<2x320x64x64xf16>, tensor<f64>) outs(%40 : tensor<2x320x64x64xf16>) {
           ^
<stdin>:28:3: note: called from
  func.func @forward(%arg0: tensor<1x4x64x64xf16>, %arg1: tensor<1xf16>, %arg2: tensor<2x64x1024xf16>, %arg3: tensor<f32>) -> tensor<1x4x64x64xf16> {
  ^
<stdin>:2872:12: error: 'spirv.CompositeConstruct' op operand element type mismatch: expected to be 'f32', but provided 'f16'
    %470 = linalg.conv_2d_nchw_fchw {dilations = dense<1> : vector<2xi64>, strides = dense<2> : vector<2xi64>} ins(%padded_831, %cst_83 : tensor<2x320x66x66xf16>, tensor<320x320x3x3xf16>) outs(%469 : tensor<2x320x32x32xf16>) -> tensor<2x320x32x32xf16>
           ^
<stdin>:28:3: note: called from
  func.func @forward(%arg0: tensor<1x4x64x64xf16>, %arg1: tensor<1xf16>, %arg2: tensor<2x64x1024xf16>, %arg3: tensor<f32>) -> tensor<1x4x64x64xf16> {
  ^
<stdin>:2872:12: error: failed to run translation of source executable to target executable for backend #hal.executable.target<"vulkan", "vulkan-spirv-fb", {spirv.target_env = #spirv.target_env<#spirv.vce<v1.6, [Shader, Float64, Float16, Int64, Int16, Int8, StorageBuffer16BitAccess, StorageUniform16, StoragePushConstant16, StorageBuffer8BitAccess, UniformAndStorageBuffer8BitAccess, StoragePushConstant8, GroupNonUniform, GroupNonUniformVote, GroupNonUniformArithmetic, GroupNonUniformBallot, GroupNonUniformShuffle, GroupNonUniformShuffleRelative, GroupNonUniformQuad, VariablePointers, VariablePointersStorageBuffer], [SPV_KHR_16bit_storage, SPV_KHR_8bit_storage, SPV_KHR_storage_buffer_storage_class, SPV_KHR_variable_pointers]>, api=Vulkan, Apple:IntegratedGPU, #spirv.resource_limits<max_compute_shared_memory_size = 32768, max_compute_workgroup_invocations = 1024, max_compute_workgroup_size = [1024, 1024, 1024], cooperative_matrix_properties_nv = []>>}>
    %470 = linalg.conv_2d_nchw_fchw {dilations = dense<1> : vector<2xi64>, strides = dense<2> : vector<2xi64>} ins(%padded_831, %cst_83 : tensor<2x320x66x66xf16>, tensor<320x320x3x3xf16>) outs(%469 : tensor<2x320x32x32xf16>) -> tensor<2x320x32x32xf16>
           ^
<stdin>:28:3: note: called from
  func.func @forward(%arg0: tensor<1x4x64x64xf16>, %arg1: tensor<1xf16>, %arg2: tensor<2x64x1024xf16>, %arg3: tensor<f32>) -> tensor<1x4x64x64xf16> {
  ^
<stdin>:2872:12: error: failed to serialize executables
    %470 = linalg.conv_2d_nchw_fchw {dilations = dense<1> : vector<2xi64>, strides = dense<2> : vector<2xi64>} ins(%padded_831, %cst_83 : tensor<2x320x66x66xf16>, tensor<320x320x3x3xf16>) outs(%469 : tensor<2x320x32x32xf16>) -> tensor<2x320x32x32xf16>
           ^
<stdin>:28:3: note: called from
  func.func @forward(%arg0: tensor<1x4x64x64xf16>, %arg1: tensor<1xf16>, %arg2: tensor<2x64x1024xf16>, %arg3: tensor<f32>) -> tensor<1x4x64x64xf16> {
  ^
<stdin>:2998:12: error: 'spirv.CompositeConstruct' op operand element type mismatch: expected to be 'f32', but provided 'f16'
    %496 = linalg.conv_2d_nchw_fchw {dilations = dense<1> : vector<2xi64>, strides = dense<1> : vector<2xi64>} ins(%padded_838, %cst_87 : tensor<2x320x34x34xf16>, tensor<640x320x3x3xf16>) outs(%495 : tensor<2x640x32x32xf16>) -> tensor<2x640x32x32xf16>
           ^
<stdin>:28:3: note: called from
  func.func @forward(%arg0: tensor<1x4x64x64xf16>, %arg1: tensor<1xf16>, %arg2: tensor<2x64x1024xf16>, %arg3: tensor<f32>) -> tensor<1x4x64x64xf16> {
  ^
<stdin>:3013:12: error: failed to run translation of source executable to target executable for backend #hal.executable.target<"vulkan", "vulkan-spirv-fb", {spirv.target_env = #spirv.target_env<#spirv.vce<v1.6, [Shader, Float64, Float16, Int64, Int16, Int8, StorageBuffer16BitAccess, StorageUniform16, StoragePushConstant16, StorageBuffer8BitAccess, UniformAndStorageBuffer8BitAccess, StoragePushConstant8, GroupNonUniform, GroupNonUniformVote, GroupNonUniformArithmetic, GroupNonUniformBallot, GroupNonUniformShuffle, GroupNonUniformShuffleRelative, GroupNonUniformQuad, VariablePointers, VariablePointersStorageBuffer], [SPV_KHR_16bit_storage, SPV_KHR_8bit_storage, SPV_KHR_storage_buffer_storage_class, SPV_KHR_variable_pointers]>, api=Vulkan, Apple:IntegratedGPU, #spirv.resource_limits<max_compute_shared_memory_size = 32768, max_compute_workgroup_invocations = 1024, max_compute_workgroup_size = [1024, 1024, 1024], cooperative_matrix_properties_nv = []>>}>
    %503 = linalg.generic {indexing_maps = [#map11, #map12, #map11], iterator_types = ["parallel", "parallel", "parallel", "parallel"]} ins(%496, %expanded_839 : tensor<2x640x32x32xf16>, tensor<2x640x1x1xf16>) outs(%494 : tensor<2x640x32x32xf16>) {
           ^
<stdin>:28:3: note: called from
  func.func @forward(%arg0: tensor<1x4x64x64xf16>, %arg1: tensor<1xf16>, %arg2: tensor<2x64x1024xf16>, %arg3: tensor<f32>) -> tensor<1x4x64x64xf16> {
  ^
<stdin>:3013:12: error: failed to serialize executables
    %503 = linalg.generic {indexing_maps = [#map11, #map12, #map11], iterator_types = ["parallel", "parallel", "parallel", "parallel"]} ins(%496, %expanded_839 : tensor<2x640x32x32xf16>, tensor<2x640x1x1xf16>) outs(%494 : tensor<2x640x32x32xf16>) {
           ^
<stdin>:28:3: note: called from
  func.func @forward(%arg0: tensor<1x4x64x64xf16>, %arg1: tensor<1xf16>, %arg2: tensor<2x64x1024xf16>, %arg3: tensor<f32>) -> tensor<1x4x64x64xf16> {
  ^

Invoked with:
 iree-compile /Users/anush/github/shark/iree.venv/lib/python3.10/site-packages/iree/compiler/tools/../_mlir_libs/iree-compile - --iree-input-type=none --iree-vm-bytecode-module-output-format=flatbuffer-binary --iree-hal-target-backends=vulkan --iree-llvm-embedded-linker-path=/Users/anush/github/shark/iree.venv/lib/python3.10/site-packages/iree/compiler/tools/../_mlir_libs/iree-lld --mlir-print-debuginfo --mlir-print-op-on-diagnostic=false --iree-llvm-target-cpu-features=host --iree-vulkan-target-env=#vk.target_env<v1.3, r(120), [VK_KHR_16bit_storage, VK_KHR_8bit_storage, VK_KHR_shader_float16_int8, VK_KHR_storage_buffer_storage_class, VK_KHR_variable_pointers], Apple:IntegratedGPU, #vk.caps< maxComputeSharedMemorySize = 32768, maxComputeWorkGroupInvocations = 1024, maxComputeWorkGroupSize = dense<[1024, 1024, 1024]>: vector<3xi32>, subgroupSize = 32, subgroupFeatures = 191: i32, shaderFloat16 = unit, shaderFloat64 = unit, shaderInt8 = unit, shaderInt16 = unit, shaderInt64 = unit, storageBuffer16BitAccess = unit, storagePushConstant16 = unit, uniformAndStorageBuffer16BitAccess = unit, storageBuffer8BitAccess = unit, storagePushConstant8 = unit, uniformAndStorageBuffer8BitAccess = unit, variablePointers = unit, variablePointersStorageBuffer = unit >> --iree-stream-resource-index-bits=64 --iree-vm-target-index-bits=64 --iree-util-zero-fill-elided-attrs -iree-vulkan-target-triple=m1-moltenvk-macos --iree-flow-enable-padding-linalg-ops --iree-flow-linalg-ops-padding-size=32 --iree-flow-enable-conv-img2col-transform

Steps to reproduce your issue

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

What component(s) does this issue relate to?
No response
Version information
No response
Additional context
No response

(shark.venv) ➜  shark git:(mymain) ✗ /Users/anush/github/shark/iree.venv/lib/python3.10/site-packages/iree/compiler/tools/../_mlir_libs/iree-compile --iree-input-type=none --iree-vm-bytecode-module-output-format=flatbuffer-binary --iree-hal-target-backends=vulkan --iree-llvm-embedded-linker-path=/Users/anush/github/shark/iree.venv/lib/python3.10/site-packages/iree/compiler/tools/../_mlir_libs/iree-lld --mlir-print-debuginfo --mlir-print-op-on-diagnostic=false --iree-llvm-target-cpu-features=host --iree-stream-resource-index-bits=64 --iree-vm-target-index-bits=64 --iree-util-zero-fill-elided-attrs -iree-vulkan-target-triple=m1-moltenvk-macos --iree-flow-enable-padding-linalg-ops --iree-flow-linalg-ops-padding-size=32 --iree-flow-enable-conv-img2col-transform ./unet64_512_512_fp16_stabilityai_stable_diffusion_2_1_base_torch.mlir

output
<eval_with_key>.204:650:20: error: 'spirv.CompositeConstruct' op operand element type mismatch: expected to be 'f32', but provided 'f16'
<eval_with_key>.204:651:13: error: failed to run translation of source executable to target executable for backend #hal.executable.target<"vulkan", "vulkan-spirv-fb", {spirv.target_env = #spirv.target_env<#spirv.vce<v1.3, [Shader, Float16, Int64, Int16, Int8, StorageBuffer16BitAccess, StorageUniform16, StoragePushConstant16, StorageBuffer8BitAccess, UniformAndStorageBuffer8BitAccess, StoragePushConstant8, GroupNonUniform, GroupNonUniformVote, GroupNonUniformArithmetic, GroupNonUniformBallot, GroupNonUniformShuffle, GroupNonUniformShuffleRelative, GroupNonUniformQuad, VariablePointers, VariablePointersStorageBuffer], [SPV_KHR_16bit_storage, SPV_KHR_8bit_storage, SPV_KHR_storage_buffer_storage_class, SPV_KHR_variable_pointers]>, api=Vulkan, Apple:IntegratedGPU, #spirv.resource_limits<max_compute_shared_memory_size = 32768, max_compute_workgroup_invocations = 1024, max_compute_workgroup_size = [1024, 1024, 1024], cooperative_matrix_properties_nv = []>>}>
<eval_with_key>.204:651:13: error: failed to serialize executables

I think you can remove the lld path and just use
/Users/anush/github/shark/iree.venv/lib/python3.10/site-packages/iree/compiler/tools/../_mlir_libs/iree-compile --iree-input-type=none --iree-vm-bytecode-module-output-format=flatbuffer-binary --iree-hal-target-backends=vulkan --mlir-print-debuginfo --mlir-print-op-on-diagnostic=false --iree-llvm-target-cpu-features=host --iree-stream-resource-index-bits=64 --iree-vm-target-index-bits=64 --iree-util-zero-fill-elided-attrs -iree-vulkan-target-triple=m1-moltenvk-macos --iree-flow-enable-padding-linalg-ops --iree-flow-linalg-ops-padding-size=32 --iree-flow-enable-conv-img2col-transform ./unet64_512_512_fp16_stabilityai_stable_diffusion_2_1_base_torch.mlir

https://reviews.llvm.org/D143042 should fix this and make it compile. Please verify runtime correctness though. :)

@antiagainst Is this still open?

I've not heard complaint regarding the above. So I assume it's fixed. Closing.


RUF012 should not trigger on SQLModel models

SQLModel is a project by FastAPI creator Sebastián Ramírez that combines SQLAlchemy models with Pydantic models, allowing you to use Pydantic-validated models for database interactions without duplicating classes.
The base class for these models is SQLModel. As usual for Pydantic models, they can have mutable default values which will be copied when creating an actual instance. However, Ruff's RUF012 triggers on these models.
Afaict, Ruff already has exceptions for Pydantic's BaseModel and similar classes; I guess these should basically be extended to the SQLModel class…?
The SQLModel code says that it's a subclass of BaseModel, not sure why Ruff doesn't recognize it; Python does.
The following code demonstrates the behavior:
from __future__ import annotations

from pydantic import BaseModel
from sqlmodel import SQLModel

class Foo(SQLModel):
    id: int
    bars: list[Bar] = []

class Bar(SQLModel):
    id: int
    name: str

one = Foo(id=1)
two = Foo(id=2)

one.bars.append(Bar(id=1, name="one"))
two.bars.append(Bar(id=2, name="two"))

print(one.bars)  # [Bar(id=1, name='one')]
print(two.bars)  # [Bar(id=2, name='two')]
print(isinstance(one, BaseModel))  # True

Thanks in advance for looking into this!

Thanks for submitting this issue, it's cool to learn about SQLModel!

The SQLModel code says that it's a subclass of BaseModel, not sure why Ruff doesn't recognize it; Python does.

In general it requires more advanced type inference than what is currently available for Ruff to just "know" that SQLModel is a subclass of pydantic.BaseModel. However, we could theoretically teach Ruff this special case (or just modify the code snippet you linked to also allow subclasses of SQLModel.
This seems somewhat reasonable, but I do worry about where we draw the line (prior to having a type checker) for this type of manually included type information, especially for types outside the standard library.

Thanks for getting back to me so quickly. I understand that adding more and more exceptions to the codebase for third-party libraries isn't a sustainable thing to do.
How about exposing a setting, like lint.pep8-naming.classmethod-decorators or lint.flake8-bugbear.extend-immutable-calls? This would allow users to specify their own exceptions instead of littering noqa comments all over the place or disabling the rule altogether.

I too would appreciate a setting as @scy is suggesting, which allows users to specify their own classes/subclasses that should be excluded from RUF012. I imagine the Ruff type-inference effort is still a ways off, so this could be useful in the meantime.
For instance, Pydantic docs recommend creating your own subclass of BaseModel for any "global" behavior changes https://docs.pydantic.dev/latest/concepts/config/#change-behaviour-globally, so using that common pattern and importing the BaseModel subclass across other files will inevitably lead to a lot of false positives with RUF012 (as also noted in https://github.com/astral-sh/ruff/issues/13630).

I slightly prefer adding SQLModel for now as it solves the common case at a very low cost.

I think I agree. Let's add SQLModel manually for now and forego the new configuration option in favor of type inference.


[FLINK-16626][runtime] Prevent REST handler from being closed more than once

What is the purpose of the change
In Flink 1.10.0 release, job cancellation can be problematic, as users frequently experience java.util.concurrent.TimeoutException at the client side, because the REST endpoint closes pre-maturely before sending out the response.
After discussion with the community and research, it is shown that there are two issues to address:

AbstractHandler and its subclasses can be closed more than once (whether intentionally or unintentionally), so this might lead to unexpected behavior like exceptions, especially when interacting with external systems, or unintended deregistration of Phaser in the handler instance which causes early shutdown of the cluster.
In WebMonitorEndpoint class, the same jobCancelTerminationHandler instance has been registered twice, thus during handler closure process, closeAsync method is called twice, therefore, the cluster pre-maturely entered internalShutdown process, leaving unfinished responses behind.

Brief change log

Added an AtomicBoolean field to prevent closeAsync method of one handler instance from being called multiple times.
Added a new legacyJobCancelTerminationHandler to prevent reuse of existing jobCancelTerminationHandler handler instance.

Verifying this change
This change added tests and can be verified as follows:
YARNJobCancellationITCase
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: yes
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? no
If yes, how is the feature documented? not applicable

Hi @TisonKun @GJL , would you please help review this PR? Thank you very much : )

Hi zentol, greatly appreciated for the detailed comments, I have made adjustments according to the suggestions.
Since this is my very first PR to the community, please do not hesitate to correct me if I am wrong, thank you very much.

Hi @zentol @TisonKun , I have made changes according to your advice, would you please be so kind to review it? Thanks very much.


Cranelift: Stop sign-extending Imm64 immediates in builder methods

Originally, we sign-extended Imm64 immediates from their controlling type var's width to i64 in the builder methods for BinaryImm64 and a couple other instruction formats: https://github.com/bytecodealliance/wasmtime/pull/1687
At some point, we decided that the unused bits in the Imm64 when the controlling type var's width is less than 64 should be zero. And we started asserting that in various places, for example:
https://github.com/bytecodealliance/wasmtime/blob/87817f38a128caa76eaa6a3c3c8ceac81a329a3e/cranelift/codegen/src/machinst/lower.rs#L1237-L1243
However, we never removed or updated the sign-extension code in the builder methods. This commit switches the builder methods over to masking the Imm64 to just the valid bits, effectively doing a zero extend from the controlling type var's width instead of a sign extend.
To avoid too much churn in tests, I made display_inst print the sign-extended-from-the-controlling-type-variable's-width value of Imm64 immediates. I also made the Display implementation for Imm64 always print in decimal form with a - for negative numbers, rather than the hex it would previously print for large negative numbers, so that iconst.i32 0x8000_0000 doesn't display as iconst.i32 0xffff_ffff_8000_0000, which is otherwise pretty confusing.

The asymmetry (small positive numbers, or any negative number, are decimal) somehow doesn't sit right with me. I think I'd almost rather take a one-time diff and pick something more consistent -- always hex? Always decimal? Always decimal but with hex in a comment (like we do for constants now e.g. ; v0 = 0)?

Agreed. I'll look into this as a follow up, rather than doing it in this PR.


defferent output at exported model

@emedvedev, in my case, it doesn't work when I run exported model including Korean recognition. T.T
In the exported model, Korean return good results, but number and English Alphabet showed different result.
Test & predict show the good results .
Do you have solution?

There's not much to go on, so could you maybe provide more information? I may not be able to help, since it's your own fork with significant changes, but maybe someone else would take a look.
Does your Korean fork include the latest master changes? What's the correct fork/branch to look at? How exactly are you exporting the model? Do you have different results for the exact same image with predict and with the same model on the same stage of training when exported?  What are the exact results, ideally with full logs?
Unless your issue includes all that, it would be very hard to see where the issue comes from.

thank you for your response.
my information as belows;
https://github.com/kspook/aocrKR.git
checkpoint: https://drive.google.com/open?id=1tPHoE1gK-AUjYBqbSCFbSc6lRnBh7WI5
model :

In addition to test 1.jpeg the above posting, I will continue for 'shin'
it shows the same result.

for test
2019-06-08 13:17:19,422 root  INFO     Step 6 (0.095s). Accuracy: 16.67%, loss: 3.153957, perplexity: 23.4286, probability: 91.60%   0% (T vs 신)

predict
(py37) kspook@ml004:~/aocrKR$ python aocr36/main.py predict dataset/test-img3/shin.jpeg
2019-06-08 13:18:12.320031: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2019-06-08 13:18:12.326873: I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU Frequency:<PHONE_NUMBER> Hz
2019-06-08 13:18:12.327057: I tensorflow/compiler/xla/service/service.cc:150] XLA service 0x556c9f033c20 executing computations on platform Host. Devices:
2019-06-08 13:18:12.327136: I tensorflow/compiler/xla/service/service.cc:158]   StreamExecutor device (0): ,
2019-06-08 13:18:12,327 root  INFO     phase: predict
2019-06-08 13:18:12,328 root  INFO     model_dir: checkpoints
2019-06-08 13:18:12,328 root  INFO     load_model: True
2019-06-08 13:18:12,328 root  INFO     output_dir: results
2019-06-08 13:18:12,328 root  INFO     steps_per_checkpoint: 0
2019-06-08 13:18:12,328 root  INFO     batch_size: 1
2019-06-08 13:18:12,328 root  INFO     learning_rate: 1.000000
2019-06-08 13:18:12,329 root  INFO     reg_val: 0
2019-06-08 13:18:12,329 root  INFO     max_gradient_norm: 5.000000
2019-06-08 13:18:12,329 root  INFO     clip_gradients: True
2019-06-08 13:18:12,329 root  INFO     max_image_width 260.000000
2019-06-08 13:18:12,329 root  INFO     max_prediction_length 18.000000
2019-06-08 13:18:12,329 root  INFO     channels: 1
2019-06-08 13:18:12,329 root  INFO     target_embedding_size: 10.000000
2019-06-08 13:18:12,330 root  INFO     attn_num_hidden: 128
2019-06-08 13:18:12,332 root  INFO     attn_num_layers: 2
2019-06-08 13:18:12,333 root  INFO     visualize: False
filename, dataset/test-img3/shin.jpeg
2019-06-08 13:18:18,207 root  INFO     Result: OK. 0.92 T

curl.
(base) kspook@ml004:~$ curl -X POST \

http://localhost:9002/v1/models/aocr:predict
-H 'cache-control: no-cache'
-H 'content-type: application/json'
-d '{
"signature_name": "serving_default",
"inputs":
{
"input": { "b64": "/9j/4AAQSkZJRgABAQEAeAB4AAD/4QAiRXhpZgAATU0AKgAAAAgAAQESAAMAAAABAAEAAAAAAAD/2wBDAAIBAQIBAQICAgICAgICAwUDAwMDAwYEBAMFBwYHBwcGBwcICQsJCAgKCAcHCg0KCgsMDAwMBwkODw0MDgsMDAz/2wBDAQICAgMDAwYDAwYMCAcIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAz/wAARCAA+AD4DASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD+f+iiigAoooxQAUUFSpwRgjgijHFABRRRQAUDrRQDg0Adb8FPg14i/aA+Lnh3wX4V0+TUvEXii+i0/T7ZASZZXYKOBk4HUnHABPQV+gf/AAV1/wCDdjxN/wAEsP2WPCvxKm8XWniq31DU00bW7ZYvK/s+4lR3gCf31IRgT2YCvVf+DPv9jCP4y/txeIfirqtu0mn/AAt04rYF0BU6hcgopOejLHvxz/FX6d/8F4f2APFX/BYrwjD8N/hd8aPAtjqPwxmfVNc8Ezyia6ur11xbvPIkha3AjdggdNhZm+bg4APzL/4NXP8Agmj8C/8AgodpXxmPxY8Lr4s1PwzLpgsYZrmSEQwz+cTIuwglt0RB9iPWvgv/AILBfAbwn+zH/wAFIfiv4H8DWbab4T0DVvs+m2rOX8iMRplcnk/Pu61+mX/Bqn8PfG37EP8AwV9+MXwR8faRLoXiq38MvbalZzSZ8t7eaCaKSMj5ZElimDowyGjcMDg5r87v+C7GoR6l/wAFZPjdLGwkVfEUsZKnIBAAI+vtQB8jUUUUAFKpww+vcUlFAH6If8Edf+C/viL/AIJF/CXxt4X0jwDo/jL/AISi7jvrN7y+NotlKqFWL7Iy0i9CFyPQEV84Rf8ABSr4waN+2f4g+PvhnxhqHhH4j+IdRm1Ca+02TCHzCB5DxvuSSEJgbZFZTjkGvn6t74Z+CG+JXxI0Dw7HcQ2ja5qNtpyzyHCQmaVI97ew3ZPsKAPvj/gnp+2b8XfhJ8SPiL+2J4n1zUPEmvxxJpc+rarKZbjUmLwiRVwynZGiwxbR+7HnRKUIIFfCvxm+KGtfHb4n+JPHHiCZrzWvFOpT6nfTY4M0zl2+gycAegr+qD9p/wD4Ia/s46Z+xX8Mfhv478YHwD8P/hmVv9Xnhu4LFvEs4Xa0k8j5bBeR24ycsuclQa/In/gvP+1r+yPP8CvCnwJ/Zb8K6TDY+F9VbUdT17T4CsdywQp5ZmfMlwxPzFi2B2FAH5U0UUUAFFFFAADUlrO9rcxyRyNFJGwZXVipQg5BBHIx61HRQB6b8cf2w/id+0rFZp498eeKPFUVjEIoYdQvnkjiUYACrnHYGvNSVx17cd6ZRQAUUUUAf//Z"
}
}
}'
{
"outputs": {
"probability": 0.915982,
"output": "T"
}

I'm going to leave this issue open for a while in case someone wants to jump in, but as I've mentioned, I don't have the capacity to debug forks, unfortunately. Hopefully someone will be able to help or you'll be able to figure it out :)

@emedvedev , for your information, the exported model can't return Korean when I use 'stdin' in predict() at main.py to get image file.
Now I can't get number well when I changed argument style to get image.

@emedvedev, I think I found the reason.
all  the script I ran, was that I used 'python aocr/main.py ... ',
because the changed part was applied to 'aocr train/predict/...'
In this case, the output and saved_model was different.
How can I appy my changes with 'aocr train/predict/...'

@emedvedev,  I finally found out   the difference b/  saved_model and script is  bug of your code.


Error at the start of download

I have tried to download any playlist, but i always get this same error.
What should I do?
Traceback (most recent call last):
File "C:\Python310\lib\site-packages\pytube_main_.py", line 181, in fmt_streams
extract.apply_signature(stream_manifest, self.vid_info, self.js)
File "C:\Python310\lib\site-packages\pytube\extract.py", line 409, in apply_signature
cipher = Cipher(js=js)
File "C:\Python310\lib\site-packages\pytube\cipher.py", line 33, in init
raise RegexMatchError(
pytube.exceptions.RegexMatchError: init: could not find match for ^\w+\W
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "F:\test\spotify2mp3\run.py", line 276, in
main()
File "F:\test\spotify2mp3\run.py", line 270, in main
download_playlist(spotify_url_link, playlist_name)
File "F:\test\spotify2mp3\run.py", line 182, in download_playlist
yt_vid_obj = yt_dl_obj.streams.filter(only_audio=True).first()
File "C:\Python310\lib\site-packages\pytube_main_.py", line 296, in streams
return StreamQuery(self.fmt_streams)
File "C:\Python310\lib\site-packages\pytube_main_.py", line 188, in fmt_streams
extract.apply_signature(stream_manifest, self.vid_info, self.js)
File "C:\Python310\lib\site-packages\pytube\extract.py", line 409, in apply_signature
cipher = Cipher(js=js)
File "C:\Python310\lib\site-packages\pytube\cipher.py", line 33, in init
raise RegexMatchError(
pytube.exceptions.RegexMatchError: init: could not find match for ^\w+\W

It looks like pytube has been slightly broken by a API change from YouTube.
There's a temporary patch avaliable, to install do the following:
pip3 uninstall pytube
python3 -m pip install git+https://github.com/JazPin/pytube

Thanks!

Hi, I'm having the same problem, I used your method above and still have the same problem.
[!] Retrieving spotify playlist (large playlists will take time)
Traceback (most recent call last):
File "spotify2mp3.py", line 210, in
main(authtype=authtype, playlist=url, private_playlist=True, quality=quality, min_views=DEFAULT_MIN_VIEWS_FOR_DOWNLOAD, max_length=DEFAULT_MAX_LENGTH_FOR_DOWNLOAD)
File "spotify2mp3.py", line 166, in main
success = downloader.download_playlist(playlist)
File "G:\git\spotify2mp3\downloader.py", line 86, in download_playlist
self.prep_folder("downloads/playlists/" + playlist.get_title(True))
File "G:\git\spotify2mp3\apis\spotify.py", line 95, in get_title
self.load()
File "G:\git\spotify2mp3\apis\spotify.py", line 63, in load
playlist = self.base.tekore_spotify.playlist(self.resource_id)
File "D:\Program Files\Python38\lib\site-packages\tekore_client\api\playlist\view.py", line 43, in wrapper
return post_func(json)
File "D:\Program Files\Python38\lib\site-packages\tekore_client\process.py", line 29, in post_func
return type_(**json) if json is not None else None
File "D:\Program Files\Python38\lib\site-packages\tekore_model\serialise.py", line 48, in init
super().init(**data)
File "D:\Program Files\Python38\lib\site-packages\pydantic\main.py", line 164, in init
pydantic_self.pydantic_validator.validate_python(data, self_instance=pydantic_self)
File "D:\Program Files\Python38\lib\site-packages\tekore_model\serialise.py", line 48, in init
super().init(**data)
File "D:\Program Files\Python38\lib\site-packages\pydantic\main.py", line 164, in init
pydantic_self.pydantic_validator.validate_python(data, self_instance=pydantic_self)
File "D:\Program Files\Python38\lib\site-packages\tekore_model\serialise.py", line 48, in init
super().init(**data)
File "D:\Program Files\Python38\lib\site-packages\pydantic\main.py", line 164, in init
pydantic_self.pydantic_validator.validate_python(data, self_instance=pydantic_self)
File "D:\Program Files\Python38\lib\site-packages\tekore_model\serialise.py", line 48, in init
super().init(**data)
File "D:\Program Files\Python38\lib\site-packages\pydantic\main.py", line 164, in init
pydantic_self.pydantic_validator.validate_python(data, self_instance=pydantic_self)
pydantic_core._pydantic_core.ValidationError: 13 validation errors for FullPlaylistEpisode
audio_preview_url
Field required [type=missing, input_value={'album': {'album_type': ...1YUdN5K8jReExVaEfSRZTK'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.5/v/missing
description
Field required [type=missing, input_value={'album': {'album_type': ...1YUdN5K8jReExVaEfSRZTK'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.5/v/missing
html_description
Field required [type=missing, input_value={'album': {'album_type': ...1YUdN5K8jReExVaEfSRZTK'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.5/v/missing
images
Field required [type=missing, input_value={'album': {'album_type': ...1YUdN5K8jReExVaEfSRZTK'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.5/v/missing
is_externally_hosted
Field required [type=missing, input_value={'album': {'album_type': ...1YUdN5K8jReExVaEfSRZTK'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.5/v/missing
is_playable
Field required [type=missing, input_value={'album': {'album_type': ...1YUdN5K8jReExVaEfSRZTK'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.5/v/missing
language
Field required [type=missing, input_value={'album': {'album_type': ...1YUdN5K8jReExVaEfSRZTK'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.5/v/missing
languages
Field required [type=missing, input_value={'album': {'album_type': ...1YUdN5K8jReExVaEfSRZTK'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.5/v/missing
release_date
Field required [type=missing, input_value={'album': {'album_type': ...1YUdN5K8jReExVaEfSRZTK'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.5/v/missing
release_date_precision
Field required [type=missing, input_value={'album': {'album_type': ...1YUdN5K8jReExVaEfSRZTK'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.5/v/missing
show
Field required [type=missing, input_value={'album': {'album_type': ...1YUdN5K8jReExVaEfSRZTK'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.5/v/missing
episode
Input should be True [type=literal_error, input_value=False, input_type=bool]
For further information visit https://errors.pydantic.dev/2.5/v/literal_error
track
Input should be False [type=literal_error, input_value=True, input_type=bool]
For further information visit https://errors.pydantic.dev/2.5/v/literal_error

The code needs re-writing, as it does from time to time. I'll be fixing your issues, with the others that have built up, asap.
Sorry for the delay.
I hope all is well.

The code needs re-writing, as it does from time to time. I'll be fixing your issues, with the others that have built up, asap.
Sorry for the delay.
I hope all is well.

Thanks for the reply, I saw your answer again in other issus, hopefully better.

Hi, having problem here, can help me? im using macbook
Please provide a Spotify URL (right click, share, copy link) or 'liked':

https://open.spotify.com/track/79R7rJGvh4cIdQJO4IL0J7?si=dcf8794847974a73

Which quality would you like? (Options: low, medium, high, or specify bitrate up to 320): 320
Chosen Settings
Song: https://open.spotify.com/track/79R7rJGvh4cIdQJO4IL0J7?si=dcf8794847974a73
Song quality / bitrate: 320 / 320 bps
Accessing Spotify anonymously
Searching for song [1/0] : Sleigh Ride by Leroy Anderson Iain Sutherland Concert Orchestra Iain Sutherland
Traceback (most recent call last):
File "/Users/stevenmathers/Downloads/Github/spotify2mp3-main/spotify2mp3.py", line 206, in
main(authtype=authtype, song=url, quality=quality, min_views=DEFAULT_MIN_VIEWS_FOR_DOWNLOAD, max_length=DEFAULT_MAX_LENGTH_FOR_DOWNLOAD)
File "/Users/stevenmathers/Downloads/Github/spotify2mp3-main/spotify2mp3.py", line 164, in main
success = downloader.download_track(song)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/stevenmathers/Downloads/Github/spotify2mp3-main/downloader.py", line 185, in download_track
youtube_link = self.youtube_client.search( searchable_name, self.max_length, self.min_view_count )
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/stevenmathers/Downloads/Github/spotify2mp3-main/apis/youtube.py", line 32, in search
youtube_video_duration_seconds = int(youtube_video_duration[0]) * 60  + int(youtube_video_duration[1])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ValueError: invalid literal for int() with base 10: '3.20'

Hi, having problem here, can help me? im using macbook
Please provide a Spotify URL (right click, share, copy link) or 'liked':

https://open.spotify.com/track/79R7rJGvh4cIdQJO4IL0J7?si=dcf8794847974a73

Which quality would you like? (Options: low, medium, high, or specify bitrate up to 320): 320
Chosen Settings
Song: https://open.spotify.com/track/79R7rJGvh4cIdQJO4IL0J7?si=dcf8794847974a73 Song quality / bitrate: 320 / 320 bps Accessing Spotify anonymously
Searching for song [1/0] : Sleigh Ride by Leroy Anderson Iain Sutherland Concert Orchestra Iain Sutherland Traceback (most recent call last): File "/Users/stevenmathers/Downloads/Github/spotify2mp3-main/spotify2mp3.py", line 206, in main(authtype=authtype, song=url, quality=quality, min_views=DEFAULT_MIN_VIEWS_FOR_DOWNLOAD, max_length=DEFAULT_MAX_LENGTH_FOR_DOWNLOAD) File "/Users/stevenmathers/Downloads/Github/spotify2mp3-main/spotify2mp3.py", line 164, in main success = downloader.download_track(song) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/stevenmathers/Downloads/Github/spotify2mp3-main/downloader.py", line 185, in download_track youtube_link = self.youtube_client.search( searchable_name, self.max_length, self.min_view_count ) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/stevenmathers/Downloads/Github/spotify2mp3-main/apis/youtube.py", line 32, in search youtube_video_duration_seconds = int(youtube_video_duration[0]) * 60 + int(youtube_video_duration[1]) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: invalid literal for int() with base 10: '3.20'

There is a problem with the song list download, the author is rewriting it, please be patient~

Hi, having problem here, can help me? im using macbook
Please provide a Spotify URL (right click, share, copy link) or 'liked':

https://open.spotify.com/track/79R7rJGvh4cIdQJO4IL0J7?si=dcf8794847974a73

Which quality would you like? (Options: low, medium, high, or specify bitrate up to 320): 320
Chosen Settings
Song: https://open.spotify.com/track/79R7rJGvh4cIdQJO4IL0J7?si=dcf8794847974a73 Song quality / bitrate: 320 / 320 bps Accessing Spotify anonymously
Searching for song [1/0] : Sleigh Ride by Leroy Anderson Iain Sutherland Concert Orchestra Iain Sutherland Traceback (most recent call last): File "/Users/stevenmathers/Downloads/Github/spotify2mp3-main/spotify2mp3.py", line 206, in main(authtype=authtype, song=url, quality=quality, min_views=DEFAULT_MIN_VIEWS_FOR_DOWNLOAD, max_length=DEFAULT_MAX_LENGTH_FOR_DOWNLOAD) File "/Users/stevenmathers/Downloads/Github/spotify2mp3-main/spotify2mp3.py", line 164, in main success = downloader.download_track(song) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/stevenmathers/Downloads/Github/spotify2mp3-main/downloader.py", line 185, in download_track youtube_link = self.youtube_client.search( searchable_name, self.max_length, self.min_view_count ) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/stevenmathers/Downloads/Github/spotify2mp3-main/apis/youtube.py", line 32, in search youtube_video_duration_seconds = int(youtube_video_duration[0]) * 60 + int(youtube_video_duration[1]) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ValueError: invalid literal for int() with base 10: '3.20'

There is a problem with the song list download, the author is rewriting it, please be patient~

ok thanks


Warning for limited steam accounts

Because @jimmydorry  was whining

Three commits for that?


[doc] update to the models documentation

Context
What is the purpose of this PR? Is it to

[ ] add a new feature
[ ] fix a bug
[x] update tests and/or documentation
[ ] other (please add here)

Changelog

add missing models to the docs
various other minor changes

Test plan
make html and examined the results

[x] run pre-commit hooks and linters (make sure you've first installed via pre-commit install)
[ ] add unit tests for any new functionality
[ ] update docstrings for any new or updated methods or classes
[ ] run unit tests via pytest tests
[ ] run recipe tests via pytest tests -m integration_test
[ ] manually run any new or modified recipes with sufficient proof of correctness

[ ] include relevant commands and any other artifacts in this summary (pastes of loss curves, eval results, etc.)

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

Project coverage is 26.55%. Comparing base (74fb5e4) to head (27c554e).
Report is 3 commits behind head on main.

Files
Patch %
Lines

torchtune/models/code_llama2/_model_builders.py
0.00%
2 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1085      +/-   ##
==========================================
- Coverage   26.66%   26.55%   -0.11%
==========================================
  Files         183      183
  Lines        8326     8319       -7
==========================================
- Hits         2220     2209      -11
- Misses       6106     6110       +4

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

Thanks for adding all this in. One concern I have with the "models" docs page currently is that I believe the provided download commands provided are incomplete. I think if you use the command, the default download directory will not match the directory used in our configs. We could update the commands, but I think it'd be better to actually update the default folder to use the path name from huggingface hub which is the pattern we've been following.

@pbontrager updated the --output_dir default of tune download to be /tmp/<model_name>


duplicates: xperm.n == xperm4, xperm.b == xperm8, rev.b == brev8

This can be confusing and I don't see why it would be intentional:

Sect 30.5.49. xperm.n and Sect 34.4.48. xperm4 seem to define exactly the same instruction with different names.
Also 30.5.48. xperm.b === 34.4.47. xperm8.
Also 30.5.30. rev.b == 34.4.13. brev8.

I recall that (Krste) requested us to change the names of { rev.b, xperm.n, xperm.b } from the bitmanip names in late stages of scalar crypto ratification -- just before the public review. So we changed those. I guess the old names made a comeback from the old bitmanip specification into the merged spec?
Here's the original issue that motivated the change: https://github.com/riscv/riscv-crypto/issues/115
For scalar crypto the change happened for v1.0.0-rc2 in September 2021: https://github.com/riscv/riscv-crypto/releases/tag/v1.0.0-rc2-scalar

The fundamental problem, IMO, is the duplication of the Zbkb, Zbkc, and Zbkx specs between the bitmanip and scalar crypto chapters.  I think it makes the most sense to consolidate them into the bitmanip chapter, but fix the mnemonics to correspond to the ones in the scalar crypto chapter, as you suggest.  If someone can make a PR that does this, I'd be happy to review it.

I will take care of this PR.

@mjosaarinen My PR fixes the mnemonics: https://github.com/riscv/riscv-isa-manual/pull/1524
Since no good deed goes unpunished, can you sanity-check Zbkb/Zbkc/Zbkx in the bitmanip chapter?  I did some spot checks.  The opcodes look right, but you might want to check them anyway.  The SAIL code is differently formatted, though.  (I didn't check its semantics.)  If you have any recommendations, please follow up with a PR, which I'll be happy to review.

Thanks,
Here are some things from the review:
There's a typo here: https://github.com/riscv/riscv-isa-manual/blob/568e50adbfbaab478153807e0efed6f3bc908671/src/scalar-crypto.adoc?plain=1#L3356
As you note, it would be great if andn clmul clmulh orn pack packh packw rev8 rol rolw ror rori roriw rorw unzip xnor xperm4 xperm8 zip would not be defined twice in two different sections.
Typesetting of sail for brev8, xperm4, xperm8, in scalar-crypto.adoc is different from the one in b-st-ext.adoc as all indent has been removed from the crypto definitions of these instructions. https://github.com/riscv/riscv-isa-manual/blob/568e50adbfbaab478153807e0efed6f3bc908671/src/scalar-crypto.adoc?plain=1#L3436
The sail definitions in bitmanip retain the old names in pseudocode; e.g. xpermn_lookup https://github.com/riscv/riscv-isa-manual/blob/568e50adbfbaab478153807e0efed6f3bc908671/src/b-st-ext.adoc?plain=1#L3568
Furthermore on the bitmanip version retains the old names in links. https://github.com/riscv/riscv-isa-manual/blob/568e50adbfbaab478153807e0efed6f3bc908671/src/b-st-ext.adoc?plain=1#L988
Cheers,
-markku

PR from the review https://github.com/riscv/riscv-isa-manual/pull/1531

Many thanks.  I'll consider this one resolved for now.


GH-34665: [Parquet][C++] Allow Reading BloomFilter

Rationale for this change

Allow reading bloom filter in parquet file reader.
What changes are included in this PR?

[x] Add Basic BloomFilterReader
[x] Test BloomFilterReader

Are these changes tested?

Will add
Are there any user-facing changes?
User can read bf from file now.

Closes: #34665

@wjones127 @wgtmac @westonpace Do you think this interface is ok? If ok, I will continue work on this.

Comment fixed and test is added, mind take a look @wjones127 @wgtmac

Currently, we don't have BloomFilterWriter, so I can only test bloomfilter from parquet-testing repo. In my next patch, I'll add bloomfilter writer, and then we can have more tests.

E   pyarrow._flight.FlightCancelledError: Flight cancelled call, with message: CANCELLED. gRPC client debug context: UNKNOWN:Error received from peer localhost:49542 {grpc_message:"CANCELLED", grpc_status:1, created_time:"2023-03-28T03:52:31.535724+00:00"}. Client context: IOError: Server never sent a data message. Detail: Internal

pyarrow/_flight.pyx:62: FlightCancelledError
----------------------------- Captured stderr call -----------------------------
E0328 03:52:31.504445000<PHONE_NUMBER>27296 ssl_transport_security.cc:1854] No match found for server name: fakehostname.
E0328 03:52:31.515087000<PHONE_NUMBER>27296 ssl_transport_security.cc:1854] No match found for server name: fakehostname.
=============================== warnings summary ===============================
tests/test_plasma.py::TestPlasmaClient::test_subscribe_socket
  /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/_pytest/python.py:195: ResourceWarning: unclosed <socket.socket fd=303, family=1, type=1, proto=0>
    result = testfunction(**testargs)
  Enable tracemalloc to get traceback where the object was allocated.
  See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info.

tests/test_substrait.py::test_named_table_invalid_table_name
  /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning: Exception ignored in: 'pyarrow._substrait._create_named_table_provider'

  Traceback (most recent call last):
    File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyarrow/tests/test_substrait.py", line 250, in table_provider
      raise Exception("Unrecognized table name")
  Exception: Unrecognized table name

    warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================

Seems this isn't caused by me?

@wgtmac PTAL again?

@westonpace @wjones127 Mind take a look?


Review and finalize integration details with WF Swarm missions

https://github.com/openshiftio/appdev-documentation/blob/master/docs/topics/rest-level-0-experience-basic-interaction-wf-swarm.adoc
https://github.com/openshiftio/appdev-documentation/blob/master/docs/topics/health-check-experience-basic-interaction-wf-swarm.adoc
https://github.com/openshiftio/appdev-documentation/blob/master/docs/topics/configmap-experience-basic-interaction-wf-swarm.adoc

@heiko-braun mind taking this one?

sure, i'll review it later on

A few things:

rest-level 0: the curl commands are wrong ad the payload changed. take a look here for the most recent examples: https://github.com/wildfly-swarm-openshiftio-boosters/wfswarm-rest-http

health-check: works completely different and is now aligned with the mission contents. take a look here: https://github.com/wildfly-swarm-openshiftio-boosters/wfswarm-health-check

configmap: minor changes to the pod names, etc. but overall reflects the contents more or less: See  https://github.com/wildfly-swarm-openshiftio-boosters/wfswarm-configmap

@rhoads-zach this put's the ball back in your court

thank you @heiko-braun
@kenfinnigan would you like to update this in the docs, or would you like us to?

If you're able to @rhoads-zach that would be awesome!

#91 and #90 help address some of the issues.
I'm still not clear on how to interact with the health check Mission. @kenfinnigan or @heiko-braun can you issue a PR updating the WF Health Check Mission on how you're supposed to interact with it?

@rhoads-zach Sure, I can do that. But I am not clear what you expect. The basic interactions are described in https://docs.google.com/document/d/10ZzCVrxzifQeASAYlgFWERqgbYGj4ucJwCzpb37jTyw/edit#heading=h.we4w2qryfz43 and shared between all runtimes. What's the proper place to put common descriptions?

@rhoads-zach I've update both the instructions for deployment as well interaction with booster: https://github.com/openshiftio/appdev-documentation/pull/92
Let me know if this is what you had in mind.

Here's the fix to the basic http booster: https://github.com/openshiftio/appdev-documentation/pull/93

Configmap seem to be fine

Here are the changes so far:

[x] healthcheck instructions: https://github.com/openshiftio/appdev-documentation/pull/96
[x] basic http instructions: https://github.com/openshiftio/appdev-documentation/pull/93
[x] crud instructions: https://github.com/openshiftio/appdev-documentation/pull/96
[x] configmap instructions: no changes needed

@starksm64 Do you take care of the secure-rest instructions at [1] ?
[1] https://github.com/openshiftio/appdev-documentation/tree/master/docs/mission-secured-wf-swarm

Yes, they should be good but I will go over them again today.

@starksm64 if everything looks good do you mind closing this issue?

I have gone through them and the are fine, but I don't have permission to close the issue.

thanks @starksm64 closing.


Sampling code

Hi, thank you for providing results from such a valuable research.
I'm trying to build word prediction model using your RNN code.
I successfully finished installation and built the first model!! Thank you.
Now I would like to see how it actually predict next word.
But I am having a hard time to write codes for such task, since I am very new to this domain.
In the Kaparthy's package, there is a script for generating texts (sample.lua).
Could you provide such script for your solution?
Thank you very much in advance.

Hi, I'm a rookie on torch too. However, I tried to write a sample function for this model myself (unfortunately it's super slow), and you can find it on https://github.com/LiyuanLucasLiu/lstm-char-cnn

Hi, another rookie here. The previous version using Squeeze.lua works fine.
I would like to test your sample.lua as per karpathy but it doesn't work with the previous version.
Unfortunately, when I run the new version without Squeeze.lua I get an error which references 'Squeeze':  https://github.com/yoonkim/lstm-char-cnn/issues/18
Any suggestions to fix are appreciated.
Also, sample-beam.lua increases the quality of karpathy output dramatically (imho)
https://github.com/pender/char-rnn/blob/master/sample-beam.lua
Would be cool to see this working for this model.
cheers

Updated torch and everything working. Generated a quick .t7 file with lowest possible settings and only 5 epochs to test sample.lua.  Following " batch_size' failed. " error generated.
Is there a value I can set to prevent this or do I have to run "main.lua" with the values given?
thanks
aaron@aaron-Macmini ~/Desktop/lstm-char-cnn-NEXT $ th sample.lua
loading data files...
Word vocab size: 4040, Char vocab size: 71
reshaping tensors...
data load done. Number of batches in train: 14, val: 2, test: 1
number of parameters in the model: 6073985
/home/aaron/torch/install/bin/luajit: /home/aaron/torch/install/share/lua/5.1/nn/THNN.lua:109: Assertion `THIndexTensor_(size)(target, 0) == batch_size' failed.  at /home/aaron/torch/extra/nn/lib/THNN/generic/ClassNLLCriterion.c:43
stack traceback:
[C]: in function 'v'
/home/aaron/torch/install/share/lua/5.1/nn/THNN.lua:109: in function 'ClassNLLCriterion_updateOutput'
...ron/torch/install/share/lua/5.1/nn/ClassNLLCriterion.lua:41: in function 'forward'
sample.lua:216: in function 'sample'
sample.lua:236: in main chunk
[C]: in function 'dofile'
...aron/torch/install/lib/luarocks/rocks/trepl/scm-1/bin/th:145: in main chunk
[C]: at 0x00406670

Hi, I'm not sure what causes this error (as a rookie...), but it seems that you ignored several necessary options while running sample.lua (the default value might not fit your checkpoint's setting), such as '-model'.

Thanks for your reply.
Could you supply an example of the terminal commands to run sample.lua ?
The commands should be based on running main.lua and generating the necessary .t7 file from the supplied PTB files.
This is easy with the karpathy original but not so much with this lstm version.
Thanks

Hi, I spent some time to train a new model and try sample.lua, I find that:
$ th main.lua -savefile char-large -EOS '+'
$ th sample.lua -model cv/lm_char-large_epoch25.00_81.97.t7 -gpuid 0 -cudnn 1 -length 20 -savefile tmpresult.t7 -temperature 0.5`

works fine with me.
hope it could help.

Hi:
Thanks for sampling code. I have updated torch/lua but now it generates the following error:
/home/gentxt/torch/install/share/lua/5.1/nn/THNN.lua:110: bad argument #3 to 'v' (cannot convert 'struct THCudaTensor *' to 'struct THCudaLongTensor *')
stack traceback:
[C]: in function 'v'
/home/gentxt/torch/install/share/lua/5.1/nn/THNN.lua:110: in function 'ClassNLLCriterion_updateOutput'
...txt/torch/install/share/lua/5.1/nn/ClassNLLCriterion.lua:41: in function 'forward'
sample.lua:182: in function 'sample'
sample.lua:236: in main chunk
[C]: in function 'dofile'
...usr/torch/install/lib/luarocks/rocks/trepl/scm-1/bin/th:145: in main chunk
[C]: at 0x00405e40
Torch/lua works fine with torch-rnn, https://github.com/karpathy/char-rnn etc. including sampling but doesn't work with sample.lua   I've updated everything and the error continues. Similar problem reported here:
https://github.com/torch/nn/issues/981
Any suggestions on how to run? Using Cuda 8 and pascal 1070 card
Thanks


Not responding to all taps on Android

(feedback from four user tests with the gallery on Nexus 5X phones)
I watched users play with the gallery, and saw noticeable missed taps. I can't quantify how frequent or if there was an obvious pattern. But both the users and I noticed the app not responding in the way they expected.
Since this was across all four users, I wonder if we can take a closer look at why this was happening and why we weren't responding to taps in the way they expected.
If there's some debug/diagnostics we can add/enable, I'm happy to run other tests to get quantified data.

We should expose debugPaintPointersEnabled in the gallery (debug mode only). This would allow you to try using the app for a while to see if the problem is that we're missing the event entirely or if we're just not thinking it taps the object.
We also have outstanding bugs with taps that could be the cause: https://github.com/flutter/flutter/issues/5557 https://github.com/flutter/flutter/issues/5017

It may also be scroll hysteresis?  We're confusing taps for scrolls/flings?  e.g. https://github.com/flutter/flutter/issues/5524

Yeah. @dragostis also had a similar insight :)

Definitely seeing missing taps when trying to tap to open drawer on 5X.

Possibly related: https://github.com/flutter/flutter/issues/5201

One source of this problem on Android is the overscroll animation, see https://github.com/flutter/flutter/issues/5717
Another source is the fact that press-drag-release gestures unconditionally generate fling animations, see #5870

Hans mentioned that he was looking at this issue.

👍


Clean the matrix class

remove all unused code

Do you think this issue is doable for a beginner?

yes, you need an IDE like Eclipse, NetBeans or IntelliJ. You need to check the methods that are not used anymore (dead code). An IDE will show it to you. Anyway I will review your commit, so dont worry ;)


[DOC] Write a guide on the localnet development process

Is your feature request related to a problem? Please describe.
During nearcore development, I need to deal with localnet setup when I want to test new features.
Describe the solution you'd like
I would like to have clear step-by-step guidance on how to run the node in localnet mode (well, this is easy: ./scripts/start_localnet.py) and how to do common tasks (e.g. manipulate with it via near-shell, nearlib, RPC, etc).
Additional context
Here is how to create a new account after a localnet is started (given the near home folder is in /path/to/near):
$ env NODE_ENV=local ./node_modules/.bin/near --keyPath /path/to/near/validator_key.json create_account --masterAccount test.near new-account

Well, you would better also specify --publicKey (it seems unwise to have an account without a public key) and --initialBalance (I vote for not having a default here for mainnet) (https://github.com/nearprotocol/near-shell/issues/238).
P.S. It is really bad that we abuse NODE_ENV, and we should have it as an argument parameter as environment variables are not for humans (https://github.com/nearprotocol/near-shell/issues/239).

@amgando I would like to take this issue as I have some expertise on it. I am even considering to combine them with #331 and take that one. Do you mind?


Allow to parse multi-line html and add HtmlHelper::xpathHtmlDocument …

…method

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

29 of 29 (100.0%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.3%) to 84.574%

Totals

Change from base Build<PHONE_NUMBER>:
-0.3%

Covered Lines:
159

Relevant Lines:
188

💛  - Coveralls


publication pages missing gene expression data

I'm sure there is gene expression stuff for this paper
(added in artemis)
http://preview.pombase.org/reference/PMID:26132084
(don't need to do this to go live)

added in artemis

Do you mean in the contig files?  I can't see any annotations for PMID:26132084 in those files.

and where there is gene expression annotation in the contig files, it shows up on publication pages.
e.g. http://preview.pombase.org/reference/PMID:22840777 , http://preview.pombase.org/reference/PMID:24003116

yep wrong paper.


"Atlas Roadmap" saved filter to "Atlases" Tab

Need
We need an easy way to show the roadmap of atlases on the atlas page.
Approach
Add a saved filter on the Atlases tab called "Atlas Roadmap." This should sort the atlases by target completion ascending.

Complete


added laravel/framework entry

Fixes a vulnerability in the QueryBuilder due to unexpected bindings.

@fabpot thanks for quickly merging 👍

@fabpot thanks for quickly merging 👍

@yeroon Can you also add an entry for illuminate/database? 🙏

@yeroon Can you also add an entry for illuminate/database? 🙏

Is it possible to have a better URL for this one? The URL provided for information contains no information what the security leak is and how it can be misused. I can not find a CVE for it either.

Is it possible to have a better URL for this one? The URL provided for information contains no information what the security leak is and how it can be misused. I can not find a CVE for it either.

@pieterw2w Looks like #529 tries to address this.

@pieterw2w Looks like #529 tries to address this.


Ensure counting runs in a Fiber, even if throttled (#278)

From https://github.com/aldeed/meteor-tabular/issues/278#issuecomment-217318112 :
The core of the problem is that .count() is called synchronously, and regardless of when/where countCursor was created, this call needs to be in a Fiber if Meteor had any reason to believe that Mongo changed separately from its own actions (i.e. another server or external process wrote to the database).
Meteor.setTimeout, which I introduced in my earlier fix, created a Fiber and fixed some of the problems... but it was doing so around the _.throttle. And _.throttle(func) can sometimes call func synchronously, but sometimes asynchronously if it actually hits the throttle condition. So in situations where the count was dirty, and throttling was triggered, then the Fiber would never wrap the actual thing that we needed a Fiber to wrap!
So the actual fix should be a lot simpler than my branch: just wrap updateRecords in Meteor.bindEnvironment before it gets throttle-wrapped. I'm doing some final testing and will make a PR shortly.

bindEnvironment code for those interested: https://github.com/meteor/meteor/blob/abd574f38008b45f5e2a6bc322b10bcdde44763a/packages/meteor/dynamics_nodejs.js#L84


Linux 2 stop bits

I'm trying to send data with 2 stop bits (Linux/ARMv6 = Raspberry Pi 3 B+, stretch) and I'm positive I'm only getting just one. (Actually scoped timings with my audio interface to confirm.) The go-serial code related to stop bits for Linux is as below.
switch options.StopBits {
	case 1:
	case 2:
		t2.c_cflag |= syscall.CSTOPB

	default:
		return nil, errors.New("invalid setting for StopBits")
}

Not much difference between 1 and 2 bits.
Yes, I need 2 stobits.
PS. Is it anyhow possible to disable the serial protocol 111...0xxxxxxxx1(1)...111 and just throw series of 0s and 1s down the pipe through UART? I can render those bit strings in my code as long as I have some drain that swallows my bits at constant rate.
PPS. Now that I've opened my question spree, does anyone know why switching baud rate is so slow? Is it due to drivers and hardware? Could it be made faster. I takes 20ms or more on this Raspberry Pi.

Found out something interesting that might help implementing this.
"Beyond these three modes, there are two other modes: MARK and SPACE parity. With MARK parity, the parity bit is always 1 (independent of the data bits). With SPACE parity, the parity bit is always 0. MARK and SPACE parity does not allow detecting transmission errors, but it may be used as an additional information bit. Therefore, these modes are sometimes referred to as CS9 (9 data bits).
MARK and SPACE parity, although implemented in most hardware, are not defined in the POSIX standard. The manpage of of the Unix/Linux termios library, for instance, doesn't say a single word about these two parity modes. (Note that PARMRK has nothing to do with MARK parity.)" [https://viereck.ch/linux-mark-space-parity/]
There are actually a lot more on the page.
PySerial knows these bits [https://pythonhosted.org/pyserial/pyserial_api.html].
Just wondering if it's just my chip that can't do this. In that case I think I have to push by bytes one-by-one which might introduce some latency. Oh no.

Okay. I have got no problem any more. Holy moly, this is actually a fantastic solution.
time.Sleep it is. After port.Write you have to sleep for 11 bits duration (e.g. 11 / 9600 seconds for baud rate 9600). 11 bits because sending those bits along the line is much slower than pushing them into the buffer. You have to sleep over your start bit (0), data bits (8 in this case), stop bit (1), and skip one bit. This works because the value on the bus is 1 when there's no traffic, so sleep of 1 bit time is effectively same as sending one more bit.

If this worked on higher bitrates I'd be happy.


Error message intag prompt in vscode editor

Open the file using the vscode editor and receive an error message

Please check if this issue has been resolved in version 2.x. If not, feel free to create a new one.


Block the creation of resources that violate the model

See: https://github.com/kubernetes-incubator/service-catalog/pull/474/files#diff-8ce36b4879e7305c3b249d48feb65bd2R393
We should probably never get into this state - one where an instance is created w/o a broker.
We should:
1 - block the creation of a resource that violates our model
2 - decide what to do when we detect this situation. I'd prefer, if possible, to just clean things up - remove the offending resources. As long as it doesn't break the end user in some way.

never mind - apparently its a feature to have our model be in an inconsistent state.


Problems in implementation of golang.org/x/net/http2

What version of Go are you using (go version)?

$ go version
go version go1.16.6 darwin/amd64

Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE="on"
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/neko/Library/Caches/go-build"
GOENV="/Users/neko/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/neko/golang/pkg/mod"
GONOPROXY="github.com/nekomoewww/harmony"
GONOSUMDB="github.com/nekomoewww/harmony"
GOOS="darwin"
GOPATH="/Users/neko/golang"
GOPRIVATE="github.com/nekomoewww/harmony"
GOPROXY="https://goproxy.cn,https://gocenter.io,https://goproxy.io,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GOVCS=""
GOVERSION="go1.16.6"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/neko/golang/work/missevan-go/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/m0/k_38ftb53yg0mqbcrrjypr3m0000gn/T/go-build4128625603=/tmp/go-build -gno-record-gcc-switches -fno-common"

What did you do?
Used default http2.Transport{} and set to a http.Client.Transport, and established many connections to the http2 server.
What did you expect to see?
There are three different problems we are expecting to improve:

We shouldn't establish more connections when it reaches a limitation. http2.Transport needs to export a MaxConcurrentStreams field to achieve this
If one connection pipeline encountered an error, we should break all the connections in the same pool and try to start over again. http.Client or http2.Transport needs to export some error indication fields to achieve this

Base on all the above, can we expose the
What did you see instead?

We cannot retrieve connection when timeout, it will result in an error which we cannot control at all. (Example error: context deadline exceeded (Client.Timeout exceeded while awaiting headers))
There are no exported fields to adjust connection limitations
If one connection pipeline encountered an error, it hangs over and we lost control of it

I have mentioned one of the problems in https://github.com/golang/go/issues/39389 along with a review message inside its Pull Request https://github.com/golang/net/pull/73.
Those all should reference to https://go-review.googlesource.com/c/net/+/236497/

Source code to reproduce:
func ServeTLS(certPath, certKeyPath string, r *gin.Engine, port int, h ...GinHandler) string {
	for i := range h {
		h[i].Mount(r)
	}

	l, err := net.Listen("tcp", net.JoinHostPort("<IP_ADDRESS>", strconv.Itoa(port)))
	if err != nil {
		panic(err)
	}

	go func() {
		err := http.ServeTLS(l, r, certPath, certKeyPath)
		if err != nil {
			panic(err)
		}
	}()
	time.Sleep(100 * time.Millisecond)
	return l.Addr().String()
}

func TestTimeout(t *testing.T) {
	assert := assert.New(t)
	require := require.New(t)

	caCertPath := "../testdata/ca.crt"
	certPath := "../testdata/server.crt"
	certKeyPath := "../testdata/server.pem"

	err := generateCerts()
	require.NoError(err)

	defer func() {
		err = os.Remove(caCertPath)
		assert.NoError(err)
		err = os.Remove(certPath)
		assert.NoError(err)
		err = os.Remove(certKeyPath)
		assert.NoError(err)
	}()

	r := gin.New()
	h := timeoutHandler{}
	addr := ServeTLS(certPath, certKeyPath, r, 0, &h)

	c := &http.Client{
		Timeout: time.Second,
	}

	c.Transport = http2.Transport{}
	maxTryout := 100000
	var wg sync.WaitGroup
	errorCount := 0
	for i := 0; i < maxTryout; i++ {
		go func(idx int) {
			wg.Add(1)
			defer wg.Done()
			uri := fmt.Sprintf("https://%s/normal/%d?timeout=1", addr, idx)
			req, err := http.NewRequest(http.MethodGet, uri, nil)
			require.NoError(err)
			_, _ = c.Do(req)
		}(i)
		go func(idx int) {
			wg.Add(1)
			defer wg.Done()
			uri := fmt.Sprintf("https://%s/normal/%d?timeout=0", addr, idx)
			req, err := http.NewRequest(http.MethodGet, uri, nil)
			require.NoError(err)
			_, err = c.Do(req)
			if err != nil {
				errorCount++
			}
		}(i)
	}
	Debugf("current error count: %d", errorCount)
	for i := 0; i < 100; i++ {
		uri := fmt.Sprintf("https://%s/normal/%d?timeout=0", addr, i)
		req, err := http.NewRequest(http.MethodGet, uri, nil)
		require.NoError(err)
		_, err = c.Do(req)
		if err != nil {
			errorCount++
		}
	}
	wg.Wait()
	Debugf("ended, report: %d/%d, errored percentage: %d%%", errorCount, maxTryout, (errorCount/maxTryout)*100)
}

There were some chang later we researched the source code, net/http2 provides a new method called http2.ConfigureTransports to auto configure the instance from http.Transport. We did replaced the code:
c.Transport = http2.Transport{} // old

c.Transport, err = http2.ConfigureTransports(&http.Transport{
	TLSClientConfig: &tls.Config{
		InsecureSkipVerify: true,
	},
}) // new

By using the test code above, we can find out many problems:

The client cannot find out the socket hangs up and terminate it by itself.
The client can establish infinite connections, this can be improved by https://github.com/golang/net/pull/73
The client should be able to be aware of the connection time by itself and terminate those connections established a long time ago.

Well, we could solve all these problems by overriding the implementation of http2.Transport{}.RoundTrip(), however, the implementation was missing.

We shouldn't establish more connections when it reaches a limitation. http2.Transport needs to export a MaxConcurrentStreams field to achieve this
If one connection pipeline encountered an error, we should break all the connections in the same pool and try to start over again. HTTP.Client or http2.Transport needs to export some error indication fields to achieve this

I just mentioned it above.
And also, most of the implementation of http2 seems to consider the usage environment in an End User to Service way, not the Service to Service way (Such as gRPC).
To summarize this, let's consider a case where the servers of microservice would participate in:

Both the client and server have the ability to serve high concurrency requests.
The client we mentioned above will provide other connections to end-user clients (maybe millions).

In this case, we need more control of the client (microservice), dynamically change the limitation of the client can be established at different time aspect by referencing the bandwidth which user and services consume. To make sure the calling stacks are stable, we will also need the ability to control the pipeline, terminate the long and dead connections for better performance.


fix datetime format for RFC3339 compliance

Fix for Issue https://github.com/ajv-validator/ajv-formats/issues/55
Does work for fast mode and full mode.
Fix tested with this example:
ajv.validate({ type: 'string', format: 'date-time' }, '2020-01-01 20:00:00.000Z')

@epoberezkin, @ChALkeR  Please review

@ChALkeR , @epoberezkin  Please review the suggested changes

@jasoniangreen Could you please have a look an review this?

@MarcoKorinth Please rebase.

@lmammino, @jasoniangreen Please review.

@MarcoKorinth #86 points out that the leap second is implemented incorrectly.


What's the difference

Hi, thanks for this work.
May I ask the difference between this work and wav2lip except the network structure?

here is the version where you can train the model with 1080p and i fixed some activation function so the model can be more efficient

you can read this issues to learn more
https://github.com/Rudrabha/Wav2Lip/issues/107

because the output of author 96x96 and resize by opencv. So if your original face in your bigger than 96x96 and then 96x96 model will not work well

I will add Wasserstein and gradient penalty for the loss function soon

Thanks for your reply.
So let me summarize:

ReLU -> PReLU
Gradient penalty
Wasserstein
Input size: 96 -> 288
Is there anything I missed ？

By the way, how many steps can sync_loss be lower than 0.75?

after 2k iter it can get lower 0.75. My dataset is private (1080p, no noise, The expression of the speaker is very normal, not too expressive) bs 128, 4 gpus tesla p100

Thanks!
I can't get lower than 0.75 in LRS2 dataset.

Hello! Can you please tell us, when do you plan to implement Wasserstein loss and gradient penalty? Thanks!


Liligo APX2101

Hello everyone. What could be the reason if my igate based on lilygo TBeam-APX2101-V1.2 is deaf for pure RX operation? It doesn't receive anything. I tried it with two different codes. First from Peter and then from Richonguzman. The tracker works on the same basis. But as an IGate it receives absolutely nothing.

the board is still not completely supported by my firmware. It is already in preparation 😉

Turns out that my boards are these too. So would like this as well. The work you have done for this for the tracker is exceptional and works great. Hope you can get this up soon.
Peter.

Happy NEW YEAR to all
I am having the same board - when sending a package from tracker it shows the following error in Serial Monitor:
"[DEBUG][RadiolibTask] [10:08:34] Unknown packet '�HB9F' with RSSI -164dBm, SNR 0.00dB and FreqErr -0.000000Hz
[ERROR][RadiolibTask] [10:08:34] readData failed, code -24"
Maybe that helps to find the issue.
And many thanks to Peter for the great work!

Ah, already commented on another thread (hadn't seen this one yet), but I have the LilyGO TTGO v1.6, and it's the same.  Thanks again for all of your work on this - it's very cool to see how far these LoRa boards will go! de ND4L


Fix issue in fw-rules md output format

The columns are created by offset into the query column.. the issue is also in the expected output files (such as tests/fw_rules_tests/policies/expected_output/test4-scheme_query_connectivity_map_3_output.md)

Not an issue, output is not consistent by some md format viewers.


Replace all PaperTrail notifications by AprB.

#14 #13

I disabled Purchases notification from Papertrail slack configuration.


crouton update fails due to MySQL not running

name: xenial
encrypted: yes, unlocked
Entering /mnt/stateful_partition/crouton/chroots/xenial...
crouton: version 1-20180611074759~master:3697b784
release: xenial
architecture: amd64
xmethod: xorg
targets: xorg,xiwi,unity-desktop,extension,audio,chrome,cli-extra,keyboard,touch,unity
host: version 10718.13.0 (Official Build) dev-channel eve
kernel: Linux localhost 4.4.132-14136-g8f69237c056d #1 SMP PREEMPT Mon Jun 4 22:24:49 PDT 2018 x86_64 x86_64 x86_64 GNU/Linux
freon: yes```

#### Please describe your issue:
sudo sh ~/Downloads/crouton -u -n xenial fails because I have MySql installed, and the post-install hooks require mysqld to be running. However the service start fails because policy-rc.d in a chroot environment.
I tried to change policy-rc.d but it gets overwritten on the update.

The only way to finish the update that I've found is to enter the chroot responding N to the 'continue update' question, start mysqld, and then run the update script.

To reproduce:
Have a chroot with mysql installed, and run crouton -u when there are pending updates to mysql.

@pshotton,
You mentioned policy-rc.d but I'm wondering if anything 'mysql' related is launched from /etc/rc/local?
If so you could just comment that part out, exit, then do the update.
Hope this helps,
-DennisLfromGA

The problem is that in the update there was an update to mysql - which requires mysql to be running to do the configuration update.
I've found a workaround:
attempt the update (it will fail updating mysql)
then run sudo enter-chroot
It will inform you that the update failed and ask if you want to re-run it. Answer 'n'.
You'll then be at a shell prompt inside the chroot. Start mysql in the usual way. Then continue the update by running sudo /prepare.sh
The update should now run to completion


Fix missing Ensure field/read in MOF definition of xADDomainControler

@TravisEz13, linked to #52
If not fixed then Get-dsccompliance breaks, with error events 4097 and 4252 in operational log
Tested
Have a great day

This change is

Hi @BrunoReboul, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (Bruno Reboul). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;

Indentation fixed in mof file

@BrunoReboul your fix looks good. Could you also add test(s) to validate Get-DSCConfiguration works after your fix. Thanks!

The issue still exists, so the Get-DscConfiguration command fails on my domain controllers. Any progress here?

I have this licked.  It needs to be in the schema as you have done and once it's in the schema, get, set, and test have to reference the parameter.  I am submitting a pull request to add the global catalog option per someone's request and it also has this fix.

Where is this issue at?

@BrunoReboul Sorry for the long delay in reviewing this PR. Could you please rebase this PR (using git rebase) to resolve the merge conflicts?

This is also being worked on in #135 either PR can be merged.

Labeling as abandoned since it has gone 14 days until last update. An abandoned PR can be continued by another contributor. The abandoned label will be removed if work on the PR is taken up again.

Closing this PR as this has been merged by a recent PR.


Refactor and implement router

[x] react-router integration
[x] refactoring

But our hosting provider, GitHub Pages, does not support SPA routing, so to implement this we may need to move to a different hosting provider. Maybe implement SSR with Next.js?

Closing this PR as the logic becomes too complex as the goal was to keep the web app as simple as possible.


cephadm-ansible doc is not exist

Hi Guys,
The documentation is not available at http://docs.ceph.com/cephadm-ansible/ and I get 404. It should be removed from https://github.com/ceph/cephadm-ansible/tree/devel/ceph_defaults

I did not try ceph-ansible. I followed cephadm-ansible.

I followed this: https://github.com/ceph/cephadm-ansible/tree/devel/ceph_defaults

I followed this: https://github.com/ceph/cephadm-ansible/tree/devel/ceph_defaults

Roger that. I'll take care of this later today.


Requests page

Motivation and context

How has this been tested?

Checklist

[ ] I submit my changes into the develop branch
[ ] I have created a changelog fragment
[ ] I have updated the documentation accordingly
[ ] I have added tests to cover my changes
[ ] I have linked related issues (see GitHub docs)
[ ] I have increased versions of npm packages if it is necessary
(cvat-canvas,
cvat-core,
cvat-data and
cvat-ui)

License

[ ] I submit my code changes under the same MIT License that covers the project.
Feel free to contact the maintainers if that's a concern.

Summary by CodeRabbit

New Features

Introduced new endpoints for managing requests:

/api/requests for listing requests.
/api/requests/{id} for retrieving request details.
/api/requests/{id}/cancel for canceling a request.

Added new schemas for request management and user identifiers.

Improvements

Enhanced request handling with new serializers for RQ job operations and details.
Deprecated the /api/tasks/{id}/status endpoint.

Configuration

Set requestTimeout to 15000ms in Cypress configuration for better request handling.

Bug Fixes

Updated task creation status checks to use the new API responses.

/check

/check

/check

/check

/check

/check

/check

@Marishka17
Could you check permissions for the lambda models please? It seems UI tests are failiing because of consistent error could not get models from the server.

@klakhov

Please, merge the develop branch.
I can't create any task. The server was restarted. /requests/ endpoint works. Did I miss something additional?

The same thing on /tasks page. Requests are with code 200.

There is seven elements on the first page and one element on the second
Why was it implemented this way? Why not 10 per page? Empty page at the bottom allows to have at least one element more even without scrolling

I can't see automatic annotation request on requests page

When backup a task, first it says me that downloading will start automatically.
After that it suggest me to open another page to start downloading. Why?
The style of these two notifications is different (font size, i mean)

Additionally, I will recommend to start downloading automatically whenever it is possible.
Without necessity to open another page and click something else.

Do we really store backup only 12 minutes?

All started/enqueued are equal to page refresh time:

Why does it suggest me to DELETE if the method is not allowed?

Why does it suggest me to DELETE if the method is not allowed?

@bsekachev, I removed DELETE endpoint on the server, but forgot to remove corresponding action on UI. @klakhov, API has been changed on the server a little bit, as was suggested in the comments above, could you please check that and adapt UI?

I can't see automatic annotation request on requests page

This was not mentioned in the HLD as will be implemented. Right now server handles only import/export queues. I can add automatic annotation queue after vacation.

@Marishka17
Alright. Current HLD only describes the first iteration.
But in this case, I expect @klakhov to track the following iterations of the feature and prepare new updated HLD.

@klakhov
Too many requests. We can't afford this patch on production server.
It sends requests to often (each 2 seconds...?? )

Period should be more smart. For example there is not any reason to ask often the status if rq job is deferred or queued.
If progress increases slowly, we also may increase pooling period.
Please, think how to implement it in better way.

It did not update status on Requests page.
All these tasks are already done (And I can see them to be done in a new tab, please see preview of another tab):

Request also has shown that the process has finished (see task id and corresponding line on requests page):

What does expire for Import annotations job?

Why do we duplicate any exception messages?

Long exception has to be scrollable.

I believe the height of the card should be fixed.

Changelog entry?

After refreshing a page, I may request exporting at the same format again.
Before:

After:

We need to come to consistent solution (do not disable these items at all OR disable them even if the page has been refreshed).

For UI part:

Task status requests were fixed, now task creation displays normally
Imroved amount of requests on the page, now it looks like tasks list(10 per page with scroll)
Fixed font size on notifications
Fixed timestamps on the requests cards + hidden the expiration time for tasks create and import
Removed delete option
Improved status requests delay system (now only 5 consecutive requests are allowed, others will be re-scheduled)
Improved error display for the card, added scrollable element if its too large
Disabled requesting export if its already started(as it was before)
As for downloading automatically, as I remember we discussed on HLD that we should download only by button click

I ran several processes as on the screen, than pressed F5 to refresh the page. After refresh:

Download once
Wait for a 30 seconds / one minute
Try to download one more time

It runs new export:

Minor bug:

Try to backup project, wait until done

Try to backup it one more time. You immediately will get two messages. One of them says it was exported to the cloud storage

But export was local

It looks like the feature to delete requests absent in the implementation

the method core.requests.delete exists in the cvat-core, but I can't see it somewhere to be used.

@coderabbitai pause

Something does not work when I am within organization. I see two problems:

In organization I can't see request for creating a task within the same organization
But I see request for creating a task that was initiated outside the organization

@Marishka17  they are probably server-side issues.

The card shows a link to a task that has been deleted

One more found problem is that in develop if you try to create a task and creating thread will be failed (for example try to upload a text file as data, or broken image file), UI will send a request to remove the task after failing. However with this patch - it will not, so, we may see failed tasks in the list.

I already mentioned this, but did not get answer.

Why is TTL 20 minutes for exports???
Now downloading does not start automatically anymore, so, it will not work.
If a user does not catch manually a finished job in 20 minutes, will it be necessary to export from scratch?

Fixed links to deleted tasks
Added back deleting of tasks failed to create
Concerning TTL for exports, its not actually 20mins, its just a visual bug. It seems we get timestamp for expire from server in wrong format so its displayed incorrecty. I beleive Maria is already working on this.

I will close this PR and re-open it. It became messy with lots of comments from AI tools and reviews.


Evaluate replacing bcrypt for argonautica

https://crates.io/crates/argonautica

bcrypt hashcost 8  = time:   [13.137 ms 13.161 ms 13.185 ms]
hashcost 10 = time:   [52.507 ms 52.638 ms 52.781 ms]
hashcost 14 = time:   [841.11 ms 841.99 ms 842.97 ms]
argonautica time:   [237.35 ms 242.12 ms 247.02 ms]  with secret "89324test_secret2e7ea6cc-d725-4a67-855f-0a1f67493229"


Patch 1

The component doesn't render correctly because this property is optional. If its value is null or undefined, the application crash on lines 109, 157, 160.

Q
A

Bug fix?
[ x]

New feature?
[ ]

New sample?
[ ]

Related issues?
fixes #X, partially #Y, mentioned in #Z

What's in this Pull Request?
Please describe the changes in this PR. Sample description or details around bugs which are being fixed.
Response: I just added "?" to this.props.nodesToExpand.indexOf to avoid the app from crashing

Thank you @OlmanAvilaBairesDev for your time and effort.
I will close this PR as these changes have already been done and merged.


Enhance accessibility of the Blazor Input components by adding aria-invalid

This might arguably be considered a bug, rather than a feature request, as a site built with Blazor is not correctly accessibility-enabled when built with the standard components. However, I'm listing this as a feature request for now, as maybe there are scenarios where accessibility is not a legal requirement.
The issue is that the InputText, InputDate, InputTextArea, InputNumber and InputSelect are not truly accessibility compliant at the moment, although they are very close. They would achieve better compliance if they emitted the aria-invalid attribute as part of the rendered HTML output.
aria-invalid is used by screen readers to identify to people with limited visual acuity that a field is not valid and needs to be changed.
The logic to achieve this is already present, because the controls already add CSS class modifiers to the <input> element based on their validity, so I think extending the base component to additionally emit area-invalid should be a relatively easy change.
I can't see an easy way for a developer to modify this from outside of the component - additional attributes can't be used to achieve this, for example, as the attribute should only be output when the control is not valid.

@TheCakeMonster Thanks for contacting us.
You could achieve this yourself today with something like this:
public class AccessibleInputText : InputText
{
    public override Task SetParametersAsync(ParameterView parameters)
    {
        base.SetParametersAsync(parameters);
        if(EditContext.GetValidationMessages(FieldIdentifier).Any())
        {
            AdditionalAttributes = AdditionalAttributes ?? new Dictionary<string, object>();
            AdditionalAttributes["aria-invalid"] = true;
        }
    }
}

@SteveSandersonMS I believe what I suggested would work, is that not the case?
@danroth27 @SteveSandersonMS In case my suggestion is valid, do you have any concern about putting this in the box? I think this would be a reasonable up for grabs.

@danroth27 this aligns well with our Accessibility enhancements. Should we actually make these components part of the framework, or should we simply provide docs on how to do this?

It's a good suggestion. I think we should make this a built-in feature of the Input components. Specifically, the InputComponentBase base class would have a protected property called something like ValidationARIAAttributes that subclasses (such as InputText) can emit into their output using @attributes=@ValidationARIAAttributes.

@SteveCarrollMSFT That sounds good. I think this one is also a good up-for-grabs or a good starter feature. It's small, well scoped and we have a clear design for it. (The one you suggested).
My recommendation is we mark it as up for grabs, and if we get to it before anyone else does, we simply implement it.
The design would be what you suggested.
InputComponentBase would have ValidationARIAAtributes that would be applied by the base component and derived components would simply do buider.AddAttributes(<<index>>,@ValidationARIAAtributes)
Do we need to consider what happens if a user explicitly sets one of these attributes in their markup?
(I'm not super familiar with the aria-* attributes, I know there are a bunch that make sense to apply all the time and others that only make sense in certain cases, I guess if we decide to do this we would look at the list of attributes, decide which ones to support in the components and tell users to not use those in their markup, or to let what the user did win)

Wrong Steve in the mention I think!

Do we need to consider what happens if a user explicitly sets one of these attributes in their markup?

Our @attributes feature already supports precedence. We'd let developer-supplied values override the built-in ones.

My recommendation is we mark it as up for grabs

I've nothing against it being up for grabs, but if someone does choose to contribute here, then either (a) they will need to do something super-minimal, such as supporting aria-invalid only, or (b) we will have to get deeply involved in design, because it's not clear there's any trivial way that things like validation metadata can surface in the form of aria-required and similar. I suspect that's not something that could really be done in a completely automated way.

@SteveSandersonMS I corrected the Steve. Seems like you got overriden by a more powerful one 😃. You are right, aria is definitely more complicated than it looks like, maybe we can identify the subset we care about that wouldn't be controversial.
In any case, I'm fine if we do this, just thinking of opportunities for contribution.

public class AccessibleInputText : InputText
{
    public override Task SetParametersAsync(ParameterView parameters)
    {
        base.SetParametersAsync(parameters);
        if(EditContext.GetValidationMessages(FieldIdentifier).Any())
        {
            AdditionalAttributes = AdditionalAttributes ?? new Dictionary<string, object>();
            AdditionalAttributes["aria-invalid"] = true;
        }
    }

AdditionalAttributes is exposed as a read-only dictionary, so adding arbitrary items to it like this doesn't appear to be supported. However, this code gave me the clue I needed - create a new dictionary, add the existing members from AdditionalAttributes, set the new attribute, and then assign the new dictionary back to AdditionalAttributes. That works; accessibility is indeed achieved this way (at least for the aria-invalid attribute, which seems to be the most important in this particular regard.)
aria-required can easily be added by the developer in the razor markup of their edit form, so that seems fair enough to me.
        public override async Task SetParametersAsync(ParameterView parameters)
        {
            Dictionary<string, object> newAdditionalAttributes = new Dictionary<string, object>();

            await base.SetParametersAsync(parameters);
            if (EditContext.GetValidationMessages(FieldIdentifier).Any())
            {
                // Copy the existing attributes to the new, writeable dictionary
                foreach (KeyValuePair<string, object> item in AdditionalAttributes)
                {
                    newAdditionalAttributes.Add(item.Key, item.Value);
                }

                // Set the invalid attribute we were here to manipulate
                newAdditionalAttributes["aria-invalid"] = true;

                // Assign the new list of attributes back to the underlying property
                AdditionalAttributes = newAdditionalAttributes;
            }
        }


Compiling on Ubuntu/gcc failure

Hi there,
Seems like there's a file stringc.h dependency missing on the platform above:
CC       src/libast/ast-mk.o
In file included from src/libast/ast-mk.c:26:0:
./flang/flang.h:51:40: fatal error: stringc.h: No such file or directory
Any ideas?
Thanks!

Never mind, saw your string.c repo :)

Fast solution :)
I started string.c long time ago... and decide it will be useful to have a high level string implementation as fast as possible in the language... (not fast enough ^^)
maybe someday I will reimplement string.c in flang (should be very easy it's very c-ish)
Hope you like the language, I will try to document it a bit... in case some people start wondering...


Support {%subtree%} inside {% if %}

It's possible to support the subtree inside if tags?
Fatal error: Uncaught exception 'Twig_Error_Syntax' with message 'Unexpected "subtree" tag (expecting closing tag for the "if" tag defined near line ...

{% tree item in nav_primary.items %}
  {% if false %}
      test
  {% else %}
    {% subtree item.items %}
  {% endif %}
{% endtree %}

It seems this isssue won't be fixed easily.
As {% if %} tag itself subparses, I'll need to implement this plugin totally differently (using a node visitor, and 2 separate {% tree %} and {% subtree %} tags.
Thanks for finding it though, will look at it when I'll have time for it (don't expect a quick fix as I'll need several hours for sure).

Thank you for the quick reply and the awesome twig extension!
I'm trying to find a dirty workaround for now...any clue?

Ultra dirty but works!
{% set out = ob_start() %}
{% subtree item.items %}
{% set out = ob_get_clean() %}
{% if want_subtree_output %}
  {{out|raw}}
{% endif %}


IMediaFile doesn't include the FullPath

Description
It is not possible to get the path where the file(s) where selected
Actual Behavior
IMediaFile doesn't include the FullPath
Expected behavior
Have the FullPath or at least the Path, it makes the plugin unusable sine how are you going to access the file later, you will need the FullPath
Steps to reproduce the behavior

Select a file (PickAsync)
Inspect IMediaFile collection returned
IMediaFile doesn't contain the path of the file

Screenshots or Videos
N/A
Reproduction Link
N/A
Configuration

Device: Any
OS Version: Any
Plugin Version: 1.0.0

@raulandresduque  Hi
It is not possible. Android and iOS have security policies that protect user data, so we can't get the real path to the file.
You can also view the documentation update in Xamarin.Essentials.

https://github.com/xamarin/Essentials/pull/1759
https://github.com/MicrosoftDocs/xamarin-docs/pull/3290