Why this quantization model need  more than 24GB GPU memory which is larger than  ideal 500M?

1、Questions
As we Known, SD v1.5 has 1 Billions params , and it's peek GPU memory is about 4G at the precison fp32.
So, the memory of int4 precison  (sd_w4a8_chpt.pth) will be about  4G/8 = 500MB.
However, when I load and run your w4a8 quantization models , the consumed GPU memory is more than 24GB, and we got a OOM finnaly!
2、my commands:
python txt2img.py --prompt "a puppet wearing a hat" --plms --cond --ptq --weight_bit 4  --quant_mode qdiff --no_grad_ckpt --split --n_samples 5 --quant_act --act_bit 8 --sm_abit 16 --outdir ./data/ --cali_ckpt ../sd_w4a8_ckpt-001.pth
3、Error Logs：
07/31/2023 11:16:03 - INFO - root -   Loading model from models/ldm/stable-diffusion-v1/model.ckpt
07/31/2023 11:16:04 - INFO - root -   Global Step: 470000
07/31/2023 11:16:04 - INFO - torch.distributed.nn.jit.instantiator -   Created a temporary directory at /tmp/tmpmwfx988m
07/31/2023 11:16:04 - INFO - torch.distributed.nn.jit.instantiator -   Writing /tmp/tmpmwfx988m/_remote_module_non_scriptable.py
LatentDiffusion: Running in eps-prediction mode
07/31/2023 11:16:07 - INFO - ldm.util -   DiffusionWrapper has 859.52 M params.
07/31/2023 11:16:07 - INFO - ldm.modules.diffusionmodules.model -   making attention of type 'vanilla' with 512 in_channels
07/31/2023 11:16:07 - INFO - ldm.modules.diffusionmodules.model -   Working with z of shape (1, 4, 32, 32) = 4096 dimensions.
07/31/2023 11:16:07 - INFO - ldm.modules.diffusionmodules.model -   making attention of type 'vanilla' with 512 in_channels
07/31/2023 11:16:12 - INFO - main -   Not use gradient checkpointing for transformer blocks
Loading quantized model checkpoint
Initializing weight quantization parameters
07/31/2023 11:16:27 - INFO - qdiff.quant_layer -   split at 1280!
07/31/2023 11:16:28 - INFO - qdiff.quant_layer -   split at 1280!
07/31/2023 11:16:28 - INFO - qdiff.quant_layer -   split at 1280!
07/31/2023 11:16:29 - INFO - qdiff.quant_layer -   split at 1280!
07/31/2023 11:16:32 - INFO - qdiff.quant_layer -   split at 1280!
07/31/2023 11:16:34 - INFO - qdiff.quant_layer -   split at 1280!
07/31/2023 11:16:37 - INFO - qdiff.quant_layer -   split at 1280!
07/31/2023 11:16:38 - INFO - qdiff.quant_layer -   split at 640!
07/31/2023 11:16:39 - INFO - qdiff.quant_layer -   split at 640!
07/31/2023 11:16:40 - INFO - qdiff.quant_layer -   split at 640!
07/31/2023 11:16:41 - INFO - qdiff.quant_layer -   split at 320!
07/31/2023 11:16:42 - INFO - qdiff.quant_layer -   split at 320!
Initializing act quantization parameters
Traceback (most recent call last):
File "txt2img.py", line 444, in
main()
File "txt2img.py", line 340, in main
resume_cali_model(qnn, opt.cali_ckpt, cali_data, opt.quant_act, "qdiff", cond=opt.cond)
File "/home/xx/car/bigmodel/q-diffusion/qdiff/utils.py", line 86, in resume_cali_model
_ = qnn(cali_xs.cuda(), cali_ts.cuda(), cali_cs.cuda())
...
...
File "/root/miniconda3/envs/qdiff/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
return forward_call(*args, **kwargs)
File "/home/xx/car/bigmodel/q-diffusion/qdiff/adaptive_rounding.py", line 59, in forward
x_float_q = (x_quant - self.zero_point) * self.delta
torch.cuda.OutOfMemoryError: CUDA out of memory. Tried to allocate 50.00 MiB (GPU 0; 23.69 GiB total capacity; 23.21 GiB already allocated; 11.69 MiB free; 23.30 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF

32G V100 also gets OOM

40G A100 also OOM. Likely because of the fake quantization operations which require their own intermediate tensors allocated. @Xiuyu-Li did you use 80GB A100?

For me, it's not effective. Even with n_samples=1 on 32GB V100, it still leads to OOM. This is the launch script:
python scripts/txt2img.py --prompt "a puppet wearing a hat" --plms --cond --ptq --weight_bit 4 --quant_mode qdiff --no_grad_ckpt --split --n_samples 1  --quant_act --act_bit 8 --sm_abit 16 --outdir ./data/ --cali_ckpt models/sd_w4a8.pth --resume

For me, it's not effective. Even with n_samples=1 on 32GB V100, it still leads to OOM. This is the launch script: python scripts/txt2img.py --prompt "a puppet wearing a hat" --plms --cond --ptq --weight_bit 4 --quant_mode qdiff --no_grad_ckpt --split --n_samples 1 --quant_act --act_bit 8 --sm_abit 16 --outdir ./data/ --cali_ckpt models/sd_w4a8.pth --resume

I also encountered this problem. May I know how you solve it finally


When sorting by activity, first show all worlds with an activity, and then without

If you sort by activity, you get this:

The activities are way down. Just like the RuneScape client does, first show the worlds with activities, and then without.

Just click the button again?

Fixed in #4941

Thanks!


Support for code tables

I want to have custom type mapping. From String to Int,
Example:
I want this object to maps
This JSON
{
  "organization_type": "Company"
}

To that object

@interface object  : NSManagedObject {}
@property (nonatomic, strong) NSNumber* organizationType;
@end

"Company" -> 0
"Region" -> 1
I think the mapping logic should be implemented by users, in the callback fuction or some params

@kostiakoval: I've had this use case before, I think the structure is called code tables.
I guess the proper structure for this would be
  "organization_type": {
      "id":  0,
      "name":  "Company"
}

Right?

I really like this idea, we've had a similar requirement in our project, we ended un handling it "internally".

I think the ideal thing would be adding hyper.codeTable to User Info in the organizationType attribute.

Value: 0:"Company", 1:"Region", 2:"Country", 4:"Continent"
When running mogenerator this will generate something like this:
typedef NS_ENUM(NSInteger, HYPContractType) {
    HYPCompanyOrganizationType = 0,
    HYPRegionOrganizationType = 1,
    HYPCountryOrganizationType = 2,
    HYPContinentOrganizationType = 4
};

When filling with JSON, if the value is a string and the attribute is a NSNumber we will look for the codeTable. If we find it, we will map to the NSNumber value instead of the NSString.

sounds good. only 1 think I don't like specifying those attributes in CoreData Info, it's quite hard and not convenient.
Why should you make those limitation (if the value is a string)
if code table existing just map them.
[COMPANY_PREFIX][VALUE][ATTRIBUTE_NAME]  - I'm not sure I get this one but general ides is very good.

@kostiakoval Do you have an alternative? I proposed this because in this way is easy to read it by both mogenerator and Sync/PropertyMapper.
COMPANY_PREFIX = HYP
VALUE = Region
ATTRIBUTE_NAME = OrganizationType
KEY = 0

Some of this could be done using Deep mapping. Closing.
https://github.com/SyncDB/SYNCPropertyMapper#deep-mapping


Bug: get errors when converting nydus image

Error 1:

Command:
sudo /usr/local/bin/nydusify convert \
--fs-version 6  \
--nydus-image /usr/local/bin/nydus-image \
--source xxx \
--target xxx

version:
❯ nydus-image --version
Version:        v2.1.0-10-g36b4edb6
Git Commit:     36b4edb638f0f2c11e95641e3920866bddfad7bc
Build Time:     2022-11-07T12:27:38.562973044Z
Profile:        release
Rustc:          rustc 1.61.0 (fe5b13d68 2022-05-18)

❯ nydusify --version
Nydusify version 36b4edb638f0f2c11e95641e3920866bddfad7bc.20221107.1159

This error occurred by accident. When i run the same command again, it converts the OCI image to nydus image successfully.
Error 2:

version:
❯ nydus-image --version
Version:        v2.1.0-10-g36b4edb6
Git Commit:     36b4edb638f0f2c11e95641e3920866bddfad7bc
Build Time:     2022-11-07T12:27:38.562973044Z
Profile:        release
Rustc:          rustc 1.61.0 (fe5b13d68 2022-05-18)

❯ nydusify --version
Nydusify version 752b72be9dbd901140a8e9ec30600209c06221b7.20221107.1324

I find a 401 response when pushing blob data. Maybe it is related to this error?

@sctb512 Is this OCI image can convert by acceld?

No more cases reproduce for now, reopen it if necessary.


Inference on our data.

I have already followed the model training instructions and trained the model on my custom dataset. Now, I only want to perform 2x super-resolution inference on my dataset. I found it difficult to conduct the inference programme directly. What is the simplest way to do this? I noticed that running test.py requires validation.

The test.py in basicsr folder is our main file for testing. It does not requires validation actually.


Rerefactor provenance- and notation-json-export APIs

Thanks to @ahankinson's helpful suggestions, our provenance-json-export and notation-json-export APIs will be leaner and cleaner!
I'm going to wait for your approving review, @ahankinson, before merging this time - hoping to avoid creating an improve-improve-improve-1251 branch if I can...

Lgtm :shipit:


Embed vortex into other monkey app?

Sorry for making this an issue. I am not sure where questions and discussion should be.
I have a monkey game I am working on that I would like to include some 3d models into on a certain screen. The models I want to display one at a time when loaded. I want them to spin slowly, allow player to spin model around. The models are very small. 100 faces. 52 verts. Pixel art diffuse texture that needs texture filter disabled / nearest filter. No animation other than I want ability to squash / stretch the model when clicked like a bounce.
I am doing my own research to figure out how to do this. I am very 3d noob. Can you give me direction on how to best do this? Would you accept a commission to make something easy to embed with the other features I request?

Hi, nsymtex.
Should the model be stretched when you click and drag on them, or is it ok to click and drag anywhere on the screen? Vortex only includes rendering features, no picking / collisions. So you would have to write your own collision / picking functions. If you can click anywhere on the screen, then you need no picking code and it would be easier to implement.
Do you have problems with the other parts (loading and rendering the model and spinning it around). If so, I can write a small demo to you.
I could add some simple picking and collision capabilities to Vortex in the future, since I haven't found any available for Monkey right now.

Hi JaviCervera,
I think I do not need collision, clicking and dragging within a rectangle or anywhere on the screen would be all I need.
What do I need to change to turn off filtering when loading a model. Yes, please make a demo for this! I have been experimenting but it would be great to know the right way to do these things.

Hi JaviCervera,
Another question - would it be possible to support vertex color maps for diffuse color?

Here is example of shader with Unity supporting vertex color maps for diffuse color http://forum.unity3d.com/threads/standard-shader-with-vertex-colors.316529/

Ok, I think this will do the trick. Left click and move mouse to resize a mesh. Right click to randomize vertex colors:
Strict

Import mojo.app
Import mojo.input
Import vortex

#GLFW_WINDOW_RESIZABLE=True
#GLFW_WINDOW_SAMPLES=1

Class TestApp Extends App
	Method OnCreate:Int()
		'Set update rate
		SetUpdateRate(60)

		'Initialize Vortex lib
		Vortex_Init()

		'Create our 2 viewers
		'We set our viewport values to zero, since we will set it every framec to match the window size
		viewers[0] = Viewer_Create(0, 0, 0, 0)
		Viewer_SetClearColor(viewers[0], 0.2, 0.6, 1.0)
		Viewer_SetPosition(viewers[0], 0, 1, 0)
		Viewer_SetEuler(viewers[0], 15, 0, 0)
		viewers[1] = Viewer_Create(0, 0, 0, 0)
		Viewer_SetClearColor(viewers[1], 1.0, 0.6, 0.2)
		Viewer_SetPosition(viewers[1], 0, 1, 0)
		Viewer_SetEuler(viewers[1], 15, 0, 0)

		'Load the cube meshes (we could reuse the same mesh on the 2 drawables, but we want to randomize the mesh colors independently,
		'so we'll need 2 separate copies)
		meshes[0] = CreateCube()
		meshes[1] = CreateCube()

		'Create our 2 drawables
		drawables[0] = Drawable_CreateWithMesh(meshes[0])
		Drawable_SetPosition(drawables[0], 0, 0, 4)
		drawables[1] = Drawable_CreateWithMesh(meshes[1])
		Drawable_SetPosition(drawables[1], 0, 0, 4)

		Return 0
	End

	Method OnUpdate:Int()
		'Resize our viewers to adjust to screen size
		Viewer_SetViewport(viewers[0], 16, 16, DeviceWidth()/2 - 24, DeviceHeight() - 32)
		Viewer_SetPerspective(viewers[0], 45.0, Float(DeviceWidth()/2 - 24) / (DeviceHeight() - 32), 1, 1000)
		Viewer_SetViewport(viewers[1], DeviceWidth()/2 + 8, 16, DeviceWidth()/2 - 24, DeviceHeight() - 32)
		Viewer_SetPerspective(viewers[1], 45.0, Float(DeviceWidth()/2 - 24) / (DeviceHeight() - 32), 1, 1000)

		'Rotate our drawables
		Drawable_SetEuler(drawables[0], Drawable_GetEulerX(drawables[0]), Drawable_GetEulerY(drawables[0]) + 3, Drawable_GetEulerZ(drawables[0]))
		Drawable_SetEuler(drawables[1], Drawable_GetEulerX(drawables[1]), Drawable_GetEulerY(drawables[1]) + 3, Drawable_GetEulerZ(drawables[1]))

		'Randomize mesh colors if we right click
		If MouseHit(MOUSE_RIGHT) Then If MouseX() < DeviceWidth() / 2 Then RandomizeColors(meshes[0]) Else RandomizeColors(meshes[1])

		'Begin dragging if we left click
		If MouseHit(MOUSE_LEFT)
			If MouseX() < DeviceWidth() / 2 Then dragging = 1 Else dragging = 2
			dragX = MouseX()
			dragY = MouseY()
		End

		'If we release left mouse button, stop dragging
		If Not MouseDown(MOUSE_LEFT) Then dragging = 0

		'Drag
		If dragging > 0
			Local scaleX:Float = Drawable_GetScaleX(drawables[dragging-1]) + (MouseX() - dragX)/100
			Local scaleY:Float = Drawable_GetScaleY(drawables[dragging-1]) - (MouseY() - dragY)/100
			Local scaleZ:Float = scaleX
			Drawable_SetScale(drawables[dragging-1], scaleX, scaleY, scaleZ)
			dragX = MouseX()
			dragY = MouseY()
		End

		Return 0
	End

	Method OnRender:Int()
		'Clear screen background
		Painter_Setup2D(0, 0, DeviceWidth(), DeviceHeight())
		Painter_Cls(1, 1, 1)

		'Prepare first viewer for drawing (this calculates the current view and projection matrices based on the viewer transform)
		Viewer_Prepare(viewers[0])

		'Prepare the lighting (must always be called after preparing the viewer if we want lighting)
		PrepareLighting()

		'Draw the cube
		Drawable_Draw(drawables[0])

		'Repeat the process for the other drawable
		Viewer_Prepare(viewers[1])
		PrepareLighting()
		Drawable_Draw(drawables[1])

		Return 0
	End

	Method OnClose:Int()
		'Free stuff
		Viewer_Free(viewers[0])
		Viewer_Free(viewers[1])
		Mesh_Free(meshes[0])
		Mesh_Free(meshes[1])
		Drawable_Free(drawables[0])
		Drawable_Free(drawables[1])

		'End app
		EndApp()

		Return 0
	End

	Method CreateCube:Object()
		Local mesh:Object = Mesh_Create()
		Local surf:Object = Mesh_AddSurface(mesh)

		'Front face
		Surface_AddVertex(surf, -0.5,	0.5, -0.5,	0, 0, -1,	1, 1, 1, 1,	0, 0)
		Surface_AddVertex(surf,	0.5,	0.5, -0.5,	0, 0, -1,	1, 1, 1, 1,	1, 0)
		Surface_AddVertex(surf, -0.5, -0.5, -0.5,	0, 0, -1,	1, 1, 1, 1,	0, 1)
		Surface_AddVertex(surf,	0.5, -0.5, -0.5,	0, 0, -1,	1, 1, 1, 1,	1, 1)
		Surface_AddTriangle(surf, 0, 1, 2)
		Surface_AddTriangle(surf, 3, 2, 1)

		'Back face
		Surface_AddVertex(surf,	0.5,	0.5, 0.5,	0, 0, 1,	1, 1, 1, 1,	0, 0)
		Surface_AddVertex(surf, -0.5,	0.5, 0.5,	0, 0, 1,	1, 1, 1, 1,	1, 0)
		Surface_AddVertex(surf,	0.5, -0.5, 0.5,	0, 0, 1,	1, 1, 1, 1,	0, 1)
		Surface_AddVertex(surf, -0.5, -0.5, 0.5,	0, 0, 1,	1, 1, 1, 1,	1, 1)
		Surface_AddTriangle(surf, 4, 5, 6)
		Surface_AddTriangle(surf, 7, 6, 5)

		'Left face
		Surface_AddVertex(surf, -0.5,	0.5,	0.5,	-1, 0, 0,	1, 1, 1, 1,	0, 0)
		Surface_AddVertex(surf, -0.5,	0.5, -0.5,	-1, 0, 0,	1, 1, 1, 1,	1, 0)
		Surface_AddVertex(surf, -0.5, -0.5,	0.5,	-1, 0, 0,	1, 1, 1, 1,	0, 1)
		Surface_AddVertex(surf, -0.5, -0.5, -0.5,	-1, 0, 0,	1, 1, 1, 1,	1, 1)
		Surface_AddTriangle(surf, 8, 9, 10)
		Surface_AddTriangle(surf, 11, 10, 9)

		'Right face
		Surface_AddVertex(surf, 0.5,	0.5, -0.5,	1, 0, 0,	1, 1, 1, 1,	0, 0)
		Surface_AddVertex(surf, 0.5,	0.5,	0.5,	1, 0, 0,	1, 1, 1, 1,	1, 0)
		Surface_AddVertex(surf, 0.5, -0.5, -0.5,	1, 0, 0,	1, 1, 1, 1,	0, 1)
		Surface_AddVertex(surf, 0.5, -0.5,	0.5,	1, 0, 0,	1, 1, 1, 1,	1, 1)
		Surface_AddTriangle(surf, 12, 13, 14)
		Surface_AddTriangle(surf, 15, 14, 13)

		'Top face
		Surface_AddVertex(surf, -0.5, 0.5,	0.5,	0, 1, 0,	1, 1, 1, 1,	0, 0)
		Surface_AddVertex(surf,	0.5, 0.5,	0.5,	0, 1, 0,	1, 1, 1, 1,	1, 0)
		Surface_AddVertex(surf, -0.5, 0.5, -0.5,	0, 1, 0,	1, 1, 1, 1,	0, 1)
		Surface_AddVertex(surf,	0.5, 0.5, -0.5,	0, 1, 0,	1, 1, 1, 1,	1, 1)
		Surface_AddTriangle(surf, 16, 17, 18)
		Surface_AddTriangle(surf, 19, 18, 17)

		'Top face
		Surface_AddVertex(surf, -0.5, -0.5, -0.5,	0, 1, 0,	1, 1, 1, 1,	0, 0)
		Surface_AddVertex(surf,	0.5, -0.5, -0.5,	0, 1, 0,	1, 1, 1, 1,	1, 0)
		Surface_AddVertex(surf, -0.5, -0.5,	0.5,	0, 1, 0,	1, 1, 1, 1,	0, 1)
		Surface_AddVertex(surf,	0.5, -0.5,	0.5,	0, 1, 0,	1, 1, 1, 1,	1, 1)
		Surface_AddTriangle(surf, 20, 21, 22)
		Surface_AddTriangle(surf, 23, 22, 21)

		'Rebuild surface
		Surface_Rebuild(surf)

		Return mesh
	End

	Method RandomizeColors:Void(mesh:Object)
		Local surf:Object = Mesh_GetSurface(mesh, 0)
		For Local i:Int = 0 Until Surface_GetNumVertices(surf)
			Surface_SetVertexColor(surf, i, Rnd(1), Rnd(1), Rnd(1), 1)
		Next
		Surface_Rebuild(surf)
	End

	Method PrepareLighting:Void()
		'Enable light 0 (8 lights are available, numbered 0 to 7)
		Lighting_SetLightEnabled(0, True)

		'Set light 0 as a directional light
		Lighting_SetLightType(0, LIGHT_DIRECTIONAL)

		'For a directional light, position is a normalized vector that points to the light source
		Lighting_SetLightPosition(0, 1, 1, -1)

		'Set light color to white
		Lighting_SetLightColor(0, 1, 1, 1)

		'Prepare lighting with a dark grey ambient light
		Lighting_Prepare(0.3, 0.3, 0.3)
	End
Private
	Field viewers	: Object[2]
	Field meshes	: Object[2]
	Field drawables	: Object[2]
	Field dragging	: Int
	Field dragX		: Int
	Field dragY		: Int
End

Function Main:Int()
	New TestApp
	Return 0
End

It should look like this:

Hi JaviCervera,
Thank you for this! I am learning new things. I will share what I'm working on with you soon!

Updated with more links.

You can load a mesh like this:
Mesh_Load(meshFile, textureFilter)

By default, textureFilter is FILTER_TRILINEAR, but you can disable texture filtering by passing FILTER_NONE.
Regarding FBX support, Vortex only supports a custom XML based format. A converter is included, which in the latest release of Vortex (1.1 at the time of writing this), is based on the Irrlicht engine, so it supports the same mesh formats as Irrlicht:
Animated objects:

B3D files (.b3d)
Microsoft DirectX (.x) (binary & text)
Milkshape (.ms3d)
Quake 3 models (.md3)
Quake 2 models (.md2)

Static objects:

Irrlicht scenes (.irr)
Irrlicht static meshes (.irrmesh)
3D Studio meshes (.3ds)
Alias Wavefront Maya (.obj)
Lightwave Objects (.lwo)
COLLADA 1.4 (.xml, .dae)
OGRE meshes (.mesh)
My3DTools 3 (.my3D)
Pulsar LMTools (.lmts)
Quake 3 levels (.bsp)
DeleD (.dmf)
FSRad oct (.oct)
Cartography shop 4 (.csm)
STL 3D files (.stl)
PLY 3D files (.ply)

If you want to use FBX files, you could export the FBX to one of these formats using Max / Maya / Blender or whatever, and then import the model in the converter and export it to Vortex XML format.

Great, thank you for information!
I looked at those formats, and it looks like COLLADA dae and 3ds supports Vertex Color Maps in their formats.
I tested exporting as a dae, and then using meshtool to convert it, but it does not look like the Vertex Color Map included in it was included in the final file.
Here is a sample of files https://cp.sync.com/dl/2a01d9540#5k4ru2mh-xg4knvu5-3cr7sah3-ced2e25c
Would it be possible to use vertex colors from one of the formats it supports, or should I accept with using textures?

Sorry, there's a bug in meshtool and it doesn't export vertex colors. I will add support for it soon.

Is it possible to load / unload models on the fly without the game lagging while loading?

Also is any kind of cast shadows currently possible?

The only way to load models without a lag right now is to load them at the beggining and not in the update cycles.
I have just pushed skinned mesh support to the repo, which was the feature needed for V1.2, so after a few fixes here and there, I will release a new update soon. Then, I will start working on V1.3, which will include stencil shadows.
A mesh can support vertex colors and texturing simultaneously, so it shouldn't be a problem to render using both at the same time.

Awesome! I will test!

Would it be possible to make a blob format that can be loaded at start and has all models and model data within it, and then take data out of it at runtime to make new models without lag?

Meshes are not rendered immediately after loading, you need to create a Drawable to renderer them. So you could load all your meshes at start, and then create the Drawables for each mesh only when needed.

Right, but say I have 100 meshes. Load each would do an OS filesystem call. On mobile devices each OS filesystem call can be expensive with making load times longer. That's why I'm saying about a blob format to put mesh data together as a single load. Then create Drawables from the meshes stored in blob data.

Shouldn't monkey's async loading features work?

If you want to load meshes from a custom format, you will have to write the loader yourself. Using Monkey's async loading might work, although I haven't tried it myself.


Redactions are echo'd back

This was fixed in https://github.com/matrix-discord/mx-puppet-discord/commit/7e22876613d1be316b78814cd2b85954efdbf859


Creating New Script MythicGM

Adding  New Script MythicGM to bring the GM emulators rules for Mythic to Roll20.

I'm merging in the script. If you want it included in the One-Click install system you'll need to put the script into the "version" folder structure. Let me know if you have questions.


Fix Codecov

Currently codecov is not creating reports for us

Codecov python example
https://github.com/codecov/codecov-python

Our codecov entry
https://app.codecov.io/gh/Kerem-Sami-Coop/caishen-dashboard


Model Builder Error: "The remote server returned an error: (400) Bad Request." when creating Azure experiment on Russian VS.

System Information (please complete the following information):

Microsoft Visual Studio Enterprise 2019: 16.11.3
ML.Net Model Builder: <IP_ADDRESS>7403 (Main Branch)

Describe the bug

On which step of the process did you run into an issue: VS language setting is Russian > create Azure Experiment

Clear description of the problem: Model Builder Error:  The remote server returned an error: (400) Bad Request. Experiment name must be 1-256 characters, start with a letter or a number, and can only contain letters, numbers, underscores, and dashes.

To Reproduce
Steps to reproduce the behavior:

Set VS language to Russian through: Tools>Options...>International Settings>Language；
Close and open Visual Studio 2019, select Create a new project from the start window;
Choose the C# Console App (.NET Core) project template with .Net 5.0;
Add model builder by right click on the project;
Select Object detection or Image classification scenario to navigate to Environment page;
Select Azure and click "Set up workspace" button to open Create new experiment dialog;
Click "Create" button after selected the options;
See error: Prompts Model Builder Error:  The remote server returned an error: (400) Bad Request. Experiment name must be 1-256 characters, start with a letter or a number, and can only contain letters, numbers, underscores, and dashes.

Expected behavior
No error when create Azure experiment on non-English VS.
Screenshots
If applicable, add screenshots to help explain your problem.

Additional context
The Experiment name: "Objectdetection" and "Imageclassification" are translated, found that if renamed the Experiment Name with the beginning of English character,  this error is not prompted.

Very nice find!

We should update the name to their project name instead of "Object detection." Then the error experience is acceptable.

This is updated!


[Coverity CID :143653]Memory - corruptions in /tests/subsys/fs/nffs_fs_api/common/nffs_test_utils.c

Static code scan issues seen in File: /tests/subsys/fs/nffs_fs_api/common/nffs_test_utils.c
Category: Memory - corruptions
Function: nffs_test_util_create_file
Component: Tests
CID: 143653
Please fix or provide comments to square it off in coverity in the link: https://scan9.coverity.com/reports.htm#v32951/p12996

False positive. mentioned the same in coverity.


create user roles, refactor grade collection name

Subject: User Role Management Feature (PR #165)
Hi team,
This pull request introduces a new feature for managing user roles within the application.
Key Changes:

Implemented user roles (create, fetch, update, delete) (aa87b39, 57bb687 )
Refactored grade collection name for better clarity (aa87b39 )
Updated routes to reflect changes in user role functionality (57bb687 )

@brianmuks can we please check this and merge it as soon as we can.

Alright !

@brianmuks can we set default roles that should always be available?

@brianmuks can we set default roles that should always be available?

@OlivierJM default roles will be created. This is feature accommodates custom roles .

ooops it seems my branch conflicted with this @brianmuks 🤦♂ sorry.

I will resolve the conflict

@OlivierJM conflicts resolved.


Support UUID variants 1, 3, 4 and 5, and Varnish 4

This includes all of the previous PR (support for all of the UUID variants supported by OSSP), and updates the VMOD for Varnish 4.

This works great, but on debian the uuid.h include had to be changed to:
#include <ossp/uuid.h>

Maybe this should be wrapped around an if, depending on OS. Also the needed packages on debian are named uuid, uuid-dev, libossp-uuid-dev and libossp-uuid16

razvanphp, thanks for the feedback, that sounds like stuff that are best worked out with the help of configure.ac and config.h. I'll see if I can figure it out (unless you beat me to it).


Premoves too slow for online games.

I'm building and online chess platform using react-chessboard and everything is working great except that i dont have the control of premoves. Premoves should take no time to complete but its taking 800-1000ms for the move to complete.

Please provide a minimum reproducible example


Include a Telemetry.Metrics.ConsoleReporter

This could be a good debug tool that basically prints the events as they come. For example, in my app I know there is "vm.memory", but I don't know the keys, metadata and so on. The goal of the console reporter is to show what is being consumed and what isn't.
It can also work as a good example for other reporters.
Thoughts?

I like the idea with the built-in tool for inspecting events! But what do you think about including it in the core? Real Telemetry.Metrics reporter is all about aggregations, and not individual events. By including it in the core, we could also make it available to the audience which doesn't use Metrics at all, e.g. Erlang users.

My concern about adding it to core is that we would need a specification of
which events to consume, which we already have here.
Perhaps we could use both, where here we focus on metrics and for core I
would say the best implementation would use tracing.
--
José Valimwww.plataformatec.com.br
http://www.plataformatec.com.br/Founder and Director of R&D

Yes, I'm all for having a debug/console reporter here as well. As for the core, we even have an issue for that: beam-telemetry/telemetry#12!

PR sent: #37.


Edit asserted distribution link generates error

Not resolved. Asserted distribution may have multiple citation. One could be original, or all not original. Some fix is needed.

Did not see last commit.


Can't open project -> Mobile-applications

After forking this repository (https://github.com/BuildmLearn/Mobile-applications), I cloned it in my system. But when I open any of the project, android studio does not open it and shows error.
Here's a link to stackoverflow where I listed out the given problem:
http://stackoverflow.com/questions/35780045/framework-detected-in-android-studio-cant-open-project
Please help me out on this issue.

These project are not build from Android Studio.
So, you need to import them.
In Android Studio
 File > New > Import Project


Reverse Integer

Adding code in c++ ,  please assign me
link :  https://leetcode.com/problems/reverse-integer/

@madhavmishra26 Assigned in C++

hey can i solve this isssue?

Hey can solve this issue? if its still available.

@VishwajeetT22 Which language?

java/c

@VishwajeetT22 Assigned in C :)

Please do assign this to me.

I've made a pull request @piyushsharma220699  please do check out .
And thank you so much for giving me this opportunity.

@purohitmansi Which language? I can't assign this to you in C++ and C as @madhavmishra26 and @VishwajeetT22 have already worked on it :)

@VishwajeetT22 I'll do that by tomorrow bro :)

Thanks @piyushsharma220699 😁👍...It will be my first PR


Version Change

Version Changed from Fork Project

Sorry I Have Made change Wrongly Changes Can you make the changes back

It didn't get merged, you're ok!


fix httpbin.example.com virtualservice  gateway

cat <<EOF | istioctl create -f -
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: httpbin
spec:
hosts:

"httpbin.example.com"
gateways:
httpbin-gateway
http:
match:

uri:
prefix: /status
uri:
prefix: /delay
route:
destination:
port:
number: 8000
host: httpbin
EOF

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: rshriram
If they are not already assigned, you can assign the PR to them by writing /assign @rshriram in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@Ethan-2017: PR needs rebase.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Hi @Ethan-2017. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Please redo this PR based on latest sources. At the moment, this includes 64 unrelated commits.
Thanks.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: Ethan-2017
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: rshriram
If they are not already assigned, you can assign the PR to them by writing /assign @rshriram in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Closing due to inactivity. Please reopen if you'd like to push these changes in.


Surface user.is_frozen in Help Scout sidebar

A useful piece of metadata when responding to emails.

Works as designed!


Integer literal keys

Do integer literal keys not work? I tried to change the example the readme to:
static KEYWORDS: phf::Map<u8, Keyword> = phf_map! {
    3 => Keyword::Loop,
    4 => Keyword::Continue,
    5 => Keyword::Break,
    6 => Keyword::Fn,
    7 => Keyword::Extern,
};

But it yields errors:
src/main.rs:16:5: 16:6 error: unsupported literal type
src/main.rs:16     3 => Keyword::Loop,
                   ^
src/main.rs:1:1: 28:1 note: in expansion of phf_map!
src/main.rs:15:42: 21:2 note: expansion site
src/main.rs:17:5: 17:6 error: unsupported literal type
src/main.rs:17     4 => Keyword::Continue,
                   ^
src/main.rs:1:1: 28:1 note: in expansion of phf_map!
src/main.rs:15:42: 21:2 note: expansion site
src/main.rs:18:5: 18:6 error: unsupported literal type
src/main.rs:18     5 => Keyword::Break,
                   ^
src/main.rs:1:1: 28:1 note: in expansion of phf_map!
src/main.rs:15:42: 21:2 note: expansion site
src/main.rs:19:5: 19:6 error: unsupported literal type
src/main.rs:19     6 => Keyword::Fn,
                   ^
src/main.rs:1:1: 28:1 note: in expansion of phf_map!
src/main.rs:15:42: 21:2 note: expansion site
src/main.rs:20:5: 20:6 error: unsupported literal type
src/main.rs:20     7 => Keyword::Extern,
                   ^
src/main.rs:1:1: 28:1 note: in expansion of phf_map!
src/main.rs:15:42: 21:2 note: expansion site
error: aborting due to 5 previous errors

Am I doing something wrong or is it genuinely not supported? If the latter, can it be documented which key types are supported? I could not find it in the documentation (though I apologize if it's there and I missed it).

phf_map! needs to be passed suffixed integer literals so it knows what integer type to use. Change it to 3u8 etc and it'll work.

Doh. should've tried that. Thanks.

Is there a way to avoid having to add _u8 or _u32 to every number as the key?

phf_map! needs to be passed suffixed integer literals so it knows what integer type to use. Change it to 3u8 etc and it'll work.

Is there a way to use usize key?

Is there a way to use usize key?
Anyone know how to do this?


feat: add replay syncer and get replay status

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

351 of 395 (88.86%)  changed or added relevant lines in 7 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.9%) to 69.607%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

api/handler/v1/adapter.go
17
19
89.47%

job/replay.go
76
78
97.44%

api/handler/v1/runtime.go
54
58
93.1%

job/replay_manager.go
26
35
74.29%

job/replay_validator.go
72
85
84.71%

job/replay_syncer.go
102
116
87.93%

Totals

Change from base Build<PHONE_NUMBER>:
0.9%

Covered Lines:
4308

Relevant Lines:
6189

💛  - Coveralls

Hi @kushsharma ,
I have made several changes, please help to check:

Storing execution tree in DB (in replay manager), and fetch it when being used in replay worker and syncer.
Queue to be taken by replay worker is now only represented by uuid only, since in replay worker we are fetching from db anyway.
Not use pointers in ReplayRequest and ReplaySpec objects.
Getting replay from repository is now preloaded with project and secret.

Hi @kushsharma, I have updated as the feedback. what I also added:

start & finish syncer message log are now all in Debug mode (logger.D)
added log info when a replay has been marked as success in syncer
Process function in Replay Mock is now waiting for 200ms instead of 100ms, due to intermittent test error

I have removed that sleep completely and emulating it with channels.


Add current_isolated and current_quarantined to BL scraper

New iframe was added for BL with data for 'current_isolated' and 'current_quarantined'.
https://www.baselland.ch/politik-und-behorden/direktionen/volkswirtschafts-und-gesundheitsdirektion/amt-fur-gesundheit/medizinische-dienste/kantonsarztlicher-dienst/aktuelles/covid-19-faelle-kanton-basel-landschaft
direct iframe-link: https://cocontrol.bl.ch/public/dbw/103
Could this be added to the BL-scaper?
Thanks!

Related to #848
on it.


Winston holding onto filehandles when using the file transport

Tested the following with node v0.10.33, winston 0.8.3, on RHEL5 x86_64 VM. Eventually the process will die because the configured limit on number of open filehandles will be exceeded...
var winston = require('winston');

function set_logging() {
    // Making an attempt to clear winston and logging
    delete winston;
    winston = null;

    winston = require('winston');

    var log = new winston.Logger();

    log.add(winston.transports.File, { filename: "file.log" });

    log.log("info", "message");
}

function main() {
    // Reset logging every 3 seconds. Accumulates 1 filehandle each time (per lsof)...
    setInterval(function() {
        set_logging();
    }, 3000);
}

main();

Would it help to have an option to use a log file pool and re-use the existing transport if there is one for the same file path?

does it fix ?

Singleton design is the answer. Here is how I fixed it:
Created a simple module logger.js :
`const winston = require('winston');
var errorLog = false;
var infoLog = false;
const getLogger = (module, type) => {
switch (type) {
case 'error':
default:
if (errorLog) { return errorLog; }
errorLog = new winston.Logger();
errorLog.add(winston.transports.File, {
name: 'error',
filename: 'error.log',
level: 'error'
});
return errorLog;
case 'info':
if (infoLog) { return infoLog; }
infoLog = new winston.Logger();
infoLog.add(winston.transports.File, {
name: 'info',
filename: 'info.log',
level: 'info'
});
return infoLog;
}
};
module.exports = module => ({
log(level, err) {
getLogger(module, level).log(level, err);
},
});
`
To use it:
const logger = require('./logger')(module); logger.log('error', 'This is error log and should go in error log file'); logger.log('info', 'This is info log and should go in info log file');

Same problem to me，and singleton design is the answer.
If there have multiple logger instances, then you have to call logger.close manually


CLion and VSCode not working with v2.2.0

CLion and VSCode appear not to be able to understand any code that uses mp-units version 2.2 or the latest Live At Head. They both however work with version 2.1.
A simple example such as:
quantity dist = 3.4 * si::metre;

shows a "Class Template Argument Deduction failed" error for quantity and a "No viable operator* matches arguments" for *.
Another example, inline constexpr auto kilogram = kilo<gram>; shows "Cannot substitute arguments for global variable mp_units::si::kilo because of violated constraint PrefixableUnit".
This is only an issue with the IDEs and their code analysis, not an issue with Clang, since I am able to compile and run v2.2 and v2.3 without issue.
I unfortunately can't quite tell why exactly these IDEs aren't able to analyze the code. I'm running CLion 2024.1.2 on Mac, CLion EAP on Mac, and VSCode 1.90.2 on Mac with Clang 18.1.

Hi @egilll, I do not really know what I can do with this issue.
mp-units library is implemented using valid C++20 code (with some optional C++23 extensions). It is a pity that in 2024, some compilers (i.e., MSVC) and many tools still do not support C++20 correctly.
You can submit such bugs for CLion and VSCode, but I do not believe we can do anything about that here.

Thank you, I mainly wanted to create an issue to inform other users of the library that version 2.1 could still be used by these IDEs, or to see if anyone could think of anything that might be causing this, given that the release seemed to be recent.
Many thanks.

Well, the library can be openend in any IDE. You will just get lots of red squiggles 😉 But as you said, the compilation, execution, and debugging will work fine.


code coverage?

I imagine it would be reasonable to do considering Jest has such great support for code coverage.
I'd love to be able to specify what directory to put the coverage report, which files to instrument for coverage, and the global threshold (to fail the script if we aren't at that threshold).
Let me know if/where I can help.

Now we run storybook within jest! (from v 3.0)


Fix selection in scrollback

There were a few issues with selection in scrollback that were mainly
off-by-one errors. This aims at fixing these issues.
This also fixes a bug that currently exists in master where the last
cell is not selected when the mouse leaves the window to the right.
This fixes #1159.

This has conflicts on current scrollback branch

I've rebased on master, fixed a tiny bug with selecting the first cell in a multi-line selection and am now propagating mouse events outside of the window to update selection.
The screen does not scroll automatically yet, but this is probably better done in a different PR.

Is this ready to go? You mentioned elsewhere about improving the selection clipping behavior in this PR.

After fixing the edge-cases for the remaining issues, the span_simple method feels like a bit of a mess to me. If all other scrollback issues are resolved, this would probably be fine, but I'd like to re-think this approach while there still are some other open issues and we have some time.
There definitely are quite a few edge-cases for this, but it might be interesting to try and rewrite this completely with these edge-cases in mind to see if it can be cleaned up. Right now it seems like it's more edge-cases than anything else really.

The span_simple is ironically named huh.. :upside_down_face:
The crux of the problem is that we need to be able to handle single cell selection without triggering a selection on every simple click. If you have ideas on how to approach that without the idea of "sides" of a cell, then that would simplify things dramatically.

I don't think the idea of sides is bad. Even if we wouldn't want to pass sides, we'd probably still do something like remove one from column when at the right under certain circumstances, which would be sides again, only handled in the method above it.
I think with my implementation I've got a bit confused by the SpanType. With my approach of fixing these issues it always kinda got into the way because I just wanted to go from cell XY to cellXY including everything from start to end. Properly using this might help with some edge cases.
I think by just rewriting the method from scratch without having to understand what's already there, I might be able to get a better result. Worst-case I'd probably re-implement the same thing again. It's a short method so I think it's worth exploring.
For now I'd rather keep this open and I'll get back to it this weekend or earlier when I have the time. If I didn't find any better solution until the other things are fixed, it's probably fine to merge it as-is.


Implement Deserialize for &[u8; N], as with &[u8]

This change adds implementations of Deserialize for &[u8; 0..=32], with the same byte-array semantics as &[u8], by threading in existing TryFrom implementations in core.
This also doesn't work on older Rust versions, unfortunately, so it needs to be conditioned by that, or we can just use the same pointer casts that core does.
Unfortunately, I worry that this may break round-tripping. I'm not familiar enough with Serde's test suite to be able to add the appropriate tests, so guidance would be appreciated there.
Fixes #1857, at any rate.

In particular, it looks like this commit increases compile time of serde (cargo clean && time cargo build) by 7.5% from 5.2 seconds to 5.6 seconds on my machine, which I don't think is justified by the benefit here.

I currently use the deserialize_with solution. It feels a bit gross, but it works I guess.
I wonder if const generics would make this less awful. I get the impression that the current stabilization MVP floating around IRLO is probably "good enough" to make this (and probably the implementations for non-borrowed arrays) generic.
In any case, do you think this is the kind of thing that's worth sticking a specialized error message into the derive macros for? It's trivial to add yourself but non-obvious to people starting out with serde.


README.md: add link to to karma plugin

@domenic Please add info about karma adapter :)

Thanks! Merged as d8702df84aa937526a8220818462764daf555c1b.


Add files via upload

school Melbourne Polytechnic
web site: https://www.melbournepolytechnic.edu.au/
Bachelor of Information Technology : https://www.melbournepolytechnic.edu.au/study/bachelor/information-technology/
student email Proof domain used

@friendlybadger Pull request merged. Thank you!


Verbose enable_if in batched linear algebra

Add more verbose enable_if to batched linear algebra for CUDA deduction in attempts to overcome the CUDA build errors on Jenkins in #9

Codecov Report

Merging #39 (ba0cb03) into master (eb6f02a) will decrease coverage by 0.13%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #39      +/-   ##
==========================================
- Coverage   93.61%   93.48%   -0.14%
==========================================
  Files          41       41
  Lines        3930     2884    -1046
==========================================
- Hits         3679     2696     -983
+ Misses        251      188      -63

Impacted Files
Coverage Δ

src/Picasso_BatchedLinearAlgebra.hpp
99.46% <ø> (-0.54%)
:arrow_down:

src/Picasso_ParticleList.hpp
60.00% <0.00%> (-16.93%)
:arrow_down:

unit_test/tstLevelSetRedistance.hpp
87.09% <0.00%> (-12.91%)
:arrow_down:

src/Picasso_UniformMesh.hpp
69.38% <0.00%> (-10.62%)
:arrow_down:

unit_test/tstParticleInit.hpp
93.93% <0.00%> (-6.07%)
:arrow_down:

src/Picasso_InputParser.cpp
89.47% <0.00%> (-2.84%)
:arrow_down:

src/Picasso_AdaptiveMesh.hpp
83.60% <0.00%> (-2.11%)
:arrow_down:

src/Picasso_UniformCartesianMeshMapping.hpp
96.55% <0.00%> (-1.13%)
:arrow_down:

src/Picasso_FieldManager.hpp
97.43% <0.00%> (-0.68%)
:arrow_down:

... and 31 more

Continue to review full report at Codecov.

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

Closing - this did not fix the issue


Adding try-catch for additional safety

Unmarshalling errors are reported on some corner cases while reading
data from intent
@aaustin @EvangelosG @Sarkar

Looks like a simple enough change to me 👍


testing doc stuff (DO NOT MERGE)

Testing out an update to the Quix Streams SDF docs

@tim-quix - probably worth avoiding versions in the URLs:
https://quixdocsdev.blob.core.windows.net/pr225/quix-kafka-libraries/new-quix-streams-streaming-dataframes-alpha/serialization.html

When you go to Beta all the links would have to change. Also avoid using "new" in the URLs - we can always add an icon for that. So what might be better is something like:
quix-streams-streaming-dataframes/serialization.html

Closing to generate a new preview.


Bug - Incorrect Modifier Used

Thank you for providing this wonderful tool to the community!
Today, I watching over an encounter and someone pointed out that the xp awarded didn't match their calculator. Comparing 5etools encounter calculator to the kobold fight club it looks like it is doing a x2 modifier for one of the fights I watched.
A lvl 11 and lvl 10 vs a minotaur skeleton (cr2) and a necromancer (cr9). The base xp is correct at 2,725 but the modified xp is incorrect. The modifier should be 1.5 for 2 monsters not 2 which is what it seems to be using instead.

working correctly. Read the DMG.


Fix(eos_cli_config_gen): aaa config order

Change Summary
Part of the various changes for getting output config to reflect config order on box.
Related Issue(s)
Fixes #1572
Component(s) name
arista.avd.eos_cli_config_gen
Proposed changes
Reorder aaa configuration lines & remove erroneous exclamation points.
How to test

Checklist
User Checklist

N/A

Repository Checklist

[x] My code has been rebased from devel before I start
[x] I have read the CONTRIBUTING document.
[x] My change requires a change to the documentation and documentation have been updated accordingly.
[x] I have updated molecule CI testing accordingly. (check the box if not applicable)

This should be ready to review.

It seems like the the failing job is something unrelated.  Is there is anything we can do to retrigger failed jobs without pushing a commit?

As discussed @ClausHolbechArista the enable_password changes are set.


Test for primary index with lowCardinality(String)

I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en
For changelog. Remove if this is non-significant change.
Category (leave one):

Other

Short description (up to few sentences):
Test added for #5044

Perfect.
FYI. You can also test for rows read with max_rows_to_read setting.
It can be done using only .sql tests.


Container port not exposed when using WithVolume()

I noticed that when I added .WithVolume(), the created container is not exposing the port.
Relevant code:
var postgresPassword = builder.AddParameter("postgresql-password", secret: true);

var postgres = builder.AddPostgres("postgres", password: postgresPassword, port: 63015)
    .WithVolume();

Without WithVolume()

With WithVolume()

That code sample you pasted doesn't compile. WithVolume takes a required argument. Is that the code you are actually using?

Sorry, I was actually using WithDataVolume() but I found this from StackOverflow so I thought I'd change it to WithVolume()

Everything seems to be working fine but the docker desktop UI does not show the ports. It doesn't seem to be related to using volumes either:

That's weird. I've tried multiple times and it sometimes exposes the port other times not. Could just be a problem with my machine. Sorry to bother you. Thanks

Could this be a variation of 4066?  If the new postgres container tries to start up before the previous one has fully shut down, the port may be blocked by the old instance.

This smells more like a Docker Desktop UX bug.

Could this be a variation of #4066? If the new postgres container tries to start up before the previous one has fully shut down, the port may be blocked by the old instance.

If that were the case, the container would just fail to start, and not run without the port mapping. So I doubt this is related to #4066

Looks like this is external to Docker Desktop.   Going to close but if you run into an issue where Aspire is not binding the ports correctly, re-open this.


Alarm AX Pro DISARMED

Sorry for creating an issue. I'm evaluating Hikvision AX Pro and want to know whether it's possible to use motion sensors even when alarm is not armed so I can use them to turn lights on and so on.
I would really appreciate your answer.
Looking forward to use this addon!

There are discussion exactly for this!


Unify sending emails to all users of suppliers

Trello: https://trello.com/c/1V1ho9Cx
We want to improve the way in which we send emails. The first step is to try and commonise how we send emails to make future improvements easier.
These two scripts send emails in exactly the same way, so make for a quick start.

Just a quick thing I did in some spare time on Friday. It's a draft because it's not yet ready, but I don't want to forget about it.

Just a quick thing I did in some spare time on Friday. It's a draft because it's not yet ready, but I don't want to forget about it.

We're doing it a different way now (see email engine)


Update AWS-Deployment-Guide.md with minimal requirements

Motivation and context
Deployment on AWS instance documentation is missing minimal requirement infos.
I report only what has been tested on my end, with version 2.7.6. A global table with the version which introduced cvat_redis and instance minimal requirements would be helpful.
The .env tip is nice and saved me a lot of time when crashes happened (only need to restart instance from AWS console and skip the export step)
How has this been tested?
Deploying on AWS instances and noticing frequent crashes after update after update to 2.7.6.
This has been reported and documented in #7085
Checklist

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

License

[x] 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.

I think we can close the PR for now.
It is better to specify memory and CPU requirements regardless of the cloud provider.
The minimum requirements depend on the components to be deployed, ideally we should have requirements for each optional component like serverless functions.
The description of using .env looks irrelevant to PR.


Attempt to support semantic-release

@mvaalexp just curious--is this PR intended to create semantically versioned containers too? I know i'd certainly be more comfortable pulling a specific version instead of latest or an odd looking tag like v1.0-RC-20220623134520 each time :D

Still trying to figure out how to make that happen. Looks like first one is just going to just be Helm Chart probably. I want to change the container tag as well.

I think this may do it
https://github.com/ExpediaGroup/kubernetes-sidecar-injector/pull/40/files#diff-290bc8c9d85da26e1ca7938653f46a2261a86554bcca3afd94bc54c81901cffeR34-R63


Add ability to disable job scheduling of specified extension plugin

From: https://github.com/opendistro-for-elasticsearch/job-scheduler/issues/3
JobScheduler plugin maybe extended by multiple extension plugins. Extension plugins may support the configuration to allow users to disable the plugin at runtime, which requires all scheduled jobs of that plugin to be descheduled.
Let extension plugin to disable all jobs by updating all job documents by setting enabled flag to false is an option, but it is not ideal, as the enabled field is meant for extension plugins to control at job level to support their use cases.
Thus we may want to implement a new mechanism for extension plugins to disable all their jobs at one shot.
Comments:
From @zengyan-amazon
One potential option is to add a extension plugin blacklist setting for JobScheduler. If extension plugin wants to disable all their jobs, they can add itself to the blacklist. JobScheduler listens to this setting change and disable the jobs accordingly

From @sixdouglas
Hi,
Do you think I can involve for this improvement? If so, do you have more inputs/thoughts since the beginning of May?

From @zengyan-amazon
Hi @sixdouglas ,
Your involvement is welcomed. We didn't have a chance to finalized the approach we want to adopt since May due to limited bandwidth.
I believe the high level idea is allow extension plugin to update a setting to notify the JobScheduler to disable/re-enable its jobs. Then job scheduler can take care of the deschedule/schedule accordingly. However we are not sure whether is will be a cluster setting, or an index setting of extension plugins' job index, or some other type of setting.
Please let us know if you have any suggestions, and we would be happy to discuss any possibilities and move this forward.
Thanks

Adding a note here that if this enhancement ends up adding a condition check where the sweeper is enabled or disabled for jobs (similar to what Alerting currently does) we could end up hitting a bug that Alerting currently has where disable jobs don't get rescheduled when re-enabled if the job doc version didn't change because of conditions sweeper() checks for (the related Alerting issue is: https://github.com/opensearch-project/alerting/issues/89).
So whatever fix is applied to Alerting should be added to Job Scheduler as well to avoid that situation.


Reorganize the geojson to add trainers

Add trainers in geojson
Add visual differentiation between instance, instance with training and trainers

Wonderful!


UsingRegistry should expose getters for all registered contracts

Expected Behavior
getters for all registered contracts exist, assuming this does not increase the bytecode size of contracts that only use a subset of those getters
Current Behavior
They do not

reserved for evgeni@limechain


Forward merge branch-22.10 to branch-22.12

Resolved the conflicts present in #416.

@jakirkham, please review and merge when you get a chance, thanks

Thanks @Ethyling, the forward merge docs state that one should change the merge strategy to "Create a Merge Commit" but I am not able to do this via the UI here. If I as the CI bot to merge is it going to do the right thing, or is there another step needed? (not sure if the docs are up to date)


Extension Functions

This adds Extension Functions, which are Functions that are assigned to a certain Type.

Closed,  PR'd to the wrong branch.


[BEAM-13068] Add xlangx.DecodeStructPayload

Implement a DecodeStructPayload function under xlangx. It's the reverse operation of EncodeStructPayload.
R: @lostluck

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

LGTM Thanks1

Ok, nvm then. I just saw that the Go tests started failing and this looked like a potential culprit. Seems like latest run passed.

All the tests/builds using Go were failing on Jenkins because of the recent update to which Go version we have installed by default. They should all be resolved by now, only waiting for a more permanent solution to the Jenkins image changes. Daniel Oliveira and Valentyn are working on it.


ARROW-15678: [C++][CI] a crossbow job with MinRelSize enabled

In addition to the CI job that tests this, it includes for the wrong SIMD instructions on some platforms

@github-actions crossbow submit test-r-minsizerel
This should fail, it is before the fix is added

@github-actions crossbow submit test-r-minsizerel
After @westonpace 's patch

@jonkeane Can you point to the Windows CI failures?

Here is one: https://github.com/apache/arrow/runs/6085559326?check_suite_focus=true but there are a handful of others on eb91ce0

Well, un-inlining the FirstTimeBitmapWriter method definitions could very well decrease performance, so we shouldn't do that. I'm also sure there's a way to avoid the linking failures, perhaps @kou can help?

@ursabot please benchmark lang=C++

There definitely are regressions in throughput on those C++ benchmarks.
Interestingly, it looks like there was a pretty big regression (larger than here, even!) in some of these already around https://github.com/apache/arrow/pull/12634 which is odd since that's a java + documentation only ticket. Though it does look like our compiler version on the benchmarking machine went from 9.4.0 to 10.3.0 coincidentally at that commit, which might be the real source of that regression.

Yes, you can see there are regressions in kernels that write an output bitmap (such as is_in or substring matching), which definitely relates to FirstTimeBitmapWriter.

Can we use ARROW_FORCE_INLINE instead of hiding implementation to .cc here?
We can use __attribute__((always_inline)) with g++. There are many force inline macros in our code base such as FORCEINLINE, FORCE_INLINE and GDV_FORCE_INLINE.

@github-actions crossbow submit test-r-minsizerel

I started a Crossbow job here: https://github.com/ursacomputing/crossbow/actions/runs/2203242917

I played around with this a bit more.  I can reproduce it locally by building with SSE4_2:
cmake .. -DARROW_PARQUET=ON -DARROW_SIMD_LEVEL=SSE4_2 -DARROW_RUNTIME_SIMD_LEVEL=MAX -DARROW_BUILD_TESTS=ON

From there it's easiest to verify by just manually checking to see which version ends up in libparquet.so:
objdump --disassemble=_ZN5arrow8internal21FirstTimeBitmapWriter10AppendWordEml -S ./minsizerel/libparquet.so.800.0.0

If the output contains shlx then you've reproduced the bug.  If it only contains shl then it picked the correct default symbol.  If the method is entirely inlined you get no output.

The symbol is inlined with -DCMAKE_BUILD_TYPE=Release
The symbol is not inlined with -DCMAKE_BUILD_TYPE=MinSizeRel

However, on my system, in all cases, the libparquet.so file chooses the correct version unless...
I can get an invalid .so file if I switch the order the object files are passed to the linker: /usr/bin/clang++-13 ... level_conversion_bmi2.cc.o ... level_conversion.cc.o ...

The symbol is inlined, even with MinSizeRel is I try @kou's fix (__attribute__((always_inline))).

This seems like the easiest "spot fix" if we wanted to include something as part of 8.0.0

If you really want to reproduce the issue, I found a tool sde64 which will work if you have an Intel processor.  It allows you to simulate older Intel processors and so you can pretend to have an Ivy Bridge processor (which does not have AVX2/BMI2 support):
sde64 -ivb -- ./minsizerel/parquet-arrow-test --gtest_filter=TestParquetIO/0.SingleNullableListNullableColumnReadWrite
Running main() from ../googletest/src/gtest_main.cc
Note: Google Test filter = TestParquetIO/0.SingleNullableListNullableColumnReadWrite
[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from TestParquetIO/0, where TypeParam = arrow::BooleanType
[ RUN      ] TestParquetIO/0.SingleNullableListNullableColumnReadWrite
TID 0 SDE-ERROR: Executed instruction not valid for specified chip (IVYBRIDGE): 0x7f80c95b96b3: shlx rax, rbx, rax
Image: /home/pace/dev/arrow/cpp/sse4.2-min-build/minsizerel/libparquet.so.800+0x1666b3
Function: _ZN5arrow8internal21FirstTimeBitmapWriter10AppendWordEml
Instruction bytes are: c4 e2 f9 f7 c3

@pitrou has also posted a suggestion on the ML using pragmas.  I had to include the arch specifier so it generated __attribute__((target("arch=haswell,avx2"))) and this appears to do what is expected.  The function is compiled with avx2 but the nested call is not.

Thanks @westonpace for digging deeper! Since the release is approaching we should choose one solution to unblock the release.

IMHO the temporary solution should simply be to disallow dynamic dispatch on Homebrew builds. This should be doable by passing -DARROW_RUNTIME_SIMD_LEVEL=NONE to CMake.

If we're going to leave this as is, we should also document somewhere that compiling with MinSizeRel also needs to disable SIMD in the same way.

I agree with @pitrou that it doesn't make sense to rush this while we investigate a longer term fix for dynamic dispatch.  The forced inline is more of a band-aid and there is no real guarantee it would work in all situations.
Agreed this isn't related to MinSizeRel.  That configuration triggers this bug on this particular system.  However, it is entirely possible some other build on some other system runs into this exact same bug without using MinSizeRel.  As far as the compiler's are concerned we are in the domain of "undefined behavior" so any change to compilation flags or compiler versions could change what results we get.

Ok, if we want to test this in our CI before we upstream the change to homebrew, I would remove this line https://github.com/apache/arrow/blob/d85e9024b52e131f8dacde064962d53b04697a6f/dev/tasks/homebrew-formulae/apache-arrow.rb#L66-L68, add the compiler flag below, and then run the crossbow job homebrew-r-brew.

@jonkeane @nealrichardson what's the status of it? Do we need this for the next homebrew release?

What's here only adds the CI that will replicate the failure long-discussed in ARROW-15678. I'm inclined to close it until we have a champion who can resolve the issue — the code is here if they need it (or we could merge it and have a crossbow job that always fails until we have someone who can champion the fix...).


What does this do for us?

Like, to play levels on other switches?

can I make epic hacks?

This allows you to decrypt Super Mario Maker 2 save files and view them in plain text, with potential for PC-based level editors and stuff like that later on!


vascan_search giving 'HTTPResponse' object is not callable

`

import pytaxize
pytaxize.vascan_search(q = ["Helianthus annuus"])
Traceback (most recent call last):
File "", line 1, in
File "/usr/lib/python3.5/site-packages/pytaxize-0.4.9900-py3.5.egg/pytaxize/tax.py", line 86, in vascan_search
File "/usr/lib/python3.5/site-packages/pytaxize-0.4.9900-py3.5.egg/pytaxize/refactor.py", line 44, in raw
TypeError: 'HTTPResponse' object is not callable
`

however other methods like
res = pytaxize.Ids('Poa annua', db='col')
res.get_colid()
are working fine

https://github.com/sckott/pytaxize/blob/b99aa5dc7196919c4404b9873f0bb73ccd4d698b/pytaxize/refactor.py#L44
raw() is not a valid response object method i guess

hi @ghoshbishakh thanks for this report. looks like a bug, will fix

@sckott can I work on it?
I think replacing .raw with .text can be helpful?

yes, go for it!


small new fixes

cherrypy is now a requirement, should be added to requirments.txt
Rename Product ID as Device Type ID to more closely match Amazon description (minor confusion)
Seems to work now! :)

Thanks for the suggestions. I've updated it. Kept cherrypy in auth_web_requirements.txt since it isn't actually required by alexa_client itself.


aws-alb-ingress-controller need acm support

If you try to deploy aws-alb-ingress-controller in bjs&zhy region, it will need acm service. While ACM is not currently supported in ZHY&BJS YET.
The issue link in aws-alb-ingress-controller project is right here:
https://github.com/kubernetes-sigs/aws-alb-ingress-controller/issues/439

This issue has been fixed in release 1.0.0, it does not require ACM anymore. Both HTTP and HTTPS listeners are created successfully by ingress controller, although we have to set IAM certificate ARN for  HTTPS listener in ingress annotation. Following is sample annotations in ingress to setup HTTPS listener:
alb.ingress.kubernetes.io/listen-ports: '[{"HTTPS": 443}]'
alb.ingress.kubernetes.io/certificate-arn: arn:aws-cn:iam::123456:server-certificate/k8s-cert

Thanks @walkley


chore: bdd-nh-1582339945 to 0.0.1

chore: Promote bdd-nh-1582339945 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Webpacks roots/aliasses for resolving template and partials/included subtemplates

Hi Jantimon,
I have a usecase where deps/modules are resolved (with Webpacks multiple roots and aliasses) in a specific order (e.g. first resolving 'custom' folder, then 'src' folder, then node_modules) for multiple targets (web and others).
For the template option (and included partial with whatever loader), I can't seem to let the deps/templates resolve the way webpack does. I'd like to do something like the following for the htmlWebpackPlugin template option
template: '__someAlias__/templates/index.html'
and when including subtemplates/partials, pretty much the same. Ultimately, it should look for templates in the 'custom' folder, 'src' folder, than 'node_modules' and fail when none are found.
Any idea how I could set this up?

Hey :)
I guess right now that's not supported (mainly for backwards compatibility)
However it would be easy to add that feature similar to the sass-loader.
All we would have to do is to ignore the preprocessing if the request starts with a ~ so you could specify it as template: '~__someAlias__/templates/index.html'
Would you be up to create a pull request?

Yeah, I'll look into it this weekend.
I've got a semi-solution for the moment based on the advanced-javascript example, it's not the prettiest but it works for now.
The template options is pointed to a small piece of javascript like this (psuedo):
module.exports = `
  <!DOCTYPE html>
  <html>
     ${ require('__someAlias__/someTarget/partials/head.html }
     ${ require('__someAlias__/someTarget/partials/body.html }
  </html>
`;

I'll close this issue for now.


SonicWall CEF connector

I have installed a Linux syslog-ng forwarder with Microsoft Monitoring agent and I am receiving logs from SonicWall.
I cannot seem to be able to filter out event categories correctly using workspace Legacy agents management.
I have the collection of syslogs set to Warnings, Error, Critical, Alert, and Emergency.
Despite this setting I am still receiving CEF event severities lower than the above configuration.
I have also tested this with Azure Monitor Agent with the same result.
I have verified SonicWall is sending the messages I don't want with an event severity of 4 which is INFORM which the SYSLOG
DCR rule seems to have no effect on.
Any guidance on this would be appreciated.

Please close the ticket.
I have resolved the issue by following this link: Azure Sentinel webinar: Log forwarder deep dive on filtering CEF and syslog events - YouTube
This enabled me to create a conf file to filter out event I do not want before sending to Azure Sentinel from the Linux SYSLOG forwarding server.
I created a 55-filter.conf and placed in the rsyslog.d directory.
The actual content in the file is this: :rawmsg, contains, "Interface Statistics Report" ~
This filtered out the specific events sent from Sonicwall.
Reason why I filtered is the data is just “noise” in my environment and was being received at a high rate.
I do not need to log that specific event.
I believe that specific event was designed for SonicWall Analyzer or GMS specifically but is meaningless on its own.
Here is the definition from SonicWall:
Which you can find here: SonicOS 6.5.4 Log Events Reference Guide (sonicwall.com)
805 System GMS --- INFO --- Interface Statistics Report Interface statistics report


[1.19.2 / SUGGESTION] If it possible add mixed slabs.

If that is possible option for making double mixed slabs will be last possible addition to this mod.

As this is meant to be a vanilla-like mod, with no block entities, this is not possible.


Fix YAML encoding and WebSocket reconnect UT

Description
Accidentally merged two PRs. Sorry for that.
Python part:
Fix the problem found by Lijiao that on Chinese system the YAML config files are loaded as GB encoding.
TS part:
The UT for WS reconnect is unstable. Fixed that.
Only one change outside UT: after reconnect the first ping is allowed to be skipped.
Test Options

[ ] fast test
[ ] full test - HPO
[ ] full test - NAS
[ ] full test - compression

Checklist

[x] test case
doc

How to test

should this merge to v2.10?


AKS outbound traffic requirements for storage and ACR

I have configured all the outbound rules as described in the article.
I still see some outbound flows in Azure Firewall logs that were not matched by any of the rules.
First is an Azure Container Registry: inuxgeneva-microsoft.azurecr.io.
This is used by one of the containers in DAPR extension, but the only mention I found of it on the internet is related to ARC (we're using AKS managed cluster).
Then there are 37 storage accounts (where ### are numbers or random strings):

1x neumanaged###.blob.core.windows.net
2x md-############.z##.blob.storage.azure.net
4x wusreplica###.blob.core.windows.net
30x umsa################.blob.core.windows.net

Here's the only mention about storage accounts in the article:

Under certain circumstances, it might happen that traffic towards "md-*.blob.storage.azure.net" is required. This dependency is due to some internal mechanisms of Azure Managed Disks. You might also want to use the Storage service tag.

"Under certain circumstances" and "You might want" are a bit vague when talking about security. Can we get a clarification about the circumstances and what are those accounts used for exactly?

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

ID: 64b637d2-4ed9-c7c4-65ad-2ff13db82d3b
Version Independent ID: 711e707f-83cd-6621-ac7d-6f59b0cb37fa
Content: Outbound network and FQDN rules for Azure Kubernetes Service (AKS) clusters - Azure Kubernetes Service
Content Source: articles/aks/outbound-rules-control-egress.md
Service: azure-kubernetes-service
Sub-service: aks-networking
GitHub Login: @asudbring
Microsoft Alias: allensu

@dstarkowski
Thanks for your feedback! We will investigate and update as appropriate.

@dstarkowski
I'm going to assign this to the document author so they can take a look at it accordingly
@asudbring
Can you please check and add your comments on this doc update request as applicable.

+1  , Facing the same issue and a more clear document would be highly appretiated . We leverage Azure Native Tools like ACR and even still seeing issues while connecting from AKS Clusters via Azure Firewall . Ideally the container registry tag should cover everything thats needed for the firewall to allow all URLS needed to pull image from ACR

Do we have any update?

Thank you for your dedication to our documentation. Unfortunately, at this time we have been unable to review your issue in a timely manner, and we sincerely apologize for the delayed response. The requested updates have not been made since the creation of this issue, so we've created an internal work item to incorporate your suggestions. We are closing this issue for now, but feel free to comment here as necessary.
#please-close

@rayoef
Thank you for the update.
Please keep in mind that this issue is not about a typo or something unclear/missing in the documentation, which can wait another 9 months.
This is about SECURITY. It is currently not possible to properly secure the cluster without this information.
Opening firewall rules to allow traffic to ALL storage accounts (which we must do without knowing exact accounts that are required) opens a risk of data exfil through storage accounts. This must be remediated and to do that we need information on specific accounts that are required and what is their purpose.

Thank you for your dedication to our documentation. Unfortunately, at this time we have been unable to review your issue in a timely manner, and we sincerely apologize for the delayed response. The requested updates have not been made since the creation of this issue, so we've created an internal work item to incorporate your suggestions. We are closing this issue for now, but feel free to comment here as necessary.
#please-close
@rayoef We need update on this, I have a major client who could dismiss AKS because of this issue

@psddp @dstarkowski My team is working on investigating this issue. I'll circle back when we've updated the text.

I have the same problem after following the docs: https://learn.microsoft.com/en-us/azure/aks/limit-egress-traffic
These are the unmatched hosts:

Fqdn
Number of Pods denied

umsab4sv24kfrmf40vxd.blob.core.windows.net
1

umsapgnwc5jhjcjptsxq.blob.core.windows.net
4

umsagmgt014p3mbfwbpr.blob.core.windows.net
1

md-hdd-cv1bgmmqdgs5.z29.blob.storage.azure.net
1

md-hdd-pc0jtfswhmpp.z8.blob.storage.azure.net
1

md-hdd-d5zblwfcfkgn.z35.blob.storage.azure.net
1

md-hdd-bbqqj4fkmf5v.z7.blob.storage.azure.net
1

md-hdd-ggmlcwgqblbv.z39.blob.storage.azure.net
1

md-hdd-rcmbfb0gzw2j.z48.blob.storage.azure.net
1


home button added to all pages

Related Issue
Fixes #316
Description
Navigation to home page from all other pages.
Type of PR

[ ] Bug fix
[x] Feature enhancement
[ ] Documentation update
[ ] Other (specify): _______________

Screenshots / videos (if applicable)
[Attach any relevant screenshots or videos demonstrating the changes]
Checklist:

[x] I have performed a self-review of my code
[x] I have read and followed the Contribution Guidelines.
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[x] I have commented my code, particularly in hard-to-understand areas.

Additional context:
[Include any additional information or context that might be helpful for reviewers.]

@divyansh-2005 Update the  branch

done

@SUGAM-ARORA please check

@divyansh-2005 Kindly update  branch once again

branch is updated.


It's burdensome to choose the language for each selection

Thanks for the nice extension.

When commenting various sections of a large file, it becomes burdensome to have to choose the same language of the file over and over again. This suggests that window.activeTextEditor?.document.languageId gets the targeted opened-file's language (perhaps as usually shown in the bottom). Alternatively, I believe that gpt-3.5-turbo could easily figure this out by itself if no language is specified in the prompt.

Hi @EssamWisam
Thanks for the feedback. Do check this out - https://github.com/msris108/codemetry/pull/2
Regards
Sriram M :-)


Simplifies calculation of attributed string size

I think that fixes the merge conflict, jdduke@ can you review?

This PR already more than year in state "ready to pull".


RBAC plugin not working.

Describe the bug
After integrate rbac plugin with backstage 1.25.2, it's not working.
{"level":"info","message":"RBAC backend plugin was enabled","plugin":"permission","service":"backstage","type":"plugin"}
Backend failed to start up Error: unable to verify the first certificate
    at TLSSocket.onConnectSecure (node:_tls_wrap:1659:34)
    at TLSSocket.emit (node:events:517:28)
    at TLSSocket._finishInit (node:_tls_wrap:1070:8)
    at ssl.onhandshakedone (node:_tls_wrap:856:12) {
  code: 'UNABLE_TO_VERIFY_LEAF_SIGNATURE'
}

Expected Behavior
works .
What are the steps to reproduce this bug?

backend change.
frontend change.
configuration change.

Versions of software used and environment
backstage: 1.25.2
"@janus-idp/backstage-plugin-rbac": "^1.18.2",
"@janus-idp/backstage-plugin-rbac-backend": "^3.0.0",

/app/packages/backend-app-api/dist/index.cjs.js:1680
            throw new errors.ForwardedError(
                  ^

ForwardedError: Plugin 'permission' startup failed; caused by Error: unable to verify the first certificate
    at /app/packages/backend-app-api/dist/index.cjs.js:1680:19
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async /app/packages/backend-app-api/dist/index.cjs.js:1679:11
    at async Promise.all (index 11)
    at async #doStart (/app/packages/backend-app-api/dist/index.cjs.js:1633:5)
    at async BackendInitializer.start (/app/packages/backend-app-api/dist/index.cjs.js:1562:5)
    at async BackstageBackend.start (/app/packages/backend-app-api/dist/index.cjs.js:1762:5) {
  cause: Error: unable to verify the first certificate
      at TLSSocket.onConnectSecure (node:_tls_wrap:1659:34)
      at TLSSocket.emit (node:events:517:28)
      at TLSSocket._finishInit (node:_tls_wrap:1070:8)
      at ssl.onhandshakedone (node:_tls_wrap:856:12) {
    code: 'UNABLE_TO_VERIFY_LEAF_SIGNATURE'
  }
}

Node.js v18.20.4

I reproduced this bug with configuration:
database:
      ....
      ssl:
        rejectUnauthorized: false

Error:
backend:start: /Users/oandriie/projects/backstage-plugins/node_modules/@backstage/backend-app-api/src/wiring/BackendInitializer.ts:291
backend:start:             throw new ForwardedError(
backend:start:                   ^
backend:start:
backend:start:
backend:start: ForwardedError: Plugin 'permission' startup failed; caused by Error: unable to verify the first certificate
backend:start:     at <anonymous> (/Users/oandriie/projects/backstage-plugins/node_modules/@backstage/backend-app-api/src/wiring/BackendInitializer.ts:291:19)
backend:start:     at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
backend:start:     at <anonymous> (/Users/oandriie/projects/backstage-plugins/node_modules/@backstage/backend-app-api/src/wiring/BackendInitializer.ts:290:11)
backend:start:     at async Promise.all (index 7)
backend:start:     at BackendInitializer.#doStart (/Users/oandriie/projects/backstage-plugins/node_modules/@backstage/backend-app-api/src/wiring/BackendInitializer.ts:236:5)
backend:start:     at BackendInitializer.start (/Users/oandriie/projects/backstage-plugins/node_modules/@backstage/backend-app-api/src/wiring/BackendInitializer.ts:150:5)
backend:start:     at BackstageBackend.start (/Users/oandriie/projects/backstage-plugins/node_modules/@backstage/backend-app-api/src/wiring/BackstageBackend.ts:42:11) {
backend:start:   cause: Error: unable to verify the first certificate
backend:start:       at TLSSocket.onConnectSecure (node:_tls_wrap:1674:34)
backend:start:       at TLSSocket.emit (node:events:519:28)
backend:start:       at TLSSocket._finishInit (node:_tls_wrap:1085:8)
backend:start:       at ssl.onhandshakedone (node:_tls_wrap:871:12) {
backend:start:     code: 'UNABLE_TO_VERIFY_LEAF_SIGNATURE'
backend:start:   }
backend:start: }

I think user used rejectUnauthorized. So this bug will be fixed when we will merge pr https://github.com/janus-idp/backstage-plugins/pull/2122


docker-compose.yml not running

the current docker-compose file is not running.

some error on my side


http-api: Add STATUS to response logging

with the commit, logs would look like:
Aug 13 19:59:57.576  INFO radicle_http_api: listening on http://<IP_ADDRESS>:8777
Aug 13 20:00:01.480  INFO radicle_http_api: GET /
Aug 13 20:00:01.481  INFO radicle_http_api: STATUS=200 LATENCY=656.022µs
Aug 13 20:00:02.268  INFO radicle_http_api: GET /v1/projects/rad:git:hnrkbjgno3sksbfq4oy1fme6p1tmmoa4gd4zy/commits
Aug 13 20:00:02.296  INFO radicle_http_api: STATUS=302 LATENCY=27.410486ms

alternatively, we can .make_span_with(DefaultMakeSpan::new().level(Level::INFO)) and get:
Aug 13 21:52:10.139  INFO radicle_http_api: listening on http://<IP_ADDRESS>:8777
Aug 13 21:52:13.598  INFO request{method=GET uri=/ version=HTTP/1.1}: radicle_http_api: GET /
Aug 13 21:52:13.599  INFO request{method=GET uri=/ version=HTTP/1.1}: radicle_http_api: STATUS=200 LATENCY=1.296624ms
Aug 13 21:52:30.334  INFO request{method=GET uri=/v1/projects/rad:git:hnrkbjgno3sksbfq4oy1fme6p1tmmoa4gd4zy/commits version=HTTP/1.1}: radicle_http_api: GET /v1/projects/rad:git:hnrkbjgno3sksbfq4oy1fme6p1tmmoa4gd4zy/commits
Aug 13 21:52:30.359  INFO request{method=GET uri=/v1/projects/rad:git:hnrkbjgno3sksbfq4oy1fme6p1tmmoa4gd4zy/commits version=HTTP/1.1}: radicle_http_api: STATUS=302 LATENCY=25.316363ms

^ we can obviously ommit the request side. LMK which you prefer.

Hmm so they're the same except the second one has the same data twice? I'm still wishing we can have the status/latency on the same line, is that difficult? It's pretty standard in other webservers, eg. look at this apache log:

Right now, we return two lines per each hit:
            TraceLayer::new_for_http()
                .on_request(|request: &Request<Body>, _span: &Span| {
                    tracing::info!("{} {}", request.method(), request.uri().path())
                })
                .on_response(
                    |response: &Response<BoxBody>, latency: Duration, _span: &Span| {
                        tracing::info!("STATUS={:?} LATENCY={:?}", response.status(), latency)
                    },
                ),

Unfortunately, only on_request part has access to uri. I've tried response, latency, and span. None of them has uri info. I've talked with the Author, and he too seems to be a bit confused about it.
He suggested that it's in Span but I've read the code there as well. It's not there. There's however another way to get it,and that is to use .make_span_with(DefaultMakeSpan::new().level(Level::INFO)) which is used in https://github.com/radicle-dev/radicle-client-services/pull/178.
If we use make INFO level span, and omit the on_request logging part then we'd go from this:
Aug 13 20:00:01.480  INFO radicle_http_api: GET /
Aug 13 20:00:01.481  INFO radicle_http_api: STATUS=200 LATENCY=656.022µs
Aug 13 20:00:02.268  INFO radicle_http_api: GET /v1/projects/rad:git:hnrkbjgno3sksbfq4oy1fme6p1tmmoa4gd4zy/commits
Aug 13 20:00:02.296  INFO radicle_http_api: STATUS=302 LATENCY=27.410486ms

to this:
Aug 13 21:52:13.599  INFO request{method=GET uri=/ version=HTTP/1.1}: radicle_http_api: STATUS=200 LATENCY=1.296624ms
Aug 13 21:52:30.359  INFO request{method=GET uri=/v1/projects/rad:git:hnrkbjgno3sksbfq4oy1fme6p1tmmoa4gd4zy/commits version=HTTP/1.1}: radicle_http_api: STATUS=302 LATENCY=25.316363ms


fix(compactor): fix infinite loop of key-filter-extractor when state-table has been removed.

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
If some of state-table was removed by meta-service, the compact job would never wait the FilterKeyExtractorImpl being notify. and the compact-task will hung out because of waiting in FilterKeyExtractorManager
Checklist For Contributors

[ ] I have written necessary rustdoc comments
[ ] I have added necessary unit tests and integration tests
[ ] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[ ] I have demonstrated that backward compatibility is not broken by breaking changes and created issues to track deprecated features to be removed in the future. (Please refer to the issue)
[ ] All checks passed in ./risedev check (or alias, ./risedev c)

Checklist For Reviewers

[ ] I have requested macro/micro-benchmarks as this PR can affect performance substantially, and the results are shown.

Documentation

[ ] My PR DOES NOT contain user-facing changes.

Click here for Documentation
Types of user-facing changes
Please keep the types that apply to your changes, and remove the others.

Installation and deployment
Connector (sources & sinks)
SQL commands, functions, and operators
RisingWave cluster configuration changes
Other (please specify in the release note below)

Release note

Similar issues have occurred several times. I believe we should have some alternative design for this...

https://github.com/risingwavelabs/risingwave/issues/4790
https://github.com/risingwavelabs/risingwave/issues/6684


XML schema and values of ViewXML string?

Hi,
It would be great to have more information about the XML schema and structure of the ViewXML string at hand. I'm currently working in this area and it's a bit of a chaos to notice that the ViewXML has been changed between Outlook versions. Proper reference or more details for each version of Outlook would be much appreciated.
Regards, JoKi

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

ID: 95fe179b-467c-ff02-81f0-09f74a8831b4
Version Independent ID: a8080f30-0caa-4789-332b-2dd99ad5fddf
Content: ViewCtl.ViewXML Property (Outlook View Control)
Content Source: api/Outlook.viewctl.viewx.md
Product: outlook
GitHub Login: @o365devx
Microsoft Alias: o365devx

Try StackOverflow tagged access-vba for help from the Access developer community.


Add support HtmxResponse that isn't a direct return type

I've working with JTE as my templating engine recently and been very impressed. The templates are statically compiled and work very well with this library.
However there is an advanced use case where the Gradle or maven plugin generates an interface that represents your templates, complete with parameters.
To leverage these templates I'm returning a JteModel in my controller methods, that isn't compatible with this library. I would like to propose a few solutions.
1- Support subclassing HtmxResponse. I might be able to leverage that so my JteModel provides the right data.
2- Support making HtmxResponse an injectable parameter, similar to how you can set the response code when injecting HttpServletResponse.
3- Support a 'provider' approach for HtmxResponse.  This means my response can implement an interface and provide an HtmxResponse, allowing the builder to remain the same but making the return type more flexible.
I'll start on a PR for option 3. But I'm interested in feedback on any and all of these options.

Reporting back: Option 3 won't work. Spring selects only one handler. That also means that option 1 won't work.
Perhaps option 2 will work.

@wimdeblauwe How do you feel about PR #128 ?
It is working really well for me in my 3 projects that I've migrated to JTE

Hi @checketts, sorry I forgot about this. If you can just add some documentation, we can merge it and I will create a new release for you.

@xhaggi Yes. I'll try to upload a sample project (and hopefully push upstream into the JTE Spring module)

Returning a JTE Model with Spring is not present in the main project, yet the concept aligns with the expected usecase. This isn't too surprising since the primary JTE committer doesn't use Spring.
I'm new to these internals, so I'm not familiar with how #137 might be impacted with the HtmxResponse being in the model instead of the return value. I haven't used flash attributes for a very long time (nor redirecting).
My primary usecase is having a programatic way to set HTMX headers following the same pattern you might use with HttpServletResponse. In Spring you typically inject the HttpServletResponse to do that. Injecting a HtmxResponse for the same pattern feel right to me.
However as long as injecting the HtmxResponse is supported, we don't need it to be in the Model. It could be a response attribute perhaps. Also I think it could make sense to throw son sort of Exception if the view is set on the HtmxResponse in that usecase and document that limitation.

In Spring you typically inject the HttpServletResponse to do that. Injecting a HtmxResponse for the same pattern feel right to me.

I agree with that. This gives me the idea that maybe we should remove the support for adding views from HtmxResponse and rather move this to a class HtmxView. We only need this view if we want to specify several views. In cases where only one view is needed, HtmxView would not be required as a return value.
Something like
Single view
String user(HtmxResponse res) {
  res.trigger("mytrigger");
  return "myview";
}

Multiple views
HtmxView user(HtmxResponse res) {
  res.trigger("mytrigger");
  var view = new HtmxView();
  view.add("myfragment1");
  view.add("myfragment2");
  return view;
}

This would bring the implementation more in line with Spring. @wimdeblauwe what do you think?

Spring Framework 6.2 (Which is due November 2024) will support multiple fragments: https://docs.spring.io/spring-framework/reference/6.2/web/webmvc-view/mvc-fragments.html#page-title Maybe we should take that in account? I would be ok with releasing a 4.0 that needs 6.2 (When it is released and a compatible Spring Boot version is available obviously).

Would we have HtmxView as return type with multiple views in there? Or go for a List<HtmxView> if you want OOB swaps? Does HtmxView also have methods to set model attributes?
So if I understand it correctly, we want to make HtmxResponse more like HttpServletResponse where you add it as a parameter to the controller method? And you call methods on the injected instance to influence the response. Seems like a good idea to me so it is more in line with how HttpServletResponse works.

I favor List<HtmxView> It may not even be needed if Spring supports multiple views automatically.

@wimdeblauwe You are right. I'm already working on it and it's almost finished.

I favor List It may not even be needed if Spring supports multiple views automatically.

I need to check if this is possible. At the moment I am using HtmxView which contains a list of ModelAndView.

I think it is ok to use HtmxView for now. It is basically just a wrapper for the List that it can become in the future and then maybe we don't need HtmxView anymore.

Can we close this issue?

I haven't tried it but if #140 fully addresses this then I'm fine closing it


GH-74: Allow generics for router's recipients

Fixes: GH-74 (https://github.com/spring-projects/spring-integration-java-dsl/issues/74)

Introduce a bunch of GenericSelector<P> method into RecipientListRouterSpec to let to have type safe target code.
Deprecate MessageSelector variants since they can be simply covered with the Lambda casting .recipient("foo", (MessageSelector) m ->
Also add Expression variant recipient(Flow) methods to let to provide any custom Expression
Confirm with test modification that all changes have been met

Why is the deprecation necessary?
The need for the cast in the lambda looks clumsy to me.

Polishing here https://github.com/garyrussell/spring-integration-java-dsl/commit/8b371cee01ff86a88437177789069cb9275fe328 for your review.
Also, the build fails for me with...
:jacocoTestReport FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':jacocoTestReport'.
> Unable to read execution data file /Users/grussell/Development/spring-integration-java-dsl/build/jacoco.exec

./gradlew clean build fixed the failure.

Merged as c47a34eb37fe0fb1f6d8ff8ac0d91e35ef252088


Add support for fetching git refspecs

This would allow e.g. fetching pull requests directly from Github:
[dependencies.foo]
git = "https://github.com/user/foo"
refspec = "refs/pull/42/head"

The "refs/" prefix is optional.

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @alexcrichton (or someone else) soon.
If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.
Please see the contribution instructions for more information.

:umbrella: The latest upstream changes (presumably #4953) made this pull request unmergeable. Please resolve the merge conflicts.

I'm gonna close this for now due to inactivity, but feel free to resubmit!


chore: bump sinon from 16.1.3 to 18.0.1

Bump sinon from 16.1.3 to 18.0.0
Changelog: https://github.com/sinonjs/sinon/blob/main/CHANGES.md

LGTM, tests all pass

Hello - waiting for this to be merged as this is a high severity vulnerability.

If you don't want to wait for this you can always add the following temporarily:
"overrides": {
    "aws-sdk-client-mock": {
      "sinon": "^18.0.1",
      "@types/sinon": "^17.0.3"
    }
  }

Released in v4.0.2


feat: update colors

:tada: This PR is included in version 7.34.0-next.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Unable to run Docker Image created using JDK 9 on mac

https://github.com/docker/labs/blob/master/developer-tools/java/chapters/ch03-build-image-java-9.adoc

whenever I try to build using this command "docker container run -m=200M -it --rm jdk-9-debian-slim" I am getting following error : -
docker: Error response from daemon: OCI runtime create failed: container_linux.go:296: starting container process caused "exec: "jshell": executable file not found in $PATH": unknown.
I tried to install jdk 9 and jshell still problem exist. jshell working fine on my macbook .

@arun-gupta

i got the issue .I was using latest version openjdk-9.0.4 but  ENV JAVA_HOME=/opt/jdk-9
ENV JAVA_HOME=/opt/jdk-9.0.4 fixed the issue


Cast operator

This PR implements the cast operator.
In order to reuse features when dtype doesn't change, I can't rename them and add a prefix like cast_ (for consistency).
I'd appreciate your opinion on:

Should I avoid reusing the feature/event instances, recreate all features and just reuse feature.data when possible?
If yes, also take the chance and add a cast_ prefix?

Closes #90

Should I avoid reusing the feature/event instances, recreate all features and just reuse feature.data when possible?
If yes, also take the chance and add a cast_ prefix?

Changing the name of a feature makes it harder for the user to reference features by name, as the operator needs to know the new naming schema. I think not changing the name of the feature make sense in many situations, and the cast operator is one of them. As a counter example, it makes sense to generate a new feature name for arithmetic operators.

just reuse feature.data when possible
In the current implementation, reusing feature.data will avoid copy (which is great). However, it might not always be the case. When possible, when we want to avoid copy, I would always return the input feature (instead of creating a new feature on the existing feature.data).

If our value proposition is "Safety, not error-prone, avoid common mistakes." I think we should check overflow by default. If we really don't want the computation overhead for this then we should at least give a warning every time the function is run without this flag in True.

If our value proposition is "Safety, not error-prone, avoid common mistakes." I think we should check overflow by default. If we really don't want the computation overhead for this then we should at least give a warning every time the function is run without this flag set to True.

I agree, although I think it's indeed quite an overhead with the current implementation. But maybe it makes sense to prioritize safety over performance with the default parameters. I'll default to True and we can discuss it further tomorrow.

Great moment to send part of a conversation with ChatGPT: