Makefile:97: recipe for target 'build/c_api/c_api.o' failed

env:win10(64bit) + mingw-w64
errLog:g++ -m64 -std=c++0x -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -Iinclude -DDMLC_ENABLE_STD_THREAD=0  -Idmlc-core/include -Irabit/include -fopenmp -MM -MT build/c_api/c_api_error.o src/c_api/c_api_error.cc >build/c_api/c_api_error.d
g++ -m64 -std=c++0x -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -Iinclude -DDMLC_ENABLE_STD_THREAD=0  -Idmlc-core/include -Irabit/include -fopenmp -MM -MT build/c_api/c_api.o src/c_api/c_api.cc >build/c_api/c_api.d
g++ -m64 -std=c++0x -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -Iinclude -DDMLC_ENABLE_STD_THREAD=0  -Idmlc-core/include -Irabit/include -fopenmp -MM -MT build/data/simple_dmatrix.o src/data/simple_dmatrix.cc >build/data/simple_dmatrix.d
g++ -m64 -std=c++0x -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -Iinclude -DDMLC_ENABLE_STD_THREAD=0  -Idmlc-core/include -Irabit/include -fopenmp -MM -MT build/data/sparse_page_raw_format.o src/data/sparse_page_raw_format.cc >build/data/sparse_page_raw_format.d
g++ -m64 -c -std=c++0x -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -Iinclude -DDMLC_ENABLE_STD_THREAD=0  -Idmlc-core/include -Irabit/include -fopenmp -c src/c_api/c_api_error.cc -o build/c_api/c_api_error.o
g++ -m64 -c -std=c++0x -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -Iinclude -DDMLC_ENABLE_STD_THREAD=0  -Idmlc-core/include -Irabit/include -fopenmp -c src/c_api/c_api.cc -o build/c_api/c_api.o
g++ -m64 -c -std=c++0x -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -Iinclude -DDMLC_ENABLE_STD_THREAD=0  -Idmlc-core/include -Irabit/include -fopenmp -c src/data/simple_dmatrix.cc -o build/data/simple_dmatrix.o
g++ -m64 -c -std=c++0x -Wall -O3 -msse2  -Wno-unknown-pragmas -funroll-loops -Iinclude -DDMLC_ENABLE_STD_THREAD=0  -Idmlc-core/include -Irabit/include -fopenmp -c src/data/sparse_page_raw_format.cc -o build/data/sparse_page_raw_format.o
In file included from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/locale.h:12:0,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/clocale:42,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/x86_64-w64-mingw32/bits/c++locale.h:41,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/bits/localefwd.h:40,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/string:43,
from dmlc-core/include/dmlc/base.h:154,
from src/c_api/./c_api_error.h:9,
from src/c_api/c_api_error.cc:6:
C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/stdio.h:462:83: error: 'FILE* std::fopen(const char*, const char*)' should have been declared inside 'std'
FILE fopen64(const char * restrict filename,const char * restrict  mode);
^
C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/stdio.h:462:83: error: 'FILE std::fopen(const char*, const char*)' conflicts with a previous declaration
C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/stdio.h:461:17: note: previous declaration 'FILE* fopen(const char*, const char*)'
FILE __cdecl fopen(const char * restrict _Filename,const char * restrict _Mode) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
^~~~~
In file included from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/locale.h:12:0,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/clocale:42,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/x86_64-w64-mingw32/bits/c++locale.h:41,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/bits/localefwd.h:40,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/string:43,
from dmlc-core/include/dmlc/base.h:154,
from include/xgboost/data.h:10,
from src/c_api/c_api.cc:3:
C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/stdio.h:462:83: error: 'FILE std::fopen(const char*, const char*)' should have been declared inside 'std'
FILE fopen64(const char * restrict filename,const char * restrict  mode);
^
C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/stdio.h:462:83: error: 'FILE std::fopen(const char*, const char*)' conflicts with a previous declaration
C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/stdio.h:461:17: note: previous declaration 'FILE* fopen(const char*, const char*)'
FILE __cdecl fopen(const char * restrict _Filename,const char * restrict _Mode) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
^~~~~
In file included from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/locale.h:12:0,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/clocale:42,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/x86_64-w64-mingw32/bits/c++locale.h:41,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/bits/localefwd.h:40,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/string:43,
from dmlc-core/include/dmlc/base.h:154,
from include/xgboost/data.h:10,
from src/data/simple_dmatrix.cc:7:
C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/stdio.h:462:83: error: 'FILE std::fopen(const char*, const char*)' should have been declared inside 'std'
FILE fopen64(const char * restrict filename,const char * restrict  mode);
^
C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/stdio.h:462:83: error: 'FILE std::fopen(const char*, const char*)' conflicts with a previous declaration
C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/stdio.h:461:17: note: previous declaration 'FILE* fopen(const char*, const char*)'
FILE __cdecl fopen(const char * restrict _Filename,const char * restrict _Mode) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
^~~~~
In file included from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/locale.h:12:0,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/clocale:42,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/x86_64-w64-mingw32/bits/c++locale.h:41,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/bits/localefwd.h:40,
from C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/lib/gcc/x86_64-w64-mingw32/6.1.0/include/c++/string:43,
from dmlc-core/include/dmlc/base.h:154,
from include/xgboost/data.h:10,
from src/data/sparse_page_raw_format.cc:6:
C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/stdio.h:462:83: error: 'FILE std::fopen(const char*, const char*)' should have been declared inside 'std'
FILE fopen64(const char * restrict filename,const char * restrict  mode);
^
C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/stdio.h:462:83: error: 'FILE std::fopen(const char*, const char*)' conflicts with a previous declaration
C:/Program Files/mingw-w64/x86_64-6.1.0-posix-seh-rt_v5-rev0/mingw64/x86_64-w64-mingw32/include/stdio.h:461:17: note: previous declaration 'FILE* fopen(const char*, const char*)'
FILE *__cdecl fopen(const char * restrict _Filename,const char * restrict _Mode) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
^~~~~
Makefile:97: recipe for target 'build/c_api/c_api_error.o' failed
make: *** [build/c_api/c_api_error.o] Error 1
make: *** Waiting for unfinished jobs....
Makefile:97: recipe for target 'build/data/sparse_page_raw_format.o' failed
make: *** [build/data/sparse_page_raw_format.o] Error 1
Makefile:97: recipe for target 'build/data/simple_dmatrix.o' failed
make: *** [build/data/simple_dmatrix.o] Error 1
Makefile:97: recipe for target 'build/c_api/c_api.o' failed
make: *** [build/c_api/c_api.o] Error 1

I am facing the same error. Did you find the solution ?

Okay now it is installed. Refer to this [tutorial] (https://dnc1994.com/2016/03/installing-xgboost-on-windows/) for installation but after checking out from git the XGBOOST repository. Do
cd xgboost
git checkout 9a48a40
And then follow all the steps from the above tutorial.

I have successfully solve the problem with your advice,thank you for your help。
At 2016-07-17 01:52:45, "Abhilash Awasthi"<EMAIL_ADDRESS>wrote:
Okay now it is installed. Refer to this tutorial for installation but after checking out from git the XGBOOST repository. Do
cd xgboost
git checkout 9a48a40
And then follow all the steps from the above tutorial.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.


Stream both front and back camera at the same time

Hi, i'd like to stream and preview both front facing camera and back camera at the same time.
I've tried to implement two RtmpCamera2 instances and set their view to two different OpenGlView. But I'm having issues, one  of the preview shows correctly, and the other don't. How can I do it?

The best way is use SurfaceFilter.
Instead of Render that surface with MediaPlayer you can use CameraApiManager to render it.
Normally, you can't open both cameras at same time so this could fail in multiple devices.

I did it but you need to edit the library to be able to do that, but you should keep in mind that not  all devices support opening two cameras at the same time

@tareqalbeesh what editions you made? I've already had to edit the library once to keep the screen at the rotation I wanted, so there is no problem doing it again

you just need to make the camera2Base able to start streaming using a specific Camera, you should do the same for the startPreview,
I did it using two Services, each service able you to stream from a different camera.

@tareqalbeesh Please can you share the code, we are in trouble and working to resolve it for past couple of days.
Regards.

@pedroSG94 Thank you for the amazing library
I have a slight problem I think you can solve it
When using OpenGL example from your repo with Surface Filter The bunny video plays for 3-4 seconds and stops
Similar thing happens when I use the second cam, the front camera plays for some second and then stops the stream

@pedroSG94 Thank you for the amazing library
I have a slight problem I think you can solve it
When using OpenGL example from your repo with Surface Filter The bunny video plays for 3-4 seconds and stops
A similar thing happens when I use the second cam, the front camera plays for some seconds and then stops the stream.
The bunny video and back camera both plays smoothly when stream is off, but as soon as I start stream they stop after some time.
Following is my simple code
SurfaceFilterRender surfaceFilterRender =
              new SurfaceFilterRender(new SurfaceFilterRender.SurfaceReadyCallback() {
                @Override
                public void surfaceReady(SurfaceTexture surfaceTexture) {
                  try {
                    Camera mSecondaryCamera = getCameraInstance(1);
                    mSecondaryCamera.setPreviewTexture(surfaceTexture);
                    mSecondaryCamera.startPreview();
                  } catch (IOException e) {
                    e.printStackTrace();
                  }

                }
              });

Please help as soon as you can, I would pay/donate in return. Thanks again for the amazing lib.

Okay update on this
SurfaceFilterRender stops the mediaPlayer video after about 15-20 seconds when not recording, and stops it 2-3 seconds when streaming
I think its not an issue with the streaming side of the library
It's related to the GL side of the SurfaceFilterRender

OK I have found the solution
The solution was start mediaPlayer (mediaPlater.startPreview()) again in the rtmpStart method
Meaning whenever the stream gets started you have to run the preview on the surface
Similarly for dual cameras, I started the preview like camera.startPreview() as soon as rtmp feeds gets started

Hello,
I was the last week working in this without luck but thanks to your track I found the real error. Call mediaplayer to render texture from glthread produce that stop. I solved it calling surfacefilter callback from main thread and works perfectly. Thank for your colaboration!
Fixed in: https://github.com/pedroSG94/rtmp-rtsp-stream-client-java/commit/240dacd5bbdbe1cc334ddb2d962fd35da384cd4d


Please invite me to the GitHub Community Organization

Name
Kahito Tanaka
Discord Username (if applicable)
No response
Additional Context
Please accept my invitation.

It's great having you contribute to this project
If you would like to continue contributing to open source and would like to do it with an awesome inclusive community, you should join our Discord Server and our GitHub Organisation - we help and encourage each other to contribute to open source little and often 🤓 . Any questions let us know.

Please check your email or organisation page 🙏


pyflame shows cpu is high idle, but nmon command shows cpu is full load.

I run tornado with aiomysql on ubuntu 16.04, python version is 3.5.2.
I only execute a simple select db query on mysql.
pyflame shows cpu is high idle, but nmon command shows cpu is full load.
It's so strange?

Is this with or without --threads?

pyflame 1.4.4, Compiled Jul 26 2017, 10:43:24 by GCC 5.4.0 20160609
the app is not threaded.
sudo pyflame -s 5 -r 0.001 -o prof.txt 6505
the svg picture is show:https://coder-zhuyu.github.io/images/prof-tornado.svg

pyflame 1.4.4, Compiled Jul 26 2017, 10:43:24 by GCC 5.4.0 20160609
The app is not threaded.
sudo pyflame -s 5 -r 0.001 -o prof.txt 6505
The flame picture is shown: https://coder-zhuyu.github.io/images/prof-tornado.svg

This looks pretty normal to me. You can use -x to exclude the idle times, but you probably already know that.
My guess is that if you use GDB to attach to the process, you will see that it's frequently blocking in the Tornado event loop. IIRC, you'll see a call to something like __epoll_wait() as frame 0 as reported by the GDB bt command. Try getting a backtrace from GDB a dozen times or so, and if Pyflame says your program is idle about 50% of the time then you should see the __epoll_wait() call about 50% of the time as well.

I understand.
Thank you for your answer.


Could not understand output of pdfimages

Running pypdfocr 0.8.2, it says:
WARNING: Could not understand output of pdfimages, please rerun with -d option and file an issue at http://github.com/virantha/pypdfocr/issues

So, here I am. The issue seems to be that the image type reported by pdfimages is "stencil" and not "image." The output of pdfimages -list file.pdf begins like so:
page   num  type   width height color comp bpc  enc interp  object ID x-ppi y-ppi size ratio
--------------------------------------------------------------------------------------------
   1     0 stencil  2528  3200  -       1   1  ccitt  no         8  0   301   301 27.2K 2.8%
   2     1 stencil  2528  3200  -       1   1  ccitt  no         9  0   301   301 45.9K 4.7%

Okay, I also have this issue. I managed to figure out how to send the output I was seeing to a log so that I can actually read into what is going on. Oddly, I still had to kill the window because it wanted to keep running in some sort of loop (you can probably tell from the repeated line pypdfocr.exe: error: unrecognized arguments: --multiprocessing-fork.
Anyway. Here is the full log.

Thanks,
Troy

Same here...

Can someone provide a testcase pdf?

test.pdf
Hi, same issue here under Ubuntu, and attached a test pdf file.

test.pdf
Hi, same issue here under Ubuntu, and attached a test pdf file.

I think the page in the pdf file is text and not an image.
If you use a pdf file that contains an image, it could extract dpi and run without errors, otherwise, it will use default dpi (set to 300)


Configure search index typo tolerance per attribute

With this release of the MeiliSearch integration, we can finally configure per-attribute typo tolerance. We can use that to disable typo tolerance for attributes where it doesn't make sense. I'm not sure if this requires an index-rebuild. But either way, I suggest just doing that next time when someone is touching the search-index anyway.

Looking into this, typo tolerance is only relevant for searchable fields. We currently have:

Event: title, creators, description, series title
Series: title, description
Realm: name

Having typo tolerance enabled for all of these makes sense to me. So there is no need to configure anything. Configuring this might be useful in the future, but I will close this issue now.


RTSP Errors

I'm getting the following error constantly in my logs using the RTSP urls for my cameras.  I recently switched my HA to a Intel NUC which may have caused this but I dont know how to get it to stop.  I have all the latest updates for HA installed and the strange thing is, the video streams work in my dashboards, so I'm not sure why this error is constantly occurring.
Logger: homeassistant.components.stream.stream.camera.kids_bedroom_camera_vivint
Source: components/stream/init.py:347
Integration: Stream (documentation, issues)
First occurred: 11:17:41 AM (2 occurrences)
Last logged: 11:17:58 AM
Error from stream worker: Stream ended; no additional packets
Error from stream worker: Error opening stream (INVALIDDATA, Invalid data found when processing input) rtsp://****:****@XXXXXXXX:8554/Video-39

2022-04-20 11:17:41 ERROR (stream_worker) [homeassistant.components.stream.stream.camera.kids_bedroom_camera_vivint] Error from stream worker: Stream ended; no additional packets
2022-04-20 11:17:58 ERROR (stream_worker) [homeassistant.components.stream.stream.camera.kids_bedroom_camera_vivint] Error from stream worker: Error opening stream (INVALIDDATA, Invalid data found when processing input) rtsp://:@XXXXXXXX:8554/Video-39
NOTE: I removed IP address info above.

Unfortunately this is an issue with the stream component. This component simply makes the Vivint camera's RTSP url available to it. Everything else from that is handled by the camera and stream components and related to issues with those and or networking hiccups on data from the camera.


Enhance UI with New Font Implementation !!!

What does this PR do?
This pull request introduces a new font to improve the user interface of the "Alien Invasion Defense" game. The font has been applied to various elements, including titles, ratings, and buttons, to create a cohesive sci-fi aesthetic.
Key changes include:
Added a new font family to the stylesheet for enhanced visual appeal.
Created unique class names for different UI components utilizing the new font (e.g., .custom-title, .custom-rating, .custom-button).
These enhancements aim to provide a more immersive experience for users, aligning with the game's theme.
Fixes #426

Type of change

New feature (non-breaking change which adds functionality)
Breaking change (fix or feature that would cause existing functionality to not work as expected)
This change requires a documentation update

Screenshots:
BEFORE:

AFTER:

How should this be tested?

[x] Test A
[x] Test B

Mandatory Tasks

[x] Make sure you have self-reviewed the code. A decent size PR without self-review might be rejected.

@YadavAkhileshh . please review my PR

@YadavAkhileshh , label ?


Cluster features

Description
This PR adds the ability to calculate features based on clusters of SentenceBERT embeddings.
This could be useful for finding salient features of text to slice along automatically (if the clusters are sufficiently good).
I have a technical question though. For some reason, it seems that these features are being recognized as standard text and appear in the explorer like this:

They also aren't accessible through slice finder.
In contrast, some other categorical features like lang_pair in the translation example seem to be recognized and displayed differently:

Here is the code for calculating those.
Do you know if there is a way that I can get the cluster features to be recognized in the same way so they can be treated as categorical features and used in slice finder?
References

Fixes https://github.com/zeno-ml/zeno-build/issues/149

Blocked by

NA

It's hardcoded to show the string search if there are more than 20 categorical features (the charts become unusable with more than that usually, e.g. can't read labels). LMK if you have a suggestion to change that!

Left a comment here: https://github.com/zeno-ml/zeno/issues/873
And for the time being I'll hard-code the number of clusters in this PR to be 20, leaving a TODO to fix this if the behavior in Zeno proper changes.


Autodetect feature is not available in BigQuery client

Autodetect feature works only if the body of the request contains a schema field.
For example, that works fine:
job = {
    'projectId': PROJECT_ID,
    'configuration': {
        'load': {
            'autodetect': True,  # works without it, by default autodetect = True
            'destinationTable': {
                'projectId': PROJECT_ID,
                'datasetId': self.dataset,
                'tableId': self.table,
            },
            'sourceUris': [self.path],
            'writeDisposition': self.write_disposition
        }
    }
}

The task will be failed if schema path is not specified in the task params.
May be this code in the client works unexpected(job.py):
resource = {
    'jobReference': {
        'projectId': self.project,
        'jobId': self.name,
    },
    'configuration': {
        self._JOB_TYPE: {
            'sourceUris': self.source_uris,
            'destinationTable': {
                'projectId': self.destination.project,
                'datasetId': self.destination.dataset_name,
                'tableId': self.destination.name,
            },
        },
    },
}
configuration = resource['configuration'][self._JOB_TYPE]
self._populate_config_resource(configuration)

if len(self.schema) > 0:
    configuration['schema'] = {
        'fields': _build_schema_resource(self.schema)}

@ivvory Thank you for your submission.
Unfortunately, I am unsure what it is you want us to change. Would you be willing to rephrase?

@lukesneeringer sorry for bad explanation. Let me try again. The problem is that when i was trying to use autodetect feature to upload data without the schema i faced with a problem the feature doesn't work correctly. I tried to use autodetect by passing empty schema, because didn't find how to use it through the client directly. By the way I decided to pass jobs myself specifying params manually. When i passed autodetect=True and empty fields param(like fields=None or fields='') i got an error. But when i didn't pass the empty fields param the job completed successfully.
May be the code below from the client adds the fields param to the job in any case.
if len(self.schema) > 0:
    configuration['schema'] = {
        'fields': _build_schema_resource(self.schema)}

P.S. Thanks for autodetect feature in gc web interface :)

@ivvory Thanks, that makes sense. Thank you.

I'm trying to parse through the posts above.
Is there a way to use autodetect with the google-cloud-bigquery library at the moment?

@MaximilianR We don't have any explicit support for it (yet).
@tswast AFAICT autodetect only shows up in

Job.configuration.load.autodetect
Job.configuration.query.tableDefinitions.autodetect
Table.externalDataConfiguration.autodetect

The relevant methods for autodetect at creation time seem to be

bigquery.jobs.insert
bigquery.tables.insert

Is this correct? (I based this off the discovery doc.)

I believe that is correct.
There are two times when you would use the autodetect feature: creating a new table from loaded data and making an external table definition. https://cloud.google.com/bigquery/external-table-definition

@MaximilianR may be you are interested in some notes about using autodetect.
Now you can use autodetect simply by polling the job:
jobs = GbqConnector(project_id=project_id).service.jobs()
params = {} # declare

# use autodetect if needed
params['configuration']['load']['autodetect'] = True

response = jobs.insert(projectId=project_id, body=params).execute()
job_id = response['jobReference']['jobId']

result = poll_job(jobs, job_id)

def poll_job(jobs, job_id):
    while True:
        status = jobs.get(projectId=project_id, jobId=job_id).execute()['status']

        if status['state'] == 'DONE':
            return 'DONE'

        sleep(1)

Sometimes you want to add the data with new columns that are absent in existing table. That is more popular case when using autodetect rather than manual schema. So you may consider schemaUpdateOption param with also new 'ALLOW_FIELD_ADDITION' option that allows to detect new fields missed in target table:
    if write_disposition == 'WRITE_APPEND':
        params['configuration']['load']['schemaUpdateOptions'] = ['ALLOW_FIELD_ADDITION']

One more problem is produced by using of these features. I guess a workflow is the following: if you have a table and try to load data with autodetect first the schema from the data is detected and then compared with the schema of existing table. That is a cause of some errors as sometimes you don't know what type has a column in the current data. For example if all values of some field in all processing rows are equal null then autodetect recognize it as a string type(not sure exactly) but actually in the existing table this field has another type. Simplest solution that can help:
def poll_job(jobs, job_id):
    while True:
        status = jobs.get(projectId=project_id, jobId=job_id).execute()['status']

        # check for this situation
        if 'errorResult' in status:
            if str(status['errorResult']['message']).startswith('Invalid schema update'):
                return 'Autodetect failed'
            else:
                raise Exception(str(status))

        if status['state'] == 'DONE':
            return 'DONE'

        sleep(1)

# param declaring...
result = poll_job(jobs, job_id)

if result == 'Autodetect failed':
    del params['configuration']['load']['autodetect']
    del params['configuration']['load']['schemaUpdateOptions']

    response = jobs.insert(projectId=self.project_id, body=job).execute()
    job_id = response['jobReference']['jobId']
    poll_job(jobs, job_id)

One flexible option related to using of autodetect is unavailable. I mean you cannot create a table without data loading. So i had to write the own schema generator copying the workflow of autodetect option :)

Hope you found that helpful.

Where is module GbqConnector?

I believe GbqConnector is from the Pandas library, not this one. https://github.com/pydata/pandas-gbq/blob/4b04174ddc61e6490dd07f8e6b758463d82206df/pandas_gbq/gbq.py#L193

here's workaround code that works with the current released google-cloud-python (0.24.0). the key part is passing {'configuration': {'load': {'autodetect': True}}} to LoadTableFromStorageJob.from_api_repr().
from google.cloud.bigquery import Client
from google.cloud.bigquery.job import LoadTableFromStorageJob
from google.cloud.bigquery.table import Table, Dataset

client = Client(...)
job = LoadTableFromStorageJob.from_api_repr({
    'jobReference': {
        'jobId': 'UNIQUE_ID',
    },
    'configuration': {
        'load': {
            'destinationTable': {
                'datasetId': 'analytics',
                'tableId': table.name,
            },
            'autodetect': True,
        },
    },
  }, client=client)
job.destination = Table('TABLE_NAME', Dataset(Dataset('DATASET_NAME', client))
job.source_uris = ['file.csv', ...]

# set other options, e.g.:
job.source_format = 'CSV'
...

job.begin()

FWIW the latest is 0.25.0

oops, the code i gave in https://github.com/GoogleCloudPlatform/google-cloud-python/issues/2926#issuecomment-312121757 doesn't actually work after all. i ended up having to monkey patch to get autodetect into the API call. here's that code:
def _add_autodetect():
    resource = LoadTableFromStorageJob._build_resource(job)
    resource['configuration']['load']['autodetect'] = True
    return resource

job._build_resource = _add_autodetect

can't wait for official support! :P

At least some of this issue was fixed in https://github.com/GoogleCloudPlatform/google-cloud-python/pull/3648

@tswast Is what is left of this issue covered in the redesign? If so, I would like to close this out.

@snarfed While file (& what directory is that file in) did you change and add this new _add_auto_detect function?

@hemanthk92 it goes in your own code, not bigquery/google cloud's...but ignore it! they've fixed this bug. just set job.autodetect = True on your LoadTableFromStorageJob now.

@snarfed thanks for your response.
I'm on  google-cloud-bigquery==0.28.0
I don't see autodetect parameter as an option.

@hemanthk92 It is a property on LoadJobConfig in 0.28.0. The migration guide has a sample for providing a configuration.
from google.cloud import bigquery

client = bigquery.Client()

dataset_ref = client.dataset('test_dataset')
table_ref = dataset_ref.table('test_table')

job_config = bigquery.LoadJobConfig()
job_config.autodetect = True

with open('data_sample.txt', 'rb') as source_file:
    job = client.load_table_from_file(
        source_file, table_ref, job_config=job_config)  # Start the job.

job.result()  # Wait for the job to complete.

I am using streaming insertion. Is there any way to use this auto detect schemas in streaming??


Fix battery drain crash for GoToPlace

Addresses https://github.com/open-rmf/rmf/issues/359

Thanks for the quick feedback and catching the edge case. I've updated the code as suggested. Also addressed this other issue in WaitFor event when the duration count is negative. Added some tests too.


Renaming inconsistent Gibbon object names

Four of the code examples in the Interests section used inconsistent names for the Gibbon object. Renaming objects g to gibbon to match the rest of the examples in the document.

Thanks


Customization of drop positions and styling

We really like the sequential workflow designer and it's possibilities but are holded back in usage because of the limited styling and drag and drop UX.
Would it be possible to make the drag and drop more user friendly by not just showing all possible drop areas, which on large actions can be very confusing when you see hundreds of placeholders appearing, to be more consistent like modern drag and drop solutions where a blue line as placeholder appear only when you get in the neighborhood of the element.
So when you hover with your drag on top of step box the blue line appear on top or bottom of the box.
A bit like:
https://spectrum.adobe.com/page/tree-view/#Collapse-and-expand
That will be really a great improvement.
Also styling the connecting lines and giving more options about the besier curves will be great.
And lastly incorporating help or info tooltips per box will be also a great addition to show comments.

Hello @gpetrov!

to be more consistent like modern drag and drop solutions where a blue line as placeholder appear only when you get in the neighborhood of the element.

Now the designer supports basic placeholders and clickable placeholders. Maybe this is a good candidate for the next type for the pro version.

Also styling the connecting lines and giving more options about the besier curves will be great.

Currently, it's possible to change the color and the thickness of curves. What you need more?

And lastly incorporating help or info tooltips per box will be also a great addition to show comments.

I'm not sure if I understand this one correctly. Tooltips in the toolbox, this sounds fine (basically now the designer uses the title="" attribute to show the fullname in the toolbox). But I'm afraid, tooltips on the canvas could hide information. Maybe this should work in this way, when a user started dragging, then tooltips are disabled. 🤔
Or maybe it's better to place explanatory information in other places, like editors. Check this example, here you can find some description at the top of each editor.

Currently we have the full queue of incoming features and primary we focus on features that were ordered under the consulting service. If you want to prioritize some changes, please contact us.

Now the designer supports basic placeholders and clickable placeholders. Maybe this is a good candidate for the next type for the pro version.

Well the clickable placeholders is a different example but not really the dynamic drop areas that appear only on drag and one at the time

Currently, it's possible to change the color and the thickness of curves. What you need more?

As I said we really like to customize more the curving

I'm not sure if I understand this one correctly. Tooltips in the toolbox, this sounds fine (basically now the designer uses the title="" attribute to show the fullname in the toolbox). But I'm afraid, tooltips on the canvas could hide information. Maybe this should work in this way, when a user started dragging, then tooltips are disabled. 🤔

There are different ways to incorporate comments like surrounding boxes with comment lines or additional comment popovers appearing on hover - much more stylable than simple title tag

Well the clickable placeholders is a different example but not really the dynamic drop areas that appear only on drag and one at the time

Yeah, I know it. Just wanted to show that, the designer supports many modes here. That what you suggested, would be the next one.

As I said we really like to customize more the curving

Probably, I would need some mockup to understand this better.

There are different ways to incorporate comments like surrounding boxes with comment lines or additional comment popovers appearing on hover - much more stylable than simple title tag

That's right.


Transformations doc revamp

What do these changes do?

Revamped the transformation docs
Added some missing info
Refreshed screenshots re: dashboard options
Added some more, relevant FAQ

Type of documentation

[ ] New documentation
[x] Documentation update
[ ] Hotfix

Let's add deleting transformation & library flow too


feat: docker images

This PR adds the initial configuration for publishing docker images for releases. Additional configuration may be required if the current GITHUB_TOKEN supplied to the action does not have permission to push packages, and the repo may also need the container registry enabled.

Need docker builder
Like:
FROM caddy:<version>-builder AS builder

RUN xcaddy build \
    --with github.com/caddyserver/nginx-adapter \
    --with<EMAIL_ADDRESS>
FROM caddy:<version>

COPY --from=builder /usr/bin/caddy /usr/bin/caddy

https://hub.docker.com/_/caddy

@Joyace Not sure what you’re referring to, or if it’s a question or not. This is not the repo for Caddy nor is it related to the Caddy project in its current form. This is Casket and we do not utilize xcaddy or any other extra build processes. This PR is simply to add docker images for RELEASES ONLY. Not to provide a Dockerfile or any other such thing.


Validate onSubmit, but don't validate onChange or onBlur

After exploring the API, the examples and reading through the similar issues, I still don't have a straight forward solution for this problem, so I am asking for your help.
I don't want to validate each input field onChange or onBlur, but I want to validate all input fields onSubmit. What would be the best way to approach this problem?
The form validation is synchronous and I am using version 6.3.2.

Redux Form will run the validation function against any touched Fields. You need to configure Redux Form to not touch fields on a blur event by setting touchOnBlur to false in the Redux Form config. (By default, this is already false for change events).
export default reduxForm({ form: 'myForm', touchOnBlur: false })(MyForm);

@andynoelker I have the same issue. And the suggested change to config didn't make any difference unfortunately.
Suppose we have an EditForm, with initialValues={{email: "wrong?email.com"}}, if you click submit, the email validation rule won't kick-in. It requires you to do one of the following:
a) Trigger a touch by blurring the field
b) Mutate the values
What kind of optimisation is being made to the validators? Wouldn't it make sense to simply invoke the validation function on submit without taking into account any touches, comparison against initialValues etc
// Naive Pseudo code
handleSubmit() {
   if (this.requiresValidation()) {
      const errors = this.config.validate(this.form.values);
      if (errors) {
         this.showErrors(errors);
      } else {
        this.clearErrors();
        this.config.onSubmit(this.form.values);
      }
   }
}

Validation Related issues:
https://github.com/erikras/redux-form/issues/2427
https://github.com/erikras/redux-form/issues/2428

If you want to validate onSubmit, then perhaps you could call the same validate function inside your form onSubmit handler (and not pass validate property in your reduxForm() option object).
const sleep = ms => new Promise(resolve => setTimeout(resolve, ms))

class SampleForm extends Component {

  submit (values) {
    const { actions } = this.props

    return sleep(1000)
      .then(() => {
        return validate(values, this.props)
      })
      .then(errors => {
        if (hasErrors(errors)) {
          throw new SubmissionError(errors)
        } else {
          // process form values
        }
      })
  }

  render () {
    const { handleSubmit } = this.props

    return (
      <form onSubmit={ handleSubmit(this.submit) } noValidate>
        ...
      </form>
  }
}

export default reduxForm({
  form: 'sample'
})

Seems like one approach, based on Submit Validation Example.

@zettadam sounds promising, thanks!  @erikras would this be a recommended approach?

Why not use shouldValidate config property and return false unless props.submitting is true?

@andynoelker's solution works for me:
export default reduxForm({ form: 'myForm', touchOnBlur: false })(MyForm);


HBASE-27224 HFile tool statistic sampling produces misleading results

Here's an example output:
Stats:
   Key length:
               min = 29
               max = 29
              mean = 29
            median = 29
              75% <= 29
              95% <= 29
              98% <= 29
              99% <= 29
            99.9% <= 29
             count = 1000
             1000 <= 10
             1000 <= 100
             1000 <= 1000
             1000 <= 10000
             1000 <= 100000
             1000 <= 1000000
             1000 <= 10000000
             1000 <= 100000000
   Val length:
               min = 3
               max = 3
              mean = 3
            median = 3
              75% <= 3
              95% <= 3
              98% <= 3
              99% <= 3
            99.9% <= 3
             count = 1000
             1000 <= 10
             1000 <= 100
             1000 <= 1000
             1000 <= 10000
             1000 <= 100000
             1000 <= 1000000
             1000 <= 10000000
             1000 <= 100000000
   Row size (bytes):
               min = 40
               max = 40
              mean = 40
            median = 40
              75% <= 40
              95% <= 40
              98% <= 40
              99% <= 40
            99.9% <= 40
             count = 1000
             1000 <= 10
             1000 <= 100
             1000 <= 1000
             1000 <= 10000
             1000 <= 100000
             1000 <= 1000000
             1000 <= 10000000
             1000 <= 100000000
   Row size (columns):
               min = 1
               max = 1
              mean = 1
            median = 1
              75% <= 1
              95% <= 1
              98% <= 1
              99% <= 1
            99.9% <= 1
             count = 1000
             1000 <= 1
             1000 <= 3
             1000 <= 5
             1000 <= 10
             1000 <= 50
             1000 <= 100
             1000 <= 500
             1000 <= 1000
             1000 <= 5000
             1000 <= 10000

Key of biggest row: row_00000000

Obviously looks weird with all the round numbers, but should give a very clear representation of the distribution once real numbers are in place.
If this feels too verbose for some people, I could hide the buckets behind a config/command line option.
The added test just verifies that we're properly including the histogram buckets in output. Given the sampling involved, I'm not sure I could reliably test that this fixes the max problem I encountered with codahale's histogram. Instead we rely on the fact that MutableRangeHistogram is so pervasively used. There are various tests of the various histogram classes in the hierarchy of MutableRangeHistogram.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 57s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ master Compile Tests _

+0 :ok:
mvndep
0m 27s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
4m  5s
master passed

+1 :green_heart:
compile
4m 31s
master passed

+1 :green_heart:
checkstyle
1m 25s
master passed

+1 :green_heart:
spotless
1m 22s
branch has no errors when running spotless:check.

+1 :green_heart:
spotbugs
3m  0s
master passed

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 17s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
3m 33s
the patch passed

+1 :green_heart:
compile
4m 28s
the patch passed

+1 :green_heart:
javac
4m 28s
the patch passed

-0 :warning:
checkstyle
1m  1s
hbase-server: The patch generated 1 new + 8 unchanged - 1 fixed = 9 total (was 9)

+1 :green_heart:
whitespace
0m  1s
The patch has no whitespace issues.

+1 :green_heart:
hadoopcheck
18m 23s
Patch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.

+1 :green_heart:
spotless
1m 18s
patch has no errors when running spotless:check.

+1 :green_heart:
spotbugs
3m 18s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m 48s
The patch does not generate ASF License warnings.

57m 59s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4635/1/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/4635

Optional Tests
dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile

uname
Linux 90b6abd17b20 5.4.0-1071-aws #76~18.04.1-Ubuntu SMP Mon Mar 28 17:49:57 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 075b3053cf

Default Java
AdoptOpenJDK-1.8.0_282-b08

checkstyle
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4635/1/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt

Max. process+thread count
72 (vs. ulimit of 30000)

modules
C: hbase-hadoop-compat hbase-server U: .

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4635/1/console

versions
git=2.17.1 maven=3.6.3 spotbugs=4.2.2

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m 14s
Docker mode activated.

-0 :warning:
yetus
0m  4s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ master Compile Tests _

+0 :ok:
mvndep
0m  9s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
2m 47s
master passed

+1 :green_heart:
compile
1m  2s
master passed

+1 :green_heart:
shadedjars
3m 46s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 41s
master passed

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 13s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
2m 37s
the patch passed

+1 :green_heart:
compile
1m  2s
the patch passed

+1 :green_heart:
javac
1m  2s
the patch passed

+1 :green_heart:
shadedjars
3m 45s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 40s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
0m 43s
hbase-hadoop-compat in the patch passed.

+1 :green_heart:
unit
211m 30s
hbase-server in the patch passed.

232m 12s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4635/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/4635

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux cdfc553122db 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 075b3053cf

Default Java
AdoptOpenJDK-11.0.10+9

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4635/1/testReport/

Max. process+thread count
2470 (vs. ulimit of 30000)

modules
C: hbase-hadoop-compat hbase-server U: .

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4635/1/console

versions
git=2.17.1 maven=3.6.3

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m  4s
Docker mode activated.

-0 :warning:
yetus
0m  2s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ master Compile Tests _

+0 :ok:
mvndep
0m 11s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
2m 25s
master passed

+1 :green_heart:
compile
0m 53s
master passed

+1 :green_heart:
shadedjars
3m 48s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 38s
master passed

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 13s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
2m 14s
the patch passed

+1 :green_heart:
compile
0m 53s
the patch passed

+1 :green_heart:
javac
0m 53s
the patch passed

+1 :green_heart:
shadedjars
3m 59s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 42s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
0m 37s
hbase-hadoop-compat in the patch passed.

+1 :green_heart:
unit
222m  4s
hbase-server in the patch passed.

241m 48s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4635/1/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/4635

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 6ed4bdc2b878 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 075b3053cf

Default Java
AdoptOpenJDK-1.8.0_282-b08

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4635/1/testReport/

Max. process+thread count
2522 (vs. ulimit of 30000)

modules
C: hbase-hadoop-compat hbase-server U: .

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4635/1/console

versions
git=2.17.1 maven=3.6.3

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.


[BUG-UI/UX] API Key copy button not working

Describe the bug
In my settings page copy key for apikey is not working.

Console shows below error:
Screenshots

Due to navigator.clipboard not existing

Environment (please complete the following information):

OS [e.g. iOS]: Mac
Browser [e.g. chrome, safari]: chrome (also tried on safari but didn't work)(cleared cache & retried same err)
Argilla Version [e.g. 1.0.0]: 2.2.0

Additional context
I copied by breakpointing and manually copying key before error

Hi @cceyda, I cannot reproduce this myself but I've asked @leiyre and @damianpumar to take a look.

@cceyda are you accessing your Argilla instance not using HTTPS? If that's the case probably the navigator.clipboard is not accesible because it only works with secure origins.

Hello @cceyda
Thanks for report this issue, I changed the way to copy on clipboard supporting no secureContext but in the meantime, please review your permission following this guide: https://developer.mozilla.org/en-US/docs/Web/API/Permissions_API#revoking_permission
Thanks!

yeah not using https at the moment, it is already in a secure network (+ some parts are not under my control)

Yes, I think that is the problem, sometimes if you are running the app with restricted permissions disabling the permissions manually or running the app on http, some JavaScript objects don't exist, for that reason I fixed our "copy to clipboard" function to support these scenarios.
Thanks!


Custom scrollbars creating equally sized empty gaps

I have been experiencing issues with my app after styling scrollbars via ::-webkit-scrollbar. To narrow down the issue, I have created small test case and here are the screenshots:
index.html directly opened in Chrome, everything looks correct:

index.html opened via Electron, no extra code, just one BrowserWindow:
(notice the gap on the right)

to make it a bit more obvious I resized the scrollbars to 20px (both width and height):
(this time I notice there's actually another gap at the bottom too)

after resizing the BrowserWindow just very slightly:
(the gap on the left bottom disappears)

I haven't been able to reproduce any of the issues in regular Chrome browser. Removing scrollbar styles from the style sheet removes these issues completely.
Tested on OSX 10.11.3 with Electron v0.36.7. Same thing happening on Windows 8.1.

Were you testing the code in Chrome 48? Electron is still using Chrome 47 so can you test whether the code works in Chrome 47? I would like to verify whether it is a bug of Electron or Chrome 47.

Yep, tested with Version 48.0.2564.97 (64-bit).
I will have to figure out how to get hold of v47 and I'll report back.

@zcbenz
Dammit Google! :grinning:
(v48 and v47 respectively)

Hopefully Electron with v48 will be released soon. In the meanwhile, I will have to disable custom scrollbars or downgrade to lower version.


How to interact with each buttons?

Hello , Thanks for your sample and project.
I've done deploy UWP of build from Unity(2020.3.24f) and application is run successfully on Hololens2.
but Hololens2 can't recognize my hands so I can't touch the buttons.
If you know how to solve this problem, can you tell me about that?
Actually I'm usually used MRTK configuration.profile, and it's the first I've ever used XR.SDK.Profile.
Thank you for reading , I hope you have a good day.

Actually I mean "sample" is "PointCloudSample".


UTF-8 decoding error sometimes occurs...

I'm not sure why or exactly when this occurs, but the error is:
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
  File "/Users/robin/code/recipy/recipy/log.py", line 259, in output_file_diffs
    diff = difflib.unified_diff(open(item['tempfilename']).readlines(),
  File "/Users/robin/anaconda3/lib/python3.5/codecs.py", line 321, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x89 in position 0: invalid start byte

Some hints here, maybe: http://stackoverflow.com/questions/27219301/utf-8-codec-cant-decode-byte-0x89

This is just the same as #121 (I'd forgotten I'd got file_diff_outputs turned on).


TensorRT Unet is incompatible with ControlNet extension

When trying to run a generation with both TRT Unet and ControlNet enabled, I get this error message:
"RuntimeError: Expected all tensors to be on the same device, but found at least two devices, cpu and cuda:0! (when checking argument for argument mat1 in method wrapper_CUDA_addmm)"
Software versions:
WebUI: v1.6.0
Python: 3.10.6
Torch: 2.0.1+cu118
Xformers: 0.0.20
Gradio: 3.41.2
Checkpoint: 7f96a1a9ca
Flags: --xformers --enable-insecure-extension-access --no-half-vae --skip-torch-cuda-test
CUDA_MODULE_LOADING is set to LAZY.

Sorry, didn't see another issue where devs explained that ControlNet support is in high priority now.


satisfies T as type annotation

Suggestion
🔍 Search Terms
satisfies type annotation return impl trait
✅ Viability Checklist
My suggestion meets these guidelines:

[x] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[x] This wouldn't change the runtime behavior of existing JavaScript code
[x] This could be implemented without emitting different JS based on the types of the expressions
[x] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, new syntax sugar for JS, etc.)
[x] This feature would agree with the rest of TypeScript's Design Goals.

⭐ Suggestion
Add a new syntax satisfies T (where T is a type) that can be used at positions where a type annotation is expected.
// As a type annotation for const
const magicNumber: satisfies number = 42;

// As a return type annotation
function getMagicNumber(): satisfies number {
  if (Math.random() < 0.5) {
    return 42;
  } else {
    return 0;
  }
}

The above code should have the same meaning as the following code that utilizes TypeScript 4.9's exp satisfies T syntax.
// Above code in currently supported syntax
const magicNumber = 42 satisfies number;

function getMagicNumber() {
  if (Math.random() < 0.5) {
    return 42 satisfies number;
  } else {
    return 0 satisfies number;
  }
}

The behavior of the new satisfies T type annotation syntax can be summarized as follows:

Final type of a satisfies T annotation is still left to inference.
When a variable declaration has a satisfies T annotation, the satisfies T constraint is applied to its initiator.
When a function's return type has a satisfies T annotation, the satisfies T constraint is applied to all return statements in it.

🤔 How about function parameters?
Function parameter could have a satisfies T annotation but it doesn't make any additional sence. If it is allowed anyway, it should be have the same as just T.
function useNum(num: satisfies number) {
  // ...
}

📃 Motivating Example
People have found TS 4.9's exp satisfies T syntax very useful, especially when one wants to explicitize a simple constraint against a variable and get contextual typing for its initializer, while also preserving its precise type for further type calculation.
For ease of understanding what a variable is meant for, its type constraint should be put as close as possible to the declaration of variable. The ordinary type annotation plays very well in this view.
type NumberClassifier = (num: number) => string;

const classifyToOddAndEven: NumberClassifier = (num) => {
  if (num % 2 === 0) {
    return "even";
  } else {
    return "odd";
  }
}

However, in order to extract more sophisticated information through type inference, we resort to the exp satisfies T syntax, which results in distance between variable definitiion and constraint: (note: assume we need contextual typing too, so that either type annotation or satisfies is necessary.)
const classifyToOddAndEven = ((num) => {
  if (num % 2 === 0) {
    return "even";
  } else {
    return "odd";
  }
}) satisfies NumberClassifier;

The proposed syntax has benefit of both ordinary type annotations and TS 4.9 exp satisfies T syntax.
const classifyToOddAndEven: satisfies NumberClassifier = (num) => {
  if (num % 2 === 0) {
    return "even";
  } else {
    return "odd";
  }
};

You might think that inlay hints help recognizing the type of classifyToOddAndEven, but actual types are often too complex to be fully shown, nor as descriptive as satisfies constraints. In practical situations actual types are only for type-level culculation  and nor for human recognization.

The satifies T annotation for return type is also proposed for similar motivation.
Instead of applying the satisfies T constraint to the whole function type, just constraining its return type is sometimes enough.
const classifyToOddAndEven = (num: number): satisfies string => {
  if (num % 2 === 0) {
    return "even";
  } else {
    return "odd";
  }
};

This is still preferable to the existing syntax that we don't have to repeat the satisfies constraint.
Another small motivative example: Playground (thanks @progfay!)
💻 Use Cases
My actual use case in mind is about writing GraphQL resolvers.
Thanks to Graphql Code Generator we can generate type defintion for resolvers. However, generated type definition are too permissive because it allows several different ways of writing resolvers. As a result, further type-level calculation using the generated type is hard.
import type { User, UsersResolver } from './generated-type-definitions';

const usersResolver: UsersResolver = async () => {
  const usersFromDb: User[] = /* ... access database ... */
  return usersFromDb;
};

type ResultType = ReturnType<typeof usersResolver>;
// ↑ Promise<User[]> is ideal, but actual type is Promise<(User | Promise<User>)[]>

With the proposed syntax, calculation of ResultType in the above example can be improved.
import type { User, UsersResolver } from './generated-type-definitions';

const usersResolver: satisfies UsersResolver = async () => {
  const usersFromDb: User[] = /* ... access database ... */
  return usersFromDb;
};

type ResultType = ReturnType<typeof usersResolver>;
// ↑ Promise<User[]> 💕

The refined ResultType calculation then would be useful for unit testing where we want to use the knowledge that usersResolver returns a Promise<User[]>, not Promise<(User | Promise<User>)[]>.
Note again: use of satisfies in any form is necessary in above examples, as we want to heavy-use contextual typing when writing actual GraphQL resolvers.
🎨 Prior Art
The proposed feature is essentially the same as Rust's impl Trait. In Rust, actual type tends to become very complex and even impossible to write down as code. impl Trait acts as a descriptive placeholder.

This seems like effectively a duplicate of #51556, since hypothetically you would write
function getMagicNumber() {
  if (Math.random() < 0.5) {
    return 42;
  } else {
    return 0;
  }
} satisfies (...args: any[]) => number;

using that feature. #51556 also addresses a broader class of use cases (e.g. simultaneously constraining the parameter types as the return type) without introducing a type annotation syntax that only makes sense in a very small (1?) number of places.

BTW, why isn't
const usersResolver: satisfies UsersResolver = async () => {
  const usersFromDb: User[] = /* ... access database ... */
  return usersFromDb;
};

already solved by
const usersResolver = async () => {
  const usersFromDb: User[] = /* ... access database ... */
  return usersFromDb;
} satisfies UsersResolver;

? What would the difference between these forms be, if any?

What would the difference between these forms be, if any?

The point would be that the variable definition const usersResolver and its constraint satisfies UsersResolver becomes closer to each other with the proposed syntax. If a function is large, you can't see other important information (function name, parameter name, etc.) and the satisfies constraint at a grance if the satisfies constraint comes after function body.

While I agree with that as being an upside, I don't think it merits the trade-off compared to making a type psuedo-operator that only works in certain places. Tracking the use case at #51556

I, too, would like to see const x: satisfies T = ...; be allowed. I have some large object literals where I want to check that every value has type V without losing the type information about the keys (so const x: Record<string, V> wouldn't work, because then I can't declare type K = keyof typeof x). As I understand, one of the primary purposes for the satisfies operator is to replace use-cases like this where a generic identity function is otherwise needed; so the consequence of moving the type annotation from the first line of the declaration to the end of it is unfortunate:
const x = (<K extends string>(obj: Record<K, V>) => obj)({
    // hundreds of lines of code
});

// becomes:

const x = {
    // hundreds of lines of code
} satisfies Record<string, V>;

I disagree that the linked issue is a duplicate, because it would leave the type information at the end of the declaration where it is less likely to be seen, and would do nothing for declarations that aren't functions.
I understand that the expr satisfies T syntax is consistent with how the as operator is written, but personally I don't think of satisfies as a checked as, I think of it as a non-widening type annotation. Syntactically speaking, x: satisfies T would have the same status as x!: T or x?: T. You could make the same argument that ! and ? here are "pseudo-operators that only work in certain places"; likewise, it makes no sense to write function foo(x!: T) {} or const x?: T;, and those are syntax errors.

For anyone who supports this proposal, here is a TypeScript Language Service Plugin that might satisfy you... Hope it helps.
https://github.com/uhyo/ts-satisfactory-plugin

i'm humbly (as someone who's not himself a maintainer of TypeScript) requesting that this proposal be re-opened for consideration on the grounds that https://github.com/microsoft/TypeScript/issues/52195#issuecomment-1380763840 's

type psuedo-operator that only works in certain places

already exists in TypeScript in other forms (i'm interpreting it correctly - e.g. type predicates) while prior arts such as Swift's some operator challenge the idea that we shouldn't think a similar feature in TypeScript

merits the trade-off


Fix Stopping Logic and Maintain Stopping Latch Counter

Fixed stop logic by preventing to stop dead-thread tasks and also maintaining stopping latch counter irrespective of success or failure in acquiring task lock.
Important: DO NOT REPORT SECURITY ISSUES DIRECTLY ON GITHUB.
For reporting security issues and contributing security fixes,
please, email<EMAIL_ADDRESS>instead, as described in
the contribution guidelines.
Please, take a minute to review the contribution guidelines at:
https://github.com/linkedin/Brooklin/blob/master/CONTRIBUTING.md

@shrinandthakkar Can you please drive this to completion?


Parse .. as a full pattern

Resolves #1479.
This PR implements RFC 2707 in the parser. It introduces a new DotDotPat AST node modeled on PlaceholderPat and changes the parsing of tuple and slice patterns to conform to the RFC.
Notably, this PR does not change the resulting AST when .. appears in a struct pattern (e.g. Struct { a, b: c, .. }). I think this is the behavior mandated by RFC 2707, but someone should confirm this.

I think this is the behavior mandated by RFC 2707, but someone should confirm this.

Yeah, I think this makes sense: the things between {} are not patterns, so one can't have S { [x,y,z] }, for example, so it seems ok to treat .. specially.
bors r+

I think this is the behavior mandated by RFC 2707, but someone should confirm this.

Confirm :)


Improve JSON-LD data

This PR removes the escaping of the JSON-LD data.

Add react-helmet
Improve JSON-LD data

Fixes #313.

Looks like this validation works 😊
@egonw to prevent from a premature merge from my side (again) - is there anything else that's top of mind for you if the validator passes without errors/warnings?

No, I would suggest to merge this in. Next step is to map the various module types to more specific schema.org types.

Thanks @egonw! I will merge this and take a looksie over in your much appreciated PR 😊


Request failed with status code 429

Hello, I'm just trying BabyGPT right now but I'm having this error when launching a task :
'Request failed with status code 429'
It seems correlated with too musch requests in some ways.
I have not set a PINECONE_API_KEY, just a valid OpenAI key inside the UI.
I'm searching but I can't figured it out

I just saw that I was out of credits ^^


Added Security fix to package.json

Added Security fix for package.json

@balasgit can you fix the merge conflicts before submitting this ?


about file list.txt

@XiaohangZhan Hello author. When I prepare my own data, the file list.txt is missing. Is this list file necessary? What is its role? Is the address index mentioning features? I already have the feature.bin file, do I not need list.txt, or assist in generating KNN graph? If there is no need to modify the code somewhere. Looking forward to your early reply.

Not necessary. It was to check the length of the feature file previously.

@XiaohangZhan Hello author, realize that you are one of the authors of the 20-year CVPR article Learning to Cluster Faces via Confidence and Connectivity Estimation, here I want to ask questions about the VEGCN project, it is about the test of gcn_v on large data sets, I am in When using GCN_V to test MS1M-part9, there was a problem of'out of memory'. If batch_size_per_gpu=1, the problem still exists. I would like to ask how to solve this problem. Looking forward to your reply。

@Linsongrong You'd better directly contact Lei Yang for details<EMAIL_ADDRESS>

@XiaohangZhan Thank you for your reply, I will contact him back. When I reproduced your work, there were some problems. When I used the CDP single model to perform clustering experiments on MS1M part9, there was a problem when connecting to the cluster. ‘index 2645365 is out of bounds for axis 0 with size 578238
"What is the reason for this and how can I solve it?"

Did you change the code? The original code won't raise errors like that. Here are tips for debugging:

Check if args.total_num is correct. if not, please ensure the list.txt file has correct number of lines and the feature file is correct. The content of list.txt does not matter, the number of lines should be correct.
Check if the maximal value in variable pairs in line 88 is less than args.total_num.
Check if the length of KNN results is equal to args.total_num.

You are right, I solved the problem. Thanks


Failed to legalize operation onnx.Resize.

The ONNX operator onnx.Resize fails with Failed to legalize operation 'onnx.Resize' during lowering , as reported in https://github.com/nod-ai/SHARK-Turbine/issues/812

@aldesilv seems to have worked on this (https://github.com/llvm/torch-mlir/commit/ec6d7aa5d28f110aa5b893e16e502e6198988801 )

We are not seeing this issue anymore in ONNX models so closing this


vmTools: misc debian tool improvements

Description of changes
These make the deb-based distro image generation tools more versatile.
Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

Do you have an example to test this?

Here's what I did using this version of the code: https://github.com/lheckemann/nixbuntu-samples/


Document how to build from source

Since there's no hosting for the binaries right now, I added documentation on how to build them from source.

Thanks for this.  Do you think it makes sense to have build-package check out the appropriate tag before building?
I'm never sure how much effort to put into this kind of thing since all I can see is the nuget downloads, and no one ever really seems to complain about the lack of github downloads.  Well, I complain about it but I can usually get it built from source.
A bunch of binaries are available here: http://squishit.apphb.com/Download  But it is kind of painful to maintain (appharbor will not allow downloading files that are not actually included in the project).  I should probably go through and build the last few versions and get them included.

It seems like adding tag checkout would just make things more difficult: you'd also want error handling if the working-directory is dirty, and it would be harder to build your own custom version not based on a tag.
I see that the appharbor download page goes up to 0.9.7--is this not the latest release?

I just pushed 0.9.8, that is the latest release

I added a reference to the AppHarbor page to the README, since I haven't seen it listed anywhere else.

I'm sorry thought I had merged this, doing it now :)


Build basic intelligence into default config

Please check out existed function and code before submiting code. The default RPC host and protocol would be set to the same to AriaNg host automatically (ariaNgSettingService#initRpcSettingWithDefaultHostAndProtocol).

@mayswind how about the default port? Setup in docker/secured environment usually has nginx or other reverse proxy that will reuse the existing port and redirect traffic to corresponding internal ports by detecting /jsonrpc in url path.
I do agree my code is not following proper structure and require amend.

The default port of aria2 is 6800, and there are few people setting the rpc port to be the same as the http port.

Yes I do understand that.
Please excuse me for my question, but how would user usually setup their aria2 securely with SSL enabled? As far as I'm concerned serving the front end via https only is not providing any security benefits.
Given the context, if user has reverse proxy enabled and willing to take advantage of it, it would be routed via the same port that reverse proxy is listening to.
I might be looking out of the scope of this project, but it couldn't hurt to assume secured environment by default as https usage is growing rapidly nowadays.

The purpose of AriaNg is to provide a general frontend for aria2. So the default settings of AriaNg should be the default settings of aria2, instead of any custom scenes of anyone.


Add language identifiers to code blocks

Relates to #2192

On 30 Nov 2018 2:22 am, Mikkel Nylander Bundgaard<EMAIL_ADDRESS>wrote:
Relates to #2192https://github.com/dotnet/docs/issues/2192

You can view, comment on, or merge this pull request online at:
https://github.com/dotnet/docs/pull/9313
Commit Summary

Add language identifiers to code blocks

File Changes

M docs/csharp/programming-guide/concepts/assemblies-gac/how-to-determine-if-a-file-is-an-assembly.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-0 (2)
M docs/framework/data/adonet/dataadapter-parameters.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-1 (4)
M docs/framework/data/adonet/downloading-sample-databases-linq-to-dataset.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-2 (2)
M docs/framework/data/adonet/generating-commands-with-commandbuilders.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-3 (2)
M docs/framework/data/adonet/modifying-data-with-stored-procedures.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-4 (2)
M docs/framework/data/adonet/ref-cursor-examples.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-5 (4)
M docs/framework/data/adonet/retrieving-data-using-a-datareader.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-6 (2)
M docs/framework/data/adonet/side-by-side-execution.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-7 (4)
M docs/framework/data/adonet/sql-server-connection-pooling.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-8 (2)
M docs/framework/data/adonet/sqlclient-streaming-support.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-9 (10)
M docs/framework/data/adonet/updating-data-sources-with-dataadapters.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-10 (4)
M docs/framework/data/transactions/committing-a-transaction-in-single-phase-and-multi-phase.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-11 (6)
M docs/framework/data/wcf/how-to-manually-generate-client-data-service-classes-wcf-data-services.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-12 (4)
M docs/framework/debug-trace-profile/bindingfailure-mda.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-13 (2)
M docs/framework/debug-trace-profile/callbackoncollecteddelegate-mda.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-14 (8)
M docs/framework/debug-trace-profile/code-contracts.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-15 (4)
M docs/framework/debug-trace-profile/dangerousthreadingapi-mda.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-16 (2)
M docs/framework/debug-trace-profile/datetimeinvalidlocalformat-mda.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-17 (10)
M docs/framework/debug-trace-profile/how-to-use-tracesource-and-filters-with-trace-listeners.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-18 (4)
M docs/framework/debug-trace-profile/illegalprepareconstrainedregion-mda.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-19 (2)
M docs/framework/debug-trace-profile/invalidapartmentstatechange-mda.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-20 (2)
M docs/framework/debug-trace-profile/jitcompilationstart-mda.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-21 (2)
M docs/framework/debug-trace-profile/loadfromcontext-mda.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-22 (2)
M docs/framework/debug-trace-profile/memberinfocachecreation-mda.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-23 (2)
M docs/framework/debug-trace-profile/opengenericcercall-mda.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-24 (2)
M docs/framework/debug-trace-profile/performance-counters.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-25 (2)
M docs/framework/debug-trace-profile/reentrancy-mda.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-26 (2)
M docs/framework/debug-trace-profile/releasehandlefailed-mda.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-27 (2)
M docs/framework/debug-trace-profile/virtualcercall-mda.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-28 (2)
M docs/framework/deployment/in-process-side-by-side-execution.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-29 (4)
M docs/framework/docker/console.mdhttps://github.com/dotnet/docs/pull/9313/files#diff-30 (4)

Patch Links:

https://github.com/dotnet/docs/pull/9313.patch
https://github.com/dotnet/docs/pull/9313.diff

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/dotnet/docs/pull/9313, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AJZVQ1V9c2TvHwidtK-k8ox9KTACMRS4ks5u0GUvgaJpZM4Y6q_m.

Did you mean to say something @kvnndr0?


Semi Variogram

Hi there, first off thank you so much for developing this and doing all the hard math! I am a pretty green JS and kriging person and hopefully you can help me out.
My question for you is how to go about getting the data for building a variogram plot, like here https://vsp.pnnl.gov/help/Vsample/Kriging_Variogram_Model.htm
Plotting the theoretical model (e.g. the line) should be straightforward, i can just apply the .model property on the variogram object at different h values then square it.
However to get the pairwise distances to plot the data points, and their associated variances.... I don't know. I see on the variogram there are "t", 'K"  and "M". K seems to be something to do with the pairwise, as it's the length of the total number of points squared... There is also a kriging.variance method I found in the source code that might also be part of the equation... I could really use an explanation! Thanks so much.

Hi @gmerritt123, hope you doing well. Did you manage to plot the variogram (if yes i would like to see it) ? Thank you in advance.


create index function

when upload lzo file to hdfs, we often create a index file.
so I add a function to create index file.

This seems too specific to your usage to be merged here.


CI: Improve configuration options

This minor PR improves configuration options we discovered we needed when testing this, and I think could be useful for others, in what should be a fully backwards compatible way (the defaults values are the same as the current ci template):

Makes the runner tag configurable by making it a var (default: docker) (for example, we would use other runner tags then docker, like k8s etc)
Makes the downloader optional (default: enabled). This allows the user optionally use the default checkout of gitlab etc instead, as would be the use case if including it in a pipe etc NOTE: As GitLab does not allows naming the default checkout dir fully yet (the option ci_builds_dir  for runners is not enabled by default, see https://gitlab.com/gitlab-org/gitlab-runner/-/issues/4203, one might to need to change the project dir var when using this, as the user might not be able to set it to the default 'project'.
advisor script failed in our runtime image due to a missing bash newline in the script, fixed

@janderssonse  Thank you for your contribution, also noticed now that in https://github.com/oss-review-toolkit/ort-gitlab-ci/issues/7 you mentioned https://github.com/janderssonse/ort-action which is 404'ing.
Interested to develop with me on an official ORT GitHub action (https://github.com/oss-review-toolkit/ort/issues/3512)? If yes, please DM me on ORT Slack.

Can you also improve the commit messages? The ORT maintainers like Git commits that make our mums proud ;-), see our CONTRIBUTING.md
Below I listed some suggestions to improve the commit messages:
Advisorscript: Fix missing newline
ort-advisor: Fix missing newline which caused script failure

CI: configurable runner
gitlab-ci: Make GitLab runner configurable

Make the runner tag configurable by the user so other names then the default "docker" can be used.

CI: Optional ort downloader
gitlab-ci: Make Downloader script conditional

Make executing the Downloader optional to allow use of the default checkout of GitLab. This is usefule when ORT for GitLab is run in a pipeline where the project code is already cloned on pipeline start up.

Note: As GitLab does not allow naming the default checkout directory yet (as option `ci_builds_dir` for runners is not enabled by default, see https://gitlab.com/gitlab-org/gitlab-runner/-/issues/4203), users might to need to change the project directory variable in case the user is not be able to set it to the default 'project'.

@janderssonse  Regarding the "Makes the downloader optional" am I understanding you right that you are executing ORT for GitLab's .gitlab-ci.yml directly in your project pipeline instead of using parent-child mechanism so it executes in your mirror of the ORT for GitLab pipeline?

Thanks for the suggestions, will fix. Yes in the current runner for both GitLab and GitHub in the flow.
A .gitlab.ci-file looks like this.
include:
  - remote: <repoprojecturlwith-ci-files>/.ort-scan-template.yml
  - remote: <repoprojecturlwithci-files>/.post-bom-to-dependencytrack.yml

stages:
  - ....
  - ort-scan
  - upload-bom
  ....

(And the ort-scan-template is a modification of the current one in the ort-gitlab-ci project.
https://github.com/janderssonse/ort-ci-action/blob/main/gitlab/.ort-scan-template.yml)

Closing in this as we landed in other path after disussions.


Instruct models keep generating text after the end-of-sequence-token

Hi!
I noticed that for instruct models the stop_token_id in generate_model_answers.py is set to None. This causes instruct models (e.g. Mistral-7B-Instruct-v.0.2) to continue generating text after the end of sequence token (e.g. </s>) has been generated. Most of the time the instruct model starts a conversation with itself that diverges more and more from the original question. It only stops generating after the maximum number of tokens is reached. This is pretty inefficient but does not break anything yet. However, my worry is when probing for the token ids -8, -7, -6, -5, -4, -3, -2 and -1 in probe_all_layers_and_tokens.py, the last tokens of the very long response are probed and not the tokens before the </s> token. Is this correct?
If yes, I would suggest adding these lines into generate_model_answers.py:
if args.model == "mistralai/Mistral-7B-Instruct-v0.2":
print("EOS Token ID set")
stop_token_id = [tokenizer.eos_token_id, tokenizer.convert_tokens_to_ids("</s>")]
and correspondingly with "<|eot_id|>" for Llama3-8B-Instruct. When setting the eos_token_id in model.generate() to values other than None, the transformers library wants you to pass an attention mask to the LLM as input. This is why the tokenize function also has to be modified to return the attention mask in addition to the tokenized input. Fixing this requires changing quite a few small things in the code which is why I wanted to discuss the issue here first.

Hi,
Thanks for catching this!
This definitely wasn't the case for the runs in the paper - the generation stopped at the stop_token_id. Probably something went wrong during my code refactoring before I released it, and I missed it in my tests. I'll take a look and update soon.


Switch to the new structured errors

The new structured errors are implemented in https://github.com/nearprotocol/nearlib/pull/163. We cant' enable the new errors format as long as all nodes are not upgraded with https://github.com/nearprotocol/nearcore/pull/1854
https://github.com/nearprotocol/nearlib/blob/cf9aa908a6205d7175c6b25224b6c20e2f348e36/src.ts/providers/json-rpc-provider.ts#L74-L83

@vgrichina can be closed?

closing. looks like it's live


Nissan Leaf Integration (Carwings / NissanConnect EV)

Description:
Adds support for monitoring and controlling the Nissan Leaf remote control platform.
Currently introduces two switches (climate control and charging, charging can only be turned on as per the API limitation), 3 sensors (battery charge and range with and without AC on), a binary sensor for if the car is currently plugged in, device tracker for the car location (if the car is capable).
I'm based in the UK with a 2016 30kWh leaf so assistance from others is very useful.
Related issue (if applicable): fixes #
Pull request in home-assistant.io with documentation (if applicable): home-assistant/home-assistant.io#<home-assistant.io PR number goes here>
Example entry for configuration.yaml (if applicable):
nissan_leaf:
  username: "username"
  password: "password"
  region: 'NE'     # Indicates Europe, must be changed for other regions
  nissan_connect: true  # Set to false for early Leafs 24kWh that don't report location
  update_interval:
    hours: 1
  update_interval_charging:
    minutes: 15
  update_interval_climate:
    minutes: 5
  force_miles: true

Checklist:

[X] The code change is tested and works locally.
[ ] Local tests pass with tox. Your PR cannot be merged unless tests pass
[ ] There is no commented out code in this PR.

If user exposed functionality or configuration variables are added/changed:

[ ] Documentation added/updated in home-assistant.io

If the code communicates with devices, web services, or third-party tools:

[X] New dependencies have been added to the REQUIREMENTS variable (example).
[X] New dependencies are only imported inside functions that use them (example).
[X] New or updated dependencies have been added to requirements_all.txt by running script/gen_requirements_all.py.
[X] New files were added to .coveragerc.

If the code does not interact with devices:

[ ] Tests have been added to verify that the new code works.

Hello @filcole,
When attempting to inspect the commits of your pull request for CLA signature status among all authors we encountered commit(s) which were not linked to a GitHub account, thus not allowing us to determine their status(es).
The commits that are missing a linked GitHub account are the following:

418b6bbcc49cf2909aac85869440435410abf3fd - This commit has something that looks like an email address (phil@debian.cole). Maybe try linking that to GitHub?.

Unfortunately, we are unable to accept this pull request until this situation is corrected.
Here are your options:

If you had an email address set for the commit that simply wasn't linked to your GitHub account you can link that email now and it will retroactively apply to your commits. The simplest way to do this is to click the link to one of the above commits and look for a blue question mark in a blue circle in the top left. Hovering over that bubble will show you what email address you used. Clicking on that button will take you to your email address settings on GitHub. Just add the email address on that page and you're all set. GitHub has more information about this option in their help center.

If you didn't use an email address at all, it was an invalid email, or it's one you can't link to your GitHub, you will need to change the authorship information of the commit and your global Git settings so this doesn't happen again going forward. GitHub provides some great instructions on how to change your authorship information in their help center.

If you only made a single commit you should be able to rungit commit --amend --author="Author Name<EMAIL_ADDRESS>
(substituting Author Name and<EMAIL_ADDRESS>for your actual information) to set the authorship information.
If you made more than one commit and the commit with the missing authorship information is not the most recent one you have two options:

You can re-create all commits missing authorship information. This is going to be the easiest solution for developers that aren't extremely confident in their Git and command line skills.
You can use this script that GitHub provides to rewrite history. Please note: this should be used only if you are very confident in your abilities and understand its impacts.

Whichever method you choose, I will come by to re-check the pull request once you push the fixes to this branch.

We apologize for this inconvenience, especially since it usually bites new contributors to Home Assistant. We hope you understand the need for us to protect ourselves and the great community we all have built legally. The best thing to come out of this is that you only need to fix this once and it benefits the entire Home Assistant and GitHub community.
Thanks, I look forward to checking this PR again soon! :heart:

Aborting this pull request because rewriting git history created a huge merge.  Will rebuild a branch from a fresh fork of homeassistant in a nissanleaf branch.


Google Closure compiler warns about missing classes that appear in lib.d.ts but not in the Apache FlexJS externs

The results of dts2as 0.7 no longer result in a compiler error because this version now builds the lib.d.ts into a SWC before compiling the outSWC. However, Google Closure compiler now displays a warning for missing classes. Changed name of this issue to reflect the new situation, but I have no plans to fix anything since it doesn't seem to break. The externs in Apache FlexJS should eventually be updated.


Per-function requirements cannot use package include

I use per-function requirements
├── serverless.yml
├── config
│      └── settings.py
├── function1
│      ├── requirements.txt
│      └── index.py
└── function2
├── requirements.txt
└── index.py
serverless.yml is
package:
individually: true
functions:
func1:
handler: index.handler
module: function1
func2:
handler: index.handler
module: function2
package:
include:
- config/**
issuse is : the config/** wouldn't be include in func2. how can didi it

Hmm. I think it'd work if you do:
cd function1
ln -s ../config
cd ../function2
ln -s ../config
cd ..
sls deploy

I agree that's not optimal, but I think it should work. Any input @cgrimal, since you implemented the per-function requirements?

I managed to reproduce the issue indeed. That said, the handling of linking (now injecting) has been completely reworked since i implemented this feature and I don't see where the include directive is supposed to be handled. It might be a bug I'm afraid.
Even though @dschep's workaround should work, you can also use the vendor mechanism. With your exact folder structures, it works with this minimal serverless.yml file:
service: issue_168

provider:
    name: aws
    runtime: python3.6

package:
    individually: true
    include:  # not working :'(
        - config/**

functions:
    func1:
        handler: index.handler
        module: function1
        vendor: ./config
    func2:
        handler: index.handler
        module: function2
        vendor: ./config

plugins:
  - serverless-python-requirements

You can run the sls package -v -f func1 command, and look into the function1.zip artefact created in the .serverless folder.

@dschep @cgrimal thanks, i will use vendor temporary.

Hi @cgrimal, I have a very similar structure to OP (the folder is called common instead of config) and I've tried to use vendor as you suggested but the folder does not get included.
airwitsX3:
  handler: airwitsX3.handler
  module: iot/processing/airwitsX3
  vendor: ./common
  events:
    - stream:
        type: kinesis
        arn: "arn:aws:kinesis:${self:custom.region}:${self.custom.streamID}:stream/${self:custom.streamName}"

I have also tried @dschep's suggestion to put a symlink, this works but it's not possible to use exclude or slimPatterns anymore (I have a few tests in there).
I have tried to have a look in the source code but I'm not familiar with serverless plugin structure and cannot find the point where the vendor key is taken into account.
Is there a way to make either include or vendor work again?
Thanks!

Hi @antoniocaiazzo, I'm afraid I haven't been using (or working on) this project for too long now, and I don't think I can help you. You'll have better chances if you open a new issue (you may still reference this one).
I hope you'll find a solution.


Possibility to add excluded tags to the filter

Similar to how Obsidian allows to add '-' before a search term to exclude it from the results.
Would help to narrow down the filtering.
Maybe with mouse Alt-Click.

I also was hoping to be able to exclude tags. For example, I'd like to be able to hide everything with the archive tag. Thanks.


Proposal: Flip email queuing paradigm around (breaking change)

Status Quo
Right now each application connects to a central database and uses a database router to make sure sent emails end up in that central database. This has been working fine, but there are some downsides:

All of our applications are relatively simple with only have one main database, so introducing a second database with the required router adds unnecessary complexity. Testing in particular has been a sore spot.
Having each application responsible for connecting to the central database spreads the complexity around, which on one hand is nice -- it's a small amount of mental overhead per application -- but spreading it amongst the distributed apps means a bunch of small bits of complexity adds up.
It's not hard to see that this probably doesn't scale very well. We haven't reached that point (and may never), but each new application using the relay adds more and more mental overhead.
Once an application queues up an email to send, there's no way to see the status of the email from within the application. You need to go to the central database to do that. We could add some admin to the app to enable this, but then every application would be able to see all the emails sent across all applications using the service which a) is a pain and b) potentially not the most secure. We could get around this by adding something like an application_id to the Message model and have each application register itself with a unique id. Then in the admin filter just the application's emails, but I don't love that as it's adding and spreading even more complexity around (see the previous point). How are the ids generated? How is each application registered with the relay service? Etc.
Version upgrades of the library are non-trivial, requiring coordination across all applications and the relay service.  Some of this was alleviated by the recent addition of the library's version in the metadata of the messages.

I wrote this library to solve a very specific problem we have at work. We have our applications running where they cannot access our corporate internal SMTP server. Using an external ESP was not feasible as the various spam and security features of our email provider were flagging our applications' emails.
I chose a database queue because I wanted something robust that was (relatively) simple to run. At the time I was not interested in running another service e.g. a message queue like Redis or RabbitMQ. But that may change in the future and adding support for that in this library as it's currently designed would be non-trivial. (YAGNI of course, so this is not the ultimate goal of what I'm proposing, but would be a nice side-effect.)
Proposal
I think instead of each application and the relay service using on central database, instead it should be flipped around the other way. Each application uses its own default database for queuing emails and the relay service connects to each one to get queued emails to send.
When I first had this thought, I dismissed it as a bit silly and me looking for a way to over engineer something (which I am wont to do). But as I've sat with the idea, I do think it solves a lot of the problems with the current state of things:

It would simplify using the library at the application level. Instead of spreading the complexity around all the applications, it would be centralized in the relay service.
Each application would have access to their own queue since it would just be in its own database. No need to worry about seeing other application's emails or introducing a way to associate and filter based on the application.
Version upgrades would no longer need to be so tightly rolled out. We would need to specify which versions of the library we support, and as long as the applications stick to that it should be fine. The relay service would be responsible for handling different versions in the case of any potential changes to the message schema. (Am I seriously proposing something like LTS versions for an emailing library? Yes, I think I am. 🙃 Though in all seriousness sticking to SemVer +-1 would probably be the most straightforward.)
Using something other than a database queue would be easier to implement, provided the relay service can communicate with the new queue.
The relay service could be its own full blown Django application, with a fancy dashboard and everything. ✨

Using this approach would make the relay service much more complex than it currently is, so it's not all upside. The service would need to connect to each application's database somehow, so it would need to know where the database is and would need to be accessible from wherever the service is running. It would shift the complexity of the version upgrades from a coordination issue to a logic issue within the service itself. But those tradeoffs may be worth it. 🤷♂
Gathering Feedback
This would be quite a big breaking change from how the library works and I'm not totally sold on it yet, but something needs to change and this is what I've come up with at the moment.
To be honest, I'm not even sure how many if any users actually use this library. According to pypistats.org it does get a non-zero amount of installs, but I have no way how many of those are our own vs automated bot services vs actual users.
I'm opening this issue to gather feedback for this proposal and pinning it. I will more than likely be following through with this, but I still need time to consider all the sides to it. If there are users that have issues with this proposal, this is the place to post them. I'm open to any honest feedback, but since this library is primarily written to solve a very specific problem for the company I work for, I can't promise anything other than I will listen.

After thinking on this, I wonder if both paths can't coexist, at least for a little while. So keep the EmailDatabaseRouter for the applications for now, but expand the relay service to be able to read from other database queues. That would certainly ease the transition from a central queue to each application having it's own queue.

It would make this not a breaking change for now, which would be nice. We could mark the router as deprecated, slated for removal in some future release. It could give people time to migrate, if there are people using this application besides @westerveltco. Selfishly, it would make it easier for me to migrate all of our apps to the new way of handling the email queue.

Let's queue up some time to discuss it next week.

I think instead of each application and the relay service using on central database, instead it should be flipped around the other way. Each application uses its own default database for queuing emails and the relay service connects to each one to get queued emails to send.

"Each application uses its own default database for queuing emails" I thought we were already doing this.
"relay service connects to each one to get queued emails to send." - I personally wouldn't want to do this.
I think we should figure out what is problematic or weird about the existing setup, and ideally, every email should be sent immediately. If there is an issue, having a queued backup with some history is reasonable. We should also think about the volume of email sent per project. Are we looking at 2, 20, 200, or 2000 emails per day, and is that worth keeping constant connections open?
Maybe you want the service behind the firewall to only talk with one service outside of the firewall that everything else can relay through which would cut down the O(n) connection issues on either side?


setup configmap with certs and mount them in required workbenches

Related-to: https://issues.redhat.com/browse/RHOAIENG-4327
https://github.com/red-hat-data-services/kubeflow/pull/46
Cherry-picked: https://github.com/opendatahub-io/kubeflow/pull/279
This PR is specifically for RHOAI-2.8.1

Merging to get the RHOAI-2.8.1 prepared.