Bug..? Endergenic generator inconsistent.

I've been extensively testing endergenic generator designs the last few days and I LOVE the idea behind them, but I have become very frustrated at the apparent buggyness and inconsistence in RF/t.
What I mean is: I create a generator using only RFtools (generators, injectors, and logic gates) and MFR RedNet cables for redstone signals. I test the generator and it works great - 22k RF/t. I then reload my world and test it again without a single change and it is only generating 7-8k RF/t and is losing pearls like mad. I break all of the generator blocks and replace them in exactly the same fashion and its back up to 15k RF/t! Then I break all the ender monitors and replace them (again, exactly the way they were) and the system runs at 20k RF/t. At first I thought this might be due to RedNet Cable problems, but others have experienced similar inexplicable inconsistencies with using only vanilla redstone and red alloy wire, so the error must be in the RFtools blocks. I don't have the expertise to find the root of this problem, but its a very real issue. A system that relies on strict and rapid redstone ticks should be capable of handling such precise signalling, and it appears as though they are currently not. I honestly believe that endergenic generators are the most underappreciated power generation method, and the complexity should remain, but uncontrollable and crippling inconsistencies will only further deter people from using it.
Sorry for the block of text, I wanted to be as thorough in my reported observations as possible because I have no way of critiquing code or solving the problem in any other sort of manner. Hope this post is at least somewhat helpful! Thanks for the amazing mod!

Is the entire setup in a single chunk? I have sometimes seen problems when parts of the generator are in different chunks because the chunks don't always load at the same time.

It is entirely in the same chunk, I even rebuilt the same model in another chunk again to be sure and a simple relog caused generation to drop from 20k RF/t before a relog to 10k afterwards. Breaking and replacing the ender monitors fixed this, and even increased generation to 22k RF/t. I am stumped as to the cause of this.

I'm seeing this too but have a few more specifics. In infinity latest version I'm running four setups with four generators each with Minefactory PRC to control it. 2 are in a single chunk, 2 barely cross a border. All are chunk loaded by the same loader and in each I've had ender varied monitors get stuck continuously outputting Redstone signal. The monitors are set to "pearl arrived" and breaking them and replacing fixes it.
It'll work fine for quite a while but it seems that each day I have to break one to three of the 16 monitors.

Thanks for that info. I did already suspect that there was an issue with these ender monitors. In any case I have plans to make stability improvements to the entire endergenic powergen system

I would like to second the above observations, running RFtools 4.0.1n573. It's exactly the same problem - perfect generation prior to world unloading, and sudden timing issues upon reload. I verified that it's within one chunk, too.

This problem stil persists for the 1.10.2 builds.

yes the timings change from load to load. Sometimes it looks like it has some rounding errors (i.e wrench says distance 4 ticks, in "real" its everything between 2-4 ticks ...). those generators are completly not deterministic and unusable 👎

I wouldn't say they are unusable as they are used a lot by many people. You just have to be careful with how you time them. And the rounding errors cannot happen. The 4 tick distance is constant.
Also if you keep a chunk constant after building a generator (i.e. don't add new blocks or stuff) then it will not change anymore

Thats my test setup here:

Wrench says distances between 1-6: 4 ticks
every generator has a "charge" sequencer in front of it, and a "pearl arrived" monitor to fire it at once to the next generator
Ive set the charge sequences so, that the pearl arrives at tick 10: The distance resulting from these sequencers are:

1 -> 2: 3 Ticks (wrong)
2 -> 3: 4 Ticks (yay correct!)
3 -> 4: 3 Ticks (wrong)
4 -> 5: 3 Ticks (wrong)
5 -> 6: 2 Ticks (wtf! on some world loads its 3 ticks here ...)
6 -> 1: 2 Ticks (wtf!)

(the 0 generator is only to inject the pearl to make the loop easier)
The "loop" time are 29 ticks like that. after 58 (2*29) ticks, the timer in the top fires again.
Like that, the loop works for 4-5 rounds, after that, the pearl is 1-2 ticks slower (or sometimes faster ...) "last pearl arrived at tick 9" / "last pearl arrived at tick 11". the maximum I had were 7 rounds, after that, the timing's completly get killed. "pearl arrived while idle", mostly at generator 4. It looks like after a while the distance got increased there.

1 -> 2: 3 Ticks (wrong)
Why is that wrong? I mean what are you basing that on?
Anyway, one thing to realize is that in a chunk tile entities tick in a deterministic but semi-random order. i.e. when you have a monitor to tick when a pearl arrives there are two possibilities:

The endergenic ticks before the monitor ticks. In this scenario the pearl arrives, the monitor gets notified and when the monitor processes its tick in the same 'tick' it will immediatelly perform its action
The endergenic ticks after the monitor ticks. In this scenario when the pearl arrives the monitor will not know it yet because the endergenic did't tick yet and so has not had a chance to process this. So in this scenario the monitor will only emit a redstone signal one tick later

The problem is that I have no control over the order that these blocks tick (although I have some ideas on how I could try to stabilize this) and this order can change depending on various circumstances. i.e. placing another block in the same chunk can cause this order to change

Why is that wrong? I mean what are you basing that on?
I'm basing that on the fact that the wrench tells me "4 ticks".

The problem is that I have no control over the order that these blocks tick
So you tell me you know it's completly non deterministic. ;-)

It is deterministic. I mean, once it is stable (and you don't touch the chunk anymore) it will remain stable.
Also you can get an endergenic to be stable by making your redstone circuits to account for these problems. i.e. by adding a safety margin to the monitors or using rftools control for more advanced timing solutions you can get it to work even if the timings change

I gave up.  I put one setup in the center of a chunk in the end, nothing but the setup is in the chunk.  Nothing else is loaded around me. Worked perfectly.  Reloaded game, every gen still said arrived at 10 but was losing more rf than generating.  Reloaded game again, pearl kept dropping at the second gen saying not enough power.  Another reload, works again. Gah!

I do have some plans to revisit this and I'll see if I can come up with some system to overcome the problem with the tileentities ticking in a uncontrollable order

I'm going to give up too. Made everything work fine, 2.5+ KRF/t each generator, 20s+ record time with only one Pearl after 4 hours trying to figure out a good system. Reloaded the world, boom, doom's day started, cataclysm happening. Tick's are all screwed, Ender Pearls are destroyed in less than two seconds and no power being generated :/
I know it'll be hard to fix this if you do it, so good luck.

I've been playing with the Endergenic generators on FTB Beyond recently, while I don't share everyone's neuroticism with trying to optimize random tick chaos I have found these things to be a little off. For example these two setups (which fall entirely within their own chunks and have Identical settings for each sequencer Ender monitor and the timer) had the issue of one working immediately and the other not working at all until I exited and restarted the server. The design is one I found while looking for simpler designs than the one Direwolf20 made in his modspotlight. This one isn't perfect but a good portion of the time the pearls are landing on tick 10 and firing almost immediately.

What version of RFTools?

The most recent one being distributed with FTB Beyond over the curse client. I downloaded Beyond about a week or two ago. It's a private server with just me and my fiance but the settings and configs are all default.

That's strange. Are you really sure they have exactly the same settings? Can you double check everything. I have no explanation otherwise

Short answer: Yes I am sure they are identical.
Long answer:
I rebuilt and triple checked them while trying to get it to work. After I rebooted the server they both worked about as well as I figure they should. They are powering the Builder block quarry and Void resource miner like a boss. I built the generators off this guy's design:
http://forum.craftersland.net/topic/10815-rftools-endergenic-generator-designed-by-me/
Most iterations of the pearls go around for about 5-10 seconds before the random loss. I watched one go for almost 30 seconds.
In the picture the failing generator was in the setup on the left at the top of the diamond, the first generator to get the toss after the injection, while I was tinkering around I decoupled the generators and paired them one at a time the Injected generator (From here out I will refer to generators as Gen 1,2,3,4 with Gen 1 being the Injected generator)
Pairing Gen 1 to Gen 2: Gen 1 fires to Gen 2, One probe read Gen 2 as not enough power to hold pearl.
Paring Gen 2 to Gen 3: pearl fired from Gen 1, Fired from Gen 2, and died in Gen 3
Pairing Gen 3 to Gen 4: Gen 1 through 3 fire successfully and the pearl died in Gen 4
Pairing Gen 4 to Gen 1: Gen 1 Fires to Gen 2 One probe read pearl received while idle.
After the rebuild this test repeated the results, so I rebooted the server. when I loaded back in and gave the injectors some pearls they both fired in continuous loops with the normal random losses.
I figured it was something to do with the server but I figured I'd go looking to see if anyone had similar problems.
I found it more interesting than frustrating (because I have an endless stream of pearls coming from the woot farm) but, It's after midnight for me now though so I'll have to run more tests tomorrow. I'll see if I can figure out how my video recording software works and put anything interesting I find on youtube. I'll link you to testing videos when they go up if you'd like.

Super sad about this to be honest. Probably the coolest idea for power gen from any mod, but the fact that on a SMP server with the chunks loaded I can relog and my 47k design needs to be manually reset is making it less worth it. I could just use a big reactor, but that's so boring by comparison.

To Mizuna, is that still case with recent versions of RFTools?

@McJty we're still experiencing this on 5.92 (minecraft 1.10.2). I suspect the sequencers change ticking order and it stops working.

The problem still exists on 1.12.2 with rftools version 7.55.

And the entire setup is in a single chunk?

Same version as shadoxxhd. My setup is within a single chunk and is experiencing the same problems. Replacing the sequencers solves the issue until the next server restart.

Same here on 7.55/1.12.2 in the Exoria modpack.  Using the dirt simple vanilla redstone + 4 gen compact setup from the various wikis and the entire thing is located in a single chunk.
It works at first but after a world reload it seems to stop working.  So far, picking up the blocks and placing them back down and re-linking the generators seems to fix it but I've yet to reload often enough to know how often a working setup stops working or whether popping and replacing the blocks fixes it 100% of the time.

I also spent some considerable time on Endergenics now.
I can confirm that there are random timing problems. Sometimes, when copying a design, you are able to fix it by adjusting the timings. This is alarmingly strange, as the setup becomes perfect again by doing this, even though you just technically and mathematically "broke it". I get the ender monitor ticking problem, but I encounter these "shifts" even in the sequences that do not rely on them (during the first pass through).
I have tested ~15 designs. I see no differences between variants, although I mostly used 1 tick distance setups with 12 generators. I consistently get better results in the "Redstone ready"-preset creative world I used to design them - I never got one to work by exact copying in any world I actually play. From all of the tested ones, only one survived multiple reloads and a copy. It is a 10-2 design, and it's not even within a single chunk. It does not keep a consistent error, but it isn't entirely crippled. I guess larger delays have more tolerance, as expected.

I would also like to note that I tried both EnderIO redstone conduits and vanilla redstone. No difference surprisingly, as long as chunk boundaries are not crossed. I also tried using RFTools wireless redstone only. I only did this twice, but I couldn't see any changes.
Honestly, I have no good suggestions either. If any aspect of the timing would be simplified (moved into the generator), the whole setup becomes trivial. I believe the current idea is excellent, but unusable. Of course they can be built and ran, but I find them to be flat-out too unreliable.

I think a good solution to this problem would have to alter how endergenic generators work, but maybe something similar could be achieved. If the generators were running on their own "private ticking", as in RFTools would control all the timings entirely, it would make sure the system is consistent even in all kinds of weird Minecraft behaviors. Something like controlling the delays inside the generator could work as @KFAFSP suggested (as far as I understood). But maybe something even nicer could be done.
What if the timing was programmed by the user similarly to the current redstone way, but only using RFTools building blocks that are not meant to be "imperative" like redstone is, but instead only declaring an execution graph? By that I mean: the generators could analyze the built system, and instead of running it, it could just know via theoretical analysis that the design is sound and simply output the power (while making the player believe it is being ran of course). That way it does not depend on unreliable factors and can be infinitely precise.

Emitting pearls only on even ticks and recieving them only on uneven ones would resolve the problem, but slow down everything by a factor of 2.

@KFAFSP is that built in one chunk? That's always important with an endergenic

Is it possible to change the timing margin for error so that when dealing with errant systems/issues that we are able to "tweak" a little bit better by changing the numbs on charge time etc.

Hopefully maybe resolved when this is looked into #854 closing in preference of it


PSScriptAnalyzer problems don't refresh automatically

VSCode Version: 1.53.0
OS Version: macOS 11.2 (20D64)

Steps to Reproduce:

Open a PowerShell script with at least one problem
Open the PSScriptAnalyzerSettings.psd1 file
Add the name of the rule that's causing the problem under the ExcludeRules key
Go back to the initial script

Current behaviour:
The problem doesn't disappear.
Expected behaviour:
The problem should disappear.

Does this issue occur when all extensions are disabled?: Yes/No

/extPowershell


Incremental CFG updates

We need a mechanism for updating the control flow graph when the code is changed. An example is an architecture that doesn't have a cmov instruction:
ebb0:
    v10 = select v1, v2, v3
    v11 = iadd_imm v10, 5

Legalizes into:
ebb0:
    brnz v1, ebb1(v2)
    jump ebb1(v3)

ebb1(vx0: i32):
    v11 = iadd_imm vx0, 5

This would require updating the CFG since ebb1 is a whole new EBB which inherits some of ebb0's successors.
There are three ways of updating the CFG after a program change:

Recompute the CFG from scratch. We can do that now, but it is quite expensive in large functions.
Invalidate and recompute the part of the CFG that is affected by a single EBB.
Invalidate and recompute the part of the CFG that is affected by a single instruction.

Instruction-level CFG repair is potentially difficult. In the example above, ebb0 can have arbitrarily many CFG edges after the select instruction that is converted. These edges would all need to be moved to ebb1 after the change. It would not be much faster than recomputing all of the edges connecting to ebb0 and ebb1.
We should provide the second option as a CFG function for recomputing CFG edges affecting a single EBB. After performing the program change above, it should be possible to repair the CFG with code like this:
func.cfg.recompute_ebb(ebb0);
func.cfg.recompute_ebb(ebb1);

The call recompute_ebb(ebb0) should assume that ebb0 has changed, so repair the CFG in these steps:

Go through the cached successor list and remove ebb0 as a predecessor of each successor block. Don't depend on the instructions currently in ebb0 to find edges. The instructions may have changed.
Clear the successor list for ebb0.
Scan the instructions now in ebb0 and add new CFG edges as they are discovered.

This algorithm recomputes all CFG edges from ebb0 while leaving edges to ebb0 intact.

Fixed by @angusholder!


Move GetSegments to AnsiConsoleExtensions

Swap the parameters to make the "active" type (in this case the console)
the type that is extended and the "passive" renderable the parameter.
There are some indications that the parameters are currently reversed.
For example in FakeConsole.Write the object passes itself into a method of another type.
foreach (var segment in renderable.GetSegments(this))

In my experience such cases are not very common. IMHO this.GetSegments(renderable) would be more natural.
Another location that might indicate reversed parameters is the implementation itself. In the method the console is used on the left-hand side and the renderable is passed as a parameter to the console's pipeline.
var renderables = console.Pipeline.Process(context, new[] { renderable });

One might argue that a few lines later the renderable is the "active" instance. That's true, but even in that case the console isn't passed as a parameter to the renderable. The renderable just needs to know the width. I restructured that part to make that more clear (and in the process removed the private method and the intermediate List<Segment>).

I kicked off the build job, issue was with nuget restore not the code itself.
As to the commit itself, I can see the argument you are making. I'm not a huge fan of having more methods hanging off AnsiConsole though. That's the first-class object that people will be using for discovery when using the library. That experience is important too. Heck, I'd be tempted to drop the extension method altogether before adding more extensions to AnsiConsole, especially one that doesn't involve direct I/O. @patriksvensson can provide some historical guidance too that I might be overlooking.
Regardless, if we went this route, I'm not sure deleting the current extension method would be the move. Probably would need to leave it as Obsolete for a few releases at least I'd think.

@wischi-chr I appreciate your work with this, but I think I agree with @phil-scott-78 here. I would prefer to keep these kinds of things away from IAnsiConsole for the reasons @phil-scott-78 brought up. It's not perfect, but it's a work in progress. At some point we there will be changes internally to these kinds of things, and perhaps we can revisit this then.

Yeah sure, no problem. Feel free to close the PR, no hard feelings about that.

I'm going to close this PR. But I'd like to echo @patriksvensson thanks. For each release I've been trying to give a small thanks to contributors when I mention it on twitter. If you have a twitter handle let me know so I can thank you for your help the with the issues and fixes you've provided that will be in the next release!

I'm not really a twitter user, but thank you for the offer.


Clean up unnecessary use of (thread-local) globals

Right now most dynamic allocations rely on the gAllocationManager thread-local global having been set, and all allocs are only cleaned up when the ScriptAllocationManager's destructor is called. This was an okay stop-gap to deal with the fact that lslint (as a CLI util) never really needed to manually release resources, but I think we can do better. Similar story with the thread-local Logger singleton that visitors use to report errors.
Luau's AST library uses a similar allocation strategy, but it manually passes down the allocator rather than globals, and I believe a pointer to it is stored on (or at least reachable somehow from) the AST nodes. Might make sense to have a ParserContext struct or something like that that gets passed to all AST nodes so they can always reference their own allocator without a global.
With the current abuse of globals, the only way of having two distinct ASTs live at once is to parse and process them in separate threads.

Mostly dealt with in 83c937f5a090bbb0d65dd02a656125c3dbc26d76, still need to kill the Logger singleton.

Only (hopefully immutable) globals left are the builtin definitions as of 075579bc78da2b6dc2edb73bbd162b5bd182902f, and we want those to be shared across parses.


disable URL previews by default upon admin room creation

Merged this in https://github.com/girlbossceo/conduwuit/pull/419


[stdlib] Add _forEachField(of:options:body:) function

This function walks all the fields of a struct, class, or tuple type, and calls body with the name, offset, and type of each field. body can perform any required work or validation, returning true to continue walking fields or false to stop immediately.

@swift-ci Please smoke test

@swift-ci Please smoke test

@swift-ci Please smoke test

Still looking at exactly how this function should land. Closing for now…


[WIP] docker / Caddy

Refactoring docker compose setup to use caddy instead of nginx.
Motivation

much simpler config
better handling of auth redirects
built in ssl
improved localhost serving
improved logging
persistent storage of cert files, etc

Todo

[ ] update install guide docs
[ ] add docs on persistant files for caddy (certs / etc)
[ ] test on demo server
[x] rebase onto correct remote... Oops..

Further Work
The whole docker / docker-compose structure needs improving / simplifying:

[ ] rework folder structure
[ ] remove "dev" docker compose file (just use devcontainer)
[ ] Simplify docker install / setup guide

@matmair nice suggestions :)

From my testing in #6555 the auth uri should probably be changed to uri /auth/ with a trailing slash, otherwise 301 redirects might cause problems here.

@30350n cheers

Can we actually also use caddy without ssl behind another reverse proxy that manages a bunch of other services too?

Can we actually also use caddy without ssl behind another reverse proxy that manages a bunch of other services too?

Yes, you might have to set auto_https off though.

Why are requests to /api/* being handled separately in the Caddyfile btw?

Why are requests to /api/* being handled separately in the Caddyfile btw?

That was a holdover from some earlier testing - has been fixed now, thanks

@matmair currently uv breaks the docker setup process, due to some issue with trying to re-build and re-install packages from requirements.txt during invoke install. Note that these packges are already available in the base python directory, from when the image was built.
For now, I am changing the logic for invoke install / invoke update / invoke plugins to not use uv by default - it can however still be used with the optional --uv flag.
I'd like to work out why in a future PR, but I feel that perhaps this is a uv issue as it is still very new...

and from where do we get the https certs? Letsencrypt? Don't we need to provide an email and accept the TOS somewhere?

and from where do we get the https certs? Letsencrypt? Don't we need to provide an email and accept the TOS somewhere?

Caddy seems to be using Letsencrypt https://caddyserver.com/docs/automatic-https#overview

and from where do we get the https certs? Letsencrypt? Don't we need to provide an email and accept the TOS somewhere?

It just works. I setup a new demo server (https://demo2.inventree.org) (down now) and it auto-certified with letsencrypt.
The Caddyfile can be adjusted by users as required, though


Error installing torchwordemb

I'm trying to test the pretrained model but got the following error:
Traceback (most recent call last):   File "test.py", line 13, in <module>     from trijoint import im2recipe   File "/project/recipe1m/im2recipe-Pytorch/trijoint.py", line 9, in <module>     import torchwordemb ModuleNotFoundError: No module named 'torchwordemb'
but then I get the error when doing pip install torchwordemb
    /project/conda_env/recipe1m/lib/python3.7/site-packages/torch/include/ATen/core/dispatch/Dispatcher.h: In member function ‘Return c10::Dispatcher::doCallUnboxed(const c10::Dispatc hTable&, const c10::LeftRight<ska::flat_hash_map<c10::TensorTypeId, c10::KernelFunction> >&, Args ...) const [with Return = bool; Args = {}]’:     /project/conda_env/recipe1m/lib/python3.7/site-packages/torch/include/ATen/core/dispatch/Dispatcher.h:191:1: warning: control reaches end of non-void function [-Wreturn-type]      }      ^
error: command 'gcc' failed with exit status 1
Has anyone had success running test.py and/or installing torchwordemb?

我也遇到了同样问题，请问是如何解决的


Missing AblateGPT

Hi, it appears the ablate.py file is missing. Are you able to push this?

https://github.com/locuslab/wanda/blob/main/lib/ablate.py
@vithursant You can refer to this file.


3.1.0 update breaks Sphinx 3.5

Jinja2 3.1.0 release breaks Sphinx 3.5.
This bug is replicated whenever loading rst.py from sphinx version 3.5. Here is a build failure caused by the Jinja2 update.
Sphinx 3.5 expects Jinja2 3.x to have the environmentfilter available for import, but it is not able to be imported beginning with the 3.1.0 update.
Environment:

Python version: 3.8
Jinja version: 3.1.0

Yes, you'll need to either upgrade Sphinx, or use a tool like pip-tools to pin your dependencies and control when you get updates.

No worries, it was a quick fix, I had already pinned the Jinja2 dependency after this error came up.
But I think you'll find introducing a breaking change in a minor version release is going to net you a hundred (well-intentioned) issues like this one to swat. Good luck!

See https://hynek.me/articles/semver-will-not-save-you/, https://snarky.ca/why-i-dont-like-semver/, and https://bernat.tech/posts/version-numbers/, which go in depth on why pinning is the only valid solution to these types of issues, regardless of if a project follows semver.


Typo in classify/scikitlearn docstring

Fixing a minor error in subject-verb agreement.

Thanks @mattjdelia


Add documentation for HRQ

is anyone on this?
I can try to write a doc :D
(English is not my main language)

/assign @zfrhv

/remove-lifecycle stale

Fixed by #289
/close


Adapter specific options not passed to Finch

Version: 1.12.1
App configuration:
config :tesla, :adapter, {Tesla.Adapter.Finch, name: XXX.Finch}

Adapter module:
defmodule XXX.Finch do
  use Tesla

  adapter Tesla.Adapter.Finch, name: __MODULE__, receive_timeout: 40_000
end

Expected:
Finch request (Tesla.Adapter.Finch.request) should be called with [receive_timeout: 40_000, name: XXX.Finch].
Actually it is called with the default options [receive_timeout: 15_000, name: XXX.Finch].

Hey there, I could not reproduce this
config :tesla, :adapter, {Tesla.Adapter.Finch, name: XXX.Finch}

defmodule XXX.Finch do
  use Tesla

  adapter Tesla.Adapter.Finch, name: __MODULE__, receive_timeout: 40_000
end

XXX.Finch.get("http://...")

Please provide some test case proving the brokenness, a video or something that I could replicate this with


Change continue button labels in cart

Change 'Continue' label on cart partial to 'Continue to Checkout'
Change 'Continue' label on address partial to 'Continue to Payment Options'


Merging merging produces incorrect UVs on some models

See e.g. mob001, mob057

Weird issue where validating the mesh normals removed loops, put the validation last so it doesn't mess up loop data setting


Stack status output is leaking secrets.

Hello!

Vote on this issue by adding a 👍 reaction
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already)

Issue details
If I run pulumi stack output the secrets are redacted. However, they are still in clear text in the stack output status.
Steps to reproduce
My stack config is:
apiVersion: pulumi.com/v1alpha1
kind: Stack
...
spec:
  backend: s3://cloud-pulumi-state
  branch: refs/heads/master
...
  projectRepo: git@github.com:tetrateio/tetrate.git
  repoDir: cloud/projects/operations/storage/aws
  secretsProvider: <REDACTED>
  stack: operations.storage.aws
  useLocalStackOnly: true

I added a test in #206 to replicate the issue but it seems to behave correctly. Wonder what I am not capturing about your scenario there?


[Bug]: Target platform is IOS 11 on most of the plus plugins xcode complains and wants 12 +

Platform
IOS
Plugin
most of them
Version
latest
Flutter SDK
all
Steps to reproduce
If you compile in xcode or use verbose you will get warnings for most of the plus plugins targeting platform ios 11 or older all should be changed to 12 + we have been manually changing in our app to 12 to get rid of all the warnings
Code Sample
from the podspec file of  wakelock_plus

s.platform = :ios, '11.0'

Logs
none issue

Flutter Doctor
none issue

Checklist before submitting a bug

[X] I searched issues in this repository and couldn't find such bug/problem
[X] I Google'd a solution and I couldn't find it
[X] I searched on StackOverflow for a solution and I couldn't find it
[X] I read the README.md file of the plugin
[X] I'm using the latest version of the plugin
[X] All dependencies are up to date with flutter pub upgrade
[X] I did a flutter clean
[X] I tried running the example project

Thanks for reporting. It is already being taken care of step by step.


ActiveRecord .uniq is deprecated for .distinct

According to the docs it seems to be an alias: http://apidock.com/rails/v4.2.1/ActiveRecord/QueryMethods/uniq

| Is it raising warnings?
Yup, you get a: DEPRECATION WARNING: uniq is deprecated and will be removed from Rails 5.1 (use distinct instead)
Seems API Dock doesn't have rails 5.0.0, but it's in Rails 5.0 release notes


Use greyscale map style

What does this change?
Despite the non-British spelling, this offers better contrast with the surrounding interface

How was this tested?
How have you tested your changes?
Ways of testing could include:

Writing or extending an end to end test
Testing your change on a preview deployment

Accessibility
If applicable to your changes, have you:

[ ] Tested with screen reader
[ ] Checked to see if navigable by keyboard
[ ] Ensured that the colour contrast is passing

Documentation
If applicable to your changes, have you:

[ ] Added/edited the appropriate documentation
[ ] Added any component(s) to Storybook

too drab


Extended dimension values support

This PR implements a feature request by @basnijholt on gitter to support numpy arrays and pandas Series as direct specifications for Dimension.values coupled with automatic de-duplication of values.

Tests are passing and I think this is ready to merge.

Looks good. Merging.


[CELEBORN-802] Reuse DataPusher#idleQueue by pooling to avoid too many byte[] objects

What changes were proposed in this pull request?
Reuse DataPusher#idleQueue by pooling in SendBufferPool to avoid too many byte[]
objects in PushTask.
Why are the changes needed?
I'm testing 3T TPCDS. Before this PR, I encountered Container killed because of OOM, GC is about 9.6h. For alive Executors, I dumped the memory and see number of PushTask object is 2w, and the number of 64k byte[] is 23356, total around 1.7G:

After this PR, no container is killed because of OOM, GC is about 8.6h. I also dumped Executor and found number
of  PushTask object is 3584, and the number of 64K byte[] objects is 5783, total around 361M:

Also, before this PR, total execution time is 3313.8s, after this PR, total execution time is 3229.5s.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Passes GA and Manual test.

cc @pan3793 @cfmcgrady @RexXiong

Thanks, merged to main/0.3


Create unicda.txt

Add college to the list: Dominica Republic
Universidad Dominico Americano
https://unicda.edu.do/

@fradelycodes I have to close this request without merging, because you requested to add a non-existent domain to this repository: Host unicda.edu not found: 3(NXDOMAIN) Please ensure that you are familiar with this repository rules located at the bottom of this page and submit a new request with the correct information. Thank you for your understanding!

@philipto all the domains for the Dominican Republic adds the .do at the end that's it is @unicda.edu.do


Benchmark Sender should have a max retry.

If an API request fails to send 5-10 times need to cancel it.

This is being closed, the Benchmark sender needs to be moved into the Rust layer because some languages do not require a strict FFI layer i.e. for instance Python.


feat: close VulkanFeaturesWindow with shortcut

Allows closing the VulkanFeaturesWindow with ESC. Since the search entry has the focus by default, and thus the window cannot receive the ESC shortcut, I added a workaround using the stop_search signal.

So am i understanding this correctly: by default, when the search entry is focused, the window gets closed with the stop_search signal, and if it's not in focus, it's handled by the ShortcutController on the window?
P.S. The CI failure is an intermittent error with the package builder, not related to the PR, should be fine after a restart

Yes, that is correct.


Update ToggleSwitch.xaml

ToggleSwitch Header Margin fix.

By the way, I still don't understand why DynamicResource doesn't work 🤯

Because the resource is in the same xaml. DynamicResource can only find resource in other xaml. (Maybe...


Builders provided by library are generated duplicate

Hello there,
I am trying to generate a fluent for my CRDs with the fabric8 kubernetes client. But when I am using the @BuildReference annotation, the builders for the classes in the fabric8 client (which already provide the builders) are generated and conflict with the generated ones.
I looked into the keycloak operator and it works just fine for them. But I cannot see, what they are doing differently.
Is there some kind of configuration I am missing?
Kind regards

Already solved. When using gradle you should add the libs containing your builders as annotation processors


Animations not working on Macbook

Hi! I was trying the svelte port, but the animations were not working. I checked this library, and I had the same problem. See https://github.com/wobsoriano/svelte-sonner/issues/1

Which browser and macOS version are you using?

@emilkowalski I tried it on ARC (Chromium based) and Safari

@emilkowalski yes I do. When turning this off, the animation starts again. I did not know this had an effect on browser functionality.


A notification dialog pops up when trying to paste one file share between storage accounts under one subscription

Storage Explorer Version: 1.22.0-dev
Build Number: 20211109.2
Branch: main
Platform/OS: Windows 10/Linux Ubuntu 18.04/MacOS Monterey 12.0.1
Architecture: ia32/x64
How Found: From running test cases
Regression From: Previous release (1.21.3)
Steps to Reproduce

Expand one storage account ->File Shares.
Create a file share -> Copy the file share.
Paste the file share to another storage account.
Check no notification dialog pops up.

Expected Experience
No notification dialog pops up.
Actual Experience
An notification dialog pops up.

Will verify this bug when bug #5169 get fixed.

Fixed on the build 20211110.13.


Add HUD archives. Closes #195.

There are quite a few report 404s as well as Puerto Rico/U.S. Virgin Islands and Vermont.
I am going to email the webmaster and see if we can get this resolved.

Works great, and really nice expansion of grabbing what this IG publishes.


To support running dual-stack and IPv6-only NetworkPolicy, conformance, e2e tests on kind

Describe the problem/challenge you have

Jenkins:
To support running conformance, networkpolicy and e2e on kind-dual cluster.
To support running conformance, networkpolicy and e2e on kind-ipv6 cluster.
AWS :
To support running conformance, networkpolicy and e2e on kind-dual cluster.
To support running conformance, networkpolicy and e2e on kind-ipv6 cluster.
Describe the solution you'd like

conformance, networkpolicy and e2e should work on kind-dual cluster.
conformance, networkpolicy and e2e should work on kind-ipv6 cluster.
Anything else you would like to add?

To modify configmap coredns to support conformance test for ipv6

#5175


Coalesce in JoinColumn

Do we at this moment have a way to use coalesce in the join column for relations?
For example a car has many parts. A car can have a relation to itself. I want to make demo cars, which refer to another car (the original car). But i do not want to copy all the parts of the car. So i would like to join using Coalesce. join part.car_id = coalesce(car.car_id, car.id) So we would use the coalesce to first check if the car as a car_id, referring to the original car, if so, its a demo car and we use the car id of the original car. If not than use the car's own id. For example when calling the original car.
If this would not be possible using the Annotations. Would it be possible in a different way?

Maybe have DemoCar, and use the Overwrite annotation to overwrite the join column? Guess that would be the best way to do this.

@Michal-sk I don't understand the scenario: what would this look like, in entities?
Also, maybe I'm naive, but I've never seen a coalesce join. The ORM always builds associations towards identifiers only, so car_id, being a foreign key, and not an identifier, is an invalid referenced column.

The ORM always builds associations towards identifiers only, so car_id, being a foreign key, and not an identifier, is an invalid referenced column.

Got it.


Animated texture sequences supported yet?

I try million ways to import a tiff image sequence texture to rm like adding ####, $f4 to tell renderman sequence number, but none of them work!  So any ways to add a sequences import button into pxr Texture?

Right now we don't support that.  It should be easy though.  have a few changes pending but will add that next.

I uploaded a fix for this.


Update from upstream and fix missing set -eux

Update upstream submodule and resolve patch conflicts.

Upstream is now using a builder stage, so some things are reordered. They have some infrastructure set up to actually share more work as a result (https://github.com/docker-library/golang/commit/a6fd6eceb0cb26da2fceefb4353768c472f84420) but for us, it doesn't have any meaningful impact.

Fix a missing set -eux that could have caused errors to be improperly ignored. Add a command to upgrade all distro packages for Azure Linux and Debian.

https://github.com/microsoft/go-images/pull/290

Regenerate the Dockerfiles with dockerupdate -f.

A few more small fixes, would appreciate a set of eyes taking another look. 😄


u is not a function

Using the hourly timemap I'm getting this error during the configuration of the heatmap

Thank you for reporting this! Can you consistently reproduce this? If so, could you give me the instructions?

@marcusolsson I think this occurs when we select "table" as datatype instead of time series


Nvkelso/overlay ux pieces

move blend:overlay to new style classes, and use those in app UX blocks
rebase against gh-pages branch

Brett gave thumbs up, Geraldine and I are merging.


SILGen: Fix assert when bridging no-payload enum case to Any

It's possible for a value of a non-trivial type to have no cleanup,
if the value was constructed from a no-payload enum case. Tweak
the assert to check the value's ownership instead of checking the
type.
Fixes https://bugs.swift.org/browse/SR-12000, rdar://problem/58455443.

@swift-ci Please test


African Fiction festival 2023

I personalized the content of my page. I choose a topic(African Fiction Festival) that is different from the one in the original design.
I ensured the pages looked almost identical to the original design. I made adjustments like text or image changes where necessary.
I built the Home and About pages.
Each of the two pages has mobile and desktop versions.
The home page has a link in the menu to the About page.
The logo in the header links to the home page.
When the user clicks (or taps) the hamburger button on the header, the mobile menu appears over the page.
I implemented the mobile menu so it is consistent with the design (colors, typography, spacing, etc.).
The mobile menu has a close (X) button that closes the menu.
The section "Featured speakers" was created dynamically in JavaScript.
I stored the data about the speakers in a Javascript variable(array - stored in a separate file - speakersData.js) and used it during page loads to create the HTML for this section dynamically.
In my README file, I have given appropriate credit to Cindy Shin, the author.
I have created a walkthrough video on Loom - Loom video
The video has a description of the project.
The video includes a demo of the project features (different pages and screen sizes).
In the video, I have highlighted some interesting pieces of code and things I built that I am proud of.

All issues resolved. Thank you

Thank you @OyePriscilla


Consider a python linter?

I believe we could add a linter such as pylint to the development workflow. I am familiar with perlcritic (perl) and rubucop (ruby) and those tools are great to avoid/fix synthax inconsistencies and common errors. It's also nice for new contibutors that are not yet familiar with the language (as I am) :-)
What do you think?

I've thought about it, I see the usefulness and I'm sure I'll add something at some point =) I was thinking about something like flake8 - I think we even had a discussion about it at some point.


Optional Masks

Full implementation of optional masks

hi RobinHerbots.  Very cool that you've taken this on.  Can you describe what you mean by optional masks?

Simply that you can create a mask where some parts aren't required to fill in, to complete the mask , ....

yes of course! :)  very important feature.

This would be very handy right now.

I have been trying to add this all morning, but the problem I am running into is that I cannot figure out how to override _val() to not display the full mask.
I would like it so a mask of '99999[-9999]' for example would show '12345-____' while the field has focus, but on blur to only show '12345', as the required part of the mask has been fulfilled, a la the original masked input plugin, by Digital Brush.  This plugin blows that one away, easily, but having this feature is very important to my clients.

Please try out my pull request that attempts to add this feature, https://github.com/RobinHerbots/jquery.inputmask/pull/30
I have only tested this with the example mask given above ('99999[-9999]'), but I will continue testing and improving with all of the feedback I receive.

With optional masks I had something else in mind then your implementation. But I am willing to include the changes or the idea to clear the optional elements from the mask when losing focus. In a previous issue someone else also asked about that kind of functionality.

I'm open to any implementation, I'm sure there are some better ideas out there.  I'll help out in any way I can--for this or any other feature.
What was the implementation idea you had?

Hi Ross,
I added tweaked your implementation a bit and pushed (after some struggle) to the master & dev.
My implementation in mind that you can have optional parts anywhere in the mask & that the mask changes according your input (leaving out optional and reinserting on the fly)

Hey, that would be awesome!  It's more abstracted (and therefore useful) than my idea.  Thanks for adding this in--my goal was to be able to use your awesome improved mask in production rather than Digital Brush's long outdated one, and with what we have done I am able to do so.


MNE Gallery

This morning after my presentation on latest MNE developments it was suggested to create some sort of gallery of cool-looking, interest-provoking plots that were generated with MNE. I think this is a great idea, and maybe not too much work either: we could just hand-select the most amazing figures from the tutorials and examples. WDYT?

This is more or less what the front-page carousel is meant to do, draw people in with some pretty plots that people might typically want to make.
This is probably not what you mean in some way, can you elaborate on where your proposal differs and where you see it fitting in the narrative tutorials/docs so @drammock can comment?

This is more or less what the front-page carousel is meant to do, draw people in with some pretty plots that people might typically want to make.
This is probably not what you mean in some way, can you elaborate on where your proposal differs and where you see it fitting in the narrative tutorials/docs so @drammock can comment?


Can't compile project after updating to 2.0.1

Holla...so i have a very tricky issue. I updated my app to use the latest version of this library using the gradle dependency provided, and afterwards, i first had conflicts with the minSdkVersion being higher than my apps' own. i checked and found out the minSdkVersion on the both this library and your materialLibrary (which this library also uses) are both 16, even though your readme stated it was 14. So i did tools:overrideLibrary and that escaped that problem but then when trying to compile it complains of a duplicate file in the drawable-hdpi folder: fab_bg_mini.png. this file is apparently present in two of the libraries you use (filepickerlibrary and materialLibrary). I dont know if there is a way i can fix this.

This is very interesting. I'm not sure what is going on here because I was using my other library (materialLibrary) in a previous release as well. I'll look into it though and see if I can reproduce your issue.
Also, does you app depend on the appcompat library itself? My libraries depend on those libraries so I wonder if it's double adding the app compat libs.

I've found the resouce culprit in my material design library. I'm going to delete the resource when I get the chance (I don't think I ever use it). It seems like your app is double referencing my material design lib. Sorry about this!

Thanks alot for the quick reply. I'm also using appcomat, but then its also present in some other libraries i'm using and those ones dont conflict. Also the minSdkVersion override that i did, is it likely to cause any errors in your library?

No problem. Ok then it's more than likely not the cause. I'm not sure if the override would be the cause. The resource file in in my material design library. Does you app depend on that directly?

Also, does the library work with version 2.0.0?

I can't reproduce this with just a dependency on version 2.0.1, what other dependencies are you using in your app?

Any updates on this issue?

Naah mehn...thanks alot for the update...and sorry for the late
reply...been really busy these passed weeks.
On 14 Dec 2015 4:06 am, "DeveloperPaul123"<EMAIL_ADDRESS>wrote:

Any updates on this issue?
—
Reply to this email directly or view it on GitHub
https://github.com/DeveloperPaul123/FilePickerLibrary/issues/26#issuecomment-164330220
.

Does this mean that you don't have the error anymore?


Remove extra semicolon in doctest on_conflict

@weiznich Am I allowed to merge typo fixes such as this one?
Also, @pickfire PR looks good.

@henryboisdequin Haha, you need to ask to merge typo fixes? If he give you write access means he trust you enough not to sabotage the repo and take up some of his responsibilities.

@henryboisdequin You shouldn't have the corresponding rights to merge anything in master yet. Those rights belong to the contributors group. You can try to merge the PR to see if that's true (if that works I need to rework the access rights for different groups.)

@weiznich Merged, I think you need to edit reviewers rights :)

@henryboisdequin Good to know. I think it should be fixed now. Seems like there is something in GitHub's organization design which overrides the actual team permissions... :disappointed:

@weiznich Yep it's fixed. It would be nice to have the permission to label issues though as that's something reviewers could do and have the time for.

@henryboisdequin I've already changed to permissions so that this is possible. All reviewers should now have Triage rights.


Add promotion choice to Pawn

Add a GUI that prompts the player to choose the promotion they want to do

Added in: omegaleo@34c276098103d634424c187fad4c725a8d371600


Polynomial fit interactive needs buttons

There should be buttons to Increase/Decrease polynomial order, and a button to Accept

What has worked for me is using events. Never tried to add buttons to matplotlib.pyplot but events seems simpler.

agreed! the workflow here is very clumsy, but my excuse is that I was optimistic I could get the pipeline working hands-free.... alas


[1.x] Restrict chromium requests

Description
[Describe what this change achieves]
Issues Resolved
[List any issues this PR will resolve]
Check List

[ ] New functionality includes testing.

[ ] All tests pass, including unit test, integration test and doctest

[ ] New functionality has been documented.

[ ] New functionality has javadoc added
[ ] New functionality has user manual doc added

[ ] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #436 (c455ee9) into 1.x (890a5d4) will increase coverage by 4.10%.
The diff coverage is 56.00%.

@@             Coverage Diff              @@
##                1.x     #436      +/-   ##
============================================
+ Coverage     72.95%   77.06%   +4.10%
============================================
  Files            94       30      -64
  Lines          3946     1910    -2036
  Branches        611      383     -228
============================================
- Hits           2879     1472    -1407
+ Misses          892      435     -457
+ Partials        175        3     -172

Flag
Coverage Δ

dashboards-reports
77.06% <56.00%> (-0.32%)
:arrow_down:

reports-scheduler
?

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

Impacted Files
Coverage Δ

...r/routes/utils/visual_report/visualReportHelper.ts
80.37% <52.17%> (-8.00%)
:arrow_down:

...ashboards-reports/server/routes/utils/constants.ts
100.00% <100.00%> (ø)

...ashboards-reports/server/utils/validationHelper.ts
92.00% <100.00%> (ø)

...nsearch/reportsscheduler/model/ReportDefinition.kt

...tsscheduler/model/InContextReportCreateResponse.kt

...rtsscheduler/resthandler/ReportStatsRestHandler.kt

.../reportsscheduler/model/ReportDefinitionDetails.kt

...sscheduler/model/GetAllReportDefinitionsRequest.kt

...search/reportsscheduler/action/PluginBaseAction.kt

...nsearch/reportsscheduler/metrics/BasicCounter.java

... and 57 more

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


bufferToggle: fixes and tests

merged with 949fa31 ... thanks @staltz ..
Looking at that bit with context, I wonder if it would have been better to have a sub class of Subscription that carried the buffer with it and managed semantics around buffer size and completion... Dunno. I think your solution is fine.

I wonder if it would have been better to have a sub class of Subscription that carried the buffer with it

That didn't occur to me when I was fixing, you mean it would be better in performance or in elegance? I just tried to do minimal changes in order to get tests passing.

I'd be curious about either, honestly. But it's not a big deal


KubeEdge v1.14.2 killercoda Scenerio

close #8

@fisherxu  pls check this out!!

@sids-b could you pls check this out!!

@sarthaksarthak9 I've created an dev branch dev-1.14, could you please raise this PR to dev-1.14? We can have some fixs and then merge to master, thanks

@sarthaksarthak9 I've created an dev branch dev-1.14, could you please raise this PR to dev-1.14? We can have some fixs and then merge to master, thanks

Done!! @fisherxu

@fisherxu something else I need to do?


[Bug]: openai from_tools "tool with name functions not found"

Bug Description
chatbot in best chatmode with openai LLM gives
....
   File "/home/.local/lib/python3.11/site-packages/llama_index/core/agent/runner/base.py", line 575, in _chat
     cur_step_output = self._run_step(
                       ^^^^^^^^^^^^^^^
   File "/home/.local/lib/python3.11/site-packages/llama_index/core/instrumentation/dispatcher.py", line 274, in wrapper
     result = func(*args, **kwargs)
              ^^^^^^^^^^^^^^^^^^^^^
   File "/home/.local/lib/python3.11/site-packages/llama_index/core/agent/runner/base.py", line 414, in _run_step
     cur_step_output = self.agent_worker.stream_step(step, task, **kwargs)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/home/.local/lib/python3.11/site-packages/llama_index/core/callbacks/utils.py", line 41, in wrapper
     return func(self, *args, **kwargs)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/home/.local/lib/python3.11/site-packages/llama_index/agent/openai/step.py", line 743, in stream_step
     return self._run_step(
            ^^^^^^^^^^^^^^^
   File "/home/.local/lib/python3.11/site-packages/llama_index/agent/openai/step.py", line 588, in _run_step
     return_direct = self._call_function(
                     ^^^^^^^^^^^^^^^^^^^^
   File "/home/.local/lib/python3.11/site-packages/llama_index/agent/openai/step.py", line 462, in _call_function
     tool = get_function_by_name(tools, function_call.name)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/home/.local/lib/python3.11/site-packages/llama_index/agent/openai/step.py", line 52, in get_function_by_name
     raise ValueError(f"Tool with name {name} not found")
 Tool with name functions not found

This is similar error to #12483, and possibly related to #13040
Version
0.10.34
Steps to Reproduce
Still working on minimal environment to reproduce
Relevant Logs/Tracbacks
I inserted logging code in `llama_index/agent/openai/step.py` in `get_latest_tool_calls` before the `get_function_by_name` is called:

logging.debug(f"{tools=} {function_call=} {function_call.name}")

result
DEBUG:root:tools=[<llama_index.core.tools.query_engine.QueryEngineTool object at 0x7fa1a1916a10>] function_call=ChoiceDeltaToolCallFunction(arguments='Athena is an interactive query service that makes it easy to analyze data in Amazon S3 using standard SQL. Athena is serverless, so there is no infrastructure to manage, and you pay only for the queries that you run.', name='functions') functions

curious where this is coming from, also added in get_latest_tool_calls following
logging.debug(f"get_latest_tool_calls {task=} {chat_history=}")

with result
DEBUG:root:get_latest_tool_calls task=Task(task_id='3e3d9494-0f6a-46f5-9bdc-f277ebd58878', input='what do you know about athena?', memory=ChatMemoryBuffer(token_limit=3
900, tokenizer_fn=<bound method Encoding.encode of <Encoding 'cl100k_base'>>, chat_store=SimpleChatStore(store={}), chat_store_key='chat_history'), callback_manager=<ll
ama_index.core.callbacks.base.CallbackManager object at 0x7fa1ade8ffd0>, extra_state={'sources': [], 'n_function_calls': 0, 'new_memory': ChatMemoryBuffer(token_limit=3
000, tokenizer_fn=<bound method Encoding.encode of <Encoding 'cl100k_base'>>, chat_store=SimpleChatStore(store={'chat_history': [ChatMessage(role=<MessageRole.USER: 'us
er'>, content='what do you know about athena?', additional_kwargs={}), ChatMessage(role=<MessageRole.ASSISTANT: 'assistant'>, content='', additional_kwargs={'tool_calls
': [ChoiceDeltaToolCall(index=0, id='call_zcYqlFWLMBhn3WK6EELknLbi', function=ChoiceDeltaToolCallFunction(arguments='Athena is an interactive query service that makes i
t easy to analyze data in Amazon S3 using standard SQL. Athena is serverless, so there is no infrastructure to manage, and you pay only for the queries that you run.',
name='functions'), type='function')]})]}), chat_store_key='chat_history')}) chat_history=[ChatMessage(role=<MessageRole.USER: 'user'>, content='what do you know about a
thena?', additional_kwargs={}), ChatMessage(role=<MessageRole.ASSISTANT: 'assistant'>, content='', additional_kwargs={'tool_calls': [ChoiceDeltaToolCall(index=0, id='ca
ll_zcYqlFWLMBhn3WK6EELknLbi', function=ChoiceDeltaToolCallFunction(arguments='Athena is an interactive query service that makes it easy to analyze data in Amazon S3 usi
ng standard SQL. Athena is serverless, so there is no infrastructure to manage, and you pay only for the queries that you run.', name='functions'), type='function')]})]
DEBUG:root:tools=[<llama_index.core.tools.query_engine.QueryEngineTool object at 0x7fa1a1916a10>] function_call=ChoiceDeltaToolCallFunction(arguments='Athena is an inte
ractive query service that makes it easy to analyze data in Amazon S3 using standard SQL. Athena is serverless, so there is no infrastructure to manage, and you pay only for the queries that you run.', name='functions') functions

more git grep and i discovered that llms.openai.base.OpenAI.stream_chat (i use stream_chat in my streamlit app; not sure why the llm call at this early stage also uses stream_chat) inserts ChoiceDeltaToolCall toolcalls to deal with the streaming. and these toolcalls make there way in the memory/chat history, and the OpenAIAgentWorker from step.py probably only expects actual tool calls from the tools list.
not sure how to fix this. i'll see if i can skip the choicedeltatoolcalls in get_latest_tool_calls (either filtering them out, and then determing the latest chat_hostry; or if the latest call is a choicedelta thingie, pretend there is not tool call in the latest chat history)

ok, seems like i just don't understand how this all is supposed to work. with react+openai llm at least i can see all prompts and understand it. the openai agent is just a very different beast.

i am first going to check if there is nothing wrong/outdated with the model i am using (it's an azure openai 3.5 model, but an old one)

i can't reproduce the standard openai function calling example with the azure openai model i am using. i'm investigating further what is going on or why i can't get more recent model.
@logan-markewich not sure there is a way to fetch the model version from the api somehow, and then give an error if people try to use function calling with a too old version of the api
see https://platform.openai.com/docs/guides/function-calling/supported-models what is allowed and what not


Fix websocket connection issues

Websocket connection to ogmios and datum cache fail about 50% of the time and there is nothing communicated back to the caller of the CTL functions (i.e., an error logs to the console but frontend is not notified of any failure and things hang).
Existing intel by @nrutledge and t.m.:

t:"websocket issue is on frontend/ctl side, I've started local ws server with websocat and only 1/4 requests are getting there"
n:"I've tested a bit on my end by manually creating websocket connections from the browser dev tools and also using Postman. In both cases, when testing, I'm getting identical behavior as the Seabug frontend. In fact, I've tested simultaneously, and if the frontend websocket connection fails, the connection from dev tools or Postman also fails."
t:"Ok it is nightmare race condition to debug, I created dummy ogmios (not datum cache) server, and I wasn't received some of the requests because if frontend opens websocket to datum cache before everything breaks due to Unexpected server response: 404 returned by ogmios-datum-cache"

Anyone more involved is welcome to provide a more structured description and hints on the issue.

An example of the problem with error handling is the callMarketPlaceBuy  here: https://github.com/Plutonomicon/cardano-transaction-lib/blob/seabug-deployment/npm-packages/cardano-transaction-lib-seabug/index.js
If the websocket fails to connect when fetching the list of NFTs, the operation is aborted but the promise remains in a pending state. Ideally there would be some retry behavior internally and if the operation fails after some set number of attempts, the promise rejects with an error.

I think this is a duplicate of #233

The other one doesn't mention that there are issues with connections

I've removed the message I posted above and put a similar one in #233. That way this ticket is focused on the connection issues which require troubleshooting the axios and datum cache and the other one is focused on the PureScript logic.

Copied @klntsky thoughts for a better visibility:

A  couple of thoughts related to WebSocket errors.

For each type of query, we should maintain a request queue in form of a mapping from listener ids to actual request payloads (e.g. FinalizedTransaction in case of submitTx). Let's call it a pending requests queue.

The queue would allow replaying the requests in case of a failure. In case ws.onerror triggers, all response listeners should be removed and a new websocket should be created. Because of this logic, the pending request queue should be persisted across websockets and only initialized once at application startup.

Our current implementation is callback-based, i.e. mkOgmiosWebSocket' accepts a function that accepts a record of ListenerSets that are used downstream. So WS-related code should be reorganized to allow passing the requests queue around. We also construct an Aff directly with mkOgmiosWebSocketAff which I think is not suitable for new requirements.

Another problem is that there's no guarantee that a query hasn't been completed if it is in the pending requests queue. So in the case of submitTx, the replay code should include a workaround for the case when we try to submit the tx during replay and it fails because of consumed UTXOs.

This package may be helpful for implementing the connection retry logic: https://www.npmjs.com/package/reconnecting-websocket


Protect wallet directory with UNIX account permissions

On OS's where the functionality is available, we should chmod 700 wallet directories by default.

Fixed by 4085e808523d1eed12166d0dfb571706d4370b88
According to https://bitsharestalk.org/index.php?topic=12780 we need to protect config.json as well since it may contain RPC credentials.  Since you can dump private keys over RPC, protecting the RPC credentials on a multi-user system is just as important as protecting the keys / wallet directory.  So I just set the permissions for the whole directory to 700.
This is only done for a new data directory, so if the user wants more permissive access, they can simply chmod the directory appropriately.  It may also be useful to create the directory with mkdir -p before the first run.


Dockerize user_pinger_2

I meant to pull this into my own fork but hit the wrong button. Mea culpa.


Multiple tenant

How can you use these dashboards as an indirect reseller or direct bill partner/ direct provider ?
We are an MSP and would like to use these dashboard for of our customer tenant, how can we achieve this or is this feature you can add to your road map?

I believe you need an account on each of the tenants with Global Reader access.

All Azure subscriptions provisioned for customers has a foreign principal assigned and the users in admin agent group frpm partner tenant have full access to those subscriptions. Can these users access the CCO insight dashboard? I have tried using the access and unable to use the report , gives multiple errors.


add csrf options

add csrf options

actually, i am not using next-auth in my project, cause i need make a lot changes to fits requirements, i am using this to check CSRF in my project:
https://github.com/expressjs/csurf
it may fit with your design?

Thank you for the feedback and yes that's super relevant!
I stil want to refactor this further in future so that it uses double submit cookie instead of requiring a session (and csurf looks like it might be a good fit) but for now I have refactored it as above (so it can be true (default), false (off) or an object with options).


⚠ Bofrost.be has degraded performance

In edb1d05, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 946 ms

Resolved: Bofrost.be performance has improved in 3f0f79c after 6 minutes.


Dropbox bug

dropbox dump is not working

(node:48973) UnhandledPromiseRejectionWarning: #
(Use node --trace-warnings ... to show where the warning was created)
(node:48973) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:48973) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Hi @sabitalizade
welcome on this repo, and thank you for this report!
I do need to reproduce that in order to fix it.
Unfortunately I've not enough context to reproduce the UnhandledPromiseRejectionWarning error you are talking about. I've no the version and suppose you're talking about the latest one (1.3.0)
With #42 I added

the way to run a dropbox dump test when running all tests
add test readme to understand how to run them
fix a minor issue on username/password detectio

Is it possible for you to clone this repo, and try to reproduce your issue with a test ? then provide me the mtOptions you're using (remove secret value of course)
In advance thanks.

your PR is in 2.0.0, please sabitalizade let me know if it's ok for you, feel free to re-open this bug if needed.


Fix database name, create labman role

My apologies, Yoshiki - I requested a review and apparently can't undo that request.

I believe this is out dated based on recent updates to the README


Crosscheck with @gekkio

We need to compare the approach and implementation of our HDL and @gekkio's HDL when it is released in the future.

I think that's enough of a comparison, the rest will come up as we go along.


Show user name of Logged in user in Navigation Drawer

The navigation drawer should show the name and the email of the Logged in user

I would like to try

Sure. Go ahead 👍

@adi44 Are you working on this issue?

@adi44 You asked to take up this issue 3 days ago. This is a really simple issue, shouldn't have taken more than a day.
I am marking it as up-for-grabs again.

I'd like to take this up.


Fix naming of module and directive so that it can be used in more complex projects

I like what I'm seeing so far but there are a few things that make it impossible for me to use it in a project i'm working on.  These are things that I wouldn't want to change on my own since they are the identify of the project.
A few naming changes need to be made in order for this module to be production ready.

The name of the module itself is ngBootstrap it is neither a google module nor represents bootstrap.

#20 show the directive being to greedy and attempting to bind to every input (even though it does try to bail on the binding) you can make it bind to type of daterange and restrict it to input

return {
require: ['?:input'],
restrict: 'A',
};

I believe your second point has been solved. The module seems to no longer bind to all input fields, only those with type="daterange".
I also agree with the naming of the module. Please refer to issue #17 to discuss possible names. I am willing to change it in the very near future.


Can't resize source control lower pane

VSCode Version: 1.33.0
OS Version: MacOs Mojave

Steps to Reproduce:

Open a workspace with multiple folders that have github repos
In VS Code, click the Source Control icon on the left
Click one of the repos
In the pane at the bottom half, try to resize the pane's height
We used to be able to resize it, but we can not resize it anymore

Does this issue occur when all extensions are disabled?: Yes

The SCM Repositories panel now automatically resizes itself, just like the Open Editors panel. If you'd like to manually resize it, set scm.providers.visible to 0.

I know of 3 people (including myself) that this affected. I wonder how many devs across the world are pulling their hair out due to this change.

I know of 3 people (including myself) that this affected. I wonder how many devs across the world are pulling their hair out due to this change.

Make that 4


Update default gptscript binary path

Fix #35
After installing @gptscript-ai/gptscript as a library, the gptscript binary is located in:
./node_modules/@gptscript-ai/bin/gptscript

The default location set in getCmdPath only moves up one directory causing the route to be:
./node_modules/@gptscript-ai/gptscript/bin/gptscript

The incorrect location will cause an ENOENT error whenever calling a method that uses the gptscript binary:

Error: spawn <app>/node_modules/@gptscript-ai/gptscript/bin/gptscript ENOENT

This PR updates the default route by moving up one extra directory.

@jordojordo Thanks for your contribution!


Setup Continuous Integration

A bit delayed, but thanks for the contribution!

you're welcome ! :)


[5.4] Use namespaced phpunit

Switched to the namespaced PHPUnit\Framework\TestCase class from PHPUnit_Framework_TestCase in preparation for PHPUnit 6.0 (already available in version 5).

Will this be a BC in PHPUnit 6 @vinkla ?

I believe it is, they will remove all unnamespaced classes.

This is only possible in PHPUnit 5.* thanks to this https://github.com/sebastianbergmann/phpunit/tree/5.7/src/ForwardCompatibility :smile:

Yes, correct.


[question] does QueryResult.paging_state require the scylla server to keep any resources in RAM or on disk?

I expect the answer should be "NO", because the client should paginate based on latest row token and clustering key values... but I am not 100% sure and would like to receive a confirmation. Could you please explain if my understand is right or wrong and elaborate a bit more on details?
The reason I am asking is I would like to "save" paging_state and use it later to resume page fetching from the same or another process (ie. different connection session). I also would like to make sure that paging_state is "tolerant" to scylla server(s) restarts. Could you please confirm that what I am planning to do is correct to do.
Thanks!

The paging state also stores the set of replicas used for the last page. On the next page, the coordinator will try to use the same replicas to hit the reader caches on said replicas. The reader cache has a time-based eviction policy so readers there will not be "pinned" by you holding on to paging state.
So it is safe to hold on to a paging state cookie and resume the query much later. You just won't hit the reader caches on the first page after resuming.

Many thanks!

@avkonst once you're satisfied with the answers and/or you verify that everything works correctly, feel free to close this issue :)

Also, you might want to join our Slack channel for quick questions: http://slack.scylladb.com/ , the channel name is #rust-driver and the community is very helpful and responsive


Fixing Organization Header

I have an issue because im testing with a personal api account, and therefore i have no Organization Id, but the http request still append an empty OpenAI-Organization to the header, which the Open AI API don't allow. So i have fixed this.
Plus i have added the two new engines id.

Hi @samuelnygaard ,
Thanks for your contribution, I didn't notice OpenAI-Organization was optional.
I have changed target branch to dev, I will merge code to master after a version bump.
I find out Engine endpoint is deprecated also I need to update related codes. If I can finish it today I will send a new build that includes new Model endpoint.
Engine endpoint returns 50 engines 🥲, I need to understand what is going on.


refactored sampler class

First version of the sampler refactoring. I moved as much of the code as possible into the Sampler class.
Furthermore, while iterating the code I came to the conclusion that is misleading to implement train(J, G) with J being multivariate as sampling each column individually. It may be ok for our standard purposes, but I am more and more convinced that it would be useful to resample multiple variables at once. Then, their covariance structure has to be respected as well, of course.
Furthermore I removed automatic training if the sampler is not trained yet in the sampler function -- I feel the user will be more aware of whats happening when training has to happen outside the sampler class.
For Multivariate gaussian distribution I know that this functionality is implemented. I don't remember for CNF. Is a call with a multivariate J allowed? @Valentyn1997
Next steps

[ ] Test compatibility with Explainer functions
[ ] Test compatibility with CNF sampler
[ ] raise exception when sampler not trained
[ ] discussion on logging vs printing

Not ready to merge obviously

@gcskoenig - you could also add all the tests to the /.github/workflows/python-package.yml - so that it will be automatically checked after each git push

As mentioned earlier those tests currently fail, so I did not include them into CI.
I would appreciate if we could write all our tests in this format in the future.

As mentioned earlier those tests currently fail, so I did not include them into CI.
I would appreciate if we could write all our tests in this format in the future.

Yeah, I will need to rewrite examples/chains/test_samplers.py

The code is now ready to merge from my side.  Have not tested compatiblity with CNF, have not removed Distribution heritage. Could you review? Would suggest to introduce CNF compatibility later on.

I reviewed, looks really nice!


unable to run"adb",check your android sdk installation and ANDROID_SDK_ROOT enviroment variable: c:\users\sayan\appdata\local\android\sdk\platfotm-tools\adb.exe" how can i solve this issue

when i am running flutter doctor in my command promt and error pops up saying
"connected device : (the doctor check crashed )
due to an error, the doctor check did not complete.
exception: unable to run"adb",check your android sdk installation and ANDROID_SDK_ROOT enviroment variable:
c:\users\sayan\appdata\local\android\sdk\platfotm-tools\adb.exe"
i dont know hoe to solve this error i will be greatfull if anybody helps me to solve this

"connected device : (the doctor check crashed )
due to an error, the doctor check did not complete.
exception: unable to run"adb",check your android sdk installation and ANDROID_SDK_ROOT enviroment variable:
c:\users\sayan\appdata\local\android\sdk\platfotm-tools\adb.exe"

can you provide your full flutter doctor -v
and you output of flutter emulators

Hello @sayan-dot ,
Could you please run echo $ANDROID_SDK_ROOT and check if the output is a valid path to the Android SDK?
Thanks

Hi @sayan-dot
Please provide what was requested above.

hy guys thanks for your help the issue has been solved successfully by adding paths of ANDROID_SDK_ROOT to enviorment variable so closing the issue her


Implemented methods facilitating write of JSON serialized tweet to log file

I was trying to JSON serialize tweets to a log file and I ran into two NotImplementedExceptions. So I implemented them.

Thank you for this. Looking at the code it looks quite simple. I have never giving it a try because it was not a priority.
Full serialize to json will be supported in version 1.1. (3 versions from now). If you have some knowledge about it, your help will be more than appreciated.

Thanks for your help. It is working quite well :)
Associated with #75


Added city_names_transformation

City names transformation replaces populous city names in documents with more scarcely populated cities in order to test whether NLP models are invariant to changes in name. This means that the context should be used in order to make decisions on entities rather than the entity itself.

Requested changes have been added!

Okay, I am merging this since the build error is fixed.


INIT SELECT TYPE=DATE

I tried to init using text property and I see correct date, but when I try to open it start with today, in fact if I don't change the date it save current date.
So I tried to set theValue property with
$.delivery_date.theValue= plib.StringToDate(riga_ordine['delivery_date']);
where StringToDate convert a string date DD/MM/YYYY into a Date
how I can init a select?

I just fixed, there was not possible.
You have to do:
$. delivery_date.setValue(new Date('1970-09-09'));

@fcodebue did you solved?

solved...


semantic_fields_for generates old style markup

All parent inputs has twitter bootstrap markup, but semantic_fields_for inputs has old style markup with <li> and <ol>

Please include all the source (f.e. of the Surveyor::Helpers::FormtasticCustomInput) so we can investigate. Then we'll reopen the issue.
P.S. In my opinion, there should be no problem with custom inputs inherited from formtastic-bootstrap inputs, as I have a couple of them in my own rails app.


[Feature] Add importing amass animation

supporting import animation from amass file and apply it to the actor
add a sample code 07_amass.py

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: HaiyiMei:x: MaoxieYou have signed the CLA already but the status is still pending? Let us recheck it.


docker: bump haproxy to 2.0.17

Can one of the admins verify this patch?

Ugh, looks like CI aws credentials are broken, I built it locally and it builds and runs.

nm, i forgot https://github.com/mesosphere/marathon-lb/pull/670 was there, going to bump the version in it, since it should also fix the ci ;)


Use different method to get key label in the no modifiers case

Currently, for German (Swiss) the value for VKEY_OEM_5 is:
  { key_code: 'VKEY_OEM_5',
    value: '´ä',
    withShift: 'à',
    withAltGr: '{',
    withShiftAltGr: '' },

Try to make it ä instead of ´ä

See Microsoft/vscode#1358

The issue is actually caused by calling ToUnicode for AltGr+VKEY_OEM_4 before calling it for VKEY_OEM_5. The first call inserts the dead character into the buffer and then the call for VKEY_OEM_5 returns both characters.
As described in ToUnicodeEx documentation:

As ToUnicodeEx translates the virtual-key code, it also changes the state of the kernel-mode keyboard buffer. This state-change affects dead keys, ligatures, alt+numpad key entry, and so on.

The fix in 966f8cf only defers the issue to the next character:
  { key_code: 'VKEY_OEM_5',
    value: 'ä',
    withShift: '´à',
    withAltGr: '{',
    withShiftAltGr: '' },


My devices stop working/updating after a random time

Describe the bug
My devices (TH06WB3S sensor and wifi dimmer switch) stop working after a while. It works for an hour or two and then suddenly stop. The temperature/humidity no longe update and the switch can't be controlled anymore.
Only way to fix it I found is to restart HomeAssistant.
Expected behavior
The device should work all the time and update accordingly.
Screenshots
N?A
Home Assistant Version

2021.7.4

**Device info
Temperature sensor
{
"active_time":<PHONE_NUMBER>,
"biz_type": 0,
"category": "wsdcg",
"create_time":<PHONE_NUMBER>,
"icon": "smart/icon/ay1525749833414yotNt/60d869bb20b0e1b0f0347a9fd8781a3c.png",
"id": "xxx",
"ip": "w.x.y.z",
"lat": "aa",
"local_key": "xxx",
"lon": "aa",
"name": "T & H Sensor",
"online": true,
"owner_id": "yyy",
"product_id": "zzz",
"product_name": "T & H Sensor",
"status": [
{
"code": "va_temperature",
"value": 249
},
{
"code": "humidity_value",
"value": 54
},
{
"code": "temp_unit_convert",
"value": "c"
}
Dimmer switch
{
"active_time":<PHONE_NUMBER>,
"biz_type": 0,
"category": "dj",
"create_time":<PHONE_NUMBER>,
"icon": "smart/icon/15548239257ypxzpm4qgx_0.jpg",
"id": "www",
"ip": "w.x.y.z",
"lat": "aa",
"local_key": "xxx",
"lon": "aa",
"name": "Spare Bedroom",
"online": true,
"owner_id": "yyy",
"product_id": "zzz",
"product_name": "WIFI Dimmer Module",
"status": [
{
"code": "switch_led",
"value": false
},
{
"code": "bright_value",
"value": 255
}
],
"sub": false,
"time_zone": "+00:00",
"uid": "eu160665988157967ebe",
"update_time":<PHONE_NUMBER>,
"uuid": "03711723cc50e374086d"
}
Device specifications (please complete the following information, which can be found in log):
Same device's id, like this:
[2021-07-01 10:18:01,351] [tuya-openapi] Request: method = GET, url = https://openapi.tuyacn.com/v1.0/devices/aaaaaaaaaaa/specifications, params = None, body = None, headers = {'client_id': 'xxxxxxxxxxxx', 'sign': 'xxxxxxxxxxxx', 'sign_method': 'HMAC-SHA256', 'access_token': 'xxxxxxxxxxxxxxxx', 't': '1625105881351', 'lang': 'en'}
2021-07-01 10:18:01 DEBUG (SyncWorker_1) [tuya iot] Response: {
"result": {
"category": "cz",
"functions": [
{
"code": "countdown_1",
"type": "Integer",
"values": "{"unit":"s","min":0,"max":86400,"scale":0,"step":1}"
},
{
"code": "switch",
"type": "Boolean",
"values": "{}"
}
],
"status": [
{
"code": "cur_voltage",
"type": "Integer",
"values": "{"unit":"V","min":0,"max":2500,"scale":0,"step":1}"
},
{
"code": "cur_current",
"type": "Integer",
"values": "{"unit":"mA","min":0,"max":30000,"scale":0,"step":1}"
},
{
"code": "switch",
"type": "Boolean",
"values": "{}"
},
{
"code": "cur_power",
"type": "Integer",
"values": "{"unit":"W","min":0,"max":50000,"scale":0,"step":1}"
},
{
"code": "countdown_1",
"type": "Integer",
"values": "{"unit":"s","min":0,"max":86400,"scale":0,"step":1}"
}
]
},
"success": true,
"t":<PHONE_NUMBER>348
}
Additional context
This is the last long I see before it stop working
2021-07-26 13:48:50 DEBUG (Thread-6) [tuya iot] mq _on_device_report-> [{'1': 252, 'code': 'va_temperature', 't': '1627303729', 'value': 252}]
2021-07-26 13:48:50 DEBUG (Thread-6) [custom_components.tuya_v2] _update--><custom_components.tuya_v2._init_tuya_sdk..DeviceListener object at xxx>;->>{'va_temperature': 252, 'humidity_value': 54, 'temp_unit_convert': 'c'}
2021-07-26 13:48:50 DEBUG (Thread-6) [custom_components.tuya_v2] _update--><custom_components.tuya_v2._init_tuya_sdk..DeviceListener object at xxx>;->>{'va_temperature': 252, 'humidity_value': 54, 'temp_unit_convert': 'c'}
2021-07-26 13:48:50 DEBUG (Thread-6) [tuya iot] _on_log: Received PUBLISH (d0, q0, r0, m0), 'cloud/token/in/2f976ce52d9c19091e829ea59f7df59a', ... (348 bytes)
2021-07-26 13:48:50 DEBUG (Thread-6) [tuya iot] payload-> b'{"data":"lkANcxc9Lssm6AHwY2kHmD6EieftNKPsaoPCY/680ZzrIfPpaENDdEAsU68o6jfw7m95ZnyA1wXScT4Doxb/sl6T3Jq50IYte3h42ENEd0TKRp+BJXm0vwmUAbPu9gS6ukIHwbOTswE8IsORspWOpmRASFMoMMHAQWWbYoPD6ErIjG/1qIlX+36mbwkKMCr8zZTDoZqGJEhKxLiC1J+Sft6OnX5A+js9UVxYA98Yd8ucoIpa6lt0MwQdRB9cBc/l","protocol":4,"pv":"2.0","sign":"b3e847d1a4efdb6d2b49b3b68f21246e","t":1627303729}'
2021-07-26 13:48:50 DEBUG (Thread-6) [tuya iot] on_message: {'data': {'dataId': '5a67d6e0-c70c-445a-81ba-f575aa0e815d', 'devId': 'bf5057eb86dd3c78e9os6s', 'productKey': 'xxx', 'status': [{'2': 54, 'code': 'humidity_value', 't': '1627303729', 'value': 54}]}, 'protocol': 4, 'pv': '2.0', 'sign': 'b3e847d1a4efdb6d2b49b3b68f21246e', 't':<PHONE_NUMBER>}
2021-07-26 13:48:50 DEBUG (Thread-6) [tuya iot] mq receive-> {'data': {'dataId': '5a67d6e0-c70c-445a-81ba-f575aa0e815d', 'devId': 'bf5057eb86dd3c78e9os6s', 'productKey': 'xxx', 'status': [{'2': 54, 'code': 'humidity_value', 't': '1627303729', 'value': 54}]}, 'protocol': 4, 'pv': '2.0', 'sign': 'b3e847d1a4efdb6d2b49b3b68f21246e', 't':<PHONE_NUMBER>}
2021-07-26 13:48:50 DEBUG (Thread-6) [tuya iot] mq _on_device_report-> [{'2': 54, 'code': 'humidity_value', 't': '1627303729', 'value': 54}]
2021-07-26 13:48:50 DEBUG (Thread-6) [custom_components.tuya_v2] _update--><custom_components.tuya_v2._init_tuya_sdk..DeviceListener object at xxx>;->>{'va_temperature': 252, 'humidity_value': 54, 'temp_unit_convert': 'c'}
2021-07-26 13:48:50 DEBUG (Thread-6) [custom_components.tuya_v2] _update--><custom_components.tuya_v2._init_tuya_sdk..DeviceListener object at xxx>;->>{'va_temperature': 252, 'humidity_value': 54, 'temp_unit_convert': 'c'}
2021-07-26 13:49:08 DEBUG (Thread-6) [tuya iot] _on_log: Sending PINGREQ
2021-07-26 13:49:08 DEBUG (Thread-6) [tuya iot] _on_log: Received PINGRESP
2021-07-26 13:50:08 DEBUG (Thread-6) [tuya iot] _on_log: Sending PINGREQ
2021-07-26 13:50:08 DEBUG (Thread-6) [tuya iot] _on_log: Received PINGRESP
2021-07-26 13:51:09 DEBUG (Thread-6) [tuya iot] _on_log: Sending PINGREQ
2021-07-26 13:51:09 DEBUG (Thread-6) [tuya iot] _on_log: Received PINGRESP
2021-07-26 13:52:09 DEBUG (Thread-6) [tuya iot] _on_log: Sending PINGREQ
And later on when I try to turn on off the dimmer switch I can see the following in the log:
The button in home assistant will tunr on as I press it then turn off by itself after a couple of second
2021-07-26 17:15:30 DEBUG (Thread-6) [tuya iot] _on_log: Received PINGRESP
2021-07-26 17:16:30 DEBUG (Thread-6) [tuya iot] _on_log: Sending PINGREQ
2021-07-26 17:16:31 DEBUG (Thread-6) [tuya iot] _on_log: Received PINGRESP
2021-07-26 17:17:31 DEBUG (Thread-6) [tuya iot] _on_log: Sending PINGREQ
2021-07-26 17:17:31 DEBUG (Thread-6) [tuya iot] _on_log: Received PINGRESP
2021-07-26 17:17:58 DEBUG (SyncWorker_8) [custom_components.tuya_v2.light] light kwargs-> {}
2021-07-26 17:17:58 DEBUG (SyncWorker_0) [tuya iot] Request: method = POST, url = https://openapi.tuyaeu.com/v1.0/devices/03711723cc50e374086d/commands, params = None, body = {'commands': [{'code': 'switch_led', 'value': True}]}, headers = {'client_id': 'xxx', 'sign': 'AD5BF0D2C24E30221EDEE729F34BFA26501C7D7D14F2A8BD85B79A1DF5BA1A19', 'sign_method': 'HMAC-SHA256', 'access_token': '', 't': '1627316278275', 'lang': 'en'}
2021-07-26 17:17:58 DEBUG (SyncWorker_0) [tuya iot] Response: {
"code": 1010,
"msg": "token is expired",
"success": false,
"t":<PHONE_NUMBER>507
}
2021-07-26 17:17:58 DEBUG (SyncWorker_0) [tuya iot] Request: method = POST, url = https://openapi.tuyaeu.com/v1.0/iot-01/associated-users/actions/authorized-login, params = None, body = {'username'<EMAIL_ADDRESS>'password': '5f505d126731ce13849fb05b79cc79c9', 'country_code': '44', 'schema': 'tuyaSmart'}, headers = {'client_id': 'xxx', 'sign': '373DF21AEC5343D0229D831BACDA0EE3CCDAB90DF8D00528039106E4458177CC', 'sign_method': 'HMAC-SHA256', 'access_token': '', 't': '1627316278527', 'lang': 'en', 'dev_lang': 'python', 'dev_version': '0.4.0', 'dev_channel': 'hass'}
2021-07-26 17:17:58 DEBUG (SyncWorker_0) [tuya iot] Response: {
"result": {
"access_token": "65f7c25512d2faa3b05495291568e792",
"expire_time": 7200,
"platform_url": "https://openapi.tuyaeu.com",
"refresh_token": "9f990af119139fd365f95c7a800fd2f8",
"uid": "eu160665988157967ebe"
},
"success": true,
"t":<PHONE_NUMBER>879
}
2021-07-26 17:18:02 DEBUG (SyncWorker_5) [custom_components.tuya_v2.light] light kwargs-> {'brightness': 133}
2021-07-26 17:18:02 DEBUG (SyncWorker_0) [tuya iot] Request: method = POST, url = https://openapi.tuyaeu.com/v1.0/devices/03711723cc50e374086d/commands, params = None, body = {'commands': [{'code': 'switch_led', 'value': True}, {'code': 'bright_value', 'value': 144}]}, headers = {'client_id': 'xxx', 'sign': '4876567DE8DC52630AEB92439C563F3E5CB82F07BD0DC3D7E41A51BBD0E24A82', 'sign_method': 'HMAC-SHA256', 'access_token': '65f7c25512d2faa3b05495291568e792', 't': '1627316282839', 'lang': 'en'}
2021-07-26 17:18:02 DEBUG (SyncWorker_0) [tuya iot] Response: {
"result": true,
"success": true,
"t":<PHONE_NUMBER>914
}
2021-07-26 17:18:07 DEBUG (SyncWorker_2) [custom_components.tuya_v2.light] light kwargs-> {}
2021-07-26 17:18:07 DEBUG (SyncWorker_0) [tuya iot] Request: method = POST, url = https://openapi.tuyaeu.com/v1.0/devices/03711723cc50e374086d/commands, params = None, body = {'commands': [{'code': 'switch_led', 'value': True}]}, headers = {'client_id': 'xxx', 'sign': '9B7856FB3F50D111BBEBC6B97E4ED4368C1450C7119DA0CF500F56D982BA2D07', 'sign_method': 'HMAC-SHA256', 'access_token': '65f7c25512d2faa3b05495291568e792', 't': '1627316287425', 'lang': 'en'}
2021-07-26 17:18:07 DEBUG (SyncWorker_0) [tuya iot] Response: {
"result": true,
"success": true,
"t":<PHONE_NUMBER>470
}
2021-07-26 17:18:31 DEBUG (Thread-6) [tuya iot] _on_log: Sending PINGREQ
2021-07-26 17:18:31 DEBUG (Thread-6) [tuya iot] _on_log: Received PINGRESP
2021-07-26 17:19:31 DEBUG (Thread-6) [tuya iot] _on_log: Sending PINGREQ
2021-07-26 17:19:31 DEBUG (Thread-6) [tuya iot] _on_log: Received PINGRESP
2021-07-26 17:20:31 DEBUG (Thread-6) [tuya iot] _on_log: Sending PINGREQ
2021-07-26 17:20:31 DEBUG (Thread-6) [tuya iot] _on_log: Received PINGRESP

I wanted to add that the device themselves are still working perfectly through the Tuya App on my phone!

@ppmt More logs with tuya-openmq ?

I don't know yet how to get the logs, but I have a Smart Plug with Energy Meter PC399HA by tuya.
Works ok for most of the day, then during the afternoon will stop reporting power usage.

@tsutsuku

More logs with tuya-openmq ?

Where can I find that tuya-openmq?

I was away so kept quiet.
@tsutsuku  My problem is still existing and I don't know how to provide more log
Where/what is tuya-openmq?

This happened to me when I disabled some of the entities - re-enabling them seems to have fixed the issue

Which entities are you referring to? All the entities are enabled for me as far as I can see.

Which entities are you referring to? All the entities are enabled for me as far as I can see.

I had current and voltage disabled


Improve Miller loop performance for SW6

Currently the Miller loop for SW6 uses affine coordinates, which makes the loop much slower than necessary. Moving to projective coordinates should speed up the loop significantly.
One can use the MNT6 miller loop code as a reference point to get this working.  Indeed, a prior version of the SW6 ML code was basically a port of the MNT6 code, but it had incorrect constants, and so the pairing result was incorrect. This (incorrect) version was ~4x faster than the current (correct) version.

Here is a ML in projective coordinates for SW6 curve: https://github.com/EYBlockchain/zk-swap-libff/blob/ey/libff/algebra/curves/sw6/sw6_pairing.cpp and for SW6_BIS (field size of 761 bits): https://github.com/EYBlockchain/zk-swap-libff/blob/ey/libff/algebra/curves/sw6_bis/sw6_bis_pairing.cpp

Awesome! Do you mind I port over the implementation to Rust? Is it under the MIT license?

Yes, it is MIT you can port it to Rust. I am working btw on porting SW6_BIS to Rust and do a PR here if you want.

Yes, that would be great!

Normally, affine coordinates should yield a faster pairing over SW6 if the inverse is implemented using the norm map as suggested in [1, 2, 3]. But I think it's not the case here, thus the ~4x factor you remarked.