poolFD failed error when  caching latents for flux finetuning

@kohya-ss When I fine-tune Flux with 18,000 images, after caching the latents, the following error occurs. What could be the problem?Is this a bug, or is it because the data is too large, making caching latents too slow?
2024-09-15 17:26:03 INFO     caching latents...               train_util.py:1039
0%|          | 0/13732 [00:00<?, ?it/s]
0%|          | 1/13732 [00:06<26:41:11,  7.00s/it]
0%|          | 2/13732 [00:07<1:11:27,  3.20it/s]
0%|          | 3/13732 [00:07<55:25,  4.13it/s]
...
17%|█▋        | 2284/13732 [05:59<13:34, 14.05it/s]
17%|█▋        | 2286/13732 [05:59<13:34, 14.05it/s]
17%|█▋        | 2288/13732 [06:00<13:39, 13.96it/s]
17%|█▋        | 2290/13732 [06:00<13:06, 14.54it/s]
17%|█▋        | 2292/13732 [06:04<6:44:39,  2.12s/it]
17%|█▋        | 2293/13732 [06:07<10:17:04,  3.24s/it]
17%|█▋        | 2294/13732 [06:11<10:49:31,  3.41s/it]
17%|█▋        | 2295/13732 [06:14<9:54:20,  3.12s/it] [rank1]:[W915 17:32:18.928929035 socket.cpp:428] [c10d] While waitForInput, poolFD failed with (errno: 0 - Success).
[rank4]:[W915 17:32:18.928928746 socket.cpp:428] [c10d] While waitForInput, poolFD failed with (errno: 0 - Success).
[rank2]:[W915 17:32:18.928932595 socket.cpp:428] [c10d] While waitForInput, poolFD failed with (errno: 0 - Success).
[rank3]:[W915 17:32:18.928931444 socket.cpp:428] [c10d] While waitForInput, poolFD failed with (errno: 0 - Success).
[rank5]:[W915 17:32:18.929296522 socket.cpp:428] [c10d] While waitForInput, poolFD failed with (errno: 0 - Success).
[rank3]: Traceback (most recent call last):
[rank3]:   File "/home/project/sd-scripts_sd3/flux_train.py", line 905, in
[rank3]:     train(args)
[rank3]:   File "/home/project/sd-scripts_sd3/flux_train.py", line 193, in train
[rank3]:     accelerator.wait_for_everyone()
[rank3]:   File "/home/miniforge3/envs/flux/lib/python3.10/site-packages/accelerate/accelerator.py", line 2564, in wait_for_everyone
[rank3]:     wait_for_everyone()
[rank3]:   File "/home/miniforge3/envs/flux/lib/python3.10/site-packages/accelerate/utils/other.py", line 138, in wait_for_everyone
[rank3]:     PartialState().wait_for_everyone()
[rank3]:   File "/home/miniforge3/envs/flux/lib/python3.10/site-packages/accelerate/state.py", line 374, in wait_for_everyone
[rank3]:     torch.distributed.barrier()
[rank3]:   File "/home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/distributed/c10d_logger.py", line 79, in wrapper
[rank3]:     return func(*args, *kwargs)
[rank3]:   File "/home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/distributed/distributed_c10d.py", line 3936, in barrier
[rank3]:     work = default_pg.barrier(opts=opts)
[rank3]: torch.distributed.DistBackendError: [3] is setting up NCCL communicator and retrieving ncclUniqueId from [0] via c10d key-value store by key '0', but store->get('0') got error: Socket Timeout
[rank3]: Exception raised from doWait at ../torch/csrc/distributed/c10d/TCPStore.cpp:570 (most recent call first):
[rank3]: frame #0: c10::Error::Error(c10::SourceLocation, std::string) + 0x96 (0x7f2f0cca3f86 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libc10.so)
[rank3]: frame #1:  + 0x16583cb (0x7f2f473d73cb in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
[rank3]: frame #2: c10d::TCPStore::doGet(std::string const&) + 0x32 (0x7f2f4ba89b82 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
[rank3]: frame #3: c10d::TCPStore::get(std::string const&) + 0xa1 (0x7f2f4ba8ad71 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
[rank3]: frame #4: c10d::PrefixStore::get(std::string const&) + 0x31 (0x7f2f4ba3f7c1 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
[rank3]: frame #5: c10d::PrefixStore::get(std::string const&) + 0x31 (0x7f2f4ba3f7c1 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
[rank3]: frame #6: c10d::PrefixStore::get(std::string const&) + 0x31 (0x7f2f4ba3f7c1 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
[rank3]: frame #7: c10d::PrefixStore::get(std::string const&) + 0x31 (0x7f2f4ba3f7c1 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
[rank3]: frame #8: c10d::ProcessGroupNCCL::broadcastUniqueNCCLID(ncclUniqueId, bool, std::string const&, int) + 0xaf (0x7f2f0df70dbf in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cuda.so)
[rank3]: frame #9: c10d::ProcessGroupNCCL::getNCCLComm(std::string const&, c10::Device&, c10d::OpType, int, bool) + 0x114c (0x7f2f0df7cb9c in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cuda.so)
[rank3]: frame #10:  + 0x11acfff (0x7f2f0df84fff in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cuda.so)
[rank3]: frame #11: c10d::ProcessGroupNCCL::allreduce_impl(at::Tensor&, c10d::AllreduceOptions const&) + 0x10 (0x7f2f0df86430 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cuda.so)
[rank3]: frame #12: c10d::ProcessGroupNCCL::barrier(c10d::BarrierOptions const&) + 0x69c (0x7f2f0df9353c in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cuda.so)
[rank3]: frame #13:  + 0x5cb2ff2 (0x7f2f4ba31ff2 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
[rank3]: frame #14:  + 0x5cbd7f5 (0x7f2f4ba3c7f5 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
[rank3]: frame #15:  + 0x52dfa0b (0x7f2f4b05ea0b in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
[rank3]: frame #16:  + 0x52dd284 (0x7f2f4b05c284 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
[rank3]: frame #17:  + 0x1adf2b8 (0x7f2f4785e2b8 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
[rank3]: frame #18:  + 0x5cc7764 (0x7f2f4ba46764 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
[rank3]: frame #19:  + 0x5cc84f5 (0x7f2f4ba474f5 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
[rank3]: frame #20:  + 0xdb3778 (0x7f2f5ed9d778 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_python.so)
[rank3]: frame #21:  + 0x4b1144 (0x7f2f5e49b144 in /home/miniforge3/envs/flux/lib/python3.10/site-packages/torch/lib/libtorch_python.so)
[rank3]: frame #22:  + 0x172df4 (0x56400fe52df4 in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #23: _PyObject_MakeTpCall + 0x1f8 (0x56400fe19db8 in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #24:  + 0xeb5a7 (0x56400fdcb5a7 in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #25:  + 0x105bbf (0x56400fde5bbf in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #26:  + 0x1871eb (0x56400fe671eb in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #27: _PyObject_Call + 0x1f6 (0x56400fe203f6 in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #28: _PyEval_EvalFrameDefault + 0x2216 (0x56400febac16 in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #29:  + 0x1871eb (0x56400fe671eb in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #30:  + 0x10669e (0x56400fde669e in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #31:  + 0x1b6ca5 (0x56400fe96ca5 in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #32:  + 0x10669e (0x56400fde669e in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #33:  + 0x1871eb (0x56400fe671eb in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #34:  + 0x105472 (0x56400fde5472 in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #35:  + 0x1871eb (0x56400fe671eb in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #36:  + 0x106c30 (0x56400fde6c30 in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #37:  + 0x1871eb (0x56400fe671eb in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #38:  + 0x105472 (0x56400fde5472 in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #39:  + 0x1871eb (0x56400fe671eb in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #40: PyEval_EvalCode + 0x88 (0x56400fe780e8 in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #41:  + 0x248f1b (0x56400ff28f1b in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #42:  + 0x27e805 (0x56400ff5e805 in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #43:  + 0x280bb0 (0x56400ff60bb0 in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #44: _PyRun_SimpleFileObject + 0x1b8 (0x56400ff60d98 in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #45: _PyRun_AnyFileObject + 0x44 (0x56400ff60ea4 in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #46: Py_RunMain + 0x3ff (0x56400ff6205f in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #47: Py_BytesMain + 0x39 (0x56400ff621e9 in /home/miniforge3/envs/flux/bin/python)
[rank3]: frame #48: __libc_start_main + 0xf5 (0x7f2f66cf7555 in /lib64/libc.so.6)
[rank3]: frame #49:  + 0x206e86 (0x56400fee6e86 in /home/miniforge3/envs/flux/bin/python)
[rank3]: . This may indicate a possible application crash on rank 0 or a network set up issue.

I don't think there has been a report like this before. If you restart it, caching may start from where it left off.
Currently, it is slow because caching is not supported multi-GPU (caching is run on one GPU). Specifying --highvram and increasing --vae_batch_size according to the VRAM (for example, from about 4) may improve the speed.

@kohya-ss Thank you for your reply. After specifying --highvram and increasing --vae_batch_size according to the VRAM, the cache latent speed has indeed improved, but it still takes a long time. When the training data is particularly large, the waiting time is unbearable. It seems that multi-GPU is the best solution for now. When will caching support multi-GPU operation?

I don't think there has been a report like this before. If you restart it, caching may start from where it left off.
Currently, it is slow because caching is not supported multi-GPU (caching is run on one GPU). Specifying --highvram and increasing --vae_batch_size according to the VRAM (for example, from about 4) may improve the speed.

@kohya-ss I've tried many times and confirmed that the NCCL node timeout and poolFD failed error are caused by the slow cache speed. It seems that when the training data is large and multi-GPU training is initiated, the cache processing nested within the training process is not very efficient. Would it be better to separate the caching of Flux's text encoder output and VAE latent into a standalone data preprocessing script, and run it once before training to ensure that the cache is completed?


clipping off-mpp operating point calculation

Feature request
An algorithm that determines the off-mpp operating point for inverters that are clipping
Describe the solution you'd like
Assuming that if the converted AC out is greater than rated AC (at the ambient temperature), then the inverter will increase the voltage until the AC output, what is the DC output, DC voltage, and inverter efficiency loss
Describe alternatives you've considered
I scripted something really, REALLY basic, I don't suggest something as simplistic as this:
p_ac = pvlib.inverter.sandia(v_mpp, p_mpp, inverter)  # use MPP first time
voltage_test_range = (v_oc - v_mpp)/100.0  # divide excess voltage into 100 steps
v_dc = v_mpp
while p_ac > ac_rated:
    v_dc += voltage_test_range  # add a little
    i_dc = np.interp(v_dc, v, i)  # v and i are the full IV curve
    # NOTE: v must be monotonically increasing for np.interp to work!
    p_dc = v_dc * i_dc
    p_ac = pvlib.inverter.sandia(v_dc, p_dc, inverter)

But it would be better to redo this with a scalar root finder from scipy.optimize like brentq.
Also, it the AC rated power should be adjusted depending on the ambient temperature, but this could be separate.
Additional context
Sorry, I couldn't find any related issues/prs?
ICYMI: @abhisheksparikh

I agree, would be a nice feature. Somehow it should accept any of the inverter models, or, be some kind of extension within the existing functions so that a user doesn't have to choose to call an inverter function or this new function.
We could also open issues for:

inverter temperature derating (would be easy if there is a source for the %AC power / degree C relationship)
non-unity power factor operations (I think this is difficult, as it would require knowledge of how efficiency changes with power factor, which is not measured AFAIK).

may be related to #1199 ?

I'd be happy to work on this in the medium term future.  Is there a reference that I should work off of?  Is a reference necessary for what would essentially be a point on a curve finder?

@kurt-rhee I think the request is to find the point on the IV curve where the AC output of the inverter matches a desired value. pvsystem.i_from_v (or its v_from_i counterpart) seems relevant, for the DC input. Some thought is needed to define how this capability faces the user - additional inputs for a standard inverter function? Or some new function that lives in pvsystem? I don't have an opinion here.
Also, if the inverter has multiple Arrays as inputs, and the Arrays have different conditions, there are likely to be multiple solutions. For now, I think we should assume a single Array and worry about the multiple MPPT case later.

Hi Kurt, I’m happy to jump on a call to discuss. I’m not sure if there are any references, but if not we could put this in the example gallery. I think the description already explains it well, but to clarify, the system must operate off-mop when clipping, but finding this operating point is not trivial. It’s subject to two constraints:

Ideally AC out from the inverter must be equal to the rated power for the temperature
The dc voltage and current must be in the system IV curve

Do you probably need to iterate or use a bounded root finder like brentq. Perhaps we can just call this function?
ideal_offmpp_clipped_operation(system, ac_rating): -> (v_dc, i_dc)

Another consideration: maximum/minimum voltage/current limitations of the inverter.  If there is no suitable point to the right of the MPP, should the algorithm "fall back" to looking for a suitable point on the left (low voltage, high current) side?
Whether the algorithm interpolates a pre-computed I-V curve, or is given SDM parameters and calls i_from_v internally, must also be decided.
The list of considerations here is already long enough to make me wonder if we are "inventing" too much.  Has anyone looked for a reference we could follow?  I haven't.

Good points about minimum voltage and other constraints. PVsyst also has help page with nice diagram.
I propose one of two options:

Without a reference this is called the “ideal” operation. IMHO opinion this is sufficient and no reference is required because we are simply solving a set of constraints.
put this in the example gallery

IMHO the reference situation is getting out of hand. Solving a set of equations is math. Only implementations of algorithms should require a reference. We are not describing a sky model here, the two situations are not comparable. There are generally available references for math and other basic solar facts.

Good references serve different useful purposes, but perhaps there's no need to get hung up on that right now if the fall-back is example gallery?  Once there is a solution, we'll see how straight-forward it is.

This is interesting: Essentially we are putting a (temperature-dependent) upper bound on the quantity that we are trying to maximize. I don’t think anything a-priori prevents one from defining this like any other nonlinear constraint https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.NonlinearConstraint.html#scipy.optimize.NonlinearConstraint, and then solving for the maximum power as before, but under this additional constraint. I might try to add this feature to the MPPT-under-mismatch algorithm that I put together in https://github.com/pvlib/pvlib-python/pull/1923. Of course, the devil might be in the details!


Use our fork of ethers

The forked Ethers has the following fixes:

Fix "stalling" in FallbackProvider to be sequential
Debounces subscriber polling so that getLogs calls are effectively batched with no redundant block ranges
Fix FallbackProvider's handling of errors so that the first error does not stop attempts on other providers
Fix FallbackProvider's handling of errors so that an error from one provider during broadcastTransaction does not take priority over another provider's success

Confirmed that it fixes the following:

P1. Too many eth_getLogs queries (repeat blocks)

:heavy_check_mark: Yes

P1. Arbitrum / Arbitrum-Goerli issues too many requests.

:crossed_fingers: This seems to be solved by the provider loading refactor that now cancels the former provider.

P1. FallbackProvider: stallTimeout is not functional (all queries are issued simultaneously)

:heavy_check_mark: Yes

P2. FallbackProvider call: Promise.race - first failure throws error, does not fallback

:heavy_check_mark: Yes

P2. FallbackProvider Transaction submission - Promise.all (?) hits error after first success: "already seen"

:crossed_fingers: In theory, yes, but I haven't reproduced (neither before nor after the fix). I can't broadcast a transaction because I can't connect to relayers, and I can't send self-proved transactions because my test wallet has zero ETH to pay fees.

P3. On app resume, 100k+ block query sent for eth_getLogs . Hits rate limit threshold. (Maximum block numbers in query should be configurable).

:crossed_fingers: This one is hard to reproduce, but we can assume it's fixed by either our new fork or the provider loading refactor, or a combination of both.

Seemingly merged via https://github.com/Railgun-Community/engine/commit/695903adddf4f9c0cc54b9f2186138c2ebd89d20


Can it crawl urls within js?

So like there are websites that load stuff with js
like is it possible to save webapps with it? Like photopea or hexed.it

It doesn't look for URLs on JavaScript files, In only does in css files by looking for data(url).
The original idea is to save the HTML generated by JavaScript, so it can be indexed by search engines. This will break some applications like the ones you have mentioned. I have just added a spa mode that mostly fixes this problem for the simple applications.
mpa https://example.net --spa
On this mode, it will not save the rendered/generated html, it will save the original html as served by the web server. Web apps also have the issue that some JavaScript modules are loaded only when you click around buttons or links.  I just had the brilliant idea of fetching from origin requests not found in the zip, it will update the zip with the fetched file.
So mostly, to back up a simple application will require crawling and then using it a bit to fetch the missing modules that only are requested when using the app. The spa mode seems to work good with hexed.it, but it doesn't seem to work photopea, I haven't really looked much at why photopea doesn't work. Let me know how that goes.

caddy content type: seems like a problem to report to Caddy, I just rechecked and the mpa web server has the correct content type. Trying to serve the files from a different webserver requires a few tweaks https://github.com/potahtml/mpa-archive/blob/master/src/server.js#L43-L49 is not that simple to make the urls mapeable to files. With that tweak it should in theory works the same. The only difference is that the mpa server will fetch files when the requested file is not found on the zip, on which case it will fetch the file from origin and update the zip. This is done this way for "buttons" on applications that trigger loading of js modules that werent crawled.

re integrity check: this happens because mpa when NOT in mode --spa rewrites the hard-coded URLs found on documents, for example it replaces https://example.net for /. When in --spa this rewriting doesn't happen, so the integrity check seems to pass. I am willing to figure out a workaround, but I am not sure what to do. I have attempted before to remove the integrity data, but it seems that the check sometimes happens in scripting, maybe we can replace .integrity for .integrityIgnoreMe but this may also cause a new set of issues. Maybe we can discuss with examples about this on a different issue?

<IP_ADDRESS> I am unsure how binding to <IP_ADDRESS> works, I just attempted to naively change the ip to <IP_ADDRESS>, and I cannot open it in a browser. Suggestions welcome

SharedArrayBuffer requires two special headers on the web server, I just added them. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer#security_requirements

url() property on css files may have quotes, I just changed something to remove the quotes. I wasnt able to reproduce the other error, but I have just added a check for undefined

when crawled in --spa mode the app nows kind of works but there are a bunch of errors in the console that right now I do not have time to investigate. I do not see any request canceled/erroing. Maybe you can suggest what's wrong.

3, 4 and 5 are solved. It now listen to <IP_ADDRESS>, the random port is seeded to the zip file name instead of the path to make it more predictable.
2 integrity check it may worth an investigation.


Redundant wait and index params in event.list() API

In Event.list method we are creating wait and index parameters:
https://github.com/cablehead/python-consul/blob/41b7c8c4b6caf7d32b2a073fd74fdc631de09e1a/consul/base.py#L452-L460
But in documentation no such parameters are present:
https://www.consul.io/api/event.html#list-events
Is this something coming from older versions of Consul? I haven't found any mention about it. Or is this bug and we need to remove this params? Can anyone help?

@matusvalo  look here
wellcom to python-consul2,This is my ongoing maintenance version

@matusvalo and https://github.com/hashicorp/consul/blob/66d138f35e2cc5548412a55362a7bcedbe198888/api/event.go#L69


Too long distance connections.

Current implementation supposes that connections should be only to the closest neurons. Then why there is such long connections appear? Check for bug

s.

Probably that is because we add neurons sequentially one by one. At first, when there are not enough close neurons, long connections can be formed. Also, we have a problem that input neurons are always connected with each other, because we add them when no other neurons exist.

One more problem of sequential adding is that the last added neurons will not have any listeners. It may be ok for internal neurons, but not ok for input neurons.


RHIDP-3334: apiversion and kind update

IMPORTANT: Do Not Merge - To be merged by Docs Team Only
Version(s): 1.2.x, 1.3.x, main
Issue: RHIDP-3334
Link to docs preview:

Reviews:

[x] SME: @rm3l
[x] QE: @josephca
[x] Docs review: @jmagak
[ ] Additional review: @mention assignee (by writer)

Additional information:

/lgtm

/cherrypick release-1.3

/cherrypick 1.2.x


fix: Allow manual input of lightning invoice

Fixes a minor regression that invoices can't be entered manually anymore. Also when looking into this bug, I figured it's probably nicer to have the QR code scanning icon next to the field. That way we could make it a reusable widget.

bors r+


Missing docstrings in V4

pdstools version checks

[X] I have checked that this issue has not already been reported.

[X] I have confirmed this bug exists on the latest version of pdstools.

Issue description
Creating issue for tracking purposes. While refactoring for the V4 version of pdstools, not every class/module/method/function was given docstrings. Now that I've included numpydoc as a pre-commit hook, this becomes an issue. I'd like to use numpydoc to validate new incoming docstrings automatically, but we can't do that today as it's complaining about many missing docstrings instead. This'll be quite some work, but obviously it's necessary to get the API docs up to speed as well.
Reproducible example
-

Expected behavior
Unfortunately (for us), every class, method, function should have a docstring, conforming exactly to the numpy docstring standard. I say unfortunately, because this is a lot of work.
Installed versions

V4

Should we really? It’s an internal tool with not that many users. I rather
spend time to broaden the scope of the analyses and make them better - eg
AGB or IH coverage or the ADM Healthcheck now that is going to be served
via DJS.
Op vr 8 nov 2024 om 10:40 schreef Stijn Kas @.***>

pdstools version checks

I have checked that this issue has not already been reported.
I have confirmed this bug exists on the latest version
https://pypi.org/project/pdstools/ of pdstools.
Issue description
Creating issue for tracking purposes. While refactoring for the V4 version
of pdstools, not every class/module/method/function was given docstrings.
Now that I've included numpydoc as a pre-commit hook, this becomes an
issue. I'd like to use numpydoc to validate new incoming docstrings
automatically, but we can't do that today as it's complaining about many
missing docstrings instead. This'll be quite some work, but obviously it's
necessary to get the API docs up to speed as well.
Reproducible example

Expected behavior
Unfortunately (for us), every class, method, function should have a
docstring, conforming exactly to the numpy docstring standard. I say
unfortunately, because this is a lot of work.
Installed versions
V4
—
Reply to this email directly, view it on GitHub
https://github.com/pegasystems/pega-datascientist-tools/issues/280, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABEVTKF4V43AIAFHC6GIMM3Z7SBHDAVCNFSM6AAAAABRNC3OXCVHI2DSMVQWIX3LMV43ASLTON2WKOZSGY2DGNBXGY2DCNY
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

@operdeck  I don't believe they are exclusive and I think there may be some middle-ground (only requiring valid docstrings for new code), but I do think there's quite some benefits to having proper documentation so that it's more self-documented. But definitely good to not do docstrings for the sake of docstrings, so maybe this issue is worded a bit strongly.


Docs and Issues

Am noticing a few common issues, and lack of docs..
Can help with the docs and issues as recent experience with revel..
-- issues --
we need to tag stuff, eg "driver", "interface", "query", "bug", et all, more than one..
some of these share a common themes..
example of tagging issues (although revel is alrge)
https://github.com/revel/revel/issues
-- manual --
It doth not exist, so can I suggest I can work on that.. ??
we need to break it down into section etc..
Prefered is markdown and for markup..
although we do need a parser..
Maybe we can be clever and use openshift or alike.. ??
eg like
http://revel-docs.daffodil.uk.com/manual/controllers.html

==============
gorm guide
Here is a quick guide to dive into gorm
gorm = an golang flavoured object relational mapper = gorm
threre are a few other golang powered orms..
we are gorm ;-)
What is an Object Relational Mapper ?

its an interface to a database, and and abstraction layer..
so instead of u as a developer and the database admin having to lisase
its created in "code" instead, eg php, python, and this special recipie  in go

Is GORm the best.. ?
we dont claim to be, requirements and vastly different..
gorm is the simpler version of things, and across db and dialects..
Can I use my olde queies from php and cust and paste ?
Yes, and the arguments. et all..
U can get an underlying connections to olde datbase..
Quick Start..
here were gonna connect to an exiting database..
and query its working
and use automigrate to create some new columns..
and get an aggregate view..
This will make most php/python devs happy as they all code in hoardcore anyway...

DB Connection
a Db connection exists within typically a web application..

eplxain how to connect to multiple conns
explain credentials and db and basics of peerms and debug snags
ping()
keepalive etc() and argument on poolings etc

Raw SQL
Explain some show tables and stuff to get data from db..
execute a query to get last projects list and count aggregate..
ie test existing queries in golang and get rsults into print
Go Problems

handling nulls and type and dates
others silly stuff
returning errors and handling errors

ORM and Automigrate
Defining tables with a struct..
CRUD
table naming shcema..
chaning schema named
new cols are added..
index created..
using with session and and json/xml

Query
Get a row query, and a view
Get a paged list query...
get an aggregate view

One issue i was having was trying to get more then one row back. When i was in debug mode it was allways returning one record. So for example.
var users User
db.Find(&users)

When if i wanted more than one record it needs to be
var users []User
db.Find(&users)

Dont get me wrong it makes perfect sense but for people new go to and trying to get going it gets a little confuessing.

Hi @pedromorgan
Just like what we contacted via email, what I want to have is more docs that follow godoc format, also it would be good to have a github page for it.
Thank you for would like to contribute the project.

@jinzhu
I think godoc's are great but getting started docs are just as important. they are super imporant for people that are still leraning the basics of go and need some help getting started.

@wojons precicely ;-)

Hello @pedromorgan
Seems like you already using the WIKI for that, thank you ;)
Please feel free to update that, if it is good enough, we could use that to replace current README, or create new github page based on that.


New feature: LoggingCallback

Hi everybody!
This is a callback that I've been using and thought other people might find handy. This PR adds a LoggingCallback that prints an end-of-epoch summary. The print function is a parameter, so it can print the summary to Python logging or a file. Each epoch it calls the given print function with a formatted summary. The format of the summary is controlled by parameters to LoggingCallback.
# Write to Python logging
import logging
model.fit(x, y, callbacks = [LoggingCallback(logging.info)]

# Write to a file
with open("log.txt", 'w') as f:
 def print_fcn(s):
   f.write(s)
   f.write("\n")
 model.fit(x, y, callbacks = [LoggingCallback(print_fcn)]

The summary itself looks like the below by default but the format strings are all configurable.

Epoch: 3 - loss: 3.4123 - val_loss: 5.4321

Cheers,
Ben

Also, added a unit test that checks that the callback fires and calls the print function. Doesn't actually test that the format looks good.

I think this should go into the contrib repo for the time being.


uart send receive

Sir,
Is there a sample that show how to send and receive data from UART using POLLING ?
Can you help us ?
Thank you!

Hi @tcpipchip,
Apologies for the long delay on a reply.
You can use the SYNC_SPINWAIT mode when using the uBit.serial.send() or uBit.serial.read() and that will block until data is in/out. There is a bit more info on how that works here: https://lancaster-university.github.io/microbit-docs/ubit/serial/
As it's an old issue I'll close this as resolved, as hopefully the info above answered your question! But if it hasn't or you have any other questions related to this please do reopen the issue and we can look into it 👍
Thanks!


RuntimeError: Inplace operation detected

Hello,
Very impressive work! Thanks!
When I do Post-Training Quantization on my self-defined model which contains a squeeze-and-excitation module, on the step of generate .yaml file, I got a problem:
raise RuntimeError('Inplace operation detected, meaning inputs stats are overridden by output stats. 'RuntimeError: Inplace operation detected, meaning inputs stats are overridden by output stats. You can either disable this check or make sure no in-place operations occur. See QuantCalibrationStatsCollector class documentation for more info.
That occurs because squeeze-and-excitation module has inplace operation.  Do you know how to disable this check? Thanks a lot.
Sincerely

By the way, when define forward(), Does the Variable of different step of output has to be named differently? Or there will be Inplace operation detected error so that static result .yaml can not be generated? Thank you.

Hi @le8888e,
The explanation for your first question is here:

If a certain layer operates in-place, that layer's input stats will be overwritten by its output stats.  The collector can, optionally, check for such cases at runtime. In addition, a simple mechanism to disable inplace operations in the model can be used. See arguments details below."

You can edit the squeeze-and-excitation module to configure this operation not to be in-place.
I didn't understand your second question.
Cheers
Neta

To disable the check, pass inplace_runtime_check=False to the init function of QuantCalibrationStatsCollector. Note that if the inplace operation is coming from a module with a inplace attribute (e.g. self.relu = nn.ReLU(inplace=True)), then the collector can automatically detect those. In that case, pass disable_inplace_attrs=True to the collector's __init__function.
The link @nzmora posted in the previous comment will take you to the collector's class documentation where you can see more details.
Regarding your second question - if I understand it correctly, you're asking if there is any restriction on the Python variable names in terms of in-place operations detection. Am I right? In that case, the answer is that there's no restriction. Variable names are not related.


Please invite me to the GitHub Community Organization

Name
Heithem
Discord Username (if applicable)
item#8357
Additional Context
No response

Welcome to ChryzHub 🎉🥳 @heithemmoumni


Phantom deeplinks

Breaking Changes
N/A
Changes

feat:
fix:
chore:

Associated Issues
closes #...

Could you please fix the merge conflicts?
We only need to the changes from src/utils/defaultConfig.ts and solana/src/client.ts

@phoenixVS

Could you please fix the merge conflicts?
We only need to the changes from src/utils/defaultConfig.ts and solana/src/client.ts

Fixed, only added a few to laboratory test small change
It's just a test wallet address, so I've changed it to one I have access to and debug transactions easier

I will left more detailed explanation in comment

@phoenixVS Please add some sources


"parseRemoteUpdateOutput: unexpected update line" errors after upgrade to 1.20.3

Description
After upgrading 1.19.3 to 1.20.3 (both compiled from sources), gitea throws errors like...
2023/09/11 09:47:03 ...irror/mirror_pull.go:170:parseRemoteUpdateOutput() [W] parseRemoteUpdateOutput: unexpected update line " * [new ref] refs/pull/26997/head -> refs/pull/26997/head"
2023/09/11 09:47:03 ...irror/mirror_pull.go:170:parseRemoteUpdateOutput() [W] parseRemoteUpdateOutput: unexpected update line " * [new ref] refs/pull/26998/head -> refs/pull/26998/head"
2023/09/11 09:47:03 ...irror/mirror_pull.go:170:parseRemoteUpdateOutput() [W] parseRemoteUpdateOutput: unexpected update line " * [new ref] refs/pull/26998/merge -> refs/pull/26998/merge"
[...]
2023/09/11 09:47:15 .../indexer/stats/db.go:73:Index() [E] Unable to update language stats for ID 148c9c4b0500007d465156e4c2d7ff6873d23577 for default branch main in /path/to/repo/gitea.git. Error: Error 1213 (40001): Deadlock found when trying to get lock; try restarting transaction
2023/09/11 09:47:15 ...dexer/stats/queue.go:24:handler() [E] stats queue indexer.Index(2) failed: Error 1213 (40001): Deadlock found when trying to get lock; try restarting transaction

...on mirror update. Gitea mirror sync at 09:47:03 looks like finished successfully in gitea's UI and no other problems found.
No such errors in 1.19.3 while syncing same mirrors.
Gitea Version
1.20.3
Can you reproduce the bug on the Gitea demo site?
No
Log Gist
No response
Screenshots
No response
Git Version
2.30.2
Operating System
Debian
How are you running Gitea?
Compiled from sources.
Database
MySQL/MariaDB

Same with Gitea 1.21.0

Another type of error message from queue.go:
2023/12/07 18:26:50 ...dexer/stats/queue.go:24:handler() [E] stats queue indexer.Index(64) failed: Error 1062 (23000): Duplicate entry '64-Handlebars' for key 'UQE_language_stat_s'...

The problem comes from language_stat indexer but not parseRemoteUpdateOutput.


[dont-ignore-me] Fix allows clean

Description of your pull request and other information
This allows removing artefacts in test/ by running git clean -f test
Imho, 337e0c62f894722e9c268b14d02a85b84c96024d should be seriously reconsidered.
Ignored artefacts are starting to appear in root as well for me.
Originally this has to do something with #352, but tl;dr... sorry.

The artifacts should not be committed, so they are ignored in gitignore. make clean-test is what is supposed to clean up the artifacts. If it is missing something, let me know

If it works, don't fix it...
make clean-test also removes test/testdata/player-*.js *.frag.aria2 and does *.part*
node of make clean-test, make clean-dist nor make clean-cache removes these:
*.ogg cookies *.annotations.xml *.part *.m4v *.sbv *.conf *cookies.txt *.flac *.live_chat.json *.swp *.srt *.aria2 *.description or *.part-* but last one is removed by above.
This was a head scratcher, for me to comprehend, but think this does make it easier to stage with git, right?

You can add these to clean-test (except cookies and conf). I have just been adding extensions to gitignore and clean-test as I encounter them. Sometimes I just forget to add it to one or the other

but think this does make it easier to stage with git, right?

Yeah. I always have test artifacts lying around. git tracking them is annoying
PS: .aria2 is no longer used

Is *.annotations.xml  and *.description download artefact?

yes. .annotations are youtube annotations which dont exist anymore.
.description is generated when using --write-description

Made them ordered alnum.


pull utm corrected fields and add yes/no for if the utm gets changed or not

We don't need the corrected fields and we have utm_northing and easting and $x and $y defaults it to the proper locations. Sometimes we may want to change it manually though and we should have a switch that alerts us to that.
this is done in the R scripts

this creates a bit of a dangerous situation because we have switched to Albers (3005) and are getting lat and long vs utm_northing/easting...
We don't want people to populate the pscis spreadsheet with the wrong coordinates.
Not sure what to do but an option could be for folks to populate the utms themselves and if they or we want to use the geom to determine the utm we pull it out with R or something else to populate those fields....

moveing to its own issue since this is a form qlr issue vs a form build in R issue and is really unrelated to the correction thing...


Fix bug with sorting columns in group by using time shift

Fixing the '<' not supported between instances of 'str' and 'tuple' issue with time shift group by line charts.
@john-bodley

Codecov Report

Merging #4683 into master will not change coverage.
The diff coverage is 0%.

@@          Coverage Diff           @@
##           master   #4683   +/-   ##
======================================
  Coverage    71.4%   71.4%
======================================
  Files         190     190
  Lines       14934   14934
  Branches     1102    1102
======================================
  Hits        10663   10663
  Misses       4268    4268
  Partials        3       3

Impacted Files
Coverage Δ

superset/viz.py
79.62% <0%> (ø)
:arrow_up:

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 00cab7e...c94e995. Read the comment docs.

LGTM


author

Coverage remained the same at 89.623% when pulling c4b871e31e8c6b1ab39d6da5c541f7771c86cf2d on kennyngdsc:patch-2 into 30dbd12c93af63cf2dac52517617b6bc293b15e3 on CS2103JAN2017-T15-B3:master.


feat: add Zeebe tab button for empty tab

Closes #2132

I'm not sure if the row becomes too long when you apply the correct naming. Instead, I would suggest placing the buttons below each other like:

I assume, at the latest when we introduce the form button we definitely need this layout change.

Thanks Andi. I will add a commit regarding https://github.com/camunda/camunda-modeler/issues/2136 on top and this PR will include layout changes as well.

For comparison:

or

Hello, what about the sequence of the buttons?
As it is unlikely to switch constantly between Zeebe and Camunda Platform, doesn't it look better if you group them by products?

BPMN Diagram (Camunda Engine)
DMN Diagram (Camunda Engine)
BPMN Diagram (Zeebe Engine)

And use the same term for Camunda Engine. The DMN engine is rarely used by itself (from my perspective).

@barmac I would prefer the last proposal Create a new file: because creating a tab is not the goal of the user :)
@ingorichtsmeier The naming and order above are what we agreed on in several rounds. I agree that we have here some not-ideal-solution as an intermediate step but we want to come back to an engine-agnostic start asap. This means, a future version should contain only create BPMN / DMN / Form

I've adjusted the empty tab content and implemented https://github.com/camunda/camunda-modeler/issues/2136.
The links should be active soon:

https://camunda-modeler-on-demand.s3.eu-central-1.amazonaws.com/2132-empty-tab-button/camunda-modeler-2132-empty-tab-button-linux-x64.tar.gz
https://camunda-modeler-on-demand.s3.eu-central-1.amazonaws.com/2132-empty-tab-button/camunda-modeler-2132-empty-tab-button-mac.dmg
https://camunda-modeler-on-demand.s3.eu-central-1.amazonaws.com/2132-empty-tab-button/camunda-modeler-2132-empty-tab-button-mac.zip
https://camunda-modeler-on-demand.s3.eu-central-1.amazonaws.com/2132-empty-tab-button/camunda-modeler-2132-empty-tab-button-win-ia32.zip
https://camunda-modeler-on-demand.s3.eu-central-1.amazonaws.com/2132-empty-tab-button/camunda-modeler-2132-empty-tab-button-win-x64.zip


Prevent dragging form items in cases related to skip rule targets

Within the form editor:

If a question to be moved contains a skip rule, it now cannot be moved after its target (i.e, the question that will be skipped to)
If the item is a skip rule target (i.e., it is a question that would be skipped to if certain conditions were true), it now cannot be moved before the question that refers to it.

Also:

"destroy" translation is missing if you hover over delete icon: Fixed by adding the missing entry under en.actions.destroy. This would also need to be added for all other languages, correct?

Remaining issues related to dragging for future work:

Users are very limited when dragging out of a group (must drag down, then one level out, then can move up and down)
when a question refers to itself, you can't move it anywhere at all
Sometimes a drag triggers a click which loads the question edit form
interface doesn't update to reflect new rank # after dragging (until you refresh the page)

Moved to draft, fixing failing specs and errors related to if the rule is to skip to :end

I am still getting one failing test in ./spec/features/responses/display_logic_spec.rb, although I didn't change anything in the display logic. I'm not sure the cause.

Removed review request because I'm going to attempt to fix the failing test!


linux GCS: wait for SCSI device to appear under /dev/sd*

Update ControllerLunToName to wait for /dev/sd* to become available in addition to waiting on vmbus. For now it's a simple os.Stat call, which retries on os.IsNotExist.
Signed-off-by: Maksim An<EMAIL_ADDRESS>

This might be overkill, but can you use inotify (go) to wait for new files/devices under /dev/?
In the case that its pretty straightforward to do, I think that control flow would read better than the sleeps, and could be used for the bits right above in ControllerLunToName, where we wait for /sys/bus/scsi/devices/<scsiID>/block as well.

This might be overkill, but can you use inotify (go) to wait for new files/devices under /dev/?
In the case that its pretty straightforward to do, I think that control flow would read better than the sleeps, and could be used for the bits right above in ControllerLunToName, where we wait for /sys/bus/scsi/devices/<scsiID>/block as well.

It turns out this is not enough to completely fix the problem in anycase, so we don’t really know what is going on yet.


Run the model with other data

How do I turn other data into data that this code can use?

Hi @qingninggo!
I'm afraid I don't provide additional preprocessing scripts so you need to build your own.
I recommend you to unpickle data binary files to inspect the structure.
You can put break point here(https://github.com/DaehanKim/vgae_pytorch/blob/master/input_data.py#L20)
to see how each data file is organised.

Thanks for replying, I have solved the problem, have a nice day!


Passing Pandas dataframe from a client to the API [422 Error]

I am trying to send a pandas dataframe as a request body but running into this problem:
 "POST /api/v0/add-new HTTP/1.1" 422 Unprocessable Entity"
from fastapi import FastAPI
import datetime
from pydantic import BaseModel
from typing import List

app = FastAPI()

class Item(BaseModel):
    ID: List[str]
    StartDate: List[datetime.date]
    StartTime: List[datetime.time]

@app.post('/api/v0/add-new')
def add_new_pivots(item:Item):
    return item

This is how I send the dataframe:
import requests

def create_df():
    .
    .
    return df

df = create_df()

df_json = df.to_dict(orient='list')

requests.post('http://localhost:8000/api/v0/add-new', data=df_json)

Dataframe looks like this:

After converting to json, looks like this:

Description

How can I send a pandas dataframe as post request. I can send row by row of the dataframe to make an api call each time but it is not very efficient.
Environment

OS: macOS:

FastAPI Version: 0.58:

Python version:
3.7.4

Additional context

I have a solution but I am open to other suggestions:
So when you are passing json, it needs to be converted into string format before you can post the data. Also we will be sending the data as a list of records.
class Item(BaseModel):
    ID: str
    StartDate: str
    StartTime: str

@app.post('/api/v0/add-new')
def add_new_pivots(item: List[Item]):
    return item

and
df_json = df.to_json(orient='records', date_format='iso')
requests.post('http://localhost:8000/api/v0/add-new', data=df_json)

I also needed to send a dataframe to a service.
What I ended up doing is using pyarrow to convert the dataframe to feather and do a file upload request to the server and convert back to pandas in the backend server.

You can probably also try Pandera: https://pandera.readthedocs.io/en/stable/pydantic_integration.html

Sorry for the long delay! 🙈  I wanted to personally address each issue/PR and they piled up through time, but now I'm checking each one in order.

Hey @VedAustin, there is a simple solution here!
https://github.com/tiangolo/fastapi/issues/3373#issuecomment-861159015
don't requests.post(..., data=), rather use requests.post(..., json=)

import pydantic
from typing import Dict, Tuple, List, Any
from pandas import read_parquet

class SplitInputDF(pydantic.BaseModel):
    index: List[Tuple[int, int]]
    columns: List[str]
    data: List[List[Any]]

    class Config:
        schema_extra = {
            'example': read_parquet('./data/dataset/test.parquet')
                .drop(columns='GroundTruth')
                .head(1)
                .to_dict(orient='split')
        }

@app.post('/infer', tags=['inference'])
def infer(df: SplitInputDF):
    return df

import requests

sample_dict = read_parquet('./data/dataset/test.parquet')
                .drop(columns='GroundTruth')
                .head(1)
                .to_dict(orient='split')

resp = requests.post(
    url='http://<IP_ADDRESS>:8000/infer',
    json=sample_dict,
)


move doctests out of init.py && put show_versions in main

[x] Closes #417
[x] Tests added
[x] Fully documented, including history.rst for all changes and api/*.rst for new API

Enables this:
$ python -m pyproj

System:
    python: 3.7.3 | packaged by conda-forge | (default, Mar 27 2019, 23:01:00)  [GCC 7.3.0]
executable: /home/snowal/miniconda3/envs/pyproj/bin/python
   machine: Linux-4.15.0-58-generic-x86_64-with-debian-buster-sid

PROJ:
      PROJ: 6.2.0
  data dir: /home/snowal/scripts/pyproj/pyproj/proj_dir/share/proj

Python deps:
    pyproj: 2.3.1
       pip: 19.2.1
setuptools: 41.0.1
    Cython: 0.29.10

@jorisvandenbossche, thanks for taking the time to look into this and share your thoughts! I will let this idea sit for a bit before any final decisions as you have raised some valid concerns. In the meantime, here are some of my current thoughts that may change:

Is it really needed? ...

I added it because I find myself doing the show versions operation pretty often and chopping off ~35 characters is kinda nice IMO. But, you are correct that it is not explicit. Nonetheless, it provides a concise access point to version information about pyproj & PROJ useful to the user similar to the PROJ cli:
$ ./pyproj/proj_dir/bin/proj
Rel. 6.2.0, September 1st, 2019
usage: proj [-bdeEfiIlmorsStTvVwW [args]] [+opt[=arg] ...] [file ...]

adding it is yet another corner feature that needs to be supported (as external users might start to use it as well)

Well, I certainly hope people use it :). I find debugging pyproj is a common occurrence and making the interface for users to provide information to us a little simpler could be handy IMO.

you are correct that it is not explicit.

So we could also make it explicit? Eg with a --versions parameter (and with an abbreviated form, it should only be a few more characters to type). I think that is a typical pattern with command lines.
But you certainly give good arguments to have it ;)

Interesting, I like those ideas. I will try out an iteration of on those ideas later.

Current iteration:
$ python -m pyproj
pyproj version: 2.3.1 [PROJ version: 6.2.0]
usage: __main__.py [-h] [-v]

optional arguments:
  -h, --help     show this help message and exit
  -v, --verbose  Show verbose debugging version information.
$ python -m pyproj -v
pyproj info:
    pyproj: 2.3.1
      PROJ: 6.2.0
  data dir:~/scripts/pyproj/pyproj/proj_dir/share/proj

System:
    python: 3.7.3 | packaged by conda-forge | (default, Mar 27 2019, 23:01:00)  [GCC 7.3.0]
executable: ~/miniconda3/envs/pyproj/bin/python
   machine: Linux-4.15.0-60-generic-x86_64-with-debian-buster-sid

Python deps:
       pip: 19.2.1
setuptools: 41.0.1
    Cython: 0.29.10

@jorisvandenbossche thoughts?


NuKeeper's future

NuKeeper was created when no similar tool existed. It kept on going for quite a while as the main contributors used it daily, but things have changed. With Dependabot being a built in part of GitHub now, and dotnet-outdated available for command line use, NuKeeper mostly remains used for the niche scenarios involving Classic .NET Framework. With .NET 6.0 available, we (@AnthonySteele  and @skolima ) feel NuKeeper has fulfilled its purpose.
This issue is a notification we intend to archive this repository and not release any future updates. We're very grateful to all contributors to NuKeeper over the years.
If you do use NuKeeper actively and feel like maintaining it is something you'd like to do, you are more than welcome to fork it.
FYI: tagging contributors with 2 or more commits.
@MarcBruins @MaxMommersteeg @shep1987 @zubivan @slang25 @CrispyDrone @sharpSteff @StephanTuinder @Bouke @Jens-H-Eriksen @cohen990 @Chama-StephanTuinder @rajbos @kwlin @chrisann @david-driscoll @arikalish @cswendrowski @msallin

Thanks @AnthonySteele and @skolima
I agree the world seems to be moving away from .net framework very quickly so I think this is a sensible move.
Thank you all for your contributions and possibly see you in another Project soon!

I stumbled upon this repo 2 days ago and found it fit my needs perfectly. My company uses Bitbucket Server for our code, so we can't use Dependabot. Looking at dotnet-outdated, I'm not seeing any mention of functionality to open PRs for the updates. It appears to be a local-only tool. What replacement do you recommend for the scenario of wanting PRs opened automatically for NuGet package updates to a Bitbucket Server instance?

My company uses Bitbucket Server for our code, so we can't use Dependabot.

I'm in the same boat. We're running local builds with a few modifications (see my open PRs in this repo). We'll be keeping going with the latest version until we have time to build a tool that wraps dotnet-outdated and creates PRs in BitBucket based on its output. Thankfully, the BitBucket APIs aren't terribly complex, but it's not on our radar until NuKeeper stops working for our use case.

We're not planning on taking down the existing tool, it will continue to work as it does currently. We're just acknowledging the fact that we have stopped maintaining it.

@skolima I understand that, but with no maintenance it eventually will become unusable. :) That's why I'm looking for a replacement if one currently exists.

Also have a look at Renovate that has lots of integrations to the SCM systems mentioned above. And I you need to, most tools can run inside a container as well 😉.

I would like to see NuKeeper continue to be maintained and used by the community. If I'm honest, I don't have enough energy to do it, and we would need someone who has that energy.
@msallin you expressed interest recently in being involved, what are your thoughts?
Perhaps we can put out a call for new maintainers on Twitter too?

@AnthonySteele and @skolima thank you so much for this tool. It has been a great help for some time.
I'm currently not in a position to take on the maintenance of this tool. It has been disabled at my $company for some time now due to blocking issues and I don't see those resolved soon either.
Now that this project might go archived, may I suggest you disable the stale bot on this repository? That would allow future potential users/maintainers to evaluate the state of the project and the issues tab would be a good representation of any current issues.

The project is now archived. You are welcome to fork it.
We did not opt for handling over the maintenance and the urls on NuGet and Docker, as NuKeeper is a part of the build chain, and thus potentially a very juicy target for an attack. We do want anyone moving to a new tool, under new maintainers, to have to perform the switch explicitly.


Move to the newest VPP stable/1807

Coverage increased (+0.05%) to 77.245% when pulling d2135bc7ac1b24f12d66b1ef7b94b61410fb03af on rastislavszabo:master into 015dfbffe15c29d242ceb5c922bb6114256e1fd2 on contiv:master.


Country definitions

All needed countries must be added to \common\countries\ and the files listed in \common\country_tags. All country data other than tag and name can be defaulted.

Tag mappings are not needed for this and will be done later. Indeed, using only generated tags may make #14 easier.


[Update]

Description
The boxes are not visible properly to NEW USERS......... I have given a better look to the boxes in the "Join Us Section".😍
Have a look at the screenshot below...
1 - BEFORE EDITING
2 - AFTER EDITING
.
.

.
.
I want you to assign me for resolving the issue.
Screenshots
No response

@anish2210 do it

@jheel05 what does the LEVEL tag stands for ?

Why the issue has been closed?


Daikin FVXS50FV1B is working

Home Assistant version
0.107.6
SmartIR version
1.7.4
SmartIR configuration
Describe the bug
No bug. Climate AC Daikin FVXS50FV1B is working perfectly with code 1101 and broadlink mini 3
Thank for you work!
Debug log

Thanks for your contribution


nixos/qemu-vm: fix diskless VMs

Description of changes
Previously, it was possible to run with a tmpfs / with virtualisation.diskImage = null;, this was likely broken by my changes in 4b4e4c3ef930c6106918d27a933de1b6965eff2c.
It is reintroduced by disabling properly the bootloader for now, as it is complicated to make it work with.
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

Running an evaluation here https://hydra.nixos.org/jobset/nixos/python-test-refactoring with merge-base.

Evaluation shows no extra failures, beyond existing ones.

This merge brought back some errors https://hydra.nixos.org/eval/1794619  (related to PR #229826)
I hope that some of you understand why, or at least better than me.

@RaitoBezarius: so, reverting for now?  https://github.com/NixOS/nixpkgs/pull/230386

I can take a look to them tomorrow, but I am okay with revert if you prefer to unblock the channel now.

OK, merged for now.  I'm trying to keep the lag of the channels small continuously, say under 48h for -small ones.

Result of nixpkgs-review pr 228047 run on x86_64-linux 1

2 packages blacklisted:

nixos-install-tools
tests.nixos-functions.nixos-test

2 packages built:

tests.testers.nixosTest-example
tests.trivial-builders.references

For reference, the problem is here:
machine: must succeed: mount
machine # [    5.571187] dbus-daemon[899]: dbus[899]: Unknown username "systemd-timesync" in message bus configuration file
(finished: must succeed: mount, in 0.02 seconds)
devtmpfs on /dev type devtmpfs (rw,nosuid,size=75688k,nr_inodes=186849,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=3,mode=620,ptmxmode=666)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,size=756880k)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
tmpfs on /run type tmpfs (rw,nosuid,nodev,size=378440k,mode=755)
ramfs on /run/keys type ramfs (rw,nosuid,nodev,relatime,mode=750)
tmpfs on /run/wrappers type tmpfs (rw,nodev,relatime,size=756880k,mode=755)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
/dev/vdb on / type ext4 (rw,relatime)
nix-store on /nix/.ro-store type 9p (rw,relatime,dirsync,loose,access=client,msize=16384,trans=virtio)
tmpfs on /nix/.rw-store type tmpfs (rw,relatime,mode=755)
shared on /tmp/shared type 9p (rw,relatime,sync,dirsync,access=client,msize=16384,trans=virtio)
xchg on /tmp/xchg type 9p (rw,relatime,sync,dirsync,access=client,msize=16384,trans=virtio)
overlay on /nix/store type overlay (rw,relatime,lowerdir=/mnt-root/nix/.ro-store,upperdir=/mnt-root/nix/.rw-store/store,workdir=/mnt-root/nix/.rw-store/work)
overlay on /nix/store type overlay (ro,relatime,lowerdir=/mnt-root/nix/.ro-store,upperdir=/mnt-root/nix/.rw-store/store,workdir=/mnt-root/nix/.rw-store/work)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
cgroup2 on /sys/fs/cgroup type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate,memory_recursiveprot)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
bpf on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700)
debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,relatime)
mqueue on /dev/mqueue type mqueue (rw,nosuid,nodev,noexec,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,pagesize=2M)
configfs on /sys/kernel/config type configfs (rw,nosuid,nodev,noexec,relatime)
ramfs on /run/credentials/systemd-tmpfiles-setup-dev.service type ramfs (ro,nosuid,nodev,noexec,relatime,mode=700)
fusectl on /sys/fs/fuse/connections type fusectl (rw,nosuid,nodev,noexec,relatime)
ramfs on /run/credentials/systemd-sysctl.service type ramfs (ro,nosuid,nodev,noexec,relatime,mode=700)
ramfs on /run/credentials/systemd-tmpfiles-setup.service type ramfs (ro,nosuid,nodev,noexec,relatime,mode=700)

(double nix store mounts)


Title : Knife Thrower

Hey @swapnilsparsh
I have a project made using javascript, which I wanted to add in the website. It is a game called Knife Thrower in whi
In this game the user has to click on the knife and it will go to the board , if two knives collapse the game will end. It has 4 different levels and each level has different strategy. If a player loses a level it will automatically goto the first level. I am a GSSoC'24 contributor.
The features

It has 4 levels and after clearing 1 level only the user can go to another level.
There will only be particular number of knives and it will decrease on each throw.
It will look as follow.

@sharmi4590 Thank you for providing your insight but it is not required as of now


QuestionnaireResponse.create attempt throws "everything else" error

Getting the following error POSTing a QuestionnaireResponse resource for create:
2023-05-01 15:18:09.682 [qtp-1728188119-30] WARN  c.u.f.r.s.i.ExceptionHandlingInterceptor [ExceptionHandlingInterceptor.java:182] Failure during REST processing: ca.uhn.fhir.rest.server.exceptions.ForbiddenOperationException: HAPI-0333: Access denied by rule: everything else
This is a part of the SupplementalDataStoreAuthorizationInterceptor class:
	public List<IAuthRule> buildRuleList(RequestDetails theRequestDetails) {
		IAuthRuleBuilder ruleBuilder = new RuleBuilder();

		IIdType authorizedNonLocalUserId = auth.authorizedPatientId(theRequestDetails);

		IIdType authorizedLocalUserId = linkage.establishLocalUserFor(authorizedNonLocalUserId);

		if (!"Patient".equalsIgnoreCase(authorizedNonLocalUserId.getResourceType())) {
			/* return early, no details of the patient identity are available */
			return ruleBuilder
				.denyAll("expected user to be authorized as \"Patient\" but encountered \"" + authorizedNonLocalUserId.getResourceType() + "\"")
				.build();
		}

		final IIdType localPatientId = authorizedLocalUserId;

		/* permit access to all sds-local records for specific patient */
		ruleBuilder = ruleBuilder
			.allow("read local patient " + localPatientId)
			.read()
			.allResources()
			.inCompartment("Patient", localPatientId)
			.andThen()
			.allow("write local patient " + localPatientId)
			.write()
			.allResources()
			.inCompartment("Patient", localPatientId)
			.andThen()
		;

		/* permit access to all sds-foreign records for specific patient in each tenant */
		for (IBaseReference nonLocalPatient : linkage.patientsLinkedTo(localPatientId)) {
			IIdType nonLocalPatientId = nonLocalPatient.getReferenceElement();
			ruleBuilder = ruleBuilder
				.allow("read non-local patient " + nonLocalPatientId)
				.read()
				.allResources()
				.inCompartment("Patient", nonLocalPatientId)
				.andThen()
				.allow("write non-local patient " + nonLocalPatientId)
				.write()
				.allResources()
				.inCompartment("Patient", nonLocalPatientId)
				.andThen()
			;
		}

		return ruleBuilder.denyAll("everything else").build();
	}

Tim is looking into this I think.  I am going to try to debug into this myself.

some debug logging I added in lieu of actually being able to debug the system (all POC / fake data to be clear):
[INFO] Automatic redeployment disabled, see 'mvn jetty:help' for more redeployment options
2023-05-02 12:05:56.176 [qtp1864759095-387] INFO  e.o.c.e.s.SupplementalDataStoreAuthorizationInterceptor [SupplementalDataStoreAuthorizationInterceptor.java:39] in buildRuleList
2023-05-02 12:05:56.303 [qtp1864759095-387] INFO  e.o.c.e.s.SupplementalDataStoreAuthorizationInterceptor [SupplementalDataStoreAuthorizationInterceptor.java:54] localPatientId: resourceType=Patient, idPart=52, value=Patient/52, baseUrl=null
2023-05-02 12:05:56.329 [qtp1864759095-387] INFO  e.o.c.e.s.SupplementalDataStoreAuthorizationInterceptor [SupplementalDataStoreAuthorizationInterceptor.java:72] non-local patient: resourceType=Patient, idPart=52, value=Patient/52, baseUrl=null
2023-05-02 12:05:56.331 [qtp1864759095-387] INFO  e.o.c.e.s.SupplementalDataStoreAuthorizationInterceptor [SupplementalDataStoreAuthorizationInterceptor.java:72] non-local patient: resourceType=Patient, idPart=eEgBqKAl0aFdrp.ydPAgXEWtx3g8nHroCoTHsrf9dAjc3, value=https://epicmobile.ohsu.edu/FHIRDEV/api/FHIR/R4/Patient/eEgBqKAl0aFdrp.ydPAgXEWtx3g8nHroCoTHsrf9dAjc3, baseUrl=https://epicmobile.ohsu.edu/FHIRDEV/api/FHIR/R4
2023-05-02 12:05:56.339 [qtp1864759095-387] WARN  c.u.f.r.s.i.ExceptionHandlingInterceptor [ExceptionHandlingInterceptor.java:182] Failure during REST processing: ca.uhn.fhir.rest.server.exceptions.ForbiddenOperationException: HAPI-0333: Access denied by rule: everything else

this is resolved.  issue stemmed from the "subject" element not being specified referencing the local Patient resource.  once that was added, we got past this issue.


Dynamic Calibrator

librealsense
2.41.0 RELEASE

OS
Windows

Intel RealSense Viewer / Depth Quality Tool has crashed with the following error message:
Program terminated due to an unrecoverable SEH exception:
Access Violation!

Hi @CL-congliu  Do you require further assistance with this case, please?  Thanks!

Case closed due to no further comments received.


Fix pv definition to match running instance.

The name of the PD mounted on the utility cluster is kubernetes-cache.
cc @lavalamp

lgtm


[Tabs] Leading Icon variant

[x] I have searched the issues of this repository and believe that this is not a duplicate.

Summary 💡
Currently <Tab /> does not support the leading icon. This variant is useful for desktop screens as there is plenty of horizontal space is available.
Examples 🌈

https://material.io/components/tabs
Current Solution
I was able to achieve similar result. But I don't like that.
<Tab
    key={t.value}
    disableRipple
    label={t.label}
    value={t.value}
    component={({ children, ...p }) => (
        <Box {...p}>
            <Box sx={{ mr: 1, lineHeight: 0 }}>
                <EditIcon fontSize="small" />
            </Box>
            {children}
        </Box>
    )}
/>

Related to #15324

I have a question about the introduction of custom svg in tabs, and switch tabs, but the icon color does not change. How to solve this problem?
eg：
import SvgIcon from "@material-ui/core/SvgIcon";
import { ReactComponent as Cash } from "./cash.svg";
import PhoneIcon from "@material-ui/icons/Phone";
import FavoriteIcon from "@material-ui/icons/Favorite";
const Home = () => (

);

<Tab icon={} aria-label="phone" />
<Tab icon={} aria-label="favorite" />
<Tab icon={} aria-label="person" />
<Tab icon={} aria-label="personIcon" />

cash.svg

Duplicate of #11653


Upgrade Antrea base image to ubuntu:22.04

Ubuntu 20.04 comes with iptables 1.8.4, which seems to have several bugs
when used with nft. In particular, we observe that iptables-restore
sometimes segfaults when restoring the ANTREA-NODE-PORT-LOCAL chain in
the nat table. Ubuntu 22.04 comes with a more recent iptables version, 1.8.7.
As part of this change, we change the tag format for base images
(antrea/openvswitch and antrea/base-ubuntu). The tag now includes a hash
(md5sum) generated from the list of dependencies (with their version), as well
as the minor Antrea version number.
Fixes #4435
Signed-off-by: Antonin Bas<EMAIL_ADDRESS>

/test-all

/test-e2e

@tnqn @luolanzone could you take another look?
I realized that if we wanted to keep using the same Ubuntu version for older Antrea versions, we would need to add the Ubuntu version to the tag for antrea/openvswitch and antrea/base-ubuntu. For example: antrea/openvswitch:20.04-ovs2.17.3 and antrea/base-ubuntu:20.04-ovs2.17.3. Instead of antrea/openvswitch:2.17.3 and antrea/base-ubuntu:2.17.3.

I realized that if we wanted to keep using the same Ubuntu version for older Antrea versions, we would need to add the Ubuntu version to the tag for antrea/openvswitch and antrea/base-ubuntu.

We could use a more specific tag but I assume we need to backport this to older Antrea versions? Otherwise runner's ubuntu version needs to be pinned and user would meet the issue when running Antrea on Jammy if they don't upgrade to 1.10.

/test-all

I have squashed commits

/test-all

By "more specific tag", I assume you mean something based on the current Antrea version?

By "more specific tag" I meant the tag including "22.04" which is already added by the PR.

"Go / Verify docs and spelling" failed because there is a stale link about update_ovs_image.yml which doesn't exist.

@antoninbas while I'm working on #4484 which adds suricata to the base images, I realize that it's not extensible to name the tag in the current way for long term. For example, once #4484 is merged, the previous releases built after it would include the bits unnecessarily (if this PR is backported). However, it would be also be weird if we continue adding suricata version to the tag (which would become base-ubuntu:20.04-ovs2.17.3-suricata6.0).
I'm thinking if we should just name the tag with numbers, and perhaps add a VERSION file to the image directory like https://github.com/kubernetes/kubernetes/blob/master/test/images/agnhost/VERSION and increase it every time the image is updated.

@tnqn I changed the tag format, it is now 22.04_v1.10_f26634ec4c.
I just remembered as I was working on this that we always build all base images from scratch when we generate an image for a patch release. I introduced this mechanism a long time ago to avoid such issues. In other words, we only push base images to the Docker registry when we build the "latest" Antrea image, and this is for caching purposes only.
I still decided to update the tag, as I don't think it makes sense to keep using the OVS version as the tag forever. In theory we could just use latest since it is for caching purposes only, but maybe it's not that great.
The reason for including the Antrea version is if we want to identify and delete old images from the registry.
If this is merged, to add Suricata please:

add build/images/deps/suricata-version with the correct version number
update build/images/chains/ubi.def and build/images/chains/ubuntu.def to indicate that Suricata is included in the image

/test-all

/test-latest-all

/test-latest-all

@tnqn I changed the tag format, it is now 22.04_v1.10_f26634ec4c.
I just remembered as I was working on this that we always build all base images from scratch when we generate an image for a patch release. I introduced this mechanism a long time ago to avoid such issues. In other words, we only push base images to the Docker registry when we build the "latest" Antrea image, and this is for caching purposes only.
I still decided to update the tag, as I don't think it makes sense to keep using the OVS version as the tag forever. In theory we could just use latest since it is for caching purposes only, but maybe it's not that great.
The reason for including the Antrea version is if we want to identify and delete old images from the registry.
If this is merged, to add Suricata please:

add build/images/deps/suricata-version with the correct version number
update build/images/chains/ubi.def and build/images/chains/ubuntu.def to indicate that Suricata is included in the image

@antoninbas thanks for the explanation. It also reminds me the original purpose of the base images. Then does it make sense to just use the major + minor parts of antrea VERSION as the tag? Then there will be a "latest" image for each release and we don't need to care about the changes of dependencies and the base images generated during the development cycle. I see it's also a little difficult to predict the image tag in various scripts, for instance, the tag used in build/images/test/Dockerfile. Using a stable tag should resolve it.
But to avoid confusion caused by the tag, "openvswitch:1.10", perhaps we could have some prefix to indicate it's not OVS version, like "openvswitch:antrea-1.10", "base-ubuntu:antrea-1.10"?

@tnqn the simpler approach works for me. I changed the tag to antrea-v1.10. It helps to have the same tag for both build chains (ubuntu and ubi).

/test-latest-all

/test-latest-all

/test-conformance


Question about: -A ipfloater-POSTROUTING -m conntrack ! --ctstate DNAT -j ACCEPT

Hello, can you please explain to me the role of this rule ?

that rule enables that the traffic that goes from the internal network to the outern network, which is not related to DNAT, is accepted as is. Otherwise it will need to pass through the other ipfloater-POSTROUTING rules, which are dedicated to DNAT.

Thank you for your reactivity, i asked this question because this rule is blocking me to reaching the outern network from the the internal network, and when i delete it the traffic pass correctly

Hi, sorry for the delay, but when you asked about it I did not understand what you meant. Not I realized about this bug and it has been corrected. You were right, and the correct rule was:
-A ipfloater-POSTROUTING -m conntrack ! --ctstate DNAT -j RETURN
Now iplofater generates the correct rule.


Resolved: Gay CI is back up in 8e3d89e.


[BUG] Missing support for field name or map key containing dash in macro 'has'.

Describe the bug
say 'b' and 'c-d'  are two keys in map a.
a.b and a['c-d'] can retrieve the values respectively.
has(a.b) returns true, whereas has(a['c-d']) encounters error.
To Reproduce
Check which components this affects:

[x]  parser
[ ]  checker
[ ]  runtime

Sample expression and input that reproduces the issue:
has(a['c-d'])

Test setup:
// test case in java

Expected behavior
returns true or false
Additional context
error occurred when evaluating the expression:
dev.cel.common.CelValidationException: ERROR: :1:4: invalid argument to has() macro
| has(a['c-d'])
| ...^

This is working as intended. Has macro requires a syntactically valid field literal: https://github.com/google/cel-spec/blob/master/doc/langdef.md#field-selection.
You can leverage the 'in' keyword instead for maps.


handle more fatal errors

For example, we have the following code:
$class = new class implements \stdClass {};

For example, in Home::index() function.
Previously, it will get the following output:

I updated so it will got the following output:

Checklist:

[x] Securely signed commits

It looks like you are trapping too much output. Did you notice that the code coverage dropped 60%?
I would rather live with a bit of messy debugging output!

dropping 60% coverage is weird as ob_start() should always pass.
I previously uses ob_start() to get buffer error ( https://github.com/samsonasik/ErrorHeroModule/blob/master/src/HeroTrait.php#L25-L41 ) with more conditions and it can be covering by only 3 test examples https://github.com/samsonasik/ErrorHeroModule/blob/master/spec/Middleware/ExpressiveSpec.php#L530-L565 , but with different test framework ( kahlan )

Check the travis-ci details...
There were 2315 risky tests:

CodeIgniter\API\ResponseTraitTest::testNoFormatterJSON
Test code or tested code did not (only) close its own output buffers

Your ob_start is hijacking the output buffer from phpunit, it looks like, and most of the tests are not running properly.


Fixed feeds and added absurd's feed :D

Let me know if this works!

Danke!

Danke!
On Fri, 11 Oct 2024, 18:35 Prikesh Savla, @.***> wrote:

Merged #9 https://github.com/prikeshsavla/rasam/pull/9 into main.
—
Reply to this email directly, view it on GitHub
https://github.com/prikeshsavla/rasam/pull/9#event-14608478937, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/A4SVOTEMAR3PGXY6SXUYEMDZ27EKXAVCNFSM6AAAAABOUSJRPOVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJUGYYDQNBXHA4TGNY
.
You are receiving this because you authored the thread.Message ID:
@.***>


CPF validation

Hello @WellingtonCosta,
Does your library support CPF(Brazil personal number) validation?
If not, it would be awesome to have this available in your library.
Thanks,

Hi @PriscyllaT
Nice idea! I'll implement it ASAP. :)

Avaiable from the version 2.0.2.


NO-JIRA: hack: make the e2e script generic

Today, we duplicate the ci-test-e2e.sh script for Azure, and the KubeVirt tests don't even use it. This has a bunch of downsides, most notably that we don't even have jUnit for KubeVirt tests. We should aim to have only the generic, required, static flags in this script and allow each caller to simply pass their own as necessary.
/assign @sjenning

/area testing
/lgtm
/approve


Better footer

i have made a better footer for u...

These changes collectively enhance the footer by improving its visual hierarchy, making it more interactive, and providing a consistent layout. The result is a footer that is not only functional but also aesthetically pleasing, engaging, and user-friendly, which is crucial for retaining visitors and providing them with essential information in a concise manner.

This branch has conflicts resolve them

hello , kindly sync your fork and make a NEW pr if required


Fix issue with arguments.caller and whitelist Array.from

@kpreid , I know you have a different process in mind, but would you mind if just I hit "merge" on this pull request? If so, could you guide Mike through your process? Thanks.

@erights Two things:

Never merge-commit, only rebase, unless merging is necessary for other reasons. (GitHub recently added support for rebasing and the ability to turn off the merge option on PRs, so I just did that, so that shouldn't be a problem. GitHub calls the correct operation “rebase and merge”.)

The policy we have so far kept from SVN was that the commit description should link to the code review so as to have the reviewer's comments findable in the permanent record. Unfortunately that implies the silly conclusion that one should create a PR and then edit the commits to include the URL, or use Rietveld.
Given the overall situation, I'm okay with skipping Rietveld and skipping the review link, at least for small changes like this. But that would be a change in project policy. Fellow project member, what do you think of this change in policy, considering the original goals?

Being able to find codereview comments for a given commit is super helpful. We setup the process initially to include a link to the codereview because we were using a code review tool that was separate from the code repo. If we switching to doing reviews on a github PR itself, then it meets the need to be able to find the review from a commit without having to artificially add a link.

@jasvir How does that work? I looked at another project's commit-originated-from-a-pull-request and I didn't see any link to the pull request except for the one explicitly mentioned in the description of the merge commit, and we're not going to do merge commits.

Just double checking before I press the button:
May I proceed to hit the button above clearly label "Rebase and merge"?

@erights : If you agree that it is OK not to have a link to the review in the permanent record, then yes, otherwise we need to do something else.

For this CL it is ok.

Hurrah!

@kpreid , the PR is automatically linked from the commit history

@Slayer95 Thanks for pointing that out! (That sure is some tiny gray text.)


Entry parsing: definitions formatting

Current implementation keeps all whitespaces and oddities.

Trim the content
Detect multiple definitions: should they be numbered, detect & split. Use a list of strings anyway.

Moving multidefinitions to another ticket


Changelog.md ?

Would be great to see changelog without looking into commit history :)
What do you think?

There will be a change log in the next release :)


Some editor fields don't accept comma as a decimal separator

Godot version
v4.1.1.stable.official [bd6af8e0e]
System information
Windows 10
Issue description
Most numerical fields in editor like inspector properties and settings accept comma as input (eg. 5,5 gets parsed to 5.5). However, there's some inconsistency in this support. Color picker doesn't support this and also Input Map's deadzone fields.

Steps to reproduce
Open any color picker in inspector or Input Map settings, try to input value like 0,5 in it.
Minimal reproduction project
Any project

Accepting commas as decimal separator was special-cased in EditorSpinSlider, but not SpinBox: https://github.com/godotengine/godot/pull/42376
This is because valid Expressions may contain commas, such as pow(2, 16) = 65536.

Nice to hear that there's some reasoning behind this. Your suggestion sounds like win-win. Using keyboard layout (finnish here) where numpad has comma, not period, I always end up filling these field twice - first with comma, only then notice the mistake. I'm infinitely grateful that inspector parses commas also 👍


Occasional error during startup

copy-log20240724.txt

Hopefully fixed with https://github.com/tylercamp/palcalc/commit/e3da1ceb89c5f957726fed94ca7a97183a3d15d2 released in 1.9.0


Stop leaking information

This has been a bit of a POC up until now, but if hastile is going to get use we need to clean up a few things.

[ ] Turn config route off, or at least put behind a debug flag
[ ] Stop returning detailed errors in HTTP responses

Log detailed info and return a generic, user-friendly error

https://github.com/zellige/hastile/issues/9


Path traversal vulnerability

Description:
The package does not validate paths coming from zip entries, hence allowing for path traversal
Technical details:
Below is a code snippet from the unzipFile function used to extract zip files, you can notice that pathString coming from our zip entry is appended to the destination directory without any sanitization
let fileNameSize = Int(fileInfo.size_filename) + 1
//let fileName = UnsafeMutablePointer<CChar>(allocatingCapacity: fileNameSize)
let fileName = UnsafeMutablePointer<CChar>.allocate(capacity: fileNameSize)

unzGetCurrentFileInfo64(zip, &fileInfo, fileName, UInt(fileNameSize), nil, 0, nil, 0)
fileName[Int(fileInfo.size_filename)] = 0

var pathString = String(cString: fileName)

guard pathString.count > 0 else {
    throw ZipError.unzipFail
}

var isDirectory = false
let fileInfoSizeFileName = Int(fileInfo.size_filename-1)
if (fileName[fileInfoSizeFileName] == "/".cString(using: String.Encoding.utf8)?.first || fileName[fileInfoSizeFileName] == "\\".cString(using: String.Encoding.utf8)?.first) {
    isDirectory = true;
}
free(fileName)
if pathString.rangeOfCharacter(from: CharacterSet(charactersIn: "/\\")) != nil {
    pathString = pathString.replacingOccurrences(of: "\\", with: "/")
}

let fullPath = destination.appendingPathComponent(pathString).path

Exploit code:
import zipfile

def compress_file(filename):
    with zipfile.ZipFile('payload.zip', 'w') as zipf:
        zipf.writestr(filename, "Test payload")

filename = '../secret.txt'

compress_file(filename)

This vulnerability is being detected in our security analysis tool.I see there is an open PR with the fix.
Can someone please help out with this.

I believe this project is not being maintained anymore so it either has to be mentioned in the README.md or the project owner should look for stewardship to take over the project


[SPARK-39704][SQL] Implement createIndex & dropIndex & indexExists in JDBC (H2 dialect)

What changes were proposed in this pull request?
Implementing createIndex/dropIndex/indexExists in DS V2 JDBC for H2 dialect.
Why are the changes needed?
This is a subtask of the V2 Index support(https://issues.apache.org/jira/browse/SPARK-36525).
This PR implements createIndex, dropIndex and indexExists.
After review for some changes in this PR, I will create new PR for listIndexs.
It can better test the index interface locally.

This PR only implements createIndex, IndexExists and dropIndex in H2 dialect.

Does this PR introduce any user-facing change?
Yes, createIndex/dropIndex/indexExists in DS V2 JDBC for H2
How was this patch tested?
New UT.

ping @huaxingao

Can one of the admins verify this patch?

Merged to master. Thanks @panbingkun


V1.14.0 does not work at all

Issue Type: Bug
I just upgraded to 1.14.0, and it does not work at all.
Results and Messages windows is empty.
Status line shows: 179983 rows 00:02:34, but none 'exporters'
How do I downgrade ??
 In the mean time you can work around this by closing and reopening files that were automatically opened by the hotexit.

Hi Anthony
Thanks, I am running again.
Best regards
Ole
On 25/12/2019 15:43, Anthony Dresser wrote:

Dupe #8768 https://github.com/microsoft/azuredatastudio/issues/8768,
we have a fix in the pipeline. In the mean time you can work around
this by closing and reopening files that were automatically opened by
the hotexit.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/azuredatastudio/issues/8776?email_source=notifications&email_token=AFUNPGU3SYBMHDTIFMRJF63Q2NWR5A5CNFSM4J7ENQOKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHUNDBA#issuecomment-568906116,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AFUNPGWRKGSMXOJ65BXNMITQ2NWR5ANCNFSM4J7ENQOA.

Please update to 1.141. to resolve this issue.  Sorry for the inconvenience.


[KED-2337] Broken dependencies in the latest kedro conda distribution (0.16.2)

Description
Broken dependencies in the latest conda distribution (0.16.2).
Probably the problem is in jupyter_client>=5.1.0, <6.0.
At the same environment the latest pip distribution 0.16.6 works fine.
Context
Impossible to instal project dependencies.
Steps to Reproduce
Install Kedro into a fresh conda environment and create a test project:
conda create --name kedro python=3.7
conda activate kedro
conda install -c conda-forge kedro
kedro -V   # kedro, version 0.16.2

mkdir -p /tmp/kedro
cd /tmp/kedro

kedro new  # setting Test, test, test, no example project
cd test

Dependencies from cat src/requirements.txt:
black==v19.10b0
flake8>=3.7.9, <4.0
ipython>=7.0.0, <8.0
isort>=4.3.21, <5.0
jupyter>=1.0.0, <2.0
jupyter_client>=5.1.0, <6.0
jupyterlab==0.31.1
kedro==0.16.2
nbstripout==0.3.3
pytest-cov>=2.5, <3.0
pytest-mock>=1.7.1,<2.0
pytest>=5.0, <6.0
wheel==0.32.2

Attempt to install dependencies:
kedro install

Expected Result
Kedro should install default project dependencies
Actual Result
Kedro can't resolve dependencies and fails after kedro install:
No requirements.in found. Copying contents from requirements.txt...
/usr/local/Caskroom/miniconda/base/envs/kedro/bin/python3.7 -m piptools compile -q /private/tmp/kedro/test/src/requirements.in
Could not find a version that matches jupyter_client<6.0,>=4.1,>=5.1.0,>=5.3.4,>=6.1.5 (from -r /private/tmp/kedro/test/src/requirements.in (line 6))
Tried: 4.0.0, 4.0.0, 4.0.0, 4.1.0, 4.1.0, 4.1.1, 4.1.1, 4.1.1, 4.2.0, 4.2.0, 4.2.0, 4.2.1, 4.2.1, 4.2.1, 4.2.2, 4.2.2, 4.2.2, 4.3.0, 4.3.0, 4.3.0, 4.4.0, 4.4.0, 5.0.0, 5.0.0, 5.0.1, 5.0.1, 5.1.0, 5.1.0, 5.2.0, 5.2.0, 5.2.1, 5.2.1, 5.2.2, 5.2.2, 5.2.3, 5.2.3, 5.2.4, 5.2.4, 5.3.0, 5.3.0, 5.3.1, 5.3.1, 5.3.2, 5.3.2, 5.3.3, 5.3.3, 5.3.4, 5.3.4, 5.3.5, 5.3.5, 6.0.0, 6.0.0, 6.1.0, 6.1.0, 6.1.1, 6.1.1, 6.1.2, 6.1.2, 6.1.3, 6.1.3, 6.1.5, 6.1.5, 6.1.6, 6.1.6, 6.1.7, 6.1.7
There are incompatible versions in the resolved dependencies:
  jupyter_client<6.0,>=5.1.0 (from -r /private/tmp/kedro/test/src/requirements.in (line 6))
  jupyter-client>=6.1.5 (from nbclient==0.5.1->nbconvert==6.0.7->jupyter==1.0.0->-r /private/tmp/kedro/test/src/requirements.in (line 5))
  jupyter-client (from jupyter-console==6.2.0->jupyter==1.0.0->-r /private/tmp/kedro/test/src/requirements.in (line 5))
  jupyter-client>=4.1 (from qtconsole==5.0.1->jupyter==1.0.0->-r /private/tmp/kedro/test/src/requirements.in (line 5))
  jupyter-client>=5.3.4 (from notebook==6.1.5->jupyter==1.0.0->-r /private/tmp/kedro/test/src/requirements.in (line 5))
  jupyter-client<6.0,>=5.1.0 (from kedro==0.16.2->-r /private/tmp/kedro/test/src/requirements.in (line 8))
  jupyter-client (from ipykernel==5.3.4->jupyter==1.0.0->-r /private/tmp/kedro/test/src/requirements.in (line 5))

From cat src/requirements.in:
black==v19.10b0
flake8>=3.7.9, <4.0
ipython>=7.0.0, <8.0
isort>=4.3.21, <5.0
jupyter>=1.0.0, <2.0
jupyter_client>=5.1.0, <6.0
jupyterlab==0.31.1
kedro==0.16.2
nbstripout==0.3.3
pytest-cov>=2.5, <3.0
pytest-mock>=1.7.1,<2.0
pytest>=5.0, <6.0
wheel==0.32.2

Environment

Kedro version used (pip show kedro or kedro -V): 0.16.2
Python version used (python -V): Python 3.7.8
Operating system and version: macOS Catalina 10.15.5

Thank you for the report @Sitin. I can confirm that this is indeed an issue with Kedro 0.16.2 and kedro build-reqs cannot reliably resolve the package versions anymore for newly created project. The issue is reproducible with Kedro installed via pip too (pip install "kedro==0.16.2").
The cause of the issue in version 0.16.2 is the fact that Kedro package itself has a requirement for jupyter_client>=5.1.0, <6.0 which stops pip-compile from finding a satisfying version for it (as other packages require jupyter-client>=6.1.5).
The suggested solution would be to use the latest version - Kedro 0.16.6, which is backwards compatible with 0.16.2. The requirement for jupyter client in the latest Kedro is wider: jupyter_client>=5.1, <7.0, so it doesn't break the compilation.
Kedro 0.16.6 is visible on conda-forge, however when calling conda install -c conda-forge kedro, it still tries to install 0.16.2. If you can fall back to pip, then you can simply run pip install "kedro==0.16.6" in your environment.
If you cannot upgrade Kedro, as a workaround you can add nbconvert<6.0 in your requirements, which should hopefully make pip-compile happy again.

Thank you, @DmitriiDeriabinQB for the advice. Since you are not install dependencies by conda anyway I will go with pip.

conda install -c conda-forge kedro==0.16.6 would also work. We haven't yet figured out conda doesn't fetch the latest kedro version, but that is out of scope here. Will go ahead and close this issue as resolved.

conda install -c conda-forge kedro==0.16.6 would also work. We haven't yet figured out conda doesn't fetch the latest kedro version, but that is out of scope here. Will go ahead and close this issue as resolved.


abnormal infrahyoid muscle morphology - definition

abnormal infrahyoid muscle morphology MP:0013966
ADD DEF: any structural anomaly of any of the four paired muscles located in the anterior neck below the hyoid bone, within the muscular triangle; these muscles are long and flat in shape, similar to a belt or strap, and are responsible for depressing the hyoid during swallowing; they either originate from or insert on to the hyoid bone and include the sternohyoid, sternothyroid, thyrohyoid and omohyoid muscles
SYN: abnormal strap muscle morphology
SYN: infrahyoid muscle dysplasia
SOURCE: https://radiopaedia.org/articles/infrahyoid-muscles
https://en.wikipedia.org/wiki/Infrahyoid_muscles

Added definition, synonyms and logical definition.


Update master from staging

Version updates, mostly.

Coverage remained the same at 81.871% when pulling 6bf793fdf998bdf4371810e4468af1e1cd051e1c on staging into a64f00e7233725eca24ff2191e18551b78eea8b7 on master.


feat(Table): add possibility to range select with shift key pressed

https://preview.yandexcloud.dev/uikit/374/?path=/story/components-table--hoc-with-table-selection

Is it correct behaviour?

@ValeraS in my opinion — this is fine, however, we can check if any rows checked before


nakama 2.5.0 migrate up error with cockroach db v19.1.0.windows-6.2-amd64

`PS C:\SERVER\nakama-2.5.0-windows-amd64> .\nakama migrate up
{"level":"info","ts":"2019-05-01T02:31:30.308+0300","msg":"Database connection","dsn":"root@localhost:26257"}
{"level":"info","ts":"2019-05-01T02:31:30.614+0300","msg":"Database information","version":"CockroachDB CCL v19.1.0 (x86_64-w64-mingw32, built 2019/04/29 18:46:21, go1.11.6)"}
{"level":"info","ts":"2019-05-01T02:31:30.622+0300","msg":"Creating new database","name":"nakama"}
{"level":"fatal","ts":"2019-05-01T02:31:31.219+0300","msg":"Failed to apply migrations","count":1,"error":"pq: constraint "check_category" in the middle of being added, try again later handling<PHONE_NUMBER>4141-tournaments.sql","stacktrace":"github.com/heroiclabs/nakama/migrate.(*migrationService).up\n\t/go/src/github.com/heroiclabs/nakama/migrate/migrate.go:187\ngithub.com/heroiclabs/nakama/migrate.Parse\n\t/go/src/github.com/heroiclabs/nakama/migrate/migrate.go:176\nmain.main\n\t/go/src/github.com/heroiclabs/nakama/main.go:77\nruntime.main\n\t/usr/local/go/src/runtime/proc.go:200"}
PS C:\SERVER\nakama-2.5.0-windows-amd64>`
I started first time cockroach db v19. And on another powershell I started nakama 2.5 fisrt time. It gave me this error.
Then I tried cockroach v2.1.6, Nakama migrate up function worked without error.
Looks like new cockroach db using different SQL functions. I don't know. I'm not a professional programmer. I'm just hobbyist
My environment:
windows 10 64bit
nakama 2.5.0

Thanks for letting us know. It definitely looks like there has been a breaking change in Cockroach between 2.1.6 and 19.1.

@gupta-vaibhav I think you mentioned on the community channel that you'd identified what has changed in crdb to support their latest release. Would you be able to share the details here and maybe consider a pull request? :)

Hi, surely I could do a pull request as well. Though I'd like to run by my understanding of the error with you. The problem is with this statement:
ALTER TABLE leaderboard
  ADD CONSTRAINT check_category CHECK (category >= 0),
  ADD CONSTRAINT check_duration CHECK (duration >= 0),
  ADD CONSTRAINT check_max_size CHECK (max_size > 0),
  ADD CONSTRAINT check_max_num_score CHECK (max_num_score > 0),
  VALIDATE CONSTRAINT check_category,
  VALIDATE CONSTRAINT check_duration,
  VALIDATE CONSTRAINT check_max_size,
  VALIDATE CONSTRAINT check_max_num_score;

is it ok to drop the validate part of the query, given the columns are being added in the same migrate, thus the values can't be in conflict of this constraint. I tested on command line as well. The above query gives the same error that is being returned by migrate up. The following query runs fine.
ALTER TABLE leaderboard
  ADD CONSTRAINT check_category CHECK (category >= 0),
  ADD CONSTRAINT check_duration CHECK (duration >= 0),
  ADD CONSTRAINT check_max_size CHECK (max_size > 0),
  ADD CONSTRAINT check_max_num_score CHECK (max_num_score > 0);

BTW, breaking the query in two parts will also not work. I tried that, I ran the 'add constraint' first and then tried 'validate constraint', got the same error. So it may be the case that v19.1 has added an implicit validate and we don't need it after all.
Lastly, I tried updating the file '20180805174141-tournaments.sql' to remove the validate constraints bit, but that didn't resolve the issue either. So I guess this depends on how you are running the migrate. I understood that transactions.sql file is just being generated for future reference / use, but not being used directly for migrate up command. And thus I wasn't able to fix it.
But this information should help you fix the issue at your end. Or if you could let me know where the sql query is being read from, I'll be more than happy to fix and create a PR - you know that. :)

Fixed in 7a5bc56d273b589bf3cf35f27130c8b15de3c6f4 and will be part of the next release.

May I ask when do you plan to release a new version? I want to try nakama and migration up fails on linux too.

@omid3098 The current sprint we're in will end in two weeks which is our next scheduled release. In the meantime just use cockroachdb 2.1.6 or Postgres to experiment with the game server. We have Docker compose files which make it extremely easy to try either:
https://github.com/heroiclabs/nakama/blob/master/docker-compose-postgres.yml
https://github.com/heroiclabs/nakama/blob/master/docker-compose.yml

Thank you for such a fast response, unforsutately I have no experiences with docker and actually pretty new to server stuffs. so it seems I need to  try with an older version of cockroachdb :)


Can you add support for the Data URI Scheme for "Open image in new tab"?

I really like this extension!
I see on your welcome page that the sample jpg is displayed within an img HTML element and I assume you are working off the src attribute to determine if you can display "Open image in new tab" in your context menu.

It would be great if you could add support for the Data URI Scheme and allow that to also display "Open image in new tab" in your context window when one is encountered.
<img id="myImage" alt="Image Display" src="data:image/png;base64,<base64EncodedString>">
Here is a sample with a tiny Base64 Encoded String included:

Where image/png is the Media Type.  Other valid image Media Types include: image/avif, image/jpeg and image/svg+xml.
Not sure if the extension currently supports PNG images but I know it supports JPG so if no other media types if you could support image/jpeg within the Data URI Schema that would really be great!
Thank you for considering this enhancement!

BetterViewer doesn't actually add any context menus, "Open image in new tab" is default browser functionality.
The way the extension works is by adding a listener to chrome.webRequest, and then checking the 'content-type' in the Response Headers to see if it is has the MIME type of "Image/*", all image types should work by default, (although /svg+xml is currently broken, the extension recognizes it but gives out errors) [examples of /avif and /png]
As for adding support for data: pages, I don't think they respond to webRequests, so it might require a rewrite of how the extension activates, I could be missing something obvious though.


Documentation: add dependencies list and licenses to credits page

Thanks to the awesome pip-licenses package!

Codecov Report

Merging #94 (998b4d8) into main (5b7115e) will decrease coverage by 8.19%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main      #94      +/-   ##
==========================================
- Coverage   60.12%   51.92%   -8.20%
==========================================
  Files          24       24
  Lines         830      830
  Branches      155      155
==========================================
- Hits          499      431      -68
- Misses        275      354      +79
+ Partials       56       45      -11

Impacted Files
Coverage Δ

qgis_deployment_toolbelt/utils/win32utils.py
5.26% <0.00%> (-63.16%)
:arrow_down:

...loyment_toolbelt/jobs/job_environment_variables.py
41.17% <0.00%> (-37.26%)
:arrow_down:

qgis_deployment_toolbelt/profiles/shortcuts.py
45.25% <0.00%> (-23.36%)
:arrow_down:

qgis_deployment_toolbelt/utils/str2bool.py
30.76% <0.00%> (-15.39%)
:arrow_down:

qgis_deployment_toolbelt/constants.py
73.91% <0.00%> (-13.05%)
:arrow_down: