Not sure If I am correct, I also find it hard to understand on how to correctly implements custom value accessor.

Not sure If I am correct, I also find it hard to understand on how to correctly implements custom value accessor.
Did you try to bind NgControl to you ValueAccessor ?
final NgControl ngControl;

ContentEditableDirective(this._element, @Self() @Optional() this.ngControl) {
   ngControl?.valueAccessor = this;
}

void ngOnDestroy() {
  ngControl?.valueAccessor = null;
}

The other possible solution would be to inject you value accessor like it's done for DefaultValueAccessor
Originally posted by @lejard-h in https://github.com/angulardart/angular/issues/1941#issuecomment-748014576

@bll55020674 any reason to repost my comments here ?


[FLINK-23626] [Runtime / Metrics] Migrate all TaskMG instantiations to factory method

What is the purpose of the change
Modify all existing usages of the TaskMG constructor to use runtime Apis, for consistency and to make constructor changes easier.
Brief change log
Verifying this change
This change is already covered by existing tests, such as (please describe tests).
Does this pull request potentially affect one of the following parts:

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

Documentation

Does this pull request introduce a new feature? no

@flinkbot run azure

@flinkbot run azure

@flinkbot run azure


Merged cols and rows

Description
In my task i needed know how many rows and cols merge with cell and i wrote function for get this information
I propose to add this function to the main repository
// GetMergeCells provides a function to get the number of merged rows and columns by axis cell
// from a worksheet currently.
func (f *File) GetNumMergeCell(sheet string, axis string) (colNum int, rowNum int, err error) {
	ws, err := f.workSheetReader(sheet)
	if err != nil {
		return
	}

	if ws.MergeCells != nil {
		for i := range ws.MergeCells.Cells {
			ref := ws.MergeCells.Cells[i].Ref
			cells := strings.Split(ref, ":")
			if cells[0] == axis {
				col1, row1, _ := CellNameToCoordinates(cells[0])
				col2, row2, _ := CellNameToCoordinates(cells[1])
				colNum, rowNum = col2-col1+1, row2-row1+1
				return
			}
		}
	}
	colNum = 1
	rowNum = 1
	return
}

I wrote test for this function

Thanks for your issue, following the minimum usable design principle, I don't suggest adding a new API into the base library if developers could be easy to implement any feature by the wrapper or composite the existing APIs. You can get the merged cells to range by GetMergeCells and parse the column and rows base on it.

@xuri  algorithm complexity my function is O(n), algorithm proposed method is O(n^2),  and in the lib code i saw a violation the minimum usable

The issues #1382 and #1448 was similar with this, the performance of the GetMergeCells function has been improvement by #1500, and this optimization has been released in the version 2.7.1. Please upgrade to the latest version. I've closed this issue, if you have any question, please let me know, and you can reopen this anytime.


Rift S: SteamVR can't find the correct display

Can't get Rift S working in SteamVR. It's looking for 2560x1440 screen but my main screen has same resolution and SteamVR choses it as correct. When I disconnect main screen SteamVR is not seeing Rift S at all but HMD appearing in xrandr.
AMD Radeon RX 5700. Arch Linux
vrcompositor log:
Tue Jun 30 2020 14:17:26.618298 - Looking for direct display through RandR
Tue Jun 30 2020 14:17:26.618308 -  - Root 0x6cd
Tue Jun 30 2020 14:17:26.618752 -    - Output 0x55 - 0 modes, 0 preferred
Tue Jun 30 2020 14:17:26.618770 -    - Output 0x56 - 13 modes, 1 preferred
Tue Jun 30 2020 14:17:26.618777 -      - Mode 0 0x68 1280x1024 (looking for 2560x1440)
Tue Jun 30 2020 14:17:26.618791 -    - Output 0x57 - 0 modes, 0 preferred
Tue Jun 30 2020 14:17:26.618806 -    - Output 0x58 - 0 modes, 0 preferred
Tue Jun 30 2020 14:17:26.618814 - Tried to find direct display through RandR: (nil)
Tue Jun 30 2020 14:17:26.618821 - Looking for direct display through Vulkan WSI
Tue Jun 30 2020 14:17:26.618829 - Tried to find direct display through Vulkan WSI: (nil)

xrandr log
Originally posted by @exstrim401 in https://github.com/OpenHMD/OpenHMD/issues/225#issuecomment-651707192

I set up the Rift S to report 2560x1440 as the screen resolution, but actually it's a 1440x2560 rotated display. It might be better if we change OpenHMD to report that rotated configuration and appropriate transformation matrices for a rotated display. I'm not 100% sure that the SteamVR-OpenHMD wrapper can handle that yet though. @ChristophHaag ?

What I've been doing for testing so far is to remove the non-desktop property from the display and rotate it with xrandr, then move the SteamVR window onto the display manually.
I also saw there's SteamVR API for specifying EDID VID and PID - we might be able to help SteamVR identify the correct display that way

This issue probably belongs rather in STeamVR-OpenHMD.
I have not really played with direct mode on rotated displays but I do have a WVR2 so I can actually test now.
I don't know how to tell SteamVR that a display is rotated, but I would assume it's one of those props you have to set. SteamVR-OpenHMD currently does rotation via the distortion function, which might be incompatible with how SteamVR does rotation "properly".

There's probably work to do in both layers

Seems that with the Rift S the display isn't detected at first, but then powers on when a program is using it.
When I boot my system up and start xinit, xrandr can't detect the Rift S in either direct or extended mode.
However, once I start the openhmd-opengl-example program from the build folder, the display powers on and xrandr can detect the Rift S.
I don't know if this helps here or may be related to the issue, but I figured I'd try to add to the conversation.

Before running:
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
DisplayPort-0 disconnected primary (normal left inverted right x axis y axis)
        GAMMA_LUT_SIZE: 4096
                range: (0, -1)
        DEGAMMA_LUT_SIZE: 4096
                range: (0, -1)
        GAMMA_LUT: 0
                range: (0, 65535)
        CTM: 0
        DEGAMMA_LUT: 0
                range: (0, 65535)
        TearFree: auto
                supported: off, on, auto
        vrr_capable: 0
                range: (0, 1)
        max bpc: 8
                range: (8, 16)
        underscan vborder: 0
                range: (0, 128)
        underscan hborder: 0
                range: (0, 128)
        underscan: off
                supported: off, on, auto
        scaling mode: None
                supported: None, Full, Center, Full aspect
        link-status: Good
                supported: Good, Bad
        CONNECTOR_ID: 59
                supported: 59
        non-desktop: 0
                range: (0, 1)

During program run:
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
DisplayPort-0 disconnected primary (normal left inverted right x axis y axis)
        EDID:
                00ffffffffffff003ed2120000000000
                011d0104a50000000e00000000000000
<PHONE_NUMBER>0001010101010101010101
<PHONE_NUMBER>0145dfa0385100eea5d20c
                f10c000000000010000000ff0031574d
<PHONE_NUMBER>4a4a393237000000fc0052
<PHONE_NUMBER>0a20202020202000000010
<PHONE_NUMBER>0000000000000000000025
        GAMMA_LUT_SIZE: 4096
                range: (0, -1)
        DEGAMMA_LUT_SIZE: 4096
                range: (0, -1)
        GAMMA_LUT: 0
                range: (0, 65535)
        CTM: 0
        DEGAMMA_LUT: 0
                range: (0, 65535)
        TearFree: auto
                supported: off, on, auto
        vrr_capable: 0
                range: (0, 1)
        max bpc: 8
                range: (8, 16)
        underscan vborder: 0
                range: (0, 128)
        underscan hborder: 0
                range: (0, 128)
        underscan: off
                supported: off, on, auto
        scaling mode: None
                supported: None, Full, Center, Full aspect
        link-status: Good
                supported: Good, Bad
        CONNECTOR_ID: 59
                supported: 59
        non-desktop: 1
                range: (0, 1)
   1440x2560     80.00 +
   1280x1024     80.00
   1440x900      80.00
   1280x800      80.00
   1280x720      80.00
   1024x768      80.00
   800x600       80.00
   640x480       80.00

I'm having the same (or similiar?) issue. Along with SteamVR I also tried running the opengl example. Both generated the proper image to be displayed for the rift s with proper tracking but only displayed it in a window and not on the rift. I also use an rx 5700 so maybe its related to that?

I'm having the same (or similiar?) issue. Along with SteamVR I also tried running the opengl example. Both generated the proper image to be displayed for the rift s with proper tracking but only displayed it in a window and not on the rift. I also use an rx 5700 so maybe its related to that?

Hi, Some notes, OpenHMD doesn’t support direct mode, so If you only want use OpenHMD, you must enable your Rift S as an Additional Monitor
But this is not recommendable, Because monado has support for Direct Mode and has compatibility with OpenHMD Devices (but lacks support for controllers).
So, the ideal use case is use monado with their SteamVR Driver as compositor and use OpenHMD for Driver handling.

So, the ideal use case is use monado (with their SteamVR Driver because by default only supports OpenXR Programs/Games) as compositor and use OpenHMD for Driver handling.

Or use SteamVR-OpenHMD (https://github.com/ChristophHaag/SteamVR-OpenHMD) To get direct mode and full controller support with OpenHMD drivers.

So, the ideal use case is use monado (with their SteamVR Driver because by default only supports OpenXR Programs/Games) as compositor and use OpenHMD for Driver handling.

Or use SteamVR-OpenHMD (https://github.com/ChristophHaag/SteamVR-OpenHMD) To get direct mode and full controller support with OpenHMD drivers.

Wait, when was enabled the DirectMode in SteamVR-OpenHMD?
Last time, I tried did not work from any form. Maybe It’s because rotated display, but that It’s not handled by the OpenHMD driver so doesn’t show anything. (And I tried several times, I only could make works with extended mode)


Expose EditorUndoRedoManager's clear_history()

Exposes clear_history() method (I also swapped its arguments, the new order makes more sense).
Closes https://github.com/godotengine/godot-proposals/issues/2153
I also exposed EditorUndoRedoManager via EditorInterface, to make it accessible to EditorScripts.

I just realized we have EditorInterface.mark_scene_as_unsaved() 🙃
The new method is more general, but it makes the old one redundant.

Clearing history is necessary for operations that do changes to the scene which you can't undo them. Also exposing EditorUndoRedoManager is needed for things like #78355 (currently you need an EditorPlugin to use undoredo)

Thanks!


Invalid Literal value for 200 OK status code

rel: https://github.com/sbdchd/djangorestframework-types/blob/d5aa9a86331b02bcc9bfc7a5d0baaa0f439f6c14/typings/rest_framework/status.pyi#L11

Whoops!

Can you close this issue? Looks like it was fixed.

You're right. Thanks


All FilteringContainer props' types are required

Hi @diogofcunha! I started using your library, but came across the following issue: FilteringContainerProps interface in index.d.ts file has all props set as required, despite some of them are marked as optional here https://diogofcunha.github.io/react-virtualized-tree/#/docs/filtering. Is it a bug?

Hello Salazar.
They are wrong, can you please open a pr to fix it? Otherwise I'll do it in the next few days

Hi @Salasar.
Thanks for reporting this issue.
This is fixed and was released as part of 2.3.2

@diogofcunha sorry, I didn't have time to fix it on my own. Thank you for the fix!


Evaluation of Fine-tuned model with Adalomo

As you mentioned in the paper, you try to evaluate the instruction fine-tuned model on MMLU, BBH, GSM8K, HumanEval, AlpacaFarm ... May I ask the how to evaluate the model on these datasets and reproduce the results on the paper.
Best regards,
Lucas

Hi, you can refer to the Evaluation section of adalomo/README.md.


mmdet.apis error

I have installed mmdet by command line'pip list '.It shows mmdet is there.But i have received an error called 'mmskeleton.utils.third_party attempted to use a functionality that requires module mmdet.apis, but it couldn't be loaded'.

Two months ago, everything was working fine for me. But I am facing the same issue as you.

there is a problem in the requirement they say you need "pytorch 1.2.0", but when you run :
python setup.py develop --mmdet
they ask for pytorch 1.3.0
error: torch 1.2.0 is installed but torch>=1.3 is required by {'mmdet'}

I solved it, I uninstalled mmdetection and reinstalled through
python setup.py develop --mmdet

Sorry that I fail once again.And my mmdetection version was 1.0.Is there something wrong with this？

I solved it, I uninstalled mmdetection and reinstalled through
python setup.py develop --mmdet

Did you install mmdetection earlier manually ? I have pytorch 1.2 and installed mmdetection perfectly, but having the same issue. Which mmdetection did you uninstall ?

I solved it, I uninstalled mmdetection and reinstalled through
python setup.py develop --mmdet

Did you install mmdetection earlier manually ? I have pytorch 1.2 and installed mmdetection perfectly, but having the same issue. Which mmdetection did you uninstall ?

I have succeeded!By python setup.py development --mmdet.Before that I installed mmdetection manually but failed.I don't know why installation failed.

Can you specify your PyTorch and torchvision versions?

Can you specify your PyTorch and torchvision versions?
I think only mmcv version matters.Others following the editors.My mmcv version is 0.4.3

Can you specify your PyTorch and torchvision versions?
I think only mmcv version matters.Others following the editors.My mmcv version is 0.4.3

Thanks a lot. It worked!!


Switch to https

We also need to update the DC.

@alexeykazakov Do we want to add a private key and certificate like mentioned here https://keycloak.gitbooks.io/documentation/server_installation/topics/network/https.html ?

@alexeykazakov Also, we might want to first move all the endpoints to https before closing port 8080. It is something we can do once everybody moved, no ?
EXPOSE 8080
EXPOSE 8443

then we close 8080

I'm not sure if it makes sense to expose both ports. It's matter of routs in osd two what ports requests will be routed, right? And if 8443 will be used then sso.osio.io will be mapped to :8433 in container anyway, or I'm missing something?

@alexeykazakov 8433 ?
I am thinking about it, there is a current redirection so it could work but we need to change the DC once the container is re-deployed.

I don't know why my fingers keep typing 8433 instead of 8443 ;)
Yes, we need to rebuild the container with this PR merged + apply DC changes. And after that if someone still hardcoding http://sso. URLs it will fail I guess.

But without exposing 8443 and changing DC the Keycloak will always use http in URL Redirects when calling OSO, GitHub, RHD etc.

Don't need it anymore. Replaced by https://github.com/almighty/keycloak/pull/39


Documentation Page Not Found

The URL of documentation in the Quick Start 5th point is broken.

Thanks. I fixed it.


Time To First Byte (TTFB)

Hi,
I need to measure video's load latency (i.e., Time To First Byte delay) so I was wondering if there is any API that I could use to get it. If there is not such an API is there a straightforward solution to measure this parameter?

I think there are basically 3 things to consider when thinking about video load time:

Time spent in JavaScript (mostly negligible unless you're doing something crazy)
Time spent in browser native code (media stack init and license install could take time)
Time spent in the network (requests for manifest, license, certificate, segments)

(3) is almost certainly the most expensive.
If you just want to measure the time it takes for your video to start, listen to the video element playing event.
If you want more detailed information about networking, you could take a look at the Performance API:
https://developer.mozilla.org/en-US/docs/Web/API/Performance

One feature we have planned for the future is Google Analytics support, which will log video performance diagnostics. Including, among other things, load latency.
No guarantee about when that will come out, though, so for now it'll probably be best to listen to the playing event as Chris suggested.

I am looking forward to seeing this feature in the next releases. Thanks for the update, though.

Just to clarify, is unload latency a good estimation of TTFB?

Do you mean loadLatency, like we measure in Player.getStats?
Technically speaking, our loadLatency is a measurement of how long it takes from the call to Player.load to when the media element has buffered up to the playhead. So it won't happen until the entire first segment has downloaded, at least. There's also going to be some time spent decoding the segment, but usually that's pretty negligible (unless, perhaps, you are using some codec that doesn't have hardware support yet, like AV1).
So the main issue is going to be how long your segments are. The longer they are, the further loadLatency will be from TTFB.

In Shaka Player v2.4.5, player.js includes the following line:
shaka.log.debug('Unload latency:', (Date.now() - startTime) / 1000);
I am actually talking about this metric, what is this?

Oh, I see. You are talking about the "Unload latency" log we removed in v2.5.
That was a measure of how long it took to unload the old asset (i.e. stop playing it), when you switched what asset you were playing.
That log was removed during some refactoring in how we handle loading and unloading assets; we didn't keep it, because we were pretty sure nobody cared about that particular statistic to begin with.


Access bulk edit on render

Related Issue
Fixes #104
Description
Upon paging and bulk editing, the newly edited values will be shown instead of the base value of the cell.

@oze4

@Domino987 I say if you feel comfortable pushing any code, go for it my friend. You should have proper access for that (I don't want to be a bottleneck).

@oze4 I do but I still don't want to just push code without some kind of checks. So it won't be like the stuff mbrn did .

You are greatly appreciate.  Let's get this take off

@Domino987 that makes sense, I see what you mean now. I feel bad for just pushing code, without your buyoff, like I have in the past.  I apologize. I will no longer push any code wo your buyoff.
You too my friend, you are appreciated greatly as well!  :)

@oze4 no that's not a problem. Pushing code. Pls do. I just want some kind of feedback if I missed anything.  Always waiting would just create a new bottle neck.


"High GPU usage leads to NaN values in the encoder output of the T5 model (float16).

System Info
GPU: NVIDIA A100
TensorRT-LLM version 0.9.0.dev2024031900
Who can help?
@symphonylyh @byshiue
Information

[X] The official example scripts
[X] My own modified scripts

Tasks

[X] An officially supported task in the examples folder (such as GLUE/SQuAD, ...)
[X] My own task or dataset (give details below)

Reproduction
We use files from the example folder to transform the T5 model.

Using float32 type:

GPU initial usage is 0%, model inference works correctly, and the inference results are accurate.
GPU initial usage is 100%, model inference works normally.

Using float16 type:

GPU initial usage is 0%, model inference works correctly, and the inference results are accurate.
GPU initial usage is 100%, model inference results in abnormalities (encoder outputs NaN values).

We truncated the model output. Why does different GPU usage rates lead to overflow in the model output? This is an interesting question.
Expected behavior
Using float16 type, the initial utilization of the GPU should not result in overflow of the model's output.
actual behavior
However, in practice, there is a discrepancy between the experimental results and expectations.
additional notes
We believe this might be a bug.

Could you share the end to end reproduced steps?

Hi,
We had kind of similar issue, for looping and sending many times the same input data to stress test the GPU.
It got us some NaN after hundred of thousands of inference (again same data all the time, and synchronizing everywhere it made sense)! Model follows Roberta architecture.
We noticed that another Roberta based architecture, compiled the same way had not such issue, so we thought it s weight related. We switched to BF16, keeping the fp16 optimized kernel for flash attention, during build trt complains a lot that some nodes gets bf16 and fp16 inputs (I guess to let us know it adds some casting to many places), still e2e perf are almost the same, output precision is slightly lower (compared to fp32 AMP reference model), but no more issue, and we stress tested it quite a lot since then.
May be something to test @0xd8b ?

Could you share the end to end reproduced steps?
Also, how to make GPU initial usage is 100%? Running another program at the same time?

我们使用example/enc_dec/中的文件对t5模型进行转换，转换的数据类型为float16(batch_size=1, strongly_typed=True, use_bert_plugin=True)，其他没有大的修改，在高的gpu利用率中encoder输出会为Nan的情况。

We converted the T5 model using the files in example/enc_dec/. The data type used for conversion is float16 (batch_size=1, strongly_typed=True, use_bert_plugin=True). Additionally, we truncated the output of hidden_states. However, during high GPU utilization, the encoder output becomes NaN.
Yes, we concurrently ran another model inference program to achieve 100% GPU utilization, yet only 1/10 of the total memory was utilized.
An intriguing observation is that NaN occurrences do not happen during TRT conversion with float32 data types. Additionally, in float16 types, if the GPU's initial utilization is 0%, inference proceeds normally. From this observation, it seems that the issue is not solely related to data overflow.

@pommedeterresautee thans for your reply!  Are you referring to the conversion of the model using the bfloat16 data type

Yes, The conversion to bf16 is done during conversion step. We had to modify the part where it binds weights to trt engine. Have a check to _utils of trt lib, there are some useful  stuff for bf16.

Fwiw back in the time I wrote a bunch of custom triton (language not server) kernels and T5 weights were super hard to manage in fp16, largest flavors NaN from time to time depending of the input. It's a long time i didn't touch it, but from what I barely remember Google trained it in bf16. I know at first view it's not related to gpu occupation but may be something to keep in mind.

@pommedeterresautee Ok, thanks for the suggestion, I will give it a try. However, I'm still curious as to why the model (float16 type) works fine at low gpu usage.

We attempted to convert the model to bfloat16 and conduct inference, yet the issue persists even under high GPU utilization. It seems that there's a problem occurring in the computation of the RMSnorm layer."

The issue is also caused by the encoder_input_length problem described in https://github.com/NVIDIA/TensorRT-LLM/issues/1847. This issue can be closed.


Map doesn't load on IE

I get a blank page on IE while the map renders without issues on other browsers. I'm using the latest version of the react-simple-maps package. I already check and the following issue https://github.com/zcreativelabs/react-simple-maps/issues/37 but still shows a blank page and the following error on the console:
SCRIPT1002: Syntax error
Unhandled promise rejection SyntaxError: Syntax error
Any help would be appreciated @zimrick.

why want support to IE in 2021?

I understand, but IE support is required for one of my projects until it's dead. Any help, an idea on that would be appreciated.


Start project API

The project needs a place to store all the data necessary. A couple starting data points would be:

civ names
civ logos

Then it can expand from there to include things civ info panel, strategic play (e.g. archers, knights, navy, etc). Ideally the data store would be an API that can be queried by the app instead of hardcoded.

https://github.com/amrtgaber/aoe2-data-api


[Settings; Plugin manager] Improve visibility of warnings when plugin properties are collapsed

With the new settings ux (#12470) we have switched to a new settings ux and updated the styling.

Description of the new feature / enhancement
In some cases we show warnings (not accessible, incorrect activation command) in the plugin settings. On the old ux they were visibel without expanding the plugin settings. But on the new ux they are only visibel in expanded state.
Old ux

New ux

Suggested improvement
We should add an warning icon with the tooltip text "Incorrect setting(s) detected" to the expander header. The icon should be visibel whenever a plugin has one or more incorrect settings.

Scenario when this would be used?
Seeing incorrect configured plugins without expanding each plugin`s settings.
Supporting information
No response

@niels9001, can you please fix this before release. Thanks.

Resolved with the release of v0.45.


Optimize queries in migration order 0158_migrate_base_shipping_price_amount

Port of https://github.com/saleor/saleor/pull/11910

Impact

[ ] New migrations
[ ] New/Updated API fields or mutations
[ ] Deprecated API fields or mutations
[ ] Removed API types, fields, or mutations
[ ] Documentation needs to be updated

Pull Request Checklist

[ ] Privileged queries and mutations are guarded by proper permission checks
[ ] Database queries are optimized and the number of queries is constant
[ ] Database migration files are up to date
[ ] The changes are tested
[ ] GraphQL schema and type definitions are up to date
[ ] Changes are mentioned in the changelog

Task linked: CLOUD-2503 Optimize order.0158_migrate_base_shipping_price_amount [17:03]


Snake case naming strategy not applied in queries

NEST/Elasticsearch.Net version: 6.8.3
Elasticsearch version: 6.7.1
Description of the problem including expected versus actual behavior:
Match query over field is serialized in camelCase when SnakeCaseNamingStrategy specified (following: https://github.com/elastic/elasticsearch-net/issues/3422).
Steps to reproduce:

Set up docker-compose.yml:

version: '3.7'
services:

    elasticsearch:
        image: docker.elastic.co/elasticsearch/elasticsearch:6.7.1
        restart: always
        ports:
            - 9200:9200
        environment:
            - "ES_JAVA_OPTS=-Xms2048m -Xmx2048m"

Create a console app with dotnet new console
Add packages to follow this csproj:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp2.2</TargetFramework>
    <LangVersion>latest</LangVersion>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Elasticsearch.NET" Version="6.8.3" />
    <PackageReference Include="NEST" Version="6.8.3" />
    <PackageReference Include="NEST.JsonNetSerializer" Version="6.8.3" />
    <PackageReference Include="Newtonsoft.Json" Version="12.0.2" />
  </ItemGroup>

</Project>

Prepare the Program.cs following:

    public class Person
    {
        public int Id { get; set; }
        public string FirstName { get; set; }
        public string LastName { get; set; }
    }

    class Program
    {
        static async Task Main(string[] args)
        {
            var pool = new SingleNodeConnectionPool(new Uri("http://localhost:9200"));
            var connectionSettings = new ConnectionSettings(pool, (builtin, settings) =>
                new JsonNetSerializer(builtin, settings,
                    modifyContractResolver: c => c.NamingStrategy = new SnakeCaseNamingStrategy()
                )
            );
            connectionSettings.DefaultMappingFor<Person>(m => m.IndexName("person").TypeName("_doc"));
            connectionSettings.DisableDirectStreaming()
                    .OnRequestCompleted(details =>
                    {
                        Console.WriteLine(details.DebugInformation);
                    })
                    .PrettyJson();

            var client = new ElasticClient(connectionSettings);

            var person = new Person
            {
                Id = 1,
                FirstName = "John",
                LastName = "Smith"
            };

            Console.WriteLine("indexing");
            var indexResponse = await client.IndexDocumentAsync(person);
            Console.WriteLine($"indexing valid: {indexResponse.IsValid}");
            var response = await client.SearchAsync<Person>(s => s.From(0).Take(10).Query(q => q.Match(m => m.Query("John").Field(f => f.FirstName))));

            Console.WriteLine($"response: Count {response.Documents.Count}");

            await Task.Delay(2000);
        }
    }

docker-compose up
dotnet restore|build|run (after the ES is started)

Provide ConnectionSettings (if relevant):
            var connectionSettings = new ConnectionSettings(pool, (builtin, settings) =>
                new JsonNetSerializer(builtin, settings,
                    modifyContractResolver: c => c.NamingStrategy = new SnakeCaseNamingStrategy()
                )
            );
            connectionSettings.DefaultMappingFor<Person>(m => m.IndexName("person").TypeName("_doc"));
            connectionSettings.DisableDirectStreaming()
                    .OnRequestCompleted(details =>
                    {
                        Console.WriteLine(details.DebugInformation);
                    })
                    .PrettyJson();

Provide DebugInformation (if relevant):

Indexing (which is fine):

Successful low level call on PUT: /person/_doc/1?pretty=true
# Server indicated deprecations:
- 299 Elasticsearch-6.7.1-2f32220 "the default number of shards will change from [5] to [1] in 7.0.0; if you wish to continue using the default of [5] shards, you must manage this on the create index request or with an index template"
# Audit trail of this API call:
 - [1] HealthyResponse: Node: http://localhost:9200/ Took: 00:00:02.8506221
# Request:
{
  "id": 1,
  "first_name": "John",
  "last_name": "Smith"
}
# Response:
{
  "_index" : "person",
  "_type" : "_doc",
  "_id" : "1",
  "_version" : 1,
  "result" : "created",
  "_shards" : {
    "total" : 2,
    "successful" : 1,
    "failed" : 0
  },
  "_seq_no" : 0,
  "_primary_term" : 1
}

Search (which has a camelCase serialized field name):

Successful low level call on POST: /person/_doc/_search?pretty=true&typed_keys=true
# Audit trail of this API call:
 - [1] HealthyResponse: Node: http://localhost:9200/ Took: 00:00:00.4519862
# Request:
{
  "from": 0,
  "query": {
    "match": {
      "firstName": {
        "query": "John"
      }
    }
  },
  "size": 10
}
# Response:
{
  "took" : 119,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : 0,
    "max_score" : null,
    "hits" : [ ]
  }
}

Note that changing the query to:
            var response = await client.SearchAsync<Person>(s => s.From(0).Take(10).Query(q => q.Match(m => m.Query("John").Field("first_name"))));

is a workaround to the issue.
Describe the feature:
Serialize the type property names according to the specified NamingStrategy in field descriptors.

Thanks for opening @rpawlaszek.
There's a subtlety here. The JsonNetSerializer naming strategy is used to serialize your POCOs that are used to represent documents in Elasticsearch. The fields to target in queries are encapsulated in the Field type though, which is serialized by the internal request/response serializer, and not by the source serializer i.e. JsonNetSerializer.
The casing for how fields are serialized can be changed globally with DefaultFieldNameInferrer on ConnectionSettings, along with some other ways:
var settings = new ConnectionSettings(pool)
	.DefaultFieldNameInferrer(s =>
	{
                // your casing implementation
		var sb = new StringBuilder(s.Length);
		for (int i = 0; i < s.Length; i++)
		{
			var c = s[i];

			if (Char.IsUpper(c))
			{
				if (i == 0)
				{
					sb.Append(char.ToLowerInvariant(c));
				}
				else if (char.IsUpper(s[i - 1]))
				{
					sb.Append(char.ToLowerInvariant(c));
				}
				else
				{
					sb.Append("_");
					sb.Append(char.ToLowerInvariant(c));
				}
			}
			else
			{
				sb.Append(c);
			}
		}

		return sb.ToString();
	});

var client = new ElasticClient(settings);

Thanks @russcam for the answer. This solution works. This obviously is not a bug, as the approach in the client provides the functionality requested.
Could I ask you to explain (or point me to the documentation) why this distinction in serialization exists?

Could I ask you to explain (or point me to the documentation) why this distinction in serialization exists?

The distinction exists because NEST is always responsible for serializing Field types. A Field type can be represented as

a string
a PropertyInfo
a lambda expression

And NEST handles resolving all of these to a string (the first one is easy 😄 ) that indicates the field to target.

Ok, this I understand. I do not understand the decoupling. Does it mean that a Field as understood by ES can mean something else than the data properties on an index?
What would be an example of NamingStrategy and DefaultFieldNameInferrer being different but required by NEST?

NamingStrategy is a concept of a specific IElasticsearchSerializer implementation, JsonNetSerializer, based on Json.NET. DefaultFieldNameInferrer is the general seam to affect how Field are serialized by convention.
The current field inference/serialization implementation does not rely on the IElasticsearchSerializer configured. Looking at the commit in which DefaultFieldNameInferrer was introduced in 2013 (https://github.com/elastic/elasticsearch-net/commit/cadcaa986539b45faf1de58361a28a6bbc44bb22), I think it was originally introduced to affect dictionary keys, in addition to type properties. At that time, I don't believe Json.NET exposed a way to affect how dictionary keys are serialized.
Perhaps DefaultFieldNameInferrer could rely on IElasticsearchSerializer in the future to serialize Field, through an interface on the method.


Would not login to instagram (if even used for the first time) error

So I've been getting this error while trying to run this on mac (not sure if it has something to do with it):
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/dist-packages/instagrapi/mixins/private.py", line 205, in _send_private_request
    response.raise_for_status()
  File "/usr/local/lib/python3.8/dist-packages/requests/models.py", line 943, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 400 Client Error: Bad Request for url: https://i.instagram.com/api/v1/accounts/login/

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "main.py", line 432, in main
    insta_bot.login(settings['insta_username'], settings['insta_password'])
  File "/usr/local/lib/python3.8/dist-packages/instagrapi/mixins/auth.py", line 342, in login
    if self.private_request("accounts/login/", data, login=True):
  File "/usr/local/lib/python3.8/dist-packages/instagrapi/mixins/private.py", line 338, in private_request
    raise e
  File "/usr/local/lib/python3.8/dist-packages/instagrapi/mixins/private.py", line 325, in private_request
    self._send_private_request(endpoint, **kwargs)
  File "/usr/local/lib/python3.8/dist-packages/instagrapi/mixins/private.py", line 245, in _send_private_request
    raise SentryBlock(**last_json)
instagrapi.exceptions.SentryBlock: Sorry, there was a problem with your request.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.8/dist-packages/instagrapi/mixins/private.py", line 205, in _send_private_request
    response.raise_for_status()
  File "/usr/local/lib/python3.8/dist-packages/requests/models.py", line 943, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 400 Client Error: Bad Request for url: https://i.instagram.com/api/v1/accounts/login/

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "main.py", line 463, in <module>
    main()
  File "main.py", line 434, in main
    insta_bot.relogin()
  File "/usr/local/lib/python3.8/dist-packages/instagrapi/mixins/auth.py", line 357, in relogin
    return self.login(self.username, self.password, relogin=True)
  File "/usr/local/lib/python3.8/dist-packages/instagrapi/mixins/auth.py", line 342, in login
    if self.private_request("accounts/login/", data, login=True):
  File "/usr/local/lib/python3.8/dist-packages/instagrapi/mixins/private.py", line 338, in private_request
    raise e
  File "/usr/local/lib/python3.8/dist-packages/instagrapi/mixins/private.py", line 325, in private_request
    self._send_private_request(endpoint, **kwargs)
  File "/usr/local/lib/python3.8/dist-packages/instagrapi/mixins/private.py", line 245, in _send_private_request
    raise SentryBlock(**last_json)
instagrapi.exceptions.SentryBlock: Sorry, there was a problem with your request.

@JawkeRz Instagram didn't like your IP, SentryBlock is IP blocking

@JawkeRz Instagram didn't like your IP, SentryBlock is IP blocking


Remove Override Operators

Wanted to start a discussion around this. I think we should remove the overrides present here, as they are effectively the same, and it doesn't make sense to manage them in two gems. Linked: Add Inner Product Distance to PGVector by mtrefilek · Pull Request #578 · patterns-ai-core/langchainrb

@mtrefilek Makes sense to me!

@mtrefilek I would upmerge this PR, I fixed the linter error in main.

@mtrefilek I would upmerge this PR, I fixed the linter error in main.

Thanks, just pushed up based off the new main!


linux-raspberrypi: Update to 5.15.28

The srcrev used here is invalid:
https://github.com/raspberrypi/linux/commit/ab46d8de9f2406eb8e4ee0bd0b1b093cef59a1de
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Will be fixed in https://github.com/agherzan/meta-raspberrypi/pull/1039/files


Add 5* series for AMD Ryzen Threadripper CPUs

A single list is here currently: https://www.amd.com/en/processors/ryzen-threadripper-pro
Individual CPUs can be found if desired: https://www.amd.com/en/product/11791
Also added Intel Gold 6144: https://www.intel.com/content/www/us/en/products/sku/124943/intel-xeon-gold-6144-processor-24-75m-cache-3-50-ghz/specifications.html

Thank you for this contribution !


SonarQube/SonarCloud overview of projects

Summary
Now there is SonarQube plugin that proxies results of last analysis for the service if there is anotation.
We are looking for a way how to see overview of results of multiple services. It may integrate to existing plugin, it may be a new plugin.
Project website (if applicable)
https://github.com/backstage/backstage/tree/master/plugins/sonarqube
Context
Now you need to go to the detail of each service to see the SonarQube analysis results. It is not easy to see "your" services or all services results.
Now..there is something similar already in the SonarQube portal or sonarcloud), i.e.

So it is not ideal to duplicate such overview in the Backstage "as is" but maybe add some more context to it. E.g. integrate it somehow also with the search of backstage? With the services, tags and the other meta data? Show only "my" services? Show only services from service catalog?
WDYT?

We already did something similar for the FOSSA plugin. While I think duplicating just the view seem to be less interesting, having a way to see you my owned stuff seems to be appealing.

Or aggregated metrics rolled up per owner group might also be interesting.

Is this something you want to contribute @jvilimek? :pray:

Is this something you want to contribute @jvilimek? 🙏

well..I am personally quite newbie in js/typescript/react so probably not. But I can ask one of our internal team to help as this is something we are really looking for...


cant find class BackgroundProcess

Type: Error
Message: Class 'Cocur\BackgroundProcess\BackgroundProcess' not found
Filename: /home/psmmercuryc/public_html/PHP-LiveStreaming-Library-master/application/helpers/ffmpeg_helper.php
Line Number: 61
is there any solution

Have you run composer, Cocur Library is required for the script to work.
It has already been added to the composer.json file.


SteamVR plugin won't work with 64-bit vrserver

SteamVR just updated today (7/5/2016) making the 64-bit vrserver the default. The problem with this is that I'm not currently building 64-bit version of the plugin yet, though I'm going to fix that soon.
In the mean time do the following gross work around:

Go to: C:\Program Files (x86)\Steam\steamapps\common\SteamVR\bin (Or where ever your SteamVR folder lives)
Rename the "win64" folder to "win64_original"
Duplicate the "win32" folder to "win64"

This tricks SteamVR into thinking it's running the 64-bit server

This works for getting PSMoveService running again, but for some reason, it seems to cause a problem with my DK2. Steam gives me an error message that looks like this.

It appears the DK2 camera isn't recognized with the 32-bit version. I can't remember off the top of my head, but it wouldn't surprise me if Oculus required 64-bit only.

Dang. Well for what it's worth I'm working on making a 64-bit build of the plugin now. Should be ready in a few hours.

@HipsterSloth God speed, good sir. We all appreciate the hard work. If it helps motivate you at all, PSMoveService has been pretty amazing up to this point. For all the super expensive VR setups out there, I believe these types of projects will be the true building blocks for wider accessibility.

Fixed in Pull request #102 (Adding support for 64-bit builds). Created a new release: https://github.com/cboulay/PSMoveService/releases/tag/v0.9-alpha4.4


apiDoc added in list

Before creating a pull-request, please check https://github.com/wycats/handlebars.js/blob/master/CONTRIBUTING.md first.
Generally we like to see pull requests that

[x ] Maintain the existing code style
[x] Are focused on a single change (i.e. avoid large refactoring or style adjustments in untouched code if not the primary goal of the pull request)
[x] Have good commit messages
[x] Have tests
[x] Don't significantly decrease the current code coverage (see coverage/lcov-report/index.html)

@nknapp I have added apiDoc in Handlebars in the Wild section. Please have a look.


Set mycelium as true in applications grid_client scripts

Which package/s are you suggesting this feature for?
No response
Is your feature request related to a problem? Please describe
Situation

We want to put forward Mycelium in all TF deployments

see info_grid issue by @xmonader: https://github.com/threefoldtech/info_grid/issues/617

The scripts of applications have mycelium set as false

Describe the solution you'd like
TODO

Set Mycelium as true in applications: https://github.com/threefoldtech/tfgrid-sdk-ts/tree/development/packages/grid_client/scripts/applications

References

Example for casperlabs: https://github.com/threefoldtech/tfgrid-sdk-ts/blob/ae4d8762729aaec21366a9b18ff9e6f811d6632f/packages/grid_client/scripts/applications/casberlabs.ts#L89

Verified, Devnet.
I tried VM and a few solutions, and Mycelium was enabled and I was able to SSH successfully.

Checked the scripts, and mycelium flag was enabled on all of them.


Publish wheel to PyPI that includes binary dependencies

Following up on #64, I'm wondering if there is a way to update our packaging so that users can simply pip install hdfs3 without needing to independently install libhdfs3 using their system package manager. Currently, the pip installation docs include a separate apt-get step, which can definitely be pain depending on your OS and distribution.
There is some information on the Python Packaging Guide about publishing binary extensions, which I think is what we need here, but the docs are incomplete. I also know of a project that bundles a C extension in its package on PyPI, but I don't know if that example is relevant to what we would need to do here.

You probably want https://github.com/pypa/manylinux and https://mail.python.org/mailman/listinfo/wheel-builders

I entirely support this effort and am happy to support in any way (such as by giving push access to PyPI).  However I'm also unlikely to take a lead on this.


Pact Todo Reforms Complete

Every one from the 10+ items on the list has been implemented as requested or otherwise denied after thorough consideration.
Compromises Made:

TC removed from secret room :: replaced w. Pyjama bag
Deathsquad mask in secret room renamed and its armor value removed

Changes Denied:

Cool brown windows next to power :: kept them. They look cool and nobody else has complained about them yet.
Request add power monitors to substation rooms :: No changes because every substation room already has a power monitor.

Complete List

Pipes and doors around cryo fixed.
Meteor shielding improved, but only by a little bit. (as requested)
Spade and Sustenance vendor added to Perma.
Captains room given antique pistol (it's in the locker)
Telecoms room made slightly bigger. (Grog was right on this one. It was very uncomfortable to look at.)
Telecrystals removed from secret room and replaced with something less broken but still fun.
Special mask no longer has armor, but now has a unique name.
Grilles added to bar and salvage.
Added borg recharger to AI room
Added Intellicard to AI room
Added Intercom next to AI (Not 100% if needed, but the requester was kind and made a fair point)
Northeast solars made a little nicer. Will redo southwest solars at a later date should it be needed.

failed check is from you trying to merge directly into master (I guess???), make another PR because I assume something went wrong.

closing this because.... I said it in my previous comment.


Pulseaudio no longer working

Issue description
I'm on nixos-unstable channel, and since I've updated to the latest version, my audio is not working. I'm using xfce4 + i3.
The log is :
Jun 13 16:36:19 hermes systemd[1054]: Starting Sound Service...
Jun 13 16:36:21 hermes systemd[1054]: Started Sound Service.
Jun 13 16:39:58 hermes systemd[1054]: Starting Sound Service...
Jun 13 16:39:58 hermes pulseaudio[2849]: E: [pulseaudio] pid.c: Daemon already running.
Jun 13 16:39:58 hermes pulseaudio[2849]: E: [pulseaudio] main.c: pa_pid_file_create() failed.
Jun 13 16:39:58 hermes systemd[1054]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Jun 13 16:39:58 hermes systemd[1054]: pulseaudio.service: Failed with result 'exit-code'.
Jun 13 16:39:58 hermes systemd[1054]: Failed to start Sound Service.
Jun 13 16:39:58 hermes systemd[1054]: pulseaudio.service: Service RestartSec=500ms expired, scheduling restart.
Jun 13 16:39:58 hermes systemd[1054]: pulseaudio.service: Scheduled restart job, restart counter is at 1.
Jun 13 16:39:58 hermes systemd[1054]: Stopped Sound Service.
Jun 13 16:39:58 hermes systemd[1054]: Starting Sound Service...
Jun 13 16:39:58 hermes pulseaudio[2859]: E: [pulseaudio] pid.c: Daemon already running.
Jun 13 16:39:58 hermes pulseaudio[2859]: E: [pulseaudio] main.c: pa_pid_file_create() failed.
Jun 13 16:39:58 hermes systemd[1054]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Jun 13 16:39:58 hermes systemd[1054]: pulseaudio.service: Failed with result 'exit-code'.
Jun 13 16:39:58 hermes systemd[1054]: Failed to start Sound Service.
Jun 13 16:39:59 hermes systemd[1054]: pulseaudio.service: Service RestartSec=500ms expired, scheduling restart.
Jun 13 16:39:59 hermes systemd[1054]: pulseaudio.service: Scheduled restart job, restart counter is at 2.
Jun 13 16:39:59 hermes systemd[1054]: Stopped Sound Service.
Jun 13 16:39:59 hermes systemd[1054]: Starting Sound Service...
Jun 13 16:39:59 hermes pulseaudio[2860]: E: [pulseaudio] pid.c: Daemon already running.
Jun 13 16:39:59 hermes pulseaudio[2860]: E: [pulseaudio] main.c: pa_pid_file_create() failed.
Jun 13 16:39:59 hermes systemd[1054]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Jun 13 16:39:59 hermes systemd[1054]: pulseaudio.service: Failed with result 'exit-code'.
Jun 13 16:39:59 hermes systemd[1054]: Failed to start Sound Service.
Jun 13 16:40:00 hermes systemd[1054]: pulseaudio.service: Service RestartSec=500ms expired, scheduling restart.
Jun 13 16:40:00 hermes systemd[1054]: pulseaudio.service: Scheduled restart job, restart counter is at 3.
Jun 13 16:40:00 hermes systemd[1054]: Stopped Sound Service.
Jun 13 16:40:00 hermes systemd[1054]: Starting Sound Service...
Jun 13 16:40:00 hermes pulseaudio[2861]: E: [pulseaudio] pid.c: Daemon already running.
Jun 13 16:40:00 hermes pulseaudio[2861]: E: [pulseaudio] main.c: pa_pid_file_create() failed.
Jun 13 16:40:00 hermes systemd[1054]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Jun 13 16:40:00 hermes systemd[1054]: pulseaudio.service: Failed with result 'exit-code'.
Jun 13 16:40:00 hermes systemd[1054]: Failed to start Sound Service.
Jun 13 16:40:01 hermes systemd[1054]: pulseaudio.service: Service RestartSec=500ms expired, scheduling restart.
Jun 13 16:40:01 hermes systemd[1054]: pulseaudio.service: Scheduled restart job, restart counter is at 4.
Jun 13 16:40:01 hermes systemd[1054]: Stopped Sound Service.
Jun 13 16:40:01 hermes systemd[1054]: Starting Sound Service...
Jun 13 16:40:01 hermes pulseaudio[2863]: E: [pulseaudio] pid.c: Daemon already running.
Jun 13 16:40:01 hermes pulseaudio[2863]: E: [pulseaudio] main.c: pa_pid_file_create() failed.
Jun 13 16:40:01 hermes systemd[1054]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Jun 13 16:40:01 hermes systemd[1054]: pulseaudio.service: Failed with result 'exit-code'.
Jun 13 16:40:01 hermes systemd[1054]: Failed to start Sound Service.
Jun 13 16:40:01 hermes systemd[1054]: pulseaudio.service: Service RestartSec=500ms expired, scheduling restart.
Jun 13 16:40:01 hermes systemd[1054]: pulseaudio.service: Scheduled restart job, restart counter is at 5.
Jun 13 16:40:01 hermes systemd[1054]: Stopped Sound Service.
Jun 13 16:40:01 hermes systemd[1054]: pulseaudio.service: Start request repeated too quickly.
Jun 13 16:40:01 hermes systemd[1054]: pulseaudio.service: Failed with result 'exit-code'.
Jun 13 16:40:01 hermes systemd[1054]: Failed to start Sound Service.

If I roll back to the previous generation, it works. Here is the content of my working generation in /boot/loader/entries/:
title NixOS
version Generation 327 NixOS 19.09.git.1dc26c3, Linux Kernel 4.19.48, Built on 2019-06-07
linux /efi/nixos/gs2w3h2bh8ijf64w76i28fdm1b9hll41-linux-4.19.48-bzImage.efi
initrd /efi/nixos/i3yhhq578llzx29ka5gi6qa6hdy0q0s2-initrd-linux-4.19.48-initrd.efi
options systemConfig=/nix/store/fdmmbpw9ddijiyc08v17gfqd08aw84ki-nixos-system-hermes-19.09.git.1dc26c3 init=/nix/store/fdmmbpw9ddijiyc08v17gfqd08aw84ki-nixos-system-hermes-19.09.git.1dc26c3/init loglevel=4
machine-id c7a12c3b528541a288f7aadd812d94ab

Here is the one that is not working:
title NixOS
version Generation 328 NixOS 19.09.git.168d103, Linux Kernel 4.19.48, Built on 2019-06-10
linux /efi/nixos/9q7x71w8hflqal6zdp93anhx0mydqknb-linux-4.19.48-bzImage.efi
initrd /efi/nixos/c0c78izv0g25b31brl40vngj236c2awy-initrd-linux-4.19.48-initrd.efi
options systemConfig=/nix/store/9qpf2chnwf4p3kiw0izkhxgn3v9vh8aq-nixos-system-hermes-19.09.git.168d103 init=/nix/store/9qpf2chnwf4p3kiw0izkhxgn3v9vh8aq-nixos-system-hermes-19.09.git.168d103/init loglevel=4
machine-id c7a12c3b528541a288f7aadd812d94ab

I've upgraded since the to the newest git commit 98e3b90, still the same
Steps to reproduce

Reboot the system based on git commit 168d103
pulseaudio doesn't work
there is no audio whatsoever
the mic doesn't work

Technical details

system: "x86_64-linux"
host os: Linux 4.19.48, NixOS, 19.09.git.1dc26c3 (Loris)
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.2.2
channels(karol): ""
channels(root): ""
nixpkgs: /etc/nixos/nixpkgs

I've found a patch that should fix it: https://github.com/NixOS/nixpkgs/commit/dacc02faa541741c5ed11f6403ebf3fef0a54a32
Closing this issue


JBDS-4399 Include latest JBoss EAP available from developers.redhat.com into DevSuite Installer

Codecov Report

Merging #717 into master will decrease coverage by 0.41%.
The diff coverage is 86.4%.

@@            Coverage Diff             @@
##           master     #717      +/-   ##
==========================================
- Coverage   97.03%   96.62%   -0.42%
==========================================
  Files          29       31       +2
  Lines        2532     2782     +250
  Branches      216      399     +183
==========================================
+ Hits         2457     2688     +231
- Misses         75       80       +5
- Partials        0       14      +14

Impacted Files
Coverage Δ

browser/services/platform.js
95.89% <0%> (-4.11%)
:arrow_down:

browser/pages/confirm/controller.js
78.77% <100%> (-3.05%)
:arrow_down:

browser/services/componentLoader.js
98.78% <100%> (-1.22%)
:arrow_down:

browser/model/jbosseap-autoinstall.js
100% <100%> (ø)

browser/model/devstudio.js
97.4% <33.33%> (-2.6%)
:arrow_down:

browser/services/data.js
98.56% <80%> (-0.45%)
:arrow_down:

browser/model/jbosseap.js
93.47% <93.02%> (ø)

browser/main.js
100% <0%> (ø)
:arrow_up:

... and 25 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 4338b14...7eb67be. Read the comment docs.

One more question - is it necessary to create 7 shortcuts for EAP?
If we are to keep them, we should probably make the uninstaller clean them up (just like with devstudio).

test this

test this

test this

test this

test this

test this

Replaced with https://github.com/redhat-developer-tooling/developer-platform-install/pull/723


doc: Documentation issue in 'kernel/services/polling'

Describe the bug
The documentation is misleading. It reads :  "... it is possible for more than one to be fulfilled when k_poll() returns, ..."
But the example is not implemented accordingly:
void do_stuff(void)
{
    for(;;) {
        rc = k_poll(events, ARRAY_SIZE(events), K_FOREVER);
        if (events[0].state == K_POLL_STATE_SEM_AVAILABLE) {
            k_sem_take(events[0].sem, 0);
        } else if (events[1].state == K_POLL_STATE_FIFO_DATA_AVAILABLE) {
            data = k_fifo_get(events[1].fifo, 0);
            // handle data
        } else if (events[2].state == K_POLL_STATE_MSGQ_DATA_AVAILABLE) {
            ret = k_msgq_get(events[2].msgq, buf, K_NO_WAIT);
            // handle data
        } else if (events[3].state == K_POLL_STATE_PIPE_DATA_AVAILABLE) {
            ret = k_pipe_get(events[3].pipe, buf, bytes_to_read, &bytes_read, min_xfer, K_NO_WAIT);
            // handle data
        }
        events[0].state = K_POLL_STATE_NOT_READY;
        events[1].state = K_POLL_STATE_NOT_READY;
        events[2].state = K_POLL_STATE_NOT_READY;
        events[3].state = K_POLL_STATE_NOT_READY;
    }
}

The if-else-chain encodes the assumption, that only one event can be active at a time and then all states are reset. If an event lower in the if else chain is active at the same time with another, then it is never handled and the state reset nonetheless.
Suggestion: Adjust ALL examples accordingly and add a note, why it is not an if-else-chain:
void do_stuff(void)
{
    for(;;) {
        rc = k_poll(events, ARRAY_SIZE(events), K_FOREVER);
        if (events[0].state == K_POLL_STATE_SEM_AVAILABLE) {
            k_sem_take(events[0].sem, 0);
        }
        if (events[1].state == K_POLL_STATE_FIFO_DATA_AVAILABLE) {
            data = k_fifo_get(events[1].fifo, 0);
            // handle data
        }
        if (events[2].state == K_POLL_STATE_MSGQ_DATA_AVAILABLE) {
            ret = k_msgq_get(events[2].msgq, buf, K_NO_WAIT);
            // handle data
        }
        if (events[3].state == K_POLL_STATE_PIPE_DATA_AVAILABLE) {
            ret = k_pipe_get(events[3].pipe, buf, bytes_to_read, &bytes_read, min_xfer, K_NO_WAIT);
            // handle data
        }
        events[0].state = K_POLL_STATE_NOT_READY;
        events[1].state = K_POLL_STATE_NOT_READY;
        events[2].state = K_POLL_STATE_NOT_READY;
        events[3].state = K_POLL_STATE_NOT_READY;
    }
}

Environment

Page: kernel/services/polling
Version: main
SHA-1: 0e830b3f100d1a1e768857450ada8be0db5a7634

Those two examples are semantically equivalent.  It's a loop: if the first if/else chain has two events flagged, it will return synchronously from the next k_poll() call and see it the second time around.  It's idiomatic enough and I wouldn't reject submitted code that worked like this.  In practice truly simultaneous events are rare and apps that care about precedence between them in this way are probably hiding bugs.
That said, I agree that as documentation it's not clearly showing the documented/tested behavior of the call, so the suggested change would make sense to me.

@clamattia Coule you submit a PR for updating the documentation?

Those two examples are semantically equivalent. It's a loop: if the first if/else chain has two events flagged, it will return synchronously from the next k_poll() call

I am not so familiar with the code, so bare with me. But, would not the reseting of the state:
        events[0].state = K_POLL_STATE_NOT_READY;
        events[1].state = K_POLL_STATE_NOT_READY;
        events[2].state = K_POLL_STATE_NOT_READY;
        events[3].state = K_POLL_STATE_NOT_READY;

avoid the synchronous return from the next k_poll-call? If not, how is the kernel supposed to know wether a poll-event was handled or not? So if lets say events[0] and events[1] were active at the same time, only event[0] will be handled but both their state will be set to K_POLL_STATE_NOT_READY before the next call to k_poll. If, as you say, the next call to k_poll will return immediately with events[1], how can they know, that we handled events[0] but not events[1], as both their state was reset?
I would have thought, that the behavior you describe is only possible if the code looks like this, which would probably be fine too (personally, I prefer original proposal):
void do_stuff(void)
{
    for(;;) {
        rc = k_poll(events, ARRAY_SIZE(events), K_FOREVER);
        if (events[0].state == K_POLL_STATE_SEM_AVAILABLE) {
            k_sem_take(events[0].sem, 0);
            events[0].state = K_POLL_STATE_NOT_READY;
        } else if (events[1].state == K_POLL_STATE_FIFO_DATA_AVAILABLE) {
            data = k_fifo_get(events[1].fifo, 0);
            // handle data
            events[1].state = K_POLL_STATE_NOT_READY;
        } else if (events[2].state == K_POLL_STATE_MSGQ_DATA_AVAILABLE) {
            ret = k_msgq_get(events[2].msgq, buf, K_NO_WAIT);
            // handle data
            events[2].state = K_POLL_STATE_NOT_READY;
        } else if (events[3].state == K_POLL_STATE_PIPE_DATA_AVAILABLE) {
            ret = k_pipe_get(events[3].pipe, buf, bytes_to_read, &bytes_read, min_xfer, K_NO_WAIT);
            // handle data
            events[3].state = K_POLL_STATE_NOT_READY;
        }
    }
}

. In practice truly simultaneous events are rare and apps that care about precedence between them in this way are probably hiding bugs.

Agree, but as most developers will take the example code as their starting point, a lot of apps will have bugs (rarely dropping events) in this way.

@clamattia Coule you submit a PR for updating the documentation?

Will try.

Those two examples are semantically equivalent.

I mean to say, to my current understanding (maybe wrong), they are not equivalent as one potentially drops events and the other does not.


Use an ip range instead of looping

I'm unsure why this was not yet implemented this way - I'm ready to be educated today :-)
I tested it on our servers (centos/rhel 7), this worked before I used the puppet-firewalld module, and I was very surprised to find the xml file to be expanded :-)

I've had to apply this fix to our module locally in order to fix 5+ minute boot times for boxes, as the module was creating 200,000+ rules!
It works well for us on CentOS 7, so consider this another vote of interest in getting this merged. :)

@dhoppe would you like us to fix the merge conflicts?

@jovandeginste That would be great.  Thank you very much.

@dhoppe done.


Bump mothership

Description
Changes proposed in this pull request:

bump image from this PR: https://github.com/kyma-incubator/reconciler/pull/351

Related issue(s)

See https://github.com/kyma-incubator/reconciler/issues/309

Bumped here: https://github.com/kyma-project/control-plane/pull/1078


Provide option to enable autoscaler

Maybe it would be possible to add the Hetzner autoscaler: https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/cloudprovider/hetzner/README.md
I will check if I can create a PR for it if it will be welcome.

If it adds separate pools of nodes which are not defined with terraform but they behave (roughly) the same (e.g. labels) why not.
I think the necessary things we already define somewhere else and could be used to create the necessary autoscaler resources.
I'd like it.

I will check if I can create a PR for it if it will be welcome.

Having a Hetzner autoscaler would be awesome!


feat: add typescript typings

This provides a basic level of TypeScript support.

@evanshortiss thanks, I'll try to take a look next week.


Rename AnimatedSize to RawAnimatedSize and then create a new AnimatedSize to wrap RawAnimatedSize

Use case
AnimatedSize bucks the naming convention of "all AnimatedFoo widgets were implicitly animated" -- it takes a vsync parameter.
Proposal
I discussed this with Ian on Discord. He pointed that this is because AnimatedSize is implemented as a render object widget. We should probably rename it RawAnimatedSize and then create a stateful widget called AnimatedSize that wraps it, and knows how to create its own ticker provider.

AnimatedSize no longer takes a vsync (the param is deprecated and ignored; will be removed in a future version of flutter).


[Bug] Problems server-side with shulker/chest customname labels

Hello, this mod's custom name label feature spams NBT query packets to servers (>3500 within a second), this is causing players using this mod to be false kicked/banned. This NBT query packet will only receive a response from the server if the player is OP level 2 or above (https://imgur.com/a/UT1Zitv) So unless the player is an operator they will never receive the data. Could you please disable this feature unless the player is an operator? Thank you. (P.S please be sure when you are sending packets from a fabric mod you are sending valid ones and not sending them too frequently. Every week it seems there is some fabric mod causing trouble with my anti-cheat :p)

Fixed! Curseforge


Absolute paths on Windows don't resolve after mapping

Hi Luca, Thanks for the amazing work!
I'm working on the asset pipeline of our studio, that runs on Windows unfortunately. We would like to build our asset resolution logic around your FileResolver, but it seems to behave strangely in my (corner) case. If this behavior is by design, just let me know!
So my problem is that I would like to map absolute paths to absolute paths, something like this:
X:/project/assets/Something.usd -> X:/project/assets/Something_v3.usd
If I resolve the target directly it resolves correctly:
>>> stage.ResolveIdentifierToEditTarget("X:/project/assets/Something_v3.usd")
x:\project\assets\Something_v3.usd

But if this absolute path comes from a mapping transformation then it does not:
>>> fileResolver_context.GetMappingPairs()
{'X:/project/assets/Something.usd': 'X:/project/assets/Something_v3.usd'}
>>> stage.ResolveIdentifierToEditTarget("X:/project/assets/Something.usd")

The result is empty, as if the target wouldn't exist or something. Maybe I'm wrong but it seems to me that the resolver believes that the result of a mapping transformation must be relative, so it has to be looked up in AR_SEARCH_PATHS. But that's just my assumption.
Again, if it's by design just let me know!
Thanks,
Mate

Hey Mate,
thanks for checking out the repo.
Yes it is by design that only paths not starting with "./","../","/" are mapped via the mapping pairs.
Is there are reason why you'd want absolute paths? The benefit of only mapping paths that are on the search path is mainly speed, as the search path lookup can be skipped for absolute paths.
So while we could add the support, I'd prefer to keep it as is, as this is how the default resolver also does it.
Cheers,
Luca

Hey Luca,
I'm afraid my previous comment wasn't really on the spot. Let me try again.
Our shot building in Houdini is implemented in two custom nodes. One is called USD Writer, which is a wrapped up USD ROP node that detects if the output filename has a version number, and if so, it records the current version in a json file. Our other custom node is called Shot Def, which is a pimped up sublayer node, that reads (and writes) the shot's layers from a json file.
My idea was that I extend the Shot Def node to let it build the mapping pairs from these json files, so any other downstream node referencing a layer could use the versionless names which would resolve to the current published version.
The problem is that if an artist uses an abolute path downstream (possibly because an environment variable resolves to an abolute path) the version resolution doesn't work. In our pipeline it's customary to load an asset like $ASSETS/items/ball.usd for example.
I hope this explanation makes more sense.
Thanks,
M

Hey Luca,
Finally we implemented our pipeline tools with the current design of your File Resolver. During implementation I developed a feeling that my need to resolve everything doesn't fit really well to the current design, so I wouldn't be surprised if you would have some hesitation wanting include this option. Good news is that we are good now, so there is no need to include it if you don't want to. Please free to close this issue.
One other thing, I would like to ask. In Solaris I buid my mapping pairs in a Python Script node and everythong works fine, but after rebuilding the mappings pairs I need to switch to another node and back to flush the USD cache. Simply recooking the downstream nodes do not reflect the changes in the mappings. Do you know a way how I can flush the cache programatically so all downstream nodes are forced to re-resolve and reload the layers?
Thanks for everything,
Mate

Hey,
sorry for the slow response time, I'm currently switching jobs/relocating to another country and haven't had a lot of time for personal projects.
I still plan on adding the feature, some time in the next few months.
Are you refreshing the context as described here Asset Resolver Docs ?
As far as I know,  there is no mechanism to force recook all affected nodes. You'll have to force cook them yourself (node.cook(force=True)).
Cheers,
Luca

No problem, and thank you for your answer!
Yes I'm refreshing the context. Force cooking and reloading the layers doesn't do the trick. The problem is placed much deeper, in the USD library's notorious cache subsystem. It seems that since it doesn't detect or doesn't care about the state change in the resolve context so it doesn't see the need to reload the layers. The ugly workaround is that you put the display flag on a node in a completely different graph (which means a different stage) and switch it back again. Then it re-resolves and reloads everything. (I suppose because of the stage change, but not sure) I thought there may be a way to tell the USD lib to release eveything from its cache, but I had no luck yet in the forums neither.
(By the way if you force recook any upstream node that will (force) recook all downstream nodes from there, since Houdini will mark every downstram node dirty in the DAG.)
Good luck with your new job!
Mate

Hey, I added the absolute path exposing as an opt-in feature on the CachedResolver and FileResolver.
Release: https://github.com/LucaScheller/VFX-UsdAssetResolver/releases/tag/v0.6.6
Docs:

FileResolver: https://lucascheller.github.io/VFX-UsdAssetResolver/resolvers/FileResolver/PythonAPI.html#resolver
CachedResolver: https://lucascheller.github.io/VFX-UsdAssetResolver/resolvers/CachedResolver/overview.html#admonition-pro-tip-1

Let me know if it works!
Cheers,
Luca

Hey,
Thank you very much! Since then, we implemented our pipeline with the original design of the FileResolver. It is now in production, and everybody is pleased with the outcome. Because of this (and for some other reasons) in the near future I won't be able to test the new option unfortunately, but I hope in the next iteration we will be able to give it a go.
Thanks again, your work made this possible for us.
Best regards,
Mate

No worries, I'll close the issue for now. Please re-open it once you have had time to test it and if there are any issues remaining.


Adding the constraints from bolt update to the LP user clear

Pretty much just proposing that we had the constraints used in the bulk update to the LP user clear command so we can set it up to clear all permissions except for certain ones
Proposed behaviour
So it would work like
Lp user clear != Group.admin
So what this would do would remove all the permissions except for the admin group off the player

A nice idea but in my opinion this is a bit too niche for inclusion. Perhaps the web editor can be of some help to achieve this action more swiftly.


vscode.workspace.createFileSystemWatcher doesn't work outside the workspace

VSCode Version: 1.12.2
OS Version: Mac 10.11.6

Steps to Reproduce:

Add code in an extension that does vscode.workspace.createFileSystemWatcher on a directory outside of the workspace and then do onDidCreate/etc.. Refer to the docs that don't mention this limitation: https://code.visualstudio.com/docs/extensionAPI/vscode-api , so maybe it's just a doc issue.

Bug: No error is returned and the creation/etc. callbacks are never hit. I just switched back to fs.watch, which works.

The docs should probably mention that, our file watcher only works within the opened workspace (for now).

I have added a doc comment


fix: Actually catch the error code from MoveFileEx

A user on Zulip reported seeing an error code of "no error" here.

@eric-wieser  Thanks for finding this! Unfortunately, as you surmised, GetLastErrror does not directly map to errno, so some additional conversion is necessary to properly fix this error.


1.9.0-RC7: High CPU Utilization with Producer

Description
When producing messages with Produce function, we are seeing high CPU utilization for librdkafka thread under Process Explorer(screenshots attached below).  This is only first seen with version v1.9.0.  Compared to v1.8.2, the CPU utilization for this thread is increased from <0.01% to around 12%.
How to reproduce

docker-compose.yml
  ---
version: '3'
services:
zookeeper:
  image: confluentinc/cp-zookeeper:7.0.0
  hostname: zookeeper
  container_name: zookeeper
  environment:
    ZOOKEEPER_CLIENT_PORT: 2181
    ZOOKEEPER_TICK_TIME: 2000

broker:
  image: confluentinc/cp-kafka:7.0.0
  container_name: broker
  ports:
    - "9092:9092"
  depends_on:
    - zookeeper
  environment:
    KAFKA_BROKER_ID: 1
    KAFKA_ZOOKEEPER_CONNECT: 'zookeeper:2181'
    KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_INTERNAL:PLAINTEXT
    KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:9092,PLAINTEXT_INTERNAL://broker:29092
    KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
    KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1
    KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1

program.cs
using System;
using Confluent.Kafka;

namespace KafkaNetDemo
{
  public class Program
  {
      public static void Main(string[] args)
      {
          var producerConfig = new ProducerConfig
          {
              BootstrapServers = "localhost:9092",
          };

          using var producer = new ProducerBuilder<string, string>(producerConfig).Build();

          Console.WriteLine("Press c and enter to replicate the issue and q to exit");

          while (Console.ReadKey().KeyChar != 'q')
          {
              for (var i = 0; i < 5; i++)
              {
                  var value = $"test_{i}_{DateTime.Now}";

                  try
                  {
                      producer.Produce("test", new Message<string, string> { Key = "key", Value = value });
                  }
                  catch (Exception e)
                  {
                      Console.WriteLine(e);
                  }
              }
          }
      }
  }
}

v1.9.0-RC7 (CPU Utilization around 12%)

v1.8.2 (CPU Utilization <0.01%)

Checklist
Please provide the following information:

[x] A complete (i.e. we can run it), minimal program demonstrating the problem. No need to supply a project file.
[x] Confluent.Kafka nuget version. 1.9.0-RC7
[x] Apache Kafka version. confluentinc/cp-kafka:7.0.0
[ ] Client configuration.
[x] Operating system. Windows 10 21H2, Windows Server 2016 Standard
[ ] Provide logs (with "debug" : "..." as necessary in configuration).
[ ] Provide broker log excerpts.
[x] Critical issue.

that's not good.
cc: @edenhill

oh, it's probably this: https://github.com/confluentinc/confluent-kafka-dotnet/pull/1774

I was able to reproduce on Windows Server 2019 using your test app, and various variations of it.
I don't see the issue in v1.8.2, but if I update the librdkafka reference in 1.8.2 to 1.9.0-RC10, the issue does reproduce, implying the problem is in librdkafka.
The issue doesn't reproduce if the produce method is never called.
It also doesn't reproduce if the produce method is called only once.
However, CPU immediately shoots to 25% and stays there on my machine after the second produce call.

@mhowlett , thanks for looking into this issue.  This is the same behavior as in my replication steps above.  I also didn't see CPU issue with v1.8.2.  This issue only happened in v1.9.0-RC*

we're looking into it

this PR is the cause: https://github.com/edenhill/librdkafka/commit/c9f9249bc80d59a430ba370b5f497995e2e855db
(looking into it)

Not sure I'm doing this correctly in WinDbg, but the address the profiler marks as a hot spot in v1.9.0-RC7 is the generic thread main loop trampoline:
0:000> ln librdkafka!rd_kafka_error_txn_requires_abort+0x7a70
Browse module
Set bu breakpoint

 [C:\projects\librdkafka\src\tinycthread.c @ 562] (00000001`801031b0)   librdkafka!_thrd_wrapper_function   |  (00000001`80103200)   librdkafka!_tinycthread_tss_cleanup
Exact matches:
    librdkafka!_thrd_wrapper_function (void *)

Which doesn't tell us much

i believe this was resolved by the above PR.


Added logging with levels.

Issue #50: reimplement logging.

Initialize it by setting the logging level you want displayed.
Create Log outputs with a level for when it should be displayed.
Set file output.

I didn't write any logging in the copying part since that will be affected by the Redis Pipeline change.
I set it to 3 output levels because I thought that seemed reasonable. Another option could be to have different categories, like Reads, Writes, Actions, etc.

Ah right. I forgot to add it to the config. I'll fix that.
I am using ints to represent levels because that's the natural way to represent levels. I used a "enum" to avoid accidentally inputting invalid logging levels (although Go doesn't support real enums so it's not completely safe anyways). Should we use strings like "one", "two", "three"? I also restricted it to 3 levels, which we could change or just remove any restriction on it.
As for putting it in its own dir/package is because I wanted it to have its own package. Not just be utils. like everything else. To be honest, I want to just completely change the name utils. Not everything can be considered "utilities". Give it proper package names. I'd personally use src or lib, but I saw Go likes to use pkg for the main code folder. Then use subfolders for any files so they can have packages that actually correspond to what they are.
pkg
  |--convert
  |   |--db.go
  |--logging
      |--logging.go
  |--utils
      |--validator.go

Even validator.go could have a proper package name but I couldn't think of one right now.  Try to find a proper name or place for them.

Ah right. I forgot to add it to the config. I'll fix that.
I am using ints to represent levels because that's the natural way to represent levels. I used a "enum" to avoid accidentally inputting invalid logging levels (although Go doesn't support real enums so it's not completely safe anyways). Should we use strings like "one", "two", "three"? I also restricted it to 3 levels, which we could change or just remove any restriction on it.
As for putting it in its own dir/package is because I wanted it to have its own package. Not just be utils. like everything else. To be honest, I want to just completely change the name utils. Not everything can be considered "utilities". Give it proper package names. I'd personally use src or lib, but I saw Go likes to use pkg for the main code folder. Then use subfolders for any files so they can have packages that actually correspond to what they are.
pkg
  |--convert
  |   |--db.go
  |--logging
      |--logging.go
  |--utils
      |--validator.go

Even validator.go could have a proper package name but I couldn't think of one right now.  Try to find a proper name or place for them.

For logging, I was thinking of doing something similar to what I did for Postgres/MySQL detection in Convert (just doing a switch over the levels ex: "low", "medium", "high"), but honestly, an unsigned int Log field is probably easier, and more manageable than an Enum IMO.
In terms of rearranging utils, I agree 100%, just want to minimize overhead as much as possible but that shouldn't be an issue anyway. Also, for the Convert function, I'd prefer it be a method of Config because there's lots of parameter repetition and "DRY-violations" across the codebase; it's getting to the point where there are like 20+ chars running offscreen because of it.

Ended up having to do some re-organizing to use the Config struct in Convert. And while at it I decided to do a bit more organizing of code.
I changed logging to just use uint32 for level. Also added logging options to the config.


Add nftables and ebtables support

Solving the issue of running IPVS on Kubernetes on WSL2 (with kube-proxy)
$ zgrep -i tables /proc/config.gz
# CONFIG_NF_TABLES_BRIDGE is not set
# CONFIG_BRIDGE_NF_EBTABLES is not set

Deprecates the need for https://github.com/hardkeo/bridge-support-on-wsl2

#10329 is probably related


How to use SQL Database chain with an opensource LLM?

Issue you'd like to raise.
I have been trying to use SQL Database Chain with open-source LLM but have not succeeded.
from langchain import HuggingFaceHub
repo_id = "google/flan-t5-xl"
db = SQLDatabase.from_uri(db_url)
llm = HuggingFaceHub(repo_id=repo_id)
db_chain = SQLDatabaseSequentialChain.from_llm(llm, db, verbose=True)
Please help. Refer to any examples available online.
I have already tried gpt4all and llama.cpp

Use Google/flan-ul2. It is working fine with SQL database chain. Is there anyone tried any other model ?

@dharma610  - Is it possible for you to share a sample snippet which worked fine with Google/flan-ul2 ? I am noticing dict[] conversion error when i use flan model in sql chain..

hello any help/ news with this topic?

any updates ?
Most the examples I find on internet uses openAI. None of them uses opensource LLM. The examples that uses opensource LLM does not work anymore


Team proposal

Added Team Proposal for How-to-Guide section

[x] Keep all filenames lowercase, and use - to connect words instead of space. e.g. 2017-10-06-wechat-pc-impactor.md instead of 2017-10-06-WeChat PC Impactor.md
[x] Embed video/pdf from YouTube/Bilibili/local (if there's any) by using {% include iframe.html src="URL_or_PATH" %}. (Learn more about how to embed file/url in the post by reading this blog post
[x] Save photo to local before publishing, to a folder named by ${MONTH}-${YOUR_BLOG_SLUG}/ under /assets/2021/ directory.
[x] Select a beautiful and meaningful teaser image for your blog
[x] Create your contributor profile (if you are a first time contributor)

Thank you very much for publishing the team proposal for the How-to guides!


Implement user_rating function of Codeforces API.

In the codedigger/codeforces/api.py, implement user_rating function which calls user.rating method of Codeforces API.
Also, add a test case in codedigger/codeforces/tests/test_api.py to test the same.

Hi, can I work on this?

Hi @thieleju,
Glad to know that you're interested to work on this.
Please let us know whats will be your approach to solve this issue.

Ok, first I'm going to get into python again, since it's been a long time since I used python.
After I forked you repository and set up everything correctly, I'm going to look into similar methods of the api.py file and try to understand the structure.
Next I'm going to look into the Codeforces API documentation you provided and start implementing the user_rating function. (Maybe after I figured out what exactly this handler parameter is 😅)
Lastly I'll take a look at the contibutions.md again to make sure my pull request is valid.
Maybe some unforseen difficulties will arise during this process, but thats the overall plan 😄

Great. That's all is required for this issue.
Any difficulties/errors/ doubt you faced, feel free to ask and discuss (here or on discord).

@ShivamSinghal1 I'm currently struggling to test my new function.
How do I actually test my function in test_api.py? 😅
Has this something to do with the swagger api?
I set everything up and it is running properly I think.

Yes you have setup repo correctly and for testing you need to go through django testing Documentation.
Its a simple file though, you need to write a test case for your function where you need to import your function, and get output.
To run your testcase
python manage.py test codeforces.tests.test_api

Thank you for your help and patience with me 😄
Here is the pr #27


Rename Scenario Based Samples

Adding prefix "Scenario-" to samples that are written and ready for specific use cases, and introduce them in a separated summary table:

For facePhotoTagging, I will avoide the work directories, just to make it less overloaded in our context e.g., Enroll each person's face from images.


treat integer and numeric as interchangeable

Change casting warnings so that integer and numeric are considered equivalent
https://github.com/darwin-eu-dev/CDMConnector/issues/480

I've tested in postgres, duckdb and localy
cdm <- omopgenerics::insertTable(cdm = cdm, name = "test1", table = dplyr::tibble(id = c(1L, 2L), name = c("hi", "ha")))
cdm <- omopgenerics::insertTable(cdm = cdm, name = "test2", table = dplyr::tibble(id = c(1.5, 2), y = c(5, 6)))
cdm <- omopgenerics::insertTable(cdm = cdm, name = "test3", table = dplyr::tibble(id = bit64::as.integer64(2), x = 9))

# integer - double
cdm$test1 |>
  dplyr::inner_join(cdm$test2, by = "id")

# integer - integer64
cdm$test1 |>
  dplyr::inner_join(cdm$test3, by = "id")

# double - integer
cdm$test2 |>
  dplyr::inner_join(cdm$test1, by = "id")

# double - integer64
cdm$test2 |>
  dplyr::inner_join(cdm$test3, by = "id")

# integer64 - integer
cdm$test3 |>
  dplyr::inner_join(cdm$test1, by = "id")

# integer64 - double
cdm$test3 |>
  dplyr::inner_join(cdm$test2, by = "id")

Postgres:

integer
integer64
double

integer
👍
👍
👍

integer64
👍
👍
👍

double
👍
👍
👍

local:

integer
integer64
double

integer
👍
👎
👍

integer64
👎
👍
👎

double
👍
👎
👍

duckdb:

integer
integer64
double

integer
👍

👍

integer64

double
👍

👍

How about omopgenerics throws a warning if the number with a decimal point is supposed to be an integer (e.g. 5.4) but would silently coerce 5.000000000 (double) to 5 (int)? So we check that numbers are integerish as @edward-burn suggested in the issue.

That what we had initially but we decided to only check and do not change the data.
For the moment we will allow: double ~ integer ~ integer64, if this leads to problems we will consider moving this in the future


test: add more testing.

Adds more tests, updates the mocks.
Exports enum LangCodes to help build language selects/dropdowns with useTts.
Updates the README.

Codecov Report

Merging #17 (2ad00e2) into main (a90e4c8) will increase coverage by 20.54%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##             main      #17       +/-   ##
===========================================
+ Coverage   54.92%   75.47%   +20.54%
===========================================
  Files           7        7
  Lines         477      477
  Branches      131      131
===========================================
+ Hits          262      360       +98
+ Misses        215      117       -98

Impacted Files
Coverage Δ

src/highlighter.tsx
90.00% <ø> (+80.00%)
:arrow_up:

src/utils.ts
100.00% <ø> (+37.50%)
:arrow_up:

src/hook.tsx
84.61% <0.00%> (+17.75%)
:arrow_up:

src/controller.ts
59.70% <0.00%> (+24.37%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Enable notebook smoke test and capture memory leaks

We have been manually measuring the memory usage of the notebook component in the dev tools to catch potential memory leaks, to avoid repeated manual work, this is an attempt to automate the process. We already use Playwright in our smoke test and it supports opening a cdp session to archive the same target as we do manually in dev tools. As we know, the smoke test is often flaky, so we'll try it in the notebook first, and if it's reliable enough, we can make this generic and use it in other components as well.
In this PR, I took two different approaches:

I took a heap snapshot after a test run and analyzed the snapshot using @connor4312's v8-heap-parser. It's very reliable and easy to extend, but relatively slow.
Another approach is to list all objects as @SimonSiefke has done in vscode-memory-leak-finder and compare the objects before and after. This is much faster, but I don't fully understand the output yet.

The script can list all non-native objects (inherited from Object.prototype). For example, at startup we get one NotebookTextModel and during a notebook test we will have 2 NotebookTextModel objects. After the notebook editor is closed, the NotebookTextModel object is disposed/gc'ed, we have one NotebookTextModel again (the class).
However, I'm not sure why we still have 2 NotebookCellTextModel instances after a successful test run, even though we don't get any zombie NotebookCellTextModel instances in the heap snapshot. I may be missing something obvious here, it would be great if @SimonSiefke can help.

I'm leaning towards the second approach if we can figure out a relaiable approach of detecting the leaks (like what @SimonSiefke did in all the memory leak issues).

However, I'm not sure why we still have 2 NotebookCellTextModel instances after a successful test run, even though we don't get any zombie NotebookCellTextModel instances in the heap snapshot.

I believe it's being retained in the object group used in getInstances, you want to Runtime.releaseObjectGroup when you're done

I believe it's being retained in the object group used in getInstances, you want to Runtime.releaseObjectGroup when you're done

@connor4312 good catch, thank you so much!
I disabled the heap leak test and kept the object querying one, which is performant. Let's see if we can make it generic for all.
Lastly thanks @SimonSiefke for the great project again.

Thanks @connor4312, that's a bug in my code also, not properly releasing object groups! I'll try to fix it soon! :)


Mixin base requires explicit type in TS 4.3 due to "recursively referencing itself" when it doesn't

Bug Report
I'm having a scenario in TS 4.3 where the compiler can no longer figure out the base mixin type implicitly. It seems like a bug to me, but maybe not.
Setup
Here's the starting mixin code with an initial error I get unrelated to this issue I'm reporting (it started happening in TS 3.x something):

I'm not sure what is going on with the error, but I can get around it by doing some indirection or extracting it out to another variable declaration (shown in next image below). This now shows the error I'm reporting here that started happening in TS 4.3 where it says that the type ModuleDeclaration recursively references itself as a base type. It doesn't give any details about where this occurs, so if anything an improvement to that error saying exactly why might be nice.

Workaround (Explicit Type)
Workaround is to explicitly type the base type:

🔎 Search Terms
mixin, recursive
This seems related to #42383, but different in that it only started occuring in TS 4.3.
🕗 Version & Regression Information

This changed between versions 4.2.4 and 4.3
Occurs in 4.4.0-dev.20210526

⏯ Playground Link
Can't figure out a smaller reproduction.
💻 Code
Can't figure out a simple reproduction for this one, but the compile error can be reproduced by following these steps:

Check out the commit for this change in ts-morph: https://github.com/dsherret/ts-morph/commit/6c74e26ef61b7c166950f7c0f751d64959232bd0
Run yarn setup in the root (sorry, it's slow right now).
Modify ModuleDeclarationBase in packages/ts-morph/src/compiler/ast/module/ModuleDeclaration.ts to no longer have an explicit type.
Run yarn build in packages/ts-morph or look at error in VS code via the language service.

🙁 Actual behavior
Error stating Type 'ModuleDeclaration' recursively references itself as a base type.
🙂 Expected behavior
No error.

As another mixins user, I believe this issue is quite important. If this is a regression in 4.3, then the internal TypeScript test coverage for mixins is not complete yet. Perhaps try to reduce the reproducible case to a bare minimum, I doubt TS team will dig into this themselves..

Oh, looks like this might be a duplicate of #44281, which was logged before this. (Didn't find it while searching because that issue didn't mention mixins)
I will investigate more later.

Could you check if the error happens with 4.3.0-dev.20210428 but not happen in 4.3.0-dev.20210427?
If so then most probably it is the same bug for sure

@xaviergonz yup, it worked in 4.3.0-dev.20210427, but not 4.3.0-dev.20210428. I'm going to close this one in favour of #44281.


README: Add links to dependencies

Adds links to cfssl and the Google Cloud SDK
Signed-off-by: Lorenzo Manacorda<EMAIL_ADDRESS>

Thanks for helping out :)


Hot reloading code assumes user in container is root

What happened?
/devspace-restart-helper: line 16: can't create /devspace-pid: Permission denied

What did you expect to happen instead?
That hot reloading works independent from the user set in my Dockerfile.
How can we reproduce the bug? (as minimally and precisely as possible)
Create a container where you change the user to be non-root (e.g. let your Dockerfile contain USER notroot), then try to launch this container in dev mode with automatic reloading enabled.
Local Environment:

DevSpace Version: 4.12.2 (according to Brew)
Operating System: mac
Deployment method: devspace dev

Kubernetes Cluster:

Cloud Provider: DevSpace Cloud

Anything else we need to know?
As a workaround I altered my Dockerfile to support setting the user as an ARG variable, which in DevSpace is then configured as root. This works for devspace dev, however 1) now my production Dockerfile is changed to suits the needs of my dev tool, 2) if I would use DevSpace to deploy, then the user is still set to root in production.
https://github.com/Addono/container-registry-proxy/commit/4afef532749d88773dbbc13568c7262ff2849d05
The first workaround which came to mind was duplicating my Dockerfile, but that's a huge DRY violation, so I prefer this other workaround.

/kind bug

@Addono Thanks for opening this issue. Totally agree. We should improve this.
One solution I can think of is besides injecting the ADD statement for the restart helper, we could also inject a RUN mkdir /devspace && chown $USER /devspace && chmod 0700 /devspace to the Dockerfile. Then, we should use the file /devspace/pid instead of /devspace-id and the container should be able to run with a non-root user even without having to change the Dockerfile manually. I think that should work and would be a pretty simple solution.
What do think? @Addono @FabianKramm

In general, I don't see any issues in changing this, however switching the path of the restart helper script will render images built with an older devspace version (with inject restart helper enabled) incompatible with this change, so we have to support the old path as well (or force an image rebuild for older images) to avoid any breaking changes.

Implemented as part of v4.13


Is it possible to perform incremental development on existing projects that are not generated by ChatDev

Is it possible to perform incremental development on existing projects that are not generated by ChatDev?

that is my question also lol

I tested that Python scripts for a single. py file are supported, but if it's a multi-level Python project, it won't work, and other development languages won't do either.

 Hi:) ChatDev supports incremental development on any python file(s) as long as they are in the same folder. But some extra config files are needed if projects are developed in other languages. However, as ChatDev is not capable of maintaining the structure of different files and folders, the incremental development may not work on multi-level projects.


Add/addon contexts/vue intergration

Issue: #6631
What I did

[improve] Improve Vue integration so it receive a similar working experiences as in React.
[add] 2 stories being add into Vue-kitchen-sink (mirror to the official React examples).

How to test
Live example:
https://monorepo-git-add-addon-contextsvue-i.storybook.now.sh/examples/vue-kitchen-sink/?path=/story/addon-contexts--languages&contexts=Languages=French,CSS Themes=Desert

Uh... sorry I forget to commit the snapshot files, a commit is coming up :muscle:

@shilman... it seems some linting errors from files other than the scope of this PR?! Is any quick fix or I just ignore it?!