feat: use ArgoCD Vault plugin as CMP

Description of the changes
In this section, explain what and why not how.
In most cases, you can leave out details about how a change has been made. Code is generally self-explanatory in this regard (and if the code is so complex that it needs to be explained in prose, that’s what source comments are for). Just focus on making clear the reasons why you made the change in the first place, the way things worked before the change (and what was wrong with that), the way they work now, and why you decided to solve it the way you did.
Breaking change

[ ] No
[ ] Yes (in the Helm chart(s)): indicate the chart, version & release note link
[ ] Yes (in the module itself): give an explanation of the breaking change

Tests executed on which distribution(s)

[ ] KinD
[ ] AKS (Azure)
[ ] EKS (AWS)
[ ] Scaleway
[ ] SKS (Exoscale)

As discussed on our weekly, I'll close this PR.

As discussed on our weekly, I'll close this PR.


[Question] Multiple page.goto in a spec/test file

I have a test where I page.goto and page.close for each test. Something like this:
describe('Google', () => {
    it('should display "google" text on page', async () => {
        await page.goto('https://whatismybrowser.com/')
        const browser = await page.$eval('.string-major a', el => el.text)
        expect(browser).toContain('Chrome')
        await page.close()
    })

    it('this is the second test', async () => {
        await page.goto('http://whatsmyuseragent.org/')
        const browser = await page.$eval('.intro-text', el => el.text)
        expect(browser).toContain('Chrome')
        await page.close()
    })
})

How can I achieve this, as the test crashes because the browser gets closed? Or should I just separate the tests instead, one file per page.goto, then just wrap each page.goto in a beforeAll function?

Hmm, just found that browser is exposed as a global variable. Can I use that? Not sure if I could since it's not in the docs. Or maybe I should add that in the docs?
    console.log(Object.keys(page))
    console.log(Object.keys(browser))
    const context = await browser.newContext()
    console.log(Object.keys(context))
    const mypage = await context.newPage()
    console.log(Object.keys(mypage))

@aesyondu I suppose you should close page just after all tests, like so:
describe('Google', () => {
    it('should display "google" text on page', async () => {
        await page.goto('https://whatismybrowser.com/')
        const browser = await page.$eval('.guides a', el => el.text)
        expect(browser).toBe('Get help')
    })

    it('this is the second test', async () => {
        await page.goto('http://google.com/')
        const title = await page.title()
        expect(title).toBe('Google')
    })

    afterAll(async () => {
        await page.close()
    });
})

@aesyondu yeah! You can use browser from global, but I don't want to put it in documentation right now, cause I want keep this package as simple as possible without extra variables and params

Ok I got you. Thanks for the heads up.


frankenphp: break loop when loopMax is reached

Fixes the issue that the loop doesn't exist when $loopMax is reached, but $loopMax+1. Please refer to https://github.com/php-runtime/runtime/pull/173 for details.

@tamcy Thank you for the contribution 👍 ! @dunglas Thx for the quick reviews.


Fastlane deliver new version (1.13.3) error

Issue Description
i can use deliver long time , before fastlane update version (1.13.3) .
my localizations can use long time , before fastlane update version (1.13.3) too.
INSERT OUTPUT HERE

Looking for related GitHub issues on fastlane/fastlane...
[15:22:50]: Error finding relevant GitHub issues: undefined method `map' for nil:NilClass
[!] The request could not be completed because:
What's New In This Version in French must be at least 4 characters in length. What's New In This Version in English (U.K.) must be at least 4 characters in length. What's New In This Version in German must be at least 4 characters in length. What's New In This Version in French (Canada) must be at least 4 characters in length. What's New In This Version in Chinese (Traditional) must be at least 4 characters in length. What's New In This Version in Dutch must be at least 4 characters in length. What's New In This Version in Swedish must be at least 4 characters in length. What's New In This Version in Vietnamese must be at least 4 characters in length. What's New In This Version in Finnish must be at least 4 characters in length. What's New In This Version in Portuguese (Brazil) must be at least 4 characters in length. What's New In This Version in Spanish (Mexico) must be at least 4 characters in length. What's New In This Version in English (Canada) must be at least 4 characters in length. What's New In This Version in Spanish (Spain) must be at least 4 characters in length. What's New In This Version in Malay must be at least 4 characters in length. What's New In This Version in Danish must be at least 4 characters in length. What's New In This Version in English (Australia) must be at least 4 characters in length. What's New In This Version in Indonesian must be at least 4 characters in length. What's New In This Version in Portuguese (Portugal) must be at least 4 characters in length. What's New In This Version in Italian must be at least 4 characters in length. What's New In This Version in Greek must be at least 4 characters in length. What's New In This Version in Turkish must be at least 4 characters in length. What's New In This Version in Japanese must be at least 4 characters in length. What's New In This Version in Chinese (Simplified) must be at least 4 characters in length. What's New In This Version in Korean must be at least 4 characters in length. What's New In This Version in Russian must be at least 4 characters in length. What's New In This Version in Thai must be at least 4 characters in length. What's New In This Version in English (U.S.) must be at least 4 characters in length. Review Notes must be at least 2 characters in length. There are errors on the page and for 27 of your localizations.
please help me to fix it's.
Thanks T_T

@makeappioseasy
You might want to follow the issue template.

New Issue Checklist

[ ] Updated fastlane to the latest version
[ ] I have read the Contribution Guidelines

Issue Description
Complete output when running fastlane, including the stack trace and command used
INSERT OUTPUT HERE

Configuration Files
Please copy the complete content of your Fastfile and any other configuration files you use below:
Fastfile:
# INSERT CONTENT HERE

Environment
fastlane version (run fastlane -v):
Do you use bundler to execute fastlane (i.e. bundle exec fastlane)?
Do you use a Ruby environment manager (e.g. chruby, rbenv, rvm)?

This is a metadata error, make sure to read and address the error message you received 👍


move exp-asynccache to be a peer dependency

It's a long time since I did this PR so this is as far as I can remember.
The biggest problem was when I updated exp-asynccache and tried to upgrade that package in existing projects: if the project in question used exp-fetch then there would exist multiple versions of exp-asynccache and at some times it had weird side-effects such as not knowing what API was actually in use. Specifying it as a peer dependency would alleviate some of those problems.

I'm a little bit torn on the implementation:
exp-fetch includes a cache by default, which constitutes a requirement to install exp-asynccache. However, you can set cache: null, but that still requires you to install the cache lib.

Closing this because of lack of inactivity


Url and db exclusive

#3 also kind of #4. But I still think something like mocha would clean the test file if more tests get added.

Nice :) And agreed about mocha.


issue: hybrid search

Bug Report
Installation Method
pip (updated once)
Environment

Open WebUI Version: v0.4.8

Ollama (if applicable): ollama -v = 0.5.4

Operating System: Ubuntu 24.04.1 LTS

Browser (if applicable): LibreWolf (Firefox fork from stable latest)

Confirmation:

[*] I have read and followed all the instructions provided in the README.md.
[*] I am on the latest version of both Open WebUI and Ollama.
[*] I have included the browser console logs.
[*] I have included the Docker container logs.
[ hopefully ] I have provided the exact steps to reproduce the bug in the "Steps to Reproduce" section below.

Expected Behavior:
When invoking RAG on the referenced library (uploaded folder) with # it goes always with some info returning to me in the chat flow.
But I can't know reliably if it does what is to be expected from that - go through the chunks from that #referenced_folder (with help of some RAG template) as > embed <> rerank > send it to LLM.
Can get some sense only after it does something (because of what is returned back from LLM).
But as the results were often unsatisfactory did 'dig in the process' and actually seems to me it failing silently - with different stages - to be described below.
Only clear error is if the request is too big for context window of LLM, otherwise the effort is wasted or incomplete response.
Actual Behavior:
There are 3 states of what hybrid search (as sourcing document from knowledge/RAG) ending after run with my set up:

does somehow run with no error in CLI, but return nothing - printing out:

INFO  [open_webui.apps.retrieval.utils] query_doc_with_hybrid_search:result [[]] [[]]
For this obtained answer from LLM usually stating 'Unfortunately, no document was provided for this task. However, I can provide some general information ..' because there is no info processed from knowledge base.

some Error (that is why I'm filling under this report type) - for example the latest is:

ERROR [open_webui.apps.retrieval.utils] Error when querying the collection with hybrid_search: 'dict' object has no attribute 'split'

INFO  [open_webui.apps.ollama.main] get_all_models()
INFO  [open_webui.apps.ollama.main] url: http://localhost:11434
ERROR [open_webui.apps.retrieval.utils] Error when querying the collection with hybrid_search: 'dict' object has no attribute 'split'
Traceback (most recent call last):
  File "/home/home/open-webui/venv/lib/python3.11/site-packages/open_webui/apps/retrieval/utils.py", line 216, in query_collection_with_hybrid_search
    result = query_doc_with_hybrid_search(

/Deleted quite a lot of lines - should that be here(?) - it's similar to the Traceback, just different .py files./
ending with this:
AttributeError: 'dict' object has no attribute 'split'
400 Client Error: Bad Request for url: http://localhost:11434/api/embed
'NoneType' object has no attribute 'ids'
ERROR [open_webui.apps.retrieval.utils] Error when querying the collection: 'NoneType' object has no attribute 'ids'
Traceback (most recent call last):

and last part
AttributeError: 'NoneType' object has no attribute 'ids'
400 Client Error: Bad Request for url: http://localhost:11434/api/embed
'NoneType' object has no attribute 'ids'
ERROR [open_webui.apps.retrieval.utils] Error when querying the collection: 'NoneType' object has no attribute 'ids'
Traceback (most recent call last):

Similar to(?) #https://github.com/open-webui/open-webui/discussions/7437

sometimes there is multiple returned INFO  [open_webui.apps.retrieval.utils] query_doc_with_hybrid_search:result.

Usually if it return matching {chunks0},{chunk1}..up to {chunkXX}, that the next after this first is:
a) less filled or even empty,
or
b) empty and 3th containing few chunks
Obtained so far maximum of 3 returned if it does not fail.
Don't know really how many returned query_doc_with_hybrid_search:result [[]] [[]] there should be.
Description
Bug Summary:
It will be great to let me know there is some state of returned RAG and ask me if I would like to:

send only my prompt with no context into LLM
or
to let me repeat RAG
or
in case of ERROR - show user info in form that exist now already in UI as for example 'context window limit exceeded'

Reproduction Details
Steps to Reproduce:
Not sure if it can be reproduce, it just does happen, don't know why or how to trigger that with certainty.
My installation is, maybe that help:
starting service with env variable (export USE_CUDA_DOCKER=true) in ~/.bashrc
(Info from #https://github.com/open-webui/open-webui/discussions/6530)
source open-webui/venv/bin/activate
open-webui serve --port some_port
OWUI does start with CUDA info:
CUDA is enabled, appending LD_LIBRARY_PATH to include torch/cudnn & cublas libraries.
CUDA seems to be working

and only warning is CORS_ALLOW_ORIGIN IS SET TO '*' - NOT RECOMMENDED FOR PRODUCTION DEPLOYMENTS.
Ollama is running as well - from watch -n 10 'journalctl -e -u ollama' I can't see any error during the RAG.
Tika, Ollama and the Open AI API are OK - confirming connection in the settings.
Documents/RAG set up is:
Embedding Model Engine: Ollama
Embedding Batch Size: 10
Embedding Model: nomic-embed-text:latest
Reranking Model: BAAI/bge-reranker-base
Content Extraction: Tika (on same machine in Docker - in the time of error/empty response can't see any error in the console).
Top K: 40
Minimum Score: 0.20
Chunk size 1024 - with 128 overlap
Text Splitter: Tiktoken
OCR: on

Have Nvidia only with 4GB VRAM - yet models does fit in afaik.
(NVIDIA-SMI 550.120                Driver Version: 550.120        CUDA Version: 12.4)
GPU utilization spike up (when first attempt made after start of OWIU, it fill up VRAM or load again if there has been a release after no use for awhile) but despite that no returned data in array.
In case of Error it seems to me that there is attempt, but small spike just as quick sharp angle to be seen on graph.
But as I do not know for sure it happening until LLM response - do not catch that up yet to be sure.
Usually after one or occasionally more attempts there is meaningful outcome - if the empty one or error happened.
Also sometimes the referenced files are in line below response (if can't fit in, with drop down to list them all) and sometimes they are referenced directly in the response.
Not sure how can that be controlled so far - but definitely best LLM response is with direct link to the doc from rather than the below option.
Logs and Screenshots
Docker Container Logs:
Can only see those and the time does not match the behavior/attempts for RAG - it does match the document processing (embedding).
Example:
WARN  [qtp47918293-17] 19:39:03,238 org.apache.pdfbox.pdmodel.font.PDTrueTypeFont Using fallback font LiberationSans for ArialMT
INFO  [qtp47918293-21] 19:39:08,333 org.apache.tika.server.core.resource.TikaResource /tika (application/pdf)
Additional Information

feels a bit like happening often as with the first attempt to RAG the referenced library, or after starting the OWUI

do not know what that error is

that is somehow correct response from the hybrid search - just it's odd if multiple of them is returned with one [[]] empty

What is correct finish of this procedure anyway?
Overall - the very next invoked repeat from UI (so no change in prompt - just repeating the same again) are usually OK, rarely it fail twice in a row.
So far more than 200 questions in chat with RAG, multiple times did reset Upload and Vector storage.
Fiddling with Chunk params, Query params (Minimum score helps a lot to have at least 'some').
Changing the Embed/Rerank models (but mostly to fit it in VRAM and not having to wait for load while also can work RAG'ing through files - so can't compare much as bigger ones having problems as GPU memory insufficient - thus not anyhow related to this).
Found out this #https://github.com/open-webui/open-webui/discussions/3868#discussioncomment-10782274 - but unsure if that is the same case. My prompt is not above 2048 words/tokens counting for with RAG template, and my chunk is half size to be processed.
I'm missing something here maybe?
Did set the Context length to 4K at least for my chosen Embedding Model: nomic-embed-text:latest - run some RAG several times and still having for example the empty HS [[]] response case.
Can't set up that for reranker - it's downloaded (that can be seen in cli after pressing download button) but not in the Models list.

I do not import documents into chat but rather reference them after mass importing into knowledge base to have it more on one place - thematically. It's not big numbers - usually 20 or so books or up to 50 .pdf to keep the context of the files concentrated.
And also to ease the load on machine.
RAM definitely with some free space at the moment and the CPU doesn't spike more than +-2/3 utilization while normally processing from RAG with good outcome.
Have OpenAI API connection for LLM (so there is no switching for GPU/VRAM after RAG) and the Interface Task Model is smallest that could be possibly installed - qwen2.5:05b - afaik.
That's because can't find a way how to disable this Task Model
Best option would be having an option stop/start - pause/hibernate this TM manually to autocomplete it's work later.
Can't fit bigger model to my flow because VRAM not big enough.
Otherwise TM consume API calls if remote option and thus switched to the local one.
Nevertheless - TM working all the time, as it completing my chats/tags/chat name.
With this and the RAG and setup it does not happen to me that VRAM overfill anyhow. For multiple days, many documents, many prompts.
No Audio/whisper yet.

Please add the full traceback for 2.

I can re-create 1., and I think the problem is the minimum score of 0.2, at least it is for me. My tested knowledge base is 4 documents of varying size and research topics, and if I ask a general question like

Whats the documents about?

The LLM (gemma2:2b) can answer me, but the relevance scores are at max at 0.01 (you can click on a source below the answer to see the relevance scores). If I set the min score to 0.2, the model get none of the sources because of the low relevance score.
When I ask a question about e.g. swin transformers (one of the papers is about that), I get a lot of chunks that far exceeds the 0.2 threshold and are therefore used.
One other thing, when I use sentence transformers as embedding model, I get the following error:
open-webui  | ERROR [engineio.server] post request handler error
open-webui  | Traceback (most recent call last):
open-webui  |   File "/usr/local/lib/python3.11/site-packages/engineio/async_server.py", line 317, in handle_request
open-webui  |     await socket.handle_post_request(environ)
open-webui  |   File "/usr/local/lib/python3.11/site-packages/engineio/async_socket.py", line 109, in handle_post_request
open-webui  |     p = payload.Payload(encoded_payload=body)
open-webui  |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
open-webui  |   File "/usr/local/lib/python3.11/site-packages/engineio/payload.py", line 13, in __init__
open-webui  |     self.decode(encoded_payload)
open-webui  |   File "/usr/local/lib/python3.11/site-packages/engineio/payload.py", line 44, in decode
open-webui  |     raise ValueError('Too many packets in payload')
open-webui  | ValueError: Too many packets in payload

open-webui version: 0.4.8, docker with CUDA
Model: gemma2:2b, Ollama (GPU)
Embedding settings:

hybrid search: on
Engine: SentenceTransformers
embedding model: intfloat/multilingual-e5-base
reranking model: BAAI/bge-reranker-v2-m3
top-k: 40, minimum score: 0.2, chunk size: 1024, overlap: 128
Text Splitter: TikToken
OCR: off


Delete format job

Removing this file as I don't think it's used anywhere.

Should I bump up the chart version to 0.5.6 due to this small change?

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/8587/
Test PASSed.

alluxio-bot, merge this please.

alluxio-bot, cherry-pick this to branch-2.2 please.


[ready] Fix invalid option passed to redis-server

In Ubuntu, system("echo -e 'pidfile hi\n'") will return -e 'pidfile hi\n' (not 'pidfile hi\n') as we wanted.
Also, in Ubuntu, we don't need this option since echo can understand \n without the -e option.
Since most of our Linux machines use Ubuntu, I guess it's more beneficial if we stick to echo without -e option.
I also propose a story to use docker for our remitano repo to Bug IO team, so that we can reduce those dramas in dev environment later on.

ECHO(1)                                  User Commands                                  ECHO(1)
NAME
echo - display a line of text
SYNOPSIS
echo [SHORT-OPTION]... [STRING]...
echo LONG-OPTION
DESCRIPTION
Echo the STRING(s) to standard output.
   -n     do not output the trailing newline

   -e     enable interpretation of backslash escapes

   -E     disable interpretation of backslash escapes (default)

   --help display this help and exit

   --version
          output version information and exit

   If -e is in effect, the following sequences are recognized:

   \\     backslash

   \a     alert (BEL)

   \b     backspace

   \c     produce no further output

   \e     escape

   \f     form feed

   \n     new line

   \r     carriage return

   \t     horizontal tab

   \v     vertical tab

   \0NNN  byte with octal value NNN (1 to 3 digits)

   \xHH   byte with hexadecimal value HH (1 to 2 digits)

   NOTE:  your shell may have its own version of echo, which usually supersedes the version
   described here.  Please refer to your shell's documentation for details  about  the  op‐
   tions it supports.

Em man echo của em có ra support e flag không?

có đó a @thaohoangc3.

with alpine linux 3.16 it not working.
need echo -e :(


fix(gs): Player loop fixes

Moved around some parts of the player loop to make it closer to the original server behaviour and is required for some further fixes
Responds to valid directions in wrong positions and prevents a way to cause #43
Moving only one tile per loop fixes an out of bounds tile crash
Fixes disconnected players not being removed for other players if they were paused

Oh by the way, where does #43 get fixed exactly? I thought it was fixed in #41 already but it seems like the server is still logging this stack trace at the moment.

Oh by the way, where does #43 get fixed exactly? I thought it was fixed in #41 already but it seems like the server is still logging this stack trace at the moment.

In checkNextMoveValidity it allowed positions positions ahead of you in lastUnpausedDirection if you were paused, and isFuturePosition is false for pause, which lets you teleport forward and skip things

In checkNextMoveValidity it allowed positions ahead of you in lastUnpausedDirection if you were paused, and isFuturePosition is false for pause, which lets you teleport forward and skip things to cause various bugs

Ah I see, that makes sense. Thanks for the clarification!


test: improve accessibility tests with autofocus

When trying to roll puppeteer-sharp to chromium r705776, I started getting many fails on these two tests.
I found that I'm getting the same running these tests on puppeteer locally. It seems that the inputs are not being autofocused sometimes, so the focused is false.
I saw that puppeteer's PRs are being merged in green, but I also saw these errors on intermediate builds 1, 2, 3.
We could merge this PR, because accessibility tests are not about autofocusing with setContent, but we would also be hiding this issue on  r705776.

Less flaky tests sounds great to me! Thanks for looking into this.


vm template UI bugs

launch vm need to add source when user select image

update the text to Create template

support select version when launch from template

no need comment

Validated


published ganache bundle is very large

we ship separate both cli and a core in one package, but cli should just use the bundled core as is.
The browser bundle is also a bit chunky, should this be shipped as a separate package? Or could we somehow make it use core (probably not, since it needs to polyfill many things)?

https://linuxize.com/post/how-get-size-of-file-directory-linux/
Use sudo du -shc /<folder name>/*

Notes from call with David
develop is default branch
uses npm
uses ttsc NOT tsc, does transformations for you
npm run build, triggers webpack process
will try to build it even if its not compiled, always run tsc before running build
ts-loader doesnt pick up all the rules from tsconfig
if its not already compiled, then it will try to compile, but it will do it wrong
there are no tests for the build output, can write them if u want
mostly working here
https://github.com/trufflesuite/ganache-core/tree/develop/src/packages/ganache, thats where the webpack is, pretty much the only job of this package
webpack.common is where the bulk of the logic is
webpack.node is just core itself
webpack.cli is for cli
CORE
.node is native modules
ganache.min.js 3.2MB
35MB total
CLI
is almost exactly the same, pretty much the same code, but CLI is just a thin wrapper over core
but we are including an extra 30 MB when we publish
cli should just import the node one
// Check sizes of dist folders
du -shc dist/*
to check things are working after the slimming
CLI down:
node ./src/packages/ganache/dist/cli/ganache.ganache.min.js
NODE, in root test.js
const ganache = require("./src/paackages/ganache/dist/node/ganache.min.js")
console.log(ganache) // {server: ..., provider: ...}
WEB
npm run build, will rebuild the docs
npm run docs.preview
run it in the browser, see if it works, debug trace transactions
const accoutns = await provider.request({ method: "eth_accounts", params: []})
console.log(accounts)

https://linuxize.com/post/how-get-size-of-file-directory-linux/
Size of dist directory
du -shc ./dist/*

It is much smaller now. Always room for improvement. But good enough to close!


Incorrect string parsing via template

Describe the bug
I getting a dateString from a public api with the following pattern: "MM/DD/YYYY".
For example "06/24/1983".
I passing this dateString and a pattern to the moment function then formatting but getting an incorrect result.
To Reproduce
Steps to reproduce the behavior:

run the following code:

const moment = require('moment');
const date = "06/24/1983";
console.log(moment(date, 'ММ/DD/YYYY').format('YYYY-MM-DD')); // 1983-01-24

Workaround
This is a way to get an correct result, but this is a crutch:
console.log(moment(moment(date, "MM/DD/YYYY").toDate()).format('YYYY-MM-DD')); // 1983-06-24
Desktop (please complete the following information):

OS: ubuntu 20.04
Browser: node 14.16.0
Version: 2.29.1

Please run the following code in your environment and include the output:
console.log((new Date()).toString()) // Fri Mar 12 2021 23:33:27 GMT+0300 (Moscow Standard Time)
console.log((new Date()).toLocaleString()) // 3/12/2021, 11:33:27 PM
console.log((new Date()).getTimezoneOffset()) // -180
console.log(navigator.userAgent) // ----------
console.log(moment.version) // 2.29.1

Hi,
If something is working strangely, do try strict mode: https://momentjs.com/guides/#/parsing/strict-mode/
Something is unusual about the "М" character you are using (as compared to the default "M"). I think it is because it is Cyrillic, not Latin.
Try copy-pasting this:
moment('06/24/1983', "MM/DD/YYYY", true).format()

The

I'm sure that it was a latin letter.
What about strict mode - I'll try it at evening.
Thank you very much for this tip!


[Select] component's value undefined in test

I have a custom Select component built that I would like to test, but I get an error on the select value.

[x] The issue is present in the latest release.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Current Behavior 😯
When writing a test with react-testing-library to assume the select component's value (getting the element with getByLabelText), I get an error, that the value is undefined.
Expected Behavior 🤔
It should return the value of the input with the same id as the label's htmlFor
Steps to Reproduce 🕹

Steps:

NOTE: I added a test for both my custom component, and the raw HTML it generates. The former works, while the latter fails, and I don't understand why. For simplicity, I removed (classes and styles)

Render component
Get the select input with getByLabelText()
assert the value

Context 🔦
Rendering the MUI variant and getting the select input by label returns an input, while the HTML version returns a div for some reason:

The second one is what I am getting in my tests also, EVEN though I obviously don't render raw HTML in there, but rather the Mui Select component.
Your Environment 🌎

Tech
Version

Material-UI
v4.7.0

React
16.12.0

Browser
Chrome

TypeScript
-

etc.
Linux

Possible fix
I haven't checked the consequences, but changing the order of these two elements solves the issue:

 <input name="profession" type="hidden" id="profession" value="Doctor" />

   Doctor

Tried to use getAllByLabelText() and match the second element, but there is no second match!

Did you find some inspiration, from the Select tests? https://github.com/mui-org/material-ui/blob/master/packages/material-ui/src/Select/Select.test.js
Looking at your test, I don't think that it can work. You would need to add an id on the label and tell the select about this input id. cc @eps1lon

Looked at the tests, but nothing that helped me there. :confused: It sounds like a simple thing to test at first, just a select with a label, and would like to assert it's value to be something (in my case the first MenuItem's value inside Select.).
BTW, as I gather from here and there, you are kind of converting from enzyme to react-testing-library slowly, but steadily, right? Curious if @eps1lon will have a simple answer for this 😃, how to test this dead simple case with RTL.

ByLabelText requires an actual  element as far as I know. Our Select component does not render a "labelable element". I would suggest using the same approach our test uses (opening the listbox and then clicking an option).
Either way your approach is outdated anyway. We used to document it that way but it's wrong. Please consult the current docs: https://material-ui.com/components/selects/#selects.

@eps1lon Please elaborate, my implementation (also in the linked CodeSandbox example) looks like this:
test("Mui component", () => {
  const { getByLabelText } = render(
    <FormControl>
      <InputLabel htmlFor="profession">Profession</InputLabel>
      <Select
        inputProps={{ id: "profession", name: "profession" }}
        value="Doctor"
      >
        <MenuItem value="Doctor">Doctor</MenuItem>
      </Select>
    </FormControl>
  );

  const professionSelect = getByLabelText(/Profession/);
  debug(professionSelect);
  expect(professionSelect).toHaveValue("Doctor");
});

Is this an outdated approach? I cannot seem to find the answer even with the current docs :confused:
Which part is that I should update?
You can see I have a  element, that is connected with htmlFor to inputProps.id. Why should not ByLabelText find the corresponding input value?

@balazsorban44 There is no native select behind the scene, I doubt it should work this way;

@oliviertassinari It generates the following HTML (classes removed for clarity). You can see there is a label, and there is an input which has a corresponding id, so I don't see why this should not work. Is it maybe because input has a type=hidden?

  Profession

Doctor

    <input name="profession" type="hidden" id="profession" value="Doctor" />
    <svg focusable="false" viewBox="0 0 24 24" aria-hidden="true" role="presentation">
      <path d="M7 10l5 5 5-5z"></path>
    </svg>


Extension on mint message

Why is Extension on MintMsg? Shouldnt the extensions be global throughout the contract?
If not, Extension should be Option<T> instead of T as this will make development easier.

Imo similar to Response<T = Empty>. What we can do is defining ExecuteMsg<T=Empty, E=Empty>. Would simplify things.

Yeah, and I found that you can define extension as Option, but that’s more steps that are subjectively unnecessary, especially when trying to write clean and concise tests On Nov 22, 2023, at 15:11, mr-t @.***> wrote:
Imo similar to Response<T = Empty>. What we can do is defining
ExecuteMsg<T=Empty, E=Empty>. Would simplify things.
—
Reply to this email directly,
view it on GitHub, or
unsubscribe.
You are receiving this because you authored the thread.Message
ID: @.***>
CAUTION: This email originated from outside the organization. Do not click links or open attachments unless you recognize the sender and have verified the sender email address and know the content is safe.
Do not provide your ACPS login credentials in reply to any email. To report this as a spam message, please forward (as an attachment if possible) to
@.*** Thank you.

Fixed in #161


Debug fix

Steps to reproduce

Expected behavior

Actual behavior

System configuration
Node version:
OS:

I think this is related git hook.
Please use pre-commit git hooks.


[FEATURE] Add Domain List and String Cryptographer file menu bar entry in "Tools -> Omiya Games -> Create"

Is your feature request related to a problem? Please describe.
Creating a new Domain List and String Cryptographer.
Describe the solution you'd like
While it's nice that creating Domain List and String Cryptographer are located in consistent locations, it'd be nice to also gather it under the "Tools -> Omiya Games -> Create" file menu bar entry, mostly as an alias, second method of creating, and general organization.
Tasklist

[x] Add alias to create String Cryptographer from "Tools -> Omiya Games -> Create"
[x] Add alias to open Domain List wizard from "Tools -> Omiya Games -> Create"

Describe alternatives you've considered
Honestly, this is just to make certain tools easier to find than it currently is now.  The intent is to expand options, not replace the current way it is.

Fixed in Commit 3253a90f4103f212deaf3b18073bf31e83948fa7


Can’t render splatfacto videos higher than 1080p

Splatfacto videos and images only render at 1920x1080, even if a higher resolution like 3840x2160 is set in the viewer and camera path .json. The viewer does pass the correct resolution to the .json when you press “generate command”, but it only renders in 1080p for some reason.

Oops nevermind.. updated nerfstudio and rendered again, and now it's working as expected.


NullPointerException in SocketChannelIOHelper when ping to server

I used http://www.yougetsignal.com/tools/open-ports/ to check if the port of my server was open. When I'm connected with my server via simple Javascript websockets and then ping using that website, I get the following exception:
java.lang.NullPointerException  	at org.java_websocket.SocketChannelIOHelper.read(SocketChannelIOHelper.java:14)  	at org.java_websocket.server.WebSocketServer.run(WebSocketServer.java:322)  	at java.lang.Thread.run(Unknown Source)
That's all. So this can't be because of my own code.
I tried to solve it by adding
// Ignore if channel is null if (conn.channel == null) continue;
right above the if (SocketChannelIOHelper.read(buf, conn, conn.channel)). This prevents the server from crashing and there's no exception. However, the websocket is still closed and im unable to reconnected without restarting the server.
I'm running a TLS server if that makes any difference.

apparently #277 is supposed to fix this problem. I implemented it, but nothing changed.

Have a look at this: https://github.com/TooTallNate/Java-WebSocket/issues/349#issuecomment-212691018

That didn't solve it. Now it keeps saying the port is open, but I'm unable to connect once I've pinged once

Yeah I faced the same issue. I solved it but to be honest I have no clue what the deciding change was.
I added this
if( key.isReadable() ) {
							conn = (WebSocketImpl) key.attachment();
							ByteBuffer buf = takeBuffer();
							try {
								if(conn.channel == null){
									if( key != null )
										key.cancel();

									handleIOException( key, conn, new IOException() );
									continue;
								}

Maybe it helps, since my library is quite altered at this point I can't guarantee it, but I'll open a PR if you confirm this as the working change.

Yes! this did the trick. Thank you so much it finally works now.


feat: add support for local helm chart tarballs

Description
This adds support for local charts from tarballs instead of only directories.
Related Issue
Fixes #2063
Fixes #2062
Fixes #2070
Fixes #1765
Type of change

[X] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Other (security config, docs update, etc)

Checklist before merging

[X] Test, docs, adr added or updated as needed
[X] Contributor Guide Steps followed

Moving back to a draft to work more on addressing #1765 - this would require indexing charts like files and data injections.

Breaking changes:

Chart names must match between chart.name and the name in the Chart.yaml
Charts are now held inside of an indexed folder instead of the root of the component


"Undefined method" error on Phusion + Nginx. No RVM.

I'm running rails 3.0.10 through Passenger on Nginx. My delayed jobs were running fine until I deployed some updates (no gem updates, just my own code). Now I am getting undefined method errors in all of my delayed_job requests.
I saw the page on the wiki detailing this. I am in fact seeing my handler as:
--- !ruby/struct:Delayed::PerformableMailer
object: !ruby/object:Class TemplateMailer
method_name: :send_email

However, I'm not using mongrel or thin. I also do not have RVM installed on this system, in favor of plain ruby 1.9.2. So there is no setup_load_paths.rb to remove

After migrating to Rails 3.1.1 I encountered the same problem, but with PerformableMethod. I use RVM, but there is no setup_load_paths.rb to remove.
On the production console
Delayed::PerformableMethod.new(obj, :do_something, {}).to_yaml
=> "--- !ruby/struct:Delayed::PerformableMethod \nobject: !ruby/object:Class ..."

On my development machine
Delayed::PerformableMethod.new(obj, :do_something, {}).to_yaml
=> "--- !ruby/struct:Delayed::PerformableMethod \nobject: !ruby/ActiveRecord:Class ..."

I'm currently trying the 3.0.0.pre3 version, but unfortunately there are other problems to solve...

Found a solution for my problem: on the production machine was still an old bundler version (1.0.9) installed. After upgrading it to 1.0.21 it works again.
Background is that bundler-1.0.10 loads Psych as default YAML parser.


feat(c11): Add additional warning flags

This PR introduces several compiler flags that issue warnings from additional sources.
The goal of these flags is to help complying with some MISRA directives. The flags include: forcing explicit casts, adding missing protypes, removing unused macros and functions, etc.
This PR depends on #146
The code was tested in the following platforms:

qemu-aarch64-virt
qemu-riscv64-virt

@miguelafsilva5 note that one of the checks is failing

@miguelafsilva5 note that one of the checks is failing

The code was not formated properly. It is fixed in the recent commits.

@miguelafsilva5 note that one of the checks is failing

The code was not formatted properly. It is fixed in the recent commits.


Rewrite tests for SoundWave.js

Rewrite tests with fake calls to the web-audio-api so that they can be run in headless mode.

XHR tests working. Promises are hard to test (decode audio data).

Lots of changes, lots of new tests, all done.


xFailOverCluster: Update the repository to use the latest CI pipeline

I keep this issue open while we work at improving the CI pipeline.

This has been fixed for a while now.


Move JCTools-based queues to a new log4j-jctools module

This PR addresses #2075 by means of following changes:

Recycler factories in the API are converted to ServiceProviders
JCTools dependencies in log4j-api and log4j-core are removed in favor of a new module: log4j-jctools

Why does log4j-jctools depend on log4j-core?
There are two places where JCTools is used as an optional dependency:

In log4j-api as a Recycler[Factory] (used almost everywhere) implementation
In log4j-core as a BlockingQueueFactory (used by AsyncAppender in log4j-core) implementation

There are two approaches I can think of to remove the JCTools optional dependencies:

Hoist BlockingQueueFactory from log4j-core to log4j-api

:smiley: log4j-jctools will only need to depend on log4j-api
:frowning_face: log4j-api will be introduced a component that only matters for some log4j-core internal
:frowning_face: log4j-core has access to plugins and hence, users were expected to provide custom @Configurable @Plugin BlockingQueueFactory implementations that they can refer to in log4j2.xml. Though moving BlockingQueueFactory to log4j-api will break this contract completely, since log4j-api has no notion of plugins.

Make log4j-jctools depend on log4j-core and provide both Recycler[Factory] and BlockingQueueFactory implementations

:frowning_face: Users who wants a JCTools-based recycler, but no log4j-core et al. (if there is such a use case at all) needs to manually exclude log4j-core

Review kit

You can safely ignore files changed due to package relocations.
Start with changes in o.a.l.log4j.internal.recycler and o.a.l.log4j.spi packages of log4j-api module
Proceed to log4j-core
Now it is safe to check log4j-jctools

I start to wonder how useful is it to fill log4j-api with partial implementations. For example a recycled LogBuilder is useful for log4j-core, but not so much for log4j-to-slf4j. If log4j-to-slf4j is bound to Logback, the Log4j API builder will be recycled, but the underlying SLF4J builder won't. We might as well remove Recycler from AbstractLogger and move it into core.Logger.

Created #2106 and linked to it in #2016.


Remove footer fluff

- Reference link: https://python.langchain.com/docs/integrations/vectorstores/pinecone

moving to #11


Track base reward rate, validator-specific rates, and voting power.

The application needs to track the base reward rate for staking, the base exchange rate, and the derived validator-specific exchange rates. The voting power for each validator is calculated from the size of their delegation pool, and should also be recorded.
It's important that the implementation treats the reward rate as a time series, not as a constant value, since eventually the reward rate should adjust to steer staking incentives.  We're not immediately ready to implement that, but if we use a constant staking rate, we might write code that assumes the staking rate is constant, and we wouldn't notice, because it would be accidentally correct.   As an alternative, we could choose the staking rate based on the leading byte of the hash of the last block in each epoch. This is economically meaningless, but it's easy to implement, and it means we're forced to build code around the idea that the staking rate is variable.
The details are in the staking section of the protocol spec, but the high-level picture is:
base reward rate (time series) ===> base exchange rate (time series)

base reward rate (time series)
   + validator funding streams (can change, so also time series) ===> validator-specific exchange rates (time series)

base exchange rate + validator exchange rate ===> validator voting power (time series)

Subtasks:

[x] Add a notion of epochs to the source code
[x] #271
[x] #272
[x] #273
[x] #274
[x] #275

This is now complete


Make solana NFT transfer code more defensive (and not fail!)

🤞 - hope this fixes this issue once and for all!


Select specific year

I would use this component for birthday date. As I see for the user is very hard to find which year he was born. If you ask me, It's very useful the user can choose a year.

:+1: I'll add this to the road map.


[SPARK-32268][SQL][FOLLOWUP] Add ColumnPruning in injectBloomFilter

What changes were proposed in this pull request?
Add ColumnPruning in InjectRuntimeFilter.injectBloomFilter to optimize the BoomFilter creation query.
Why are the changes needed?
It seems BloomFilter subqueries injected by InjectRuntimeFilter will read as many columns as filterCreationSidePlan. This does not match "Only scan the required columns" as the design said. We can check this by a simple case in InjectRuntimeFilterSuite:
withSQLConf(SQLConf.RUNTIME_BLOOM_FILTER_ENABLED.key -> "true",
  SQLConf.RUNTIME_BLOOM_FILTER_APPLICATION_SIDE_SCAN_SIZE_THRESHOLD.key -> "3000",
  SQLConf.AUTO_BROADCASTJOIN_THRESHOLD.key -> "2000") {
  val query = "select * from bf1 join bf2 on bf1.c1 = bf2.c2 where bf2.a2 = 62"
  sql(query).explain()
}

The reason is subqueries have not been optimized by ColumnPruning, and this pr will fix it.
Does this PR introduce any user-facing change?
No, not released
How was this patch tested?
Improve the test by adding columnPruningTakesEffect to check the optimizedPlan of bloom filter join.

cc @sigmod

Can one of the admins verify this patch?

LGTM. Can we merge it to branch-3.3 as well?

Merged to master and branch-3.3.


Final flow:  CLI, sharing snapshot results

Datmo installation, datmo init, then copy paste a small snippet of code into a file like "train.py", then datmo run and datmo snapshot, and view results  in 2 min.

One person creates a project and a snapshot (see 1) , then the project is pushed onto github. Then another user clones from github, then the other user views the snapshots, then the other user creates snapshot on their system, then the first person pulls the changes from the other user, then the first user is able to see all of the snapshots from themselves and the other user

The second point is a reference to this issue: #34. Once we resolve that we can work on this one.


Test with tox versions 3 and 4

Codecov Report

Merging #35 (7a91c44) into main (27f09d4) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##              main       #35   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            1         1
  Lines           28        28
  Branches         8         8
=========================================
  Hits            28        28

Continue to review full report at Codecov.

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


Custom Bell on Windows Powershell not working

[x] I am on the latest Hyper.app version
[x] I have searched the issues of this repo and believe that this is not a duplicate

OS version and name: Windows 10 Pro 64bit
Hyper.app version: 1.8.4
Link of a Gist with the contents of your .hyper.js: N/A
Relevant information from devtools (CMD+ALT+I on macOS, CTRL+SHIFT+I elsewhere): N/A
The issue is reproducible in vanilla Hyper.app: Is Vanilla

Issue
When i add a bellSoundURL to my .hyper.js and restart Hyper i still keep hearing the default hterm/audio/bell instead of any custom publicly hosted mp3 file. At least on Windows when using PowerShell as the shell. I've tried several files, different locations to host it, and even a local filesystem path. Should it be working on Windows or is that only working on unix systems?

#2938 currently in progress that should solve this issue. Stay tuned ;D


PT 1.6.0 could not resume a training with plugins monitoring on metrics

🐛 Bug
As mentioned in the title
To Reproduce
The code (boring.py) is provided below:

from typing import List

import torch
from pytorch_lightning import LightningDataModule, LightningModule
from pytorch_lightning.utilities.cli import (LightningArgumentParser, LightningCLI)
from torch.utils.data import DataLoader, Dataset
from jsonargparse import lazy_instance

class Arch(torch.nn.Linear):

    def __init__(self, input_size: int = 10, output_size: int = 2) -> None:
        super().__init__(input_size, output_size)

class RandomDataset(Dataset):

    def __init__(self, size, length):
        self.len = length
        self.data = torch.randn(length, size)

    def __getitem__(self, index):
        return self.data[index]

    def __len__(self):
        return self.len

class MyDataModule(LightningDataModule):

    def __init__(self, input_size: int = 10, train_transforms=None, val_transforms=None, test_transforms=None, dims=None):
        super().__init__(train_transforms=train_transforms, val_transforms=val_transforms, test_transforms=test_transforms, dims=dims)
        self.input_size = input_size

    def train_dataloader(self) -> DataLoader:
        return DataLoader(RandomDataset(self.input_size, 64), batch_size=2)

    def val_dataloader(self) -> DataLoader:
        return DataLoader(RandomDataset(self.input_size, 64), batch_size=2)

    def test_dataloader(self) -> DataLoader:
        return DataLoader(RandomDataset(self.input_size, 64), batch_size=2)

class BoringModel(LightningModule):

    def __init__(self, arch: Arch = lazy_instance(Arch), channels: List[int] = [0, 1]):
        super().__init__()
        self.arch = arch

    def forward(self, x):
        print(x.shape)
        return self.arch(x)

    def training_step(self, batch, batch_idx):
        loss = self(batch).sum()
        self.log("train_loss", loss)
        return {"loss": loss}

    def validation_step(self, batch, batch_idx):
        loss = self(batch).sum()
        self.log("valid_loss", loss)

    def test_step(self, batch, batch_idx):
        loss = self(batch).sum()
        self.log("test_loss", loss)

    def configure_optimizers(self):
        return torch.optim.SGD(self.arch.parameters(), lr=0.1)

class MyCLI(LightningCLI):

    def add_arguments_to_parser(self, parser: LightningArgumentParser) -> None:
        from pytorch_lightning.callbacks import EarlyStopping, ModelCheckpoint
        parser.add_lightning_class_args(EarlyStopping, "early_stopping")
        parser.set_defaults({
            "early_stopping.monitor": "valid_loss",
            "early_stopping.min_delta": 0.01,
            "early_stopping.patience": 10,
            "early_stopping.mode": "min",
        })

        # ModelCheckpoint
        parser.add_lightning_class_args(ModelCheckpoint, "model_checkpoint")
        model_checkpoint_defaults = {
            "model_checkpoint.filename": "epoch{epoch}_valid_loss{valid_loss:.4f}",
            "model_checkpoint.monitor": "valid_loss",
            "model_checkpoint.mode": "min",
            "model_checkpoint.every_n_epochs": 1,
            "model_checkpoint.save_top_k": 5,
            "model_checkpoint.auto_insert_metric_name": False,
            "model_checkpoint.save_last": True
        }
        parser.set_defaults(model_checkpoint_defaults)
        return super().add_arguments_to_parser(parser)

if __name__ == '__main__':
    cli = MyCLI(BoringModel, MyDataModule, seed_everything_default=None, save_config_overwrite=True, parser_kwargs={"parser_mode": "omegaconf"})

fit: python boring.py fit, and kill the training program when we have ckeckpoints
resume (something like the command): python boring.py fit --config lightning_logs/version_7/config.yaml --ckpt_path=lightning_logs/version_7/checkpoints/last.ckpt

Expected behavior
resume sucessfully.
Environment

PyTorch Lightning Version (e.g., 1.5.0): 1.6.0
PyTorch Version (e.g., 1.10): 1.10
Python version (e.g., 3.9): 3.9
OS (e.g., Linux):
CUDA/cuDNN version:
GPU models and configuration:
How you installed PyTorch (conda, pip, source):
If compiling from source, the output of torch.__config__.show():
Any other relevant information:

Additional context
The error:

python boring.py fit --config lightning_logs/version_7/config.yaml --ckpt_path=lightning_logs/version_7/checkpoints/last.ckpt
/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/loops/utilities.py:91: PossibleUserWarning: `max_epochs` was not set. Setting it to 1000 epochs. To train without an epoch limit, set `max_epochs=-1`.
  rank_zero_warn(
GPU available: True, used: False
TPU available: False, using: 0 TPU cores
IPU available: False, using: 0 IPUs
HPU available: False, using: 0 HPUs
/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py:1823: PossibleUserWarning: GPU available but not used. Set `accelerator` and `devices` using `Trainer(accelerator='gpu', devices=8)`.
  rank_zero_warn(
Restoring states from the checkpoint path at lightning_logs/version_7/checkpoints/last.ckpt
/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/callbacks/model_checkpoint.py:342: UserWarning: The dirpath has changed from '/data/home/quancs/projects/NBSS_pmt/lightning_logs/version_7/checkpoints' to '/data/home/quancs/projects/NBSS_pmt/lightning_logs/version_8/checkpoints', therefore `best_model_score`, `kth_best_model_path`, `kth_value`, `last_model_path` and `best_k_models` won't be reloaded. Only `best_model_path` will be reloaded.
  warnings.warn(

  | Name | Type | Params
------------------------------
0 | arch | Arch | 22
------------------------------
22        Trainable params
0         Non-trainable params
22        Total params
0.000     Total estimated model params size (MB)
Restored all states from the checkpoint file at lightning_logs/version_7/checkpoints/last.ckpt
/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/trainer/connectors/data_connector.py:240: PossibleUserWarning: The dataloader, train_dataloader, does not have many workers which may be a bottleneck. Consider increasing the value of the `num_workers` argument` (try 128 which is the number of cpus on this machine) in the `DataLoader` init to improve performance.
  rank_zero_warn(
/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py:1938: PossibleUserWarning: The number of training samples (32) is smaller than the logging interval Trainer(log_every_n_steps=50). Set a lower value for log_every_n_steps if you want to see logs for the training epoch.
  rank_zero_warn(
/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/trainer/connectors/data_connector.py:240: PossibleUserWarning: The dataloader, val_dataloader 0, does not have many workers which may be a bottleneck. Consider increasing the value of the `num_workers` argument` (try 128 which is the number of cpus on this machine) in the `DataLoader` init to improve performance.
  rank_zero_warn(
Epoch 19:  50%|██████████████████████████████████████████████████████████████████████████▌                                                                          | 32/64 [00:00<?, ?it/s]Traceback (most recent call last):
  File "/data/home/x/projects/NBSS_pmt/boring.py", line 100, in <module>
    cli = MyCLI(BoringModel, MyDataModule, seed_everything_default=None, save_config_overwrite=True, parser_kwargs={"parser_mode": "omegaconf"})
  File "/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/utilities/cli.py", line 564, in __init__
    self._run_subcommand(self.subcommand)
  File "/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/utilities/cli.py", line 835, in _run_subcommand
    fn(**fn_kwargs)
  File "/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 771, in fit
    self._call_and_handle_interrupt(
  File "/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 724, in _call_and_handle_interrupt
    return trainer_fn(*args, **kwargs)
  File "/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 812, in _fit_impl
    results = self._run(model, ckpt_path=self.ckpt_path)
  File "/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 1237, in _run
    results = self._run_stage()
  File "/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 1324, in _run_stage
    return self._run_train()
  File "/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 1354, in _run_train
    self.fit_loop.run()
  File "/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/loops/base.py", line 205, in run
    self.on_advance_end()
  File "/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/loops/fit_loop.py", line 297, in on_advance_end
    self.trainer._call_callback_hooks("on_train_epoch_end")
  File "/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/trainer/trainer.py", line 1637, in _call_callback_hooks
    fn(self, self.lightning_module, *args, **kwargs)
  File "/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/callbacks/early_stopping.py", line 179, in on_train_epoch_end
    self._run_early_stopping_check(trainer)
  File "/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/callbacks/early_stopping.py", line 190, in _run_early_stopping_check
    if trainer.fast_dev_run or not self._validate_condition_metric(  # disable early_stopping with fast_dev_run
  File "/data/home/x/miniconda3/lib/python3.9/site-packages/pytorch_lightning/callbacks/early_stopping.py", line 145, in _validate_condition_metric
    raise RuntimeError(error_msg)
RuntimeError: Early stopping conditioned on metric `valid_loss` which is not available. Pass in or modify your `EarlyStopping` callback to use any of the following: ``
Epoch 19:  50%|█████     | 32/64 [00:00<?, ?it/s]

cc @tchaton @rohitgr7 @carmocca @awaelchli

Same here!

Even for 1.6.1, this bug is still unsolved.

Same issue here.

prioritizing it. Will be fixed soon.

I'm getting a similar problem with 1.6.4 FYI

@wderekjones can you share a reproducible example?

@rohitgr7 I'll mention that I did manage to solve this issue by implementing validation_epoch_end and then doing the logging of 'val_loss' within that step. this was in distributed data parallel mode with version 1.5.10 after I attempted @amorehead solution to rollback from 1.6.x. I'm pretty sure this also affected the non-ddp CPU only case.

Closing. Please open a new issue with a reproducible example if you face this issue again. Thank you!

Same issue with 1.6.4...

@kangsan0420 mind try the latest release?

Same issue here with 1.8.3.post1

same here with 1.9.4! Is there a known fix for this?

still getting this error!

l getting this error!

Second that, have check_val_every_n_epoch=10 in the trainer, if I leave that out everything works. But I don't need to check validation every epoch, fix would be appreciated!

This is happening for me when I try to resume training from a checkpoint and the check_val_every_n_epoch makes it such that validation happens before one more training epoch is completed. Increasing the value of check_val_every_n_epoch fixed it

`from typing import Dict
from pytorch_lightning import Trainer
from pytorch_lightning.callbacks import ModelCheckpoint
from torch import Tensor
class FixedModelCheckpoint(ModelCheckpoint):
def _save_topk_checkpoint(self, trainer: Trainer, monitor_candidates: Dict[str, Tensor]) -> None:
    if self.save_top_k == 0:
        return

    # validate metric
    if self.monitor is not None:
        if self.monitor in monitor_candidates:
            self._save_monitor_checkpoint(trainer, monitor_candidates)
    else:
        self._save_none_monitor_checkpoint(trainer, monitor_candidates)

`


gRPC cmake build without submodules present (but dependencies installed) fails

What version of gRPC and what language are you using?
https://github.com/grpc/grpc/commit/1a1124903cac3ce44a044b42eff688fa97546f08, C++
What operating system (Linux, Windows,...) and version?
Linux
What runtime / compiler are you using (e.g. python version or version of gcc)
gcc
What did you do?

Download the *.tar.gz archive from github.
Install c-ares, zlib, re2, openssl, abseil-cpp, and protobuf dependencies on the build machine.

What did you expect to see?
cmake successfully completes.
What did you see instead?
As mentioned in https://github.com/grpc/grpc/pull/34199, the cmake failure:
-- Configuring done
CMake Error at CMakeLists.txt:2738 (add_library):
  Cannot find source file:

    third_party/upb/upb/message/accessors.c

  Tried extensions .c .C .c++ .cc .cpp .cxx .cu .mpp .m .M .mm .ixx .cppm .h
  .hh .h++ .hm .hpp .hxx .in .txx .f .F .for .f77 .f90 .f95 .f03 .hip .ispc

CMake Error at CMakeLists.txt:3338 (add_library):
  Cannot find source file:

    third_party/upb/upb/base/status.c

  Tried extensions .c .C .c++ .cc .cpp .cxx .cu .mpp .m .M .mm .ixx .cppm .h
  .hh .h++ .hm .hpp .hxx .in .txx .f .F .for .f77 .f90 .f95 .f03 .hip .ispc

CMake Error at CMakeLists.txt:3470 (add_library):
  Cannot find source file:

    third_party/upb/upb/json/decode.c

  Tried extensions .c .C .c++ .cc .cpp .cxx .cu .mpp .m .M .mm .ixx .cppm .h
  .hh .h++ .hm .hpp .hxx .in .txx .f .F .for .f77 .f90 .f95 .f03 .hip .ispc

Anything else we should know about your project / environment?
It uses the environment mentioned in:
https://github.com/grpc/grpc/blob/master/third_party/README.md

gRPC C++ needs to stay buildable/installable even if the submodules are not present (e.g. the tar.gz archive with gRPC doesn't contain the submodules), assuming that the dependencies are already installed. This is a requirement for being able to provide a reasonable install process (e.g. using cmake) and to support package managers for gRPC C++.

But there does not appear to be a way to install upb as a dependency like the other packages (e.g., abseil-cpp, protobuf).

You're right about the documentation but it's not the case until we have upb cmake build. I'm going to update it.

Will that be fixed before 1.59.0 or are we saying after 1.58.x, gRPC can no longer be built from .tar.gz until upb supports cmake (which, is there any timeline for that to be done?)?

It looks like this issue is now fixed by https://github.com/grpc/grpc/pull/34508.


Added weight option for struct consensus

Added what I understand to be the recommended way to turn binary structural consensus maps into weighted maps, based on conversation with @rmarkello. The default value for the flag is false, so this addition won't change current behaviour.
(Please let me know if there were tests for this function that I should update, as well, but my quick git grep didn't find any).
Thanks!

Codecov Report

Merging #89 into master will decrease coverage by 0.08%.
The diff coverage is 33.33%.

@@            Coverage Diff             @@
##           master      #89      +/-   ##
==========================================
- Coverage   64.67%   64.59%   -0.09%
==========================================
  Files          23       23
  Lines        1588     1590       +2
==========================================
  Hits         1027     1027
- Misses        561      563       +2

Impacted Files
Coverage Δ

netneurotools/networks.py
9.17% <33.33%> (-0.18%)
:arrow_down:

Continue to review full report at Codecov.

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

Awesome! Thanks much 🙌
Unfortunately, no, there aren't any tests for this. netneurotools is just a mish-mosh of functions thrown into a package, so the testing is...lackluster, at best. Maybe one day I'll get around to that as a procrastiproject 😅
For now I'm gonna go ahead and merge this in, though. Thanks again!


Validation of module version

The terraform registry protocol state that module version should follow strict semver specification.
A validation should be added to the module endpoint

Thanks for this input, while i see your point, i think users of Tapir should be free to choose on a versioning strategy. Although it is recommended to go with SemVer i dont see a drawback in not enforcing it :)

After this popped up in #455  again, i saw that i was mistaken. Hence this will be added soon. Thanks again for reporting this

Released in version 0.9.1


Add new Epsi/Wis mail

@AndyReckt Please provide us with:

the school official website URL
the school street address, including city and country
an URL of a page on the official website where the school offers an IT-related long-term (>1 year) course
a proof, which shows that the school recognizes the domain you are submitting as an official email domain for the students.

https://epsi.fr/
20 bis Jardins Boieldieu
92071 La Défense
Tél. : 01 55 90 06 30
https://www.epsi.fr/programmes/parcours-socle-numerique/

I still need to wait for an official mail from my school on my school-issued email

@AndyReckt Thank you for the clarification. Yes, you are right: the last piece of information is still missing. I appreciate it if you can provide us with a proof, which shows that the school recognizes the domain you are submitting as an official email domain for the students.
You can provide us with any of the following:

A copy of instruction (a hard-copy or electronic one) given to you by the school that tells you to use an email address in this email domain
An URL of a page at the official school website that says that students use this email domain
A reference to a recognized journal where an article was published by someone from the school, with explicit affiliation to the school, and e-mail address from the email domain
A WHOIS data that link the email domain to the school somehow
A copy of official letter from the school representative saying that the school provides e-mail addresses in this domain to the students
Anything else that can prove this fact in similar way, i.e. can be verified independently.

@AndyReckt You might miss my previous comment. Please react.

@AndyReckt I am sorry, this request remains unanswered for a while. I have to close it without merging. Please reopen and comment if you have an update regarding the aforementioned issue. Thank you for your understanding!


Using trailing comma in arrow function generics errors on a .tsx file

Describe the bug
Writing
const foo = <T>(myObject: T) => typeof myObject;

in a .jsx file means TypeScript assumes the <T> is an opening HTML-tag.
Escaping this with either extending unknown (or similar) or with a trailing comma works for the TypeScript compiler:
const foo = <T extends unknown>(myObject: T) => typeof myObject;
const foo2 = <T,>(myObject: T) => typeof myObject;

But the latter does not seem to work with Vite dev server, instead causing transform error. See repro on StackBlitz.
Just for reference, here's the usage in the app I'm working on:
const usePrevious = <T,>(value: T): T | undefined => {
  const ref = useRef<T>();
  useEffect(() => {
    ref.current = value;
  });
  return ref.current;
};

And the error generated by the code:
Unexpected "const"
  155|
  156|  const usePrevious = <T>(value: T): T | undefined => {
  157|    const ref = useRef<T>();
     |    ^
  158|    useEffect(() => {
  159|      ref.current = value;

So it would seem like the trailing comma is removed by the transform somehow? Some preprocessor etc.?
I tried the trailing comma with Webpack (we just migrated so was easy to revert) and it works there.
Reproduction
https://stackblitz.com/edit/vitejs-vite-i1k8np?file=src/App.tsx
System Info
System:
    OS: macOS 10.15.7
    CPU: (8) x64 Intel(R) Core(TM) i7-8569U CPU @ 2.80GHz
    Memory: 1.76 GB / 16.00 GB
    Shell: 5.7.1 - /bin/zsh
  Binaries:
    Node: 16.13.1 - ~/.nvm/versions/node/v16.13.1/bin/node
    npm: 8.1.2 - ~/.nvm/versions/node/v16.13.1/bin/npm
    Watchman: 2<IP_ADDRESS> - /usr/local/bin/watchman
  Browsers:
    Brave Browser: <IP_ADDRESS>
    Chrome: 96.0.4664.110
    Chrome Canary: 99.0.4766.0
    Firefox: 94.0.1
    Firefox Developer Edition: 88.0
    Firefox Nightly: 73.0a1
    Safari: 15.2
  npmPackages:
    @vitejs/plugin-react: ^1.0.9 => 1.0.9
    vite: ^2.7.2 => 2.7.2

Used Package Manager
npm
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to https://github.com/vuejs/vue-next instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

duplicate of https://github.com/vitejs/vite/issues/3883


Unable to select File Archive on MacOS

OS: MacOS Big Sur 11.5.1
Java Version: openjdk version "11.0.12" 2021-07-20
On MacOS the file dialog for Load > Gamedata > File Archive does not allow you to select any file, they are just grayed out. This does not happen in the file dialog for FileDB, which works just fine.
File Archive Dialog

FileDB Dialog

I'm not entirely sure why this happens as it works fine on Windows, seems strange that FileDB works though, only point of difference that I see is that the FARC file chooser allows multiple files to be selected at the same time.
As a temporary workaround however, setting useLegacyFileDialogue to true in the config.json that Toolkit generates should allow you to at least select archives.

Thanks, changing the config worked, it's weird that only that field is affected, typical macos being completely broken lol


Support for most split-related functionality

Changes include:

Close the leaf menu on explicit hide if it's still open
Don't break views (like backlinks) that may access leaf's getRoot() while closing
Include popover leaves in normal iterateAll/iterateRoot
Don't hide all the linked-pane functions (other than "link to pane") as they work now
Ctrl/cmd click in a popover creates a split in it

I still haven't figured out how to get manual pane linking to work, so that's still disabled.

Okay, figured out how to get linking working.  Dragging also works, in that you can drag a main leaf into an existing popup, but you can't drag it back out since there are no drag handles.
So the only thing needed to get that working is to remove the specialization of hoverleaves.  I think that this can be done by using plain leaves (with some compatibility patches at the prototype level) and moving the plugin-specific functionality (resolveLink, openLink, buildState, etc.) to a HoverOpener or some such class, that would add the extra functionality for opening links, tracking the state, and so on, as that functionality is only needed by code that sets up popovers.

After some further work I've gotten it working with drag in/out and no need to switch leaf types around.  I need to get some sleep, though, before I review and push it.  (Feel free to merge the current state of this PR as-is if you like it so far; I can always put the currently-unreviewed stuff in a second PR.)

Ok, I've pushed the further work.  If you want to try dragging panes, you can turn off the display: none.  I think some UI affordances are still required to distinguish dragging the popover versus the pane, and there may be some other pain (pane?) points with rearranging things besides that, but that's for later PRs and discussions.  :-)

This works great, nice job! I've been swamped with actual job lately so I was only able to test this briefly. For now I pushed 0.4.2 with this PR while leaving the drag icon hidden. I want to play around a bit with the UI/UX around how that drag icon coexists with the pin icon and the current popover drag capability before we enable it fully.


How to handle workers vs web containers

Hi,
I have a single app that I deploy in 2 ways, once as normal web container that handles user requests and the other one (more memory) as workers.
In the old version of Kue I would just not call promote on the web containers and then only call that on the worker. (not even sure if that worked)
Since I need kue on both, the web containers  (for creating jobs) and on the workers, but I don't know how to prevent my web containers than from doing the actual work.
Any ideas?
(They have identical codebase, just different configuration)

If you are on recent versions of Kue, .promote() is deprecated and you don't need to call that any more

I know, but I want on some processes where kue is also started, that those
processes DONT execute jobs.
On 4 November 2015 at 08:07, Behrad<EMAIL_ADDRESS>wrote:

If you are on recent versions of Kue, .promote() is deprecated and you
don't need to call that any more
—
Reply to this email directly or view it on GitHub
https://github.com/Automattic/kue/issues/744#issuecomment-153609349.

just put queue.process in processes where you want to execute jobs.


chore(release): v1.18.0 🎉

:robot: I have created a release beep boop
1.18.0 (2024-08-18)
Features

array: expose ArrayWith type declaration (7855ac5)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/ehmpathy/type-fns/releases/tag/v1.18.0 :sunflower:


disconnect mediaStreamSource input in stop function to prevent echo bug in Safari

First off, thanks for this great module and the effort it takes to maintain it.
Quick background: I'm using this module to record speech commands on a private fork of https://github.com/petewarden/open-speech-recording. This means I'm starting and stopping around 100 times per session.
In Safari, which is crucial for me to support, the first audio file was always perfectly fine, then progressively worse with every recording.
Here's 3 demonstration files of the issue: Issue example files.zip

one file demonstrates the echo really well (Down_echo_obvious.wav). This is what got me thinking there was a a problem disconnecting the input and processor.
the other two files, both of the 11th recorded word in a series on MacOS Safari, the only difference is with/without the fix in this PR. Here you can see how bad the audio gets after a while.

These recordings are all from Safari 13.0.5 on MacOS, but solves the issue for Safari on iOS 13.3.1 as well.
I'm not sure what causes this, but my best guess is that the processor still receives input from every input created with context.createMediaStreamSource(this.clone). According to ScriptProcessorNode docs on MDN the processor should just have 1 input and 1 output, but perhaps Safari fails to enforce this. Printing the numberOfInputs and numberOfOutput properties of input and processor (which are both AudioNodes), didn't reveal any issue, however disconnecting the input on stop solved my problem.

Does this fx help you?
You can install branch to npm by:
npm remove audio-recorder-polyfill
npm i audio-recorder-polyfill@sseppola/audio-recorder-polyfill#feature/fix-safari-echo-bug

I built my app after yarn linking the module, and it worked well. I'll test again after running the npm commands you mention.
Regarding the failing tests:
I modeled AudioNode in browser.js to model the script processor and media source more accurately.

createMediaStreamSource creates a MediaStreamAudioSourceNode
which inherits from AudioNode.
createScriptProcessor creates a
ScriptProcessorNode which also inherits from AudioNode.

Both connect and disconnect has the same level of browser support (only IE missing), so I don't do any feature checking before running disconnect. I assumed this was the problem when the tests failed, thinking the tests were running in the browser.
Browser compatibilities:

AudioNode.connect
AudioNode.disconnect

Thanks for the pull request. Released in 0.3.6.


LeftHook exits with 141 exit code on push

❯ git push --set-upstream origin feature/PHW-134
Lefthook v0.7.7
RUNNING HOOKS GROUP: pre-push

lint (SKIP. NO FILES FOR INSPECTION)

  EXECUTE > deps

><EMAIL_ADDRESS>check:deps
> node tools/check-deps.js

Dependencies ok!

  EXECUTE > types

><EMAIL_ADDRESS>check:types
> tsc --noEmit

  EXECUTE > test

><EMAIL_ADDRESS>test
> npm run test:unit

><EMAIL_ADDRESS>test:unit
> jest

Test Suites: 27 passed, 27 total
Tests:       88 passed, 88 total
Snapshots:   21 passed, 21 total
Time:        35.361 s
Ran all test suites.

SUMMARY: (done in 134.41 seconds)
✔  deps
✔  types
✔  test

❯ echo $?
141

But if I run lefthook like so: ❯ npx lefthook run pre-push it exits with 0 as expected.

It looks like I've found the problem script.
The problem was with the tests script which runs Jest.
I have updated Jest from 27.0.4 to 27.4.7 and the issue is gone. Have no idea what it was.
For those who want to reproduce:
macOS 12.0.1
git 2.34.0
node 16.10.0
npm 8.0.0
@arkweid/lefthook 0.7.7

Unfortunately, it started failing again. The problem is still with Jest. When I remove Jest script everything works fine.
pre-push:
  parallel: true
  commands:
    # test:
    #   run: jest
    lint:
      files: git diff --name-only HEAD @{push}
      glob: '*.{js,jsx,ts,tsx}'
      run: npx eslint {files}
    deps:
      run: npm run check:deps
    types:
      run: npm run check:types

Hey! Have you tried the new version of lefthook? >1.0?

Hi @mrexox! Just updated Lefthook and the problem is still there, unfortunately.

@dekhanov ,how is lefthook installed on your system? With yarn / npm / just as a binary?

Found some info here: https://zditect.com/blog/56411338.html
Your pipeline taks about 2mins. Maybe there's something wrong with long-running pre-push hook :thinking:

@mrexox, hey!
I'm using npm. I also use SCM Breeze to run git commands.
I have updated Lefthook and Git to the latest versions. It is two errors now 🥲
The new one:
EXECUTE > lint

Oops! Something went wrong! :(

ESLint: 7.32.0

No files matching the pattern "{files}" were found.
Please check for typing mistakes in the pattern.

This error is unstable. Sometimes it works as expected: lint: (SKIP. NO FILES FOR INSPECTION).
The 141 code is still reproduced. I tried not to use git commands aliases and it worked sometimes, but eventually started finishing the process with 141 code again. Will take a look if it depends on the hook duration.

No files matching the pattern "{files}" were found.

This error was caused by files command. I will add more logging about it. Anyway, it shouldn't reproduce always. Than you for noticing.
I don't thing git aliases affect lefthook. Anyway, please, tell if you find the correlation between the error and hook duration :pray:

An update after the moving to<EMAIL_ADDRESS>It works fine! I had this 141 exit code error a few times, but recently everything was ok.
I have this 128 error sometimes, but it does not block the push.


Bug: Enabling offline mode should not check for updated versions

Bug report
I use SDKManager as part of my build script. I don't want the information about a new version to interrupt it while I'm waiting for an update decision.
To avoid the update question, I wanted to use offline mode, which by definition should not communicate with the network, but this is different. I currently have version 5.17.0 installed, and version 5.18.0 has appeared.
To reproduce
$ sdk offline enable
Offline mode enabled.

ATTENTION: A new version of SDKMAN is available...

The current version is 5.18.0, but you have 5.17.0.

Would you like to upgrade now? (Y/n):

Expected solution

In offline mode, the application should not try to update itself, or
A parameter should be added to allow disabling updates, such as SDKMAN_FORCE_NOT_UPGRADE=true

System info
$ uname -a
Linux mberkan-lap2 5.4.0-139-generic #156~18.04.1-Ubuntu SMP Wed Jan 25 15:56:22 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Hi @ep-mberkan, the latest release 5.18.0 actually removes this auto-update feature. Had you decided to upgrade, you would never have seen this message again.
In future, please chat with us on our slack user-issues channel before opening an issue here as per the contributing guidelines.

@marc0der ,
Thank you for your response.
For the future, I will look for a solution first on the slack channel.

No probs, and please let me know here if the new release fixed your annoyance.


Bump up mixer tools codecoverage > 90 ~ 95.

@guptasu: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
da134f4dc1b0382f1f7e2ac8e9ca49c1d8977077
link
/test istio-unit-tests

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

@guptasu: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
da134f4dc1b0382f1f7e2ac8e9ca49c1d8977077
link
/test istio-unit-tests

prow/istio-pilot-e2e.sh
da134f4dc1b0382f1f7e2ac8e9ca49c1d8977077
link
/test istio-pilot-e2e

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

@geeknoid friendly ping

@guptasu: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-pilot-e2e.sh
6e86c0ce3b2a7d6cd4b7f75482c1b7d85730c0b2
link
/test istio-pilot-e2e

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

@geeknoid @ldemailly  can we force merge this; the failing test is well known https://istio.slack.com/archives/C6RHFVB44/p1520711185000017

merged per ^

Thanks @ldemailly


Add ability to automatically send all events in buffer at a regular time interval

See https://github.com/snowplow/snowplow-dotnet-tracker/issues/3

As in a regular flush

What's the parameter going to be called?

So far this is set_flush_timer(time) method as in .Net tracker.

I can't get this to work locally:
from snowplow_tracker import AsyncEmitter
e1 = AsyncEmitter("collector-rt-demo.snplow.com", method="post")
e1.set_flush_timer(5)
t1 = Tracker(e1)
t1.track_struct_event("test", "single event flush")

I then wait a couple of minutes to see if the event turns up in ES (it should be flushed after 5 seconds) and it doesn't. In contrast if I send the data syncronously it turns up immediately.
Am I testing it correctly?

Just to add - if I then execute
t1.flush()

The data comes through fine.

This was fixed.


企业微信获取企业员工添加的所有的客户详情列表接口

企业微信获取企业员工添加的所有的客户详情列表接口

Codecov Report

Merging #617 (4e53a9f) into master (d6fcd0b) will decrease coverage by 0.21%.
The diff coverage is 9.09%.

@@            Coverage Diff             @@
##           master     #617      +/-   ##
==========================================
- Coverage   72.64%   72.42%   -0.22%
==========================================
  Files          78       78
  Lines        3180     3191      +11
==========================================
+ Hits         2310     2311       +1
- Misses        870      880      +10

Flag
Coverage Δ

unittests
72.42% <9.09%> (-0.22%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

wechatpy/work/client/api/external_contact.py
84.94% <9.09%> (-10.18%)
:arrow_down:

Continue to review full report at Codecov.

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

Codecov Report

Merging #617 (4e53a9f) into master (d6fcd0b) will decrease coverage by 0.21%.
The diff coverage is 9.09%.

@@            Coverage Diff             @@
##           master     #617      +/-   ##
==========================================
- Coverage   72.64%   72.42%   -0.22%
==========================================
  Files          78       78
  Lines        3180     3191      +11
==========================================
+ Hits         2310     2311       +1
- Misses        870      880      +10

Flag
Coverage Δ

unittests
72.42% <9.09%> (-0.22%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

wechatpy/work/client/api/external_contact.py
84.94% <9.09%> (-10.18%)
:arrow_down:

Continue to review full report at Codecov.

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

需要 rebase/merge 下 master

需要 rebase/merge 下 master


æøå missing in test data

æøå in test data is replaced with �. Found in "get person"

Was caused by an issue in the fake adapter used.


ASP handling of RGB images.

ASP tools such as bundle_adjust will run successfully on multi-channel (such as RGB) images but they do so by silently operating on only the first channel, storing the image in multiple planes.  It would probably be better to handle these images by trying to convert to grayscale or at least letting the user know what is happening.  Conversion may require switching code from DiskImageView to DiskImageView< PixelGray< float> >, allowing VW's existing colorspace code to handle the color information.

Added RGB support to mapproject.  Other tools now officially do not support multi-channel images and should give errors if they are called with them. 93f08272c04fe5809fddea02a4492d21f7cec8cc
It is up to the user to use an external tools to convert multi-channel images to grayscale before passing them in.  If this proves problematic we can revisit this issue.  Updating our software is somewhat difficult as using PixelGray changes scaling when it is used.


indoor temperature pixel chart and current temperature

see if the NullSensors indoor temperature view exists and if so have it add itself to the NullWeather weather stamp....

[x] need to make sure i do a view for the weather stamp to add in the indoor temp pixel chart
[ ] and current temperature
[x] when the weather stamp has been built attempt to have the NullSensors view build the indoor temp view stuff
[ ] and current temperature

eh good enough for now...


kolibri-electron: Bump electron to v22.3.16

Electron Release stable version includes 22.3.16 with node.js 16. https://releases.electronjs.org/release/v22.3.16
Hope this fix the PDF reader rendering with an NVIDIA card issue.
Fixes: https://github.com/endlessm/endless-key-app/issues/133

The new Electron does not fix https://github.com/endlessm/endless-key-app/issues/133.  So, I drop the corresponding text from the commit message.

Can you share the steps you took to bump the Electron version? What tools did you use to do so? Is this documented anywhere?

I simply update package.json manually, then build kolibri-electron once on Windows by following the steps in CI to have new yarn.lock.

@dylanmccall in general is there a "fancier" way to update package.json?

Rebased on master branch again.


Content Off Center

Bug type
Component, Other
Component name
MudContainer?
What happened?
I wanted to add a second drawer to the right side of the screen only on specific pages. Whenever I visit that page and go back to a page without that drawer the content is off center until I either refresh the page for a second time or open and close the left drawer.
Expected behavior
Content should be centered regardless of visiting a page with second drawer on right side.
Reproduction link
https://try.mudblazor.com/snippet/wuwGayYpbewhYvtI
Reproduction steps

Open Rendered page as wide as you can
Click Test2 on MudNavMenu in Left MudDrawer
Click Test on MudNavMenu in Left MudDrawer
Notice that the content on page /test is off center
Click Test on MudNavMenu in Left MudDrawer again or click the MudDrawer toggle button in MudAppBar to force rerender and see content is how it should be expected
...

Relevant log output
No response
Version (bug)
6.0.9
Version (working)
No response
What browsers are you seeing the problem on?
Chrome, Microsoft Edge
On what operating system are you experiencing the issue?
Windows
Pull Request

[ ] I would like to do a Pull Request

Code of Conduct

[X] I agree to follow this project's Code of Conduct

I noticed these classes are being left behind "mud-drawer-open-responsive-lg-right mud-drawer-right-clipped-always" on the MudLayout div when I navigate away from the page that has the right drawer.

Anybody going to take a look at this or am I SOL?


Add filters by goerli and alfajores

Related: https://github.com/Giveth/impact-graph/issues/1098

Closing, moving the tests to Mohammads PR.


[Bug] With tsx, highlighting of delimiters is inconsistent when trying to include attribute names

The current tsx query (at queries/tsx/rainbow-delimiters.scm) works correctly but is only highlights tags, as illustrated here:

I would like it to highlight the attributes names as well. I've tried modifying the query linked above to do this, and came up with:
; inherits: typescript

(jsx_element
  open_tag: (jsx_opening_element
              "<" @delimiter
              name: (identifier) @delimiter
              attribute: (jsx_attribute
                           (property_identifier) @delimiter)?
              ">" @delimiter)
  close_tag: (jsx_closing_element
               "</" @delimiter
               name: (identifier) @delimiter
               ">" @delimiter @sentinel)) @container

(jsx_element
  open_tag: (jsx_opening_element
              "<" @delimiter
              name: (member_expression) @delimiter
              attribute: (jsx_attribute
                           (property_identifier) @delimiter)?
              ">" @delimiter)
  close_tag: (jsx_closing_element
              "</" @delimiter
               name: (member_expression) @delimiter
              ">" @delimiter @sentinel)) @container

(jsx_self_closing_element
  "<" @delimiter
  name: (identifier) @delimiter
  attribute: (jsx_attribute
               (property_identifier) @delimiter)?
  "/>" @delimiter @sentinel) @container

(jsx_self_closing_element
  "<" @delimiter
  name: (member_expression) @delimiter
  attribute: (jsx_attribute
               (property_identifier) @delimiter)?
  "/>" @delimiter @sentinel) @container

(jsx_expression
  "{" @delimiter
  "}" @delimiter @sentinel) @container

Which produces the following result:

It does include the attribute tags in the highlighting but it now has some inconsistencies. For example, you can see in the screenshot that for the element Text.h1, the opening bracket of the opening tag and the closing bracket of the closing tag are inconsistent with the color of the rest of the element. Is there something wrong with my query or is this a bug with rainbow-delimiters?
I'm using Neovim v0.9.4.

Your pattern is too complicated. Since you want to highlight the entire opening and closing tag you can capture the entire thing.
(jsx_element
  (jsx_opening_element) @delimiter
  (jsx_closing_element) @delimiter @sentinel) @container

Thank you for taking a look!
However I do not wish to loose syntax highlighting on the attribute values as it would hurt readability. I specifically want to include the attribute names in the capture, I can't really see how to make the capture "less complicated" with that in mind. By the way, it isn't much more complicated than the default query I linked. It only adds the following:
attribute: (jsx_attribute
             (property_identifier) @delimiter)?

To a few statements, which doesn't seem excessive when compared to the original query?
I'm not familiar with the plugin's internals at all so I can't really tell where the inconsistencies I'm seeing are coming from. Is it an issue with the way I wrote the query? Or Is rainbow-delimiters currently unable to reliably highlight captures in a single color once they reach a certain degree of complexity?

The issue with your solution is that I'd like to keep the syntax highlighting on the attribute values... I specifically want to only include the attribute names in the capture

Sorry, I misunderstood you then. In that case @Danielkonge is correction, you need to use the * quantifier instead of ?. It works similar to regular expressions in that Tree-sitter will never match too few or too many nodes, but exactly as many as you specify. Here is what it looks like for me:

Notice how style, class and foo all have the same colour as the tag name.

This works exactly as expected, thank you both. And many thanks for your work on the plugin!


Update graph_scene.py, specify the num decimal places in class GraphScene

Thanks for contributing to manim!
Please ensure that your pull request works with the latest version of manim.
You should also include:

The motivation for making this change (or link the relevant issues)
How you tested the new behavior (e.g. a minimal working example, before/after
screenshots, gifs, commands, etc.) This is rather informal at the moment, but
the goal is to show us how you know the pull request works as intended.

i need to show a axis from 0 to 2pi, like fig.1 in http://dx.doi.org/10.1103/PhysRevLett.95.146802
code:
class Plotband(GraphScene):
CONFIG = {
"x_min" : math.pi*-1.0,
"x_max" : math.pi3.0,
"x_axis_width": 24,
"x_axis_label": "$k$",
"x_tick_frequency": math.pi0.25,
"x_labeled_nums" :[0.0,math.pi0.5,math.pi1.0,math.pi1.5,math.pi2.0],
"x_num_decimal_places": 2,
"y_min" : -2.0,
"y_max" : 2.0,
"y_axis_height": 8,
"y_axis_label": "$E$",
"y_tick_frequency": 0.5,
"y_labeled_nums" :[-2.0,-1.0,0.0,1.0,2.0],
"y_num_decimal_places": 0,
"graph_origin" : ORIGIN ,
"function_color" : RED ,
"axes_color" : GREEN,
"graph_origin": [-6,0,0]
}
def construct(self):
self.setup_axes(animate=True)

The current plan is to deprecate GraphScene and have all that functionality live in CoordinateSystem, in which case configuration for the axes labels should happen in Axes.add_coordinate_labels.  Right now it looks like that method does not let you pass any configuration for the numbers, but I can change that.


Investigation of Data Centre footprint

Group the Corporate Solutions (APM inventory) by Data Centres
APM inventory (focus on the Lifecycle Assessment value of "innovate" and "migrate" for now)
The investigation is to produce a report that:

groups each Application by Data Centre where they are hosted
ability to identify which application(s) are hosted in which Data Centre (e.g. "which applications are hosted in Data Centre XYZ?")

closing this as Cloud CoE has enough architects on the topic.


Windows (not ready)

Hopefully we can fix or work-around the bug where network connections seem to buffer/lag like crazy on Windows.

I merged this because while it doesn't fix all the windows bugs, it does fix some non-windows ones.


Setting Person/Group field fails

All of the following fail without error. I can look at the backend item and see the original values still there. The column is a person/group field we added and we are using the backend field name, not the frontend. It only allows a single entry, not multiple.
Set-PnPListItem -List $list.Title -Identity $item.Id -Values @{"ContentOwnerMgr"="6"} -SystemUpdate;
Set-PnPListItem -List $list.Title -Identity $item.Id -Values @{"ContentOwnerMgr"="6"};
$item.SystemUpdate();
Set-PnPListItem -List $list.Title -Identity $item.Id -Values @{"ContentOwnerMgr"="6"};
$item.UpdateOverwriteVersion();

@officedocsbot assign @yogkumgit

Hello @JaeEmAre67
I need to kindly redirect you to open an issue in this other repo, where will be handled by the PnP community.
Please verify there, if this hasn't been reported in the past.
Thank you

@get-itips Thank you very much for the contribution and sharing this explanation. @JaeEmAre67
These repos are all open source and the community would welcome to contribute. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


AnyMSeq should implement reactive-streams publisher

This will help with interoperability. Implementation can simply delegate to reactiveSeq by converting the sequential monad type into a ReactiveSeq.
    @Override
    default void subscribe(Subscriber<? super T> sub) {
        this.stream().subscribe(sub);
    }

Completed on https://github.com/aol/cyclops-react/pull/135


added a card component

@hackos123 do review the code and merge the request

@777ahesh  i have merged the code keep contributing.