Translate April 10 report into Greek

Hello @nextstrain/greek!
The situation report from 2020-04-10  is ready to be translated to Greek. This week’s report is a little bit shorter than usual but hopefully still informative :)
Branch to translate on: sit-rep_el
File to translate: https://github.com/nextstrain/translations/blob/sit-rep_el/narratives/translations_ncov_sit-rep_el_2020-04-10.md You can translate directly in this file, but please remember to push often as other people may be working on the translation!
Link to preview: https://nextstrain.org/community/narratives/nextstrain/translations@sit-rep_el/ncov/sit-rep/el/2020-04-10
Can someone please translate this Twitter post? The other option is me using Google Translate, which is probably not a good idea:
“This week’s situation report traces how the #COVID19 outbreak unfolded, month by month. It’s now available in Greek: https://nextstrain.org/narratives/ncov/sit-rep/el/2020-04-10.
Thank you @, @, and @ for the rapid translation!”
Logistics
Please update the translations board as you work on the translation: https://github.com/orgs/nextstrain/projects/7
Please assign yourself to the translation if you’re working on it this week.
When a translation is ready for publication -- at minimum meaning two people have worked on it and both agree that it’s ready -- please create a pull request to merge to master and tag me and the issue in it!
Feel free to use the discussion board for your team. Discussion boards are team specific, and unlike issues, they won’t disappear. It’s a good place to sort out translation workflows, post a dictionary for technical terms, etc.
Standard rules for translation:
Note that the file to translate is in Markdown. In general, it is important not to change any formatting or links. (Although it is okay to update Wikipedia or CDC links to the appropriate language version.) Comments to help with translation are noted in comment symbols like <! -- Comment -->.
Please add your name under translators: with a tab, dash, and new line, formatted just like authors are. Please also add a link to your professional page (can use Twitter) under translatorLinks:.
Note: You may know of other great resources available in Greek; please don’t add them to the situation report. We need to keep content the same across all translations, so we can be confident in the accuracy of what we publish. Thanks for understanding.
At minimum, I require two sets of eyes on every translation; one of those people should have a background in phylogenetics. Although if you have more, that’s fine too.
Feel free to use a live, online editor like hackmd (sign in with GitHub) to translate together.
Thank you so very much all! Ya’ll are an incredible team to work with.

Thanks @cassiawag !
@codergr here's the hackmd link to the translation: https://hackmd.io/cE4xS-n6QNOAorUZfq-EOA?edit I have already translated some parts but I will head to sleep now. If you happen to translate anything, please leave the english text intact because it makes it easier to compare ;)

@akifoss ready for review, please when we do the push remember to add the last part as done last time ( limitation of hack md )

It looks ready from my side, @codergr please take a final look. Could you also pull the branch after the final check?

@cassiawag here's the tweet message translated (@codergr Please tag yourself if you have a twitter account):
"Αυτή την εβδομάδα παρουσιάζουμε το ξεδίπλωμα της πανδημίας του #COVID19 μήνα προς μήνα. Η αναφορά είναι διαθέσιμη στα ελληνικά: https://nextstrain.org/narratives/ncov/sit-rep/el/2020-04-10.
Ευχαριστούμε πολύ το Σωτήρη Σαλούμη και τη Σοφία Παρασκευοπούλου @akifoss για τη γρήγορη μετάφραση!"

Thanks @akifoss all good, @cassiawag edited version in https://github.com/nextstrain/translations/blob/sit-rep_el/narratives/translations_ncov_sit-rep_el_2020-04-10.md  looks good to me as well do we need to push anything or is just fine as it is?

@codergr if you don't mind making a pull request to merge into master, that would be my preferred!

Done Keep safe

And it's live: https://nextstrain.org/narratives/ncov/sit-rep/el/2020-04-10
Thank you, thank you  @akifoss & @codergr for another amazing job. Take care!


Are you still maintaining this project?

Hello, it is very cool to simulate furniture assembly. I tried Human control part and it work well. But I can't run RL benchmark because I can't find learning codes in the repository. I am curious if you are still working and improving this project. Thank you!

Thank you for your interest!
We are currently working on refactoring codes for simulation and RL/IL benchmarks. It will be available by the end of this month!

Thank you! Looking forward to it.


Godot 4.1 performs worse than 4.0.3 (get_meta set_meta)

Godot version
Godot_v4.1-stable_mono_win64
System information
Windows 10 - Vulkan (Forward+) - RTX 3060 laptop - AMD Ryzen 5 5600H - 24GB RAM
Issue description
Godot 4.1 as a big performance loss when storing metadata in nodes (using set_meta() get_meta()). I made a demo project to test if this was the case, and it looks to be. In 4.0.3 I get around 79 FPS while on 4.1 I get around 45 FPS.

Steps to reproduce
Download the demo file and run it, it's just simple nodes and this code to stress-test the engine:
func _process(delta: float) -> void:
	for i in range(45000):
		set_meta("a", 100.0)
		set_meta("b", "Barbacue")
		set_meta("c", 34)
		set_meta("d", 340)
		get_meta("a")
		get_meta("b")
		get_meta("c")
		get_meta("d")

Minimal reproduction project
Demo project DOWNLOAD:
403vs410.zip

Your test project has a 3D scene, so FPS is not an accurate measurement for a script performance...
Try using StringNames for meta (e.g. &"a"), it might speed it up.

Your test project has a 3D scene, so FPS is not an accurate measurement for a script performance...

If I deactivate the script, the 3D scene runs at 4300 fps so I'm pretty sure there's not a problem regarding 3D rendering overhead (not sure if this was your point). On top of that I'm comparing identical scenes, in different versions of godot, and I made a for loop with 45000 iterations per frame so the performance issue is very like to come from what's inside the for loop.

Try using StringNames for meta (e.g. &"a"), it might speed it up.

I'm don't know if you have read the "Steps to reproduce" section but I'm already doing that. To completely understand what's going on, I recommend you to download the file I provided and run it in 4.0.3, and then run it in 4.1. It might even be something specific about my computer, if someone could test this and see if it's getting the same results as I'm having I would appreciate. The fps counter is already integrated.

If I deactivate the script, the 3D scene runs at 4300 fps so I'm pretty sure there's not a problem regarding 3D rendering overhead (not sure if this was your point). On top of that I'm comparing identical scenes, in different versions of godot, and I made a for loop with 45000 iterations per frame so the performance issue is very like to come from what's inside the for loop.

Yeah, but if you detach the script, do you get the same FPS both in 4.0.3 and 4.1?

I'm don't know if you have read the "Steps to reproduce" section but I'm already doing that.

No you don't, get_meta() takes StringName as meta name, you are using plain strings. Although not sure if GDScript doesn't optimize it already.

Yeah, but if you detach the script, do you get the same FPS both in 4.0.3 and 4.1?

Yes, around 4300 fps for both versions.

No you don't, get_meta() takes StringName as meta name, you are using plain strings. Although not sure if GDScript doesn't optimize it already.

Sorry, I misunderstood your suggestion, I wasn't aware of StringNames. If I change the code to:
func _process(delta: float) -> void:
	for i in range(45000):
		set_meta(&"a", 100.0)
		set_meta(&"b", "Barbacue")
		set_meta(&"c", 34)
		set_meta(&"d", 340)
		get_meta(&"a")
		get_meta(&"b")
		get_meta(&"c")
		get_meta(&"d")

I get exactly the same frame rates, around 45 fps for 4.03 and around 79 fps for 4.1

Try running the code I provided.

The difference here might be down to that threading changed between 4.0.3 and 4.1, meaning that there's thread guards on set/get_meta in 4.1, but not on an EditorScript

I increased the iterations to 4500000 to get more consistent results:
In 4.0.3 it runs in about 1220ms:
Godot Engine v4.0.3.stable.mono.official (c) 2007-present Juan Linietsky, Ariel Manzur & Godot Contributors.
1218
1277
1215
1224
1222
1220
1246

In 4.1 it runs in about 1350ms:
Godot Engine v4.1.stable.mono.official (c) 2007-present Juan Linietsky, Ariel Manzur & Godot Contributors.
--- Debug adapter server started ---
--- GDScript language server started ---
1375
1354
1350
1356
1356
1352

By the way, thanks for the tip, I didn't knew I could run a code that's not attached to a node

But all that aside, this stress tests things far more than could realistically be expected, it's not a real world case

I opened this issue because this is a real problem for me. I'm creating a particle system, and I'm using metadata to store information in each particle. And if I have 200 particles in my scene, the code needs to make several metadata operations 200x200 = 40000 times per frame. I'll use C++ later and I see that metadata is slow by itself, but if this performance issue is here to improve multi-threading security I understand. Btw, I know this get's off topic but then, whats the most performant way to save variables to specific objects usign GDscript (like metadata)?

Since you said you were "stress-testing" I assumed you weren't talking about real-world cases, as they aren't really "stress-testing"
I'd say metadata isn't the way to go for that, and that you should use arrays or other storage for that, metadata isn't really intended to be performant AFAIK

So, I have an array that stores the info for each particle, but how do I link the array index with a specific particle, in other words, how do I know that a specific particle has assigned that specific index in the array? Should I change the particle name to "Pindex" like P0001, P0002, P0003, etc. hmmm, this doesn't look performant. Or maybe I could store each particle in the array itself...

I'd suggest turning to the other community channels for that

Note that using a separate node for each particle is already super-inefficient. Instead you could use custom drawing or RenderingServer directly. Then you can represent particles using a simple class that stores any data in plain variables, e.g.
class Particle:
    var position: Vector
    var color: Color
    var whatever

There's a nice tutorial that explains the concept, it should be possible to apply it in 3D.

Thank you all! Should I close this as solved?

Closing per the above comments. Some low-level functions had to be made slightly slower to allow other methods to be optimized (such as adding/removing a lot of nodes), as well as paving the way for SceneTree multi-threading.

In fact, depending on what your project currently does, the optimizations already in place in 4.1 can be a net improvement.

Yeah, I tried to put particle logic running in the sub-thread and I got a bit more performance, but not as much as in 4.0.3. But that's because of the poor implementation I currently have as discussed before. Anyway, this opened my mind to implement this in a much faster way, and I'm planning to take advantage of multi-threading. Thank you all again


[Help] Unable to set value on hide column

Hello,
Anyone can help how to set value for hidden column.

Thanks.

same error here


fix(session): disable http keep alive

basically:

create a http client every single time... do not reuse any http client.
on the reader side, it reads every x seconds. if there is nothing, then the read side of the tcp connection may be broken. it should close both the reader and the writer.
on the writer side, it writes every x seconds. if it fails to write, then the write side of the tcp connection may be broken. it should close both the reader and the writer.

also do extensive logging everywhere.


WIP try out nested field localisation

Experimental branch with some improvements to nested localisation
Co-authored-by: zheileman<EMAIL_ADDRESS>

@zheileman - how's this?
> "steps_case_codefendants_form[codefendants_attributes][0][foobar_attributes][1]".scan(/[[:alpha:]_]+/)

=> ["steps_case_codefendants_form", "codefendants_attributes", "foobar_attributes"]

@peteryates Sorry got distracted yesterday didn't look into this anymore. I think that's perfect. It might fail if there are numbers in any part of the @object_name other than the indices, I'm thinking for example a versioned form object might have the following namespace:
module Steps
  module Case
    module V2
      class CodefendantsForm
      end
    end
  end
end

Producing the following:
> "steps_case_v2_codefendants_form[codefendants_attributes][0]".scan(/[[:alpha:]_]+/)
=> ["steps_case_v", "_codefendants_form", "codefendants_attributes"]

I'm not sure how common this might be. I know I've used this in the past at least once.
I came up with this other alternative that I think will preserve numbers anywhere other than in the brackets (indices).
I tried to do this in one single regex but couldn't figure out, so I tried splitting into two (I'm sure there are better ways of doing this):
> "steps_case_v2_codefendants_form[codefendants_attributes][0][foobar_attributes][1]".scan(/[\w]+/).grep(/[^[:digit:]]/)
=> ["steps_case_v2_codefendants_form", "codefendants_attributes", "foobar_attributes"]

Not sure if there are some other scenarios we might need to consider 🤔

cc @zheileman
Some specs covering some path combinations with a regex: 6ca6657e

@peteryates I think that covers all possible naming and then some more 😄 🥳


[Docs]: middleware with jwt token from backend services

Link to page
No response
Describe the problem
when i am trying to use jwt token that i receive from my backend golang and set them in cookies, i use Next js middleware to protect my routes. however there is a missing docs about using cookie authorization and redirecting user to specific route using NextResponse.redirect() with next intl and its middleware
invoking NextResponse.redirect(new URL()) wont redirect users

Closing in favor of the additional discussion you've opened: https://github.com/amannn/next-intl/discussions/821


Why do we have a Code of Conduct?

Community paperwork.

Community paperwork?

Community paperwork.

This comment is against my personal Code of Conduct.

For the sake of our stats.
https://github.com/daque-dev/viare/community

And what are the stats for?

THIS IS MADNESS

Self-steem and self-worth. (✿◕‿◕)

https://opensource.guide/
Also, contribute section has a nice squirrel.

You should be retro-actively aborted.

Enforces current Code of Conduct.
Bans him

ViaRE dies but dies according to it's Code of Conduct so it's all good.

Great, we all can agree on that.

Taking this more seriously, I think it's just better to have it, than not having it.

Okay. I still cannot see how it can benefit us. But I agree.


feat(traverse): support generate_uid_based_on_node method in TraverseCtx

close: #4906

#4940  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @Dunqing and the rest of your teammates on  Graphite


Shadowing name variables in store.js

[Very low priority]
Versions

nuxt: v2.12.2
node: v12.17.0

Reproduction
A very small detail that annoyed me a bit while debugging nuxt in the Chrome Devtool: some variables held the same name in a single code block and, due to hoisting, it results in shadowing variable names that Chrome debugger can't deal with.
Here is a screenshot that illustrate the problem:

The concerned variables are storeModule and property. On hover, I should see the value { namespace: true, modules: {...} } but Chrome actually show me undefined as it's the first variable's value with that name in the current scope.
Maybe we should consider renaming the variables in the if statement so that the debugger won't mix up both values? :)

fixed by v2.14.4


Add inline cell formatting to blade

Format table cells with "data-format" attribute and value from docs/reference-guide/formatting.
Example:
Currency USD
Percentage
Date
Date/Time

Thanks!
Will include this in the next release. Until then you could use 2.0.*@dev in your composer file.


Remove pylint suppression that is no longer needed and improve pylint config.

Resolves se-sic/VaRA#717

According to the release notes this is fixed since version 2.9. The current version is 2.12, so we are fine.


ToggleLights works partially

command /togglelights sometimes disables only doors, but light in facility is still on.
In GameMaster mod works perfectly, pls fix it

That is strange since it pretty much uses the exact same code as in gamemaster, i will look into it


homebrew build fails when you setup into a non-existant directory

I have installed ocicl from homebrew. I get the following error when I try to change the GLOBALDIR, not sure what's going on:
┌─[~]
!─╼ ocicl setup /Users/dieggsy/.local/lib/ocicl/
CORRUPTION WARNING in SBCL pid 17877 pthread 0x1fb954c00:
Memory fault at 0x102708000 (pc=0x7003b1acf4)
The integrity of this image is possibly compromised.
 The directory didn't exist and the error was very unintuitive

I'd like to get to the bottom of this.  What does ocicl version say?
Here's what I get:
green@fedora:~$ ocicl setup /does/not/exist
Error: directory /does/not/exist does not exist.

Here's ocicl version:
┌─[~]
!─╼ ocicl version
ocicl version:   2.3.7
Lisp runtime:    SBCL 2.4.5
ASDF version:    3.3.1

Interesting.  There are only two calls to format in do-setup.  One is to print the error message when the directory doesn't exist:
            (error (e)
              (declare (ignore e))
              (format uiop:*stderr* "Error: directory ~A does not exist.~%" (car args))
              (sb-ext:quit)))

I wonder if there was some problem with uiop:*stderr*?  What host OS are you on?

This is macOS Sonoma 14.5 with an M3 Max processor. This is probably not actually very useful but uiop:*stderr* appears to be fine in a fresh sbcl 2.4.5 repl.

Are you able to reproduce this at will?
On Wed, Jun 5, 2024, 8:47 a.m. diego @.***> wrote:

This is macOS Sonoma 14.5 with an M3 Max processor. This is probably not
actually very useful but uiop:stderr appears to be fine in a fresh sbcl
2.4.5 repl.
—
Reply to this email directly, view it on GitHub
https://github.com/ocicl/ocicl/issues/44#issuecomment-2149768295, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAV7CPNKVOLN4TMTASTX63ZF4CFNAVCNFSM6AAAAABIWTZUGOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNBZG43DQMRZGU
.
You are receiving this because you commented.Message ID:
@.***>

Yes, whenever I call ocicl setup with a directory that does not exist, I get the same error above.

Could you please try this same thing with the issue-44 branch, and share the output with me?

Ok, so interestingly, if I build ocicl myself from main I do get the expected output:
┌─[~/src/ocicl]─(main~)
└─╼ ./ocicl setup /does/not/exist
Error: directory /does/not/exist does not exist.

Here's the output from the issue-44 branch anyway
┌─[~/src/ocicl]─(issue-44~)
└─╼ ./ocicl setup /does/not/exist

#<SB-POSIX:SYSCALL-ERROR {7005426A23}>
("/does/not/exist")
Error: directory /does/not/exist does not exist.
#<SB-SYS:FD-STREAM for "standard error" {7005460223}>
"That worked." %

I guess this means there may be something wrong with the homebrew build?

Hmm... is there an update for the homebrew build?  Can you make sure that
you have the latest sbcl and ocicl from homebrew?
On Mon, Jun 10, 2024 at 9:34 AM diego @.***> wrote:

Ok, so interestingly, if I build ocicl myself from main I do get the
expected output:
┌─[~/src/ocicl]─(main~)
└─╼ ./ocicl setup /does/not/exist
Error: directory /does/not/exist does not exist.
Here's the output from the issue-44 branch anyway
┌─[~/src/ocicl]─(issue-44~)
└─╼ ./ocicl setup /does/not/exist
#<SB-POSIX:SYSCALL-ERROR {7005426A23}>
("/does/not/exist")
Error: directory /does/not/exist does not exist.
#<SB-SYS:FD-STREAM for "standard error" {7005460223}>
"That worked." %
I guess this means there may be something wrong with the homebrew build?
—
Reply to this email directly, view it on GitHub
https://github.com/ocicl/ocicl/issues/44#issuecomment-2158398166, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAV7CM6HUQA7N443PQQUBDZGWTP3AVCNFSM6AAAAABIWTZUGOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJYGM4TQMJWGY
.
You are receiving this because you commented.Message ID:
@.***>

I can reproduce this on Linux!
@.***:~$ ocicl setup /tmp/sdfgaewsdrga
CORRUPTION WARNING in SBCL pid 1907699 tid 1907699:
Memory fault at 0x7f6136a0d000 (pc=0x550170e2 [code 0x55016ef0+0x1F2 ID
0x4a1c], fp=0x7ff20b7fe8f0, sp=0x7ff20b7fe898) tid 1907699
The integrity of this image is possibly compromised.
Exiting.
0: fp=0x7ff20b7fe8f0 pc=0x550170e2 SB-IMPL::OUTPUT-BYTES/UTF-8/LF
1: fp=0x7ff20b7fe948 pc=0x5485c13e SB-IMPL::FD-SOUT
2: fp=0x7ff20b7fe978 pc=0x54744813 SB-IMPL::%WRITE-STRING
3: fp=0x7ff20b7fead8 pc=0x5461f971 "fmt$GP044MDGA42V"
4: fp=0x7ff20b7feb20 pc=0x5460ca0b FORMAT
5: fp=0x7ff20b7feb80 pc=0x5460c8e9 FORMAT
6: fp=0x7ff20b7fece0 pc=0x5461ffb2 OCICL::DO-SETUP
7: fp=0x7ff20b7feea8 pc=0x54c2064c OCICL::MAIN
8: fp=0x7ff20b7fef78 pc=0x547eec9b SB-INT::SIMPLE-EVAL-IN-LEXENV
9: fp=0x7ff20b7fefa0 pc=0x548b224b SB-EXT::EVAL-TLF
10: fp=0x7ff20b7ff1f8 pc=0x548cf90f (LABELS SB-FASL::EVAL-FORM :IN
SB-INT::LOAD-AS-SOURCE)
11: fp=0x7ff20b7ff310 pc=0x548cf28b (LAMBDA (SB-KERNEL::FORM &KEY
:CURRENT-INDEX &ALLOW-OTHER-KEYS) :IN SB-INT::LOAD-AS-SOURCE)
12: fp=0x7ff20b7ff3c0 pc=0x54869927 SB-C::%DO-FORMS-FROM-INFO
13: fp=0x7ff20b7ff5d0 pc=0x548cebe3 SB-INT::LOAD-AS-SOURCE
14: fp=0x7ff20b7ff6e8 pc=0x5472c34d (LABELS SB-FASL::LOAD-STREAM-1 :IN
LOAD)
15: fp=0x7ff20b7ff780 pc=0x548cfdbf SB-FASL::CALL-WITH-LOAD-BINDINGS
16: fp=0x7ff20b7ff8b0 pc=0x5472c06f LOAD
17: fp=0x7ff20b7ff990 pc=0x54a77857 (FLET SB-IMPL::LOAD-SCRIPT :IN
SB-IMPL::PROCESS-SCRIPT)
18: fp=0x7ff20b7ffa30 pc=0x54a77197 (FLET SB-UNIX::BODY :IN
SB-IMPL::PROCESS-SCRIPT)
19: fp=0x7ff20b7ffaf0 pc=0x54a76f2e (FLET "WITHOUT-INTERRUPTS-BODY-" :IN
SB-IMPL::PROCESS-SCRIPT)
20: fp=0x7ff20b7ffb90 pc=0x54a76d67 SB-IMPL::PROCESS-SCRIPT
21: fp=0x7ff20b7ffdd8 pc=0x54a786a4 SB-IMPL::TOPLEVEL-INIT
22: fp=0x7ff20b7ffe70 pc=0x54bc8094 (FLET SB-UNIX::BODY :IN
SB-IMPL::START-LISP)
23: fp=0x7ff20b7fff30 pc=0x54bc7e9b (FLET "WITHOUT-INTERRUPTS-BODY-3" :IN
SB-IMPL::START-LISP)
24: fp=0x7ff20b7fffc8 pc=0x54bc7cc8 SB-IMPL::%START-LISP
On Mon, Jun 10, 2024 at 9:52 AM Anthony Green @.***> wrote:

Hmm... is there an update for the homebrew build?  Can you make sure that
you have the latest sbcl and ocicl from homebrew?
On Mon, Jun 10, 2024 at 9:34 AM diego @.***> wrote:

Ok, so interestingly, if I build ocicl myself from main I do get the
expected output:
┌─[~/src/ocicl]─(main~)
└─╼ ./ocicl setup /does/not/exist
Error: directory /does/not/exist does not exist.
Here's the output from the issue-44 branch anyway
┌─[~/src/ocicl]─(issue-44~)
└─╼ ./ocicl setup /does/not/exist
#<SB-POSIX:SYSCALL-ERROR {7005426A23}>
("/does/not/exist")
Error: directory /does/not/exist does not exist.
#<SB-SYS:FD-STREAM for "standard error" {7005460223}>
"That worked." %
I guess this means there may be something wrong with the homebrew build?
—
Reply to this email directly, view it on GitHub
https://github.com/ocicl/ocicl/issues/44#issuecomment-2158398166, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAV7CM6HUQA7N443PQQUBDZGWTP3AVCNFSM6AAAAABIWTZUGOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJYGM4TQMJWGY
.
You are receiving this because you commented.Message ID:
@.***>

Minimal reproducer:
#!/bin/sh
sbcl --no-userinit --eval "(require 'asdf)" --eval "(defun main () (format uiop:*stderr* \"~&Fail~%\"))" --eval "(sb-ext:save\
-lisp-and-die \"bug.core\")"
sbcl --core bug.core --eval "(main)"


Add -i flag to ignore tests inside node_module directories

This will partly resolve #428 by adding the -i flag to ignore any tests inside node_module directories to allow co-locating tests with their modules. Running tape **/*.spec.js -i in the project directory won't execute tests inside its npm packages that may break the tape run due different testing frameworks etc.

Sorry, forgot to change the branch and https://github.com/substack/tape/pull/451/commits/2fc5d1f8df3408b95a00b075a895415749178f52 https://github.com/substack/tape/pull/451/commits/0ba37b04be692ddbded33f86f1175ba6c1550a3a creeped accidentally in. I undid these changes in the following commits

I'm not quite sure - do you want me to remove the i flag and make it ignore node_modules by default? Or are you saying the i flag makes only sense when excluding .gitignore entries is implemented?

I think I’m saying a few things:

a generic “ignore” flag would have to take explicit paths, or a path to an ignore file, and not default to “node_modules”
the root issue is that tape is including paths it shouldn’t be testing - namely, anything not committee to the repo. node_modules is just a symptom of this.
I think excluding gitignored files (under an option) is the best use of time and effort to address this problem

Are you willing to update this PR to implement https://github.com/substack/tape/issues/428#issuecomment-367939098 ?

Ok, I will update the pr to exclude gitignored files when using -i and let it ignore anything under node_modules by default.

+1 for "ignoring things that are gitignored"

@kepikoi are you interested in completing this PR?

Sorry, no capacity rn for ignoring things that are gitignored. Closing the PR

Replacing this with #492.


Added in support for ansible_init

added support for ansible playbooks and collections for ansible_init in caas operator

@Chris-green-stfc
This patch only adds support for the workstation, not any other appliances. Was this on purpose? If so, can you amend the PR title please?


Send real time in frame clocks, and test it

Android, JS, and coming soon native. Make sure they all send real times.

Cool. What’s it for?

We have no direct use for it, but someone could call withFrameNanos and rely on deltas between the timestamps for calculating some operation to perform or something to display.


[Enhancement]: UI design of master typing

Is your enhancement request related to a problem? Please describe.➕
Game enhancement:

Background add color grinding

Describe the solution you'd like
Solution steps:

Updated the CSS file

Select program in which you are contributing
GSSoC23
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

/assign

Hey @samratghosh291 ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇


Delete button

The delete button isn't quite square and should fill the total height of the accordion header
add a trash can icon and remove the word "delete"

Fixed by https://github.com/TheWoodenMan/twm-cpd-log/pull/22


Transparency on window

Setting transparency on a framed window causes the title-bar to go transparent while everything else is visible..
Expected: title-bar is visible while content background is transparent.

Transparent window only works for frameless window.


HDDS-6065: EC: Provide CLI option to reset the bucket replication config

What changes were proposed in this pull request?
Added the CLI options to set the replication config parameters on a bucket.
One can re-set the replication config on bucket with the following arguments on bucket:
"set-replication-config", bucketPath, "-t",  "EC", "-r", "rs-3-2-1024k"
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-6065
How was this patch tested?
Added the test to verify the behavior.

I've got a general question on this, and we may have covered this before, but I cannot remember the details.
The client gets a bucket object, via Volume.getBucket(). This call loads the bucket details from the server and this will include any replication defaults set against the bucket.
Then when we create a key, this bucket setting is passed from the client to the openKey() call or the client can pass a key level override, in which case the replication config from the bucket is not passed back to the server.
I was looking on the server side code, and I think it will just use whatever ReplicationConfig is passed from the client.
What if one user creates a bucket object and keeps it for a long time, creating key after key.
Another user or admin, changes the bucket level replication config.
Will the first client just keep creating keys with the old replication config until it gets a new bucket object?
If that is the case, I am wondering we need need to pass several replicationConfig fields to the server - a key specific one, the client default setting and the bucket level one? That way, if we have only the bucket level one coming from the client, we can adjust it if the server side bucket setting is different from the client side bucket setting.
If my understanding is correct, at the server side, I am not sure if we can tell if the passed replication config came from a key level config, bucket level, or the default replication from the configuration?

This is a very good point @sodonnel.
Similar lines, one idea is to have versioning of bucket default config.
Client can have grandfather version. When someone sends with grandfather version, we always take it. Otherwise highest version number should take preference. Let's say bucket has replication config with version1 and someone modified it so we can increment the version to 2. Now when older client who was holding the bucket with version1 replication config, will still pass that replication config, but server knows it's modified and can use that version2. But the problem is about the transparency.
Client still does not know its using different config at the server silently. This needs more discussion I feel.

If we go with bucket config versioning, then the server should probably throw an exception if it receives a request with older config, prompting the client to refresh its config. Similar to "optimistic locking" when using databases. I suspect this may be a tricky change in the client at this stage.
However, what value is there in passing the bucket config from the client to the server? If we always have to check the server anyway, we can avoid sending the bucket config from the client.
We know there is a heirarchy of places the config can come from:

Key level setting supplied by the client.
Bucket Default
Cluster defaults - however this can be a client side default or server side default. I cannot remember what we decided on the client vs server default part.

If the client sends two replicationConfig fields, both optional:

Key ReplicationConfig
Client Default Replication Config

Then we don't need it to send the bucket level setting, as that is on the server anyway. On the server, we can apply the precedence rules and pick the correct setting accordingly.

We made it to server side defaults. So below two should be treated pretty much same from client perspective.
If the client sends two replicationConfig fields, both optional:
Key ReplicationConfig
Client Default Replication Config

How about like: if client passes some config or client has default replication config, then only we will send to server, otherwise it should be simply null. So, Server will decide. If client passes any config, it will take it, otherwise checks at bucket...if nothing at bucket then it should take server default. However there are some challenges to solve at server as there are assumptions and different flags to take default values when null from client.
Ex: in OmKeyCreateRequest#preExecute:

boolean useRatis = ozoneManager.shouldUseRatis();

      HddsProtos.ReplicationFactor factor = keyArgs.getFactor();
      if (factor == null) {
        factor = useRatis ? HddsProtos.ReplicationFactor.THREE :
            HddsProtos.ReplicationFactor.ONE;
      }

      HddsProtos.ReplicationType type = keyArgs.getType();
      if (type == null) {
        type = useRatis ? HddsProtos.ReplicationType.RATIS :
            HddsProtos.ReplicationType.STAND_ALONE;
      }

I think this is a different problem exist. This JIRA can still go I think. I have just filed a JIRA(HDDS-6131) to investigate address the above mentioned issue.

Yea, it makes sense to create another Jira for the issue I raised, as its not caused by this change - its a pre-existing problem. This change LGTM.


Frends.CassandraDB.Execute

https://github.com/FrendsPlatform/Frends.CassandraDB/pull/2, some problems with test execution currently.


[Feature]: Increase Security of Invite User Process

Is there an existing issue for this?

[X] I have searched the existing issues

Summary
After adding a new user, anyone who knows the email address can assign a password and overtake the account.
Potential solutions:

Use a random password and start the forgot process with the invitation mail (customized text).
Use a temporary token in the invite process.

Why should this be worked on?
This enhancement would increase security and make sure that only authorized users can log in.
 Front conversations

We now have the email verification feature, and admins can turn on email verification from Admin Setting to prevent this from happening - https://github.com/appsmithorg/appsmith/issues/21387


functions request

Its the best startpage on github, but its missing in my opinion 2 functions
selecting searches with up / down keys
stopping the animation, its eating too much gpu
Also sometimes it searches instead going to a link.
I would love to see this

Also sometimes it searches instead going to a link.

Maybe because you forgot to add http:// or https:// before. This is mentioned in the Readme.
I think it's out of the scope of a hobby project to add a prediction system that can differentiate links from regular searches. One "unclean" way to do this would be to assume it's a URL if it ends in .com, .net, .org, etc. but then what if people really just want to search those? A solution to that could be adding a quicksearch mode which only searches, or the reverse (a quicksearch module that always assumes URL). All this is extremely messy, too much work and would probably feel like a chore more than a hobby for the dev.

Also sometimes it searches instead going to a link.

Maybe because you forgot to add http:// or https:// before. This is mentioned in the Readme.
I think it's out of the scope of a hobby project to add a prediction system that can differentiate links from regular searches. One "unclean" way to do this would be to assume it's a URL if it ends in .com, .net, .org, etc. but then what if people really just want to search those? A solution to that could be adding a quicksearch mode which only searches, or the reverse (a quicksearch module that always assumes URL). All this is extremely messy, too much work and would probably feel like a chore more than a hobby for the dev.


Add Windows and macOS to CI test matrix

Issue is #130.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 21.798%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
745

Relevant Lines:
3129

💛  - Coveralls


Concatenating tensors in network architecture causes slow down in training speed

I understand there'll be some overhead when concatenating, but I think the current slow down is beyond what should be expected.
I've been experiencing this with various network setups, both on my own machine and on google compute servers.
Below is a small script to display the difference in training time. Both networks are essentially the same, with same number of parameters. But using concatenate introduces 50% slow down in this example. I experience similar or greater rate of slow down in my actual work when using concatenation (compared to same parameter count with no concatenation).
System information

OS Platform and Distribution: Ubuntu 18.04
TensorFlow backend:  Yes
TensorFlow version:  1.12.0 & 1.13.1
Keras version:  2.2.4
Python version:  3.6.8 & 3.7.3
CUDA/cuDNN version:  9.0 / 7.3.1
GPU model and memory:  GTX 850M 2gb & Tesla P100 16gb

Simple network without concatenation:
import numpy as np
import keras

X = np.random.random((2048, 128, 128, 1)).astype('float32')
Y = (np.random.random(2048) < 0.5).astype('int8')

inp = keras.layers.Input(shape=(128, 128, 1))
net = keras.layers.Conv2D(
    128, (3, 3), padding='same', strides=(1, 1), activation='relu')(inp)
net = keras.layers.Flatten()(net)
net = keras.layers.Dense(1, activation='sigmoid')(net)

model = keras.models.Model(inp, net)
model.compile(keras.optimizers.Adadelta(), loss='binary_crossentropy')
model.summary()

model.fit(X, Y, epochs=5, shuffle=True, verbose=2, batch_size=8)

Output:
Layer (type)                 Output Shape              Param #
=================================================================
input_1 (InputLayer)         (None, 128, 128, 1)       0
_________________________________________________________________
conv2d_1 (Conv2D)            (None, 128, 128, 128)     1280
_________________________________________________________________
flatten_1 (Flatten)          (None, 2097152)           0
_________________________________________________________________
dense_1 (Dense)              (None, 1)                 2097153
=================================================================
Total params: 2,098,433
Trainable params: 2,098,433
Non-trainable params: 0
Epoch 1/5
 - 19s - loss: 7.7482
Epoch 2/5
 - 17s - loss: 7.7688
Epoch 3/5
 - 18s - loss: 7.7688
Epoch 4/5
 - 18s - loss: 7.7688
Epoch 5/5
 - 17s - loss: 7.7688

Network changed to using concatenation (rest of code is same as above):
inp = keras.layers.Input(shape=(128, 128, 1))
combo = []
for i in range(16):
    net = keras.layers.Conv2D(
        8, (3, 3), padding='same', strides=(1, 1), activation='relu')(inp)
    combo.append(net)
net = keras.layers.Concatenate()(combo)
net = keras.layers.Flatten()(net)
net = keras.layers.Dense(1, activation='sigmoid')(net)

Output:
Layer (type)                    Output Shape         Param #     Connected to
==================================================================================================
input_1 (InputLayer)            (None, 128, 128, 1)  0
__________________________________________________________________________________________________
conv2d_1 (Conv2D)               (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
conv2d_2 (Conv2D)               (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
conv2d_3 (Conv2D)               (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
conv2d_4 (Conv2D)               (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
conv2d_5 (Conv2D)               (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
conv2d_6 (Conv2D)               (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
conv2d_7 (Conv2D)               (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
conv2d_8 (Conv2D)               (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
conv2d_9 (Conv2D)               (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
conv2d_10 (Conv2D)              (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
conv2d_11 (Conv2D)              (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
conv2d_12 (Conv2D)              (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
conv2d_13 (Conv2D)              (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
conv2d_14 (Conv2D)              (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
conv2d_15 (Conv2D)              (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
conv2d_16 (Conv2D)              (None, 128, 128, 8)  80          input_1[0][0]
__________________________________________________________________________________________________
concatenate_1 (Concatenate)     (None, 128, 128, 128 0           conv2d_1[0][0]
                                                                 conv2d_2[0][0]
                                                                 conv2d_3[0][0]
                                                                 conv2d_4[0][0]
                                                                 conv2d_5[0][0]
                                                                 conv2d_6[0][0]
                                                                 conv2d_7[0][0]
                                                                 conv2d_8[0][0]
                                                                 conv2d_9[0][0]
                                                                 conv2d_10[0][0]
                                                                 conv2d_11[0][0]
                                                                 conv2d_12[0][0]
                                                                 conv2d_13[0][0]
                                                                 conv2d_14[0][0]
                                                                 conv2d_15[0][0]
                                                                 conv2d_16[0][0]
__________________________________________________________________________________________________
flatten_1 (Flatten)             (None, 2097152)      0           concatenate_1[0][0]
__________________________________________________________________________________________________
dense_1 (Dense)                 (None, 1)            2097153     flatten_1[0][0]
==================================================================================================
Total params: 2,098,433
Trainable params: 2,098,433
Non-trainable params: 0
Epoch 1/5
 - 28s - loss: 8.0518
Epoch 2/5
 - 26s - loss: 8.0802
Epoch 3/5
 - 27s - loss: 8.0802
Epoch 4/5
 - 26s - loss: 8.0802
Epoch 5/5
 - 28s - loss: 8.0802

@barisumog I think the reason behind higher computation time (even-though the number of trainable params are same) is higher number of layers which takes more time for backprop algorithm (several gradient estimations, etc). I reduced the number of concatenated layers by half and increase number of params by two so that the trainable params are same, then the computational time is comparable to non-concatenated model. Please check the gist here. thanks!

@jvishnuvardhan Thanks for the info. How about a setup like this?
inp = keras.layers.Input(shape=(128, 128, 1))
net = keras.layers.Conv2D(
    16, (3, 3), padding='same', strides=(1, 1), activation='relu')(inp)
for i in range(7):
    new = keras.layers.Conv2D(
        16, (3, 3), padding='same', strides=(1, 1), activation='relu')(inp)
    net = keras.layers.Concatenate()([net, new])
net = keras.layers.Flatten()(net)
net = keras.layers.Dense(1, activation='sigmoid')(net)

This has 8 separate conv layers, same as in your gist, but with more concatenations. Same # of params as before. An epoch takes around 28 secs on my computer, again 50% slower compared to original one. So it seems to me, with same number of conv layers, more concats mean significantly more slow down.
Shouldn't # of backprop paths be dependent on # of conv layers? Shouldn't 8 conv layers and 1 concat take almost the same time as 8 conv layers and 7 concat?
Sorry if I'm mistaken, or if this doesn't make sense. I appreciate your time and help. Thanks.


[Hyperion] [FE] Resource Tabs state fixes

Logs state leak across tabs
Manifest changes are getting lost when switching tabs

Changed from DT3 to DT4


Convert IOS AppDelegate[m,h] to AppDelegate.swift

Get better access to swift generics and bootstrap/injection of the project configuration.

This isn't really necessary with the method in which auto linking works.


adds best_score_ and best_params_ properties back

not sure how these got removed, but now they're being set, for consistency with the sklearn api.

this should fix https://github.com/rsteca/sklearn-deap/issues/35


Database coding, schema upgrade and test

Database schema upgrade means also change in a number of components that use database.

Finished.


Test for 5.3 and luajit 2.1 and coveralls.

You'll need to enable this under your coveralls account and add the badge to readme for it to show properly.

Thanks!


AvailableNetwork property fixes

Description
Changes made to the AvailableNetwork class.
Initialization of Ssid and Bsid properties - removed 'internal'.
These properties now conform to the .NET standard.
Motivation and Context
.NET allows the Ssid and Bsid properties to be initialized by the user application.
The nanoFramework implementation now allows this as well.
How Has This Been Tested?
Created a nanoFramework project that sets initializes the Ssid and Bsid properties.
Types of changes

[x] Improvement (non-breaking change that improves a feature, code or algorithm)
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Config and build (change in the configuration and build system, has no impact on code or features)
[ ] Dependencies (update dependencies and changes associated, has no impact on code or features)

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

@skigrinder the reason for those to be internal it's because they are set when parsing the Wi-Fi networks resulting from the scan operation. Allowing these to be changed from the "outside" doesn't seem to be the correct way.
A developer can inadvertently change these properties when it shouldn't, or can give the false feeling that one can simple change the property for the SSID to be updated.

Hi Jose',
The current .NET replaces 'internal' with 'init' so that Ssid and Bsid
may be initialized (but not changed thereafter).
I tried 'init' but it doesn't seem to be supported in nF.
Thanks,
   Jim
On 2021-04-05 4:13 AM, José Simões wrote:

@skigrinder https://github.com/skigrinder the reason for those to be
internal it's because they are set when parsing the Wi-Fi networks
resulting from the scan operation. Allowing these to be changed from
the "outside" doesn't seem to be the correct way.
A developer can inadvertently change these properties when it
shouldn't, or can give the false feeling that one can simple change
the property for the SSID to be updated.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/nanoframework/Windows.Devices.WiFi/pull/103#issuecomment-813321730,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO2PVOPYYVTG5BUNRAIFGSTTHGEOPANCNFSM42JMW2UQ.

@skigrinder according to the official documentation this class has no constructor and the properties are read only...
https://docs.microsoft.com/en-us/uwp/api/Windows.Devices.WiFi.WiFiAvailableNetwork?view=winrt-19041#remarks
And it wouldn't make sense to have it other way the way the API is designed.
Now, I understand that you want to be able to connect to a known Wi-Fi network.
Let's do this properly instead of hacking the existing API. 😉
Suggest that we discuss this on Discord native-esp32 channel.


Karma related issue

When running a build under Karma, it fails on the second build with a message like:

reduce is not a function of undefined

This is in the index.js file at line 1050.
If we change line 1048 to extend the check to this:
depCacheItem && depCacheItem.fileDependencies &&
then the Karma build passes.
This only affects our Karma test build, the main dev builds are fine. I'm not sure what Karma is doing under the covers to cause this, but caching with Karma does seem to work with this minor change.
Happy to give more information if I can, but I might not be able to isolate this into a simple test. Also happy to do a pull request if that's easier too (just that I need to set up the environment to enable me to do this and it might be easier if you guys already have that for such a simple fix :-) )

Might also be related to issue 160
https://github.com/mzgoddard/hard-source-webpack-plugin/issues/160

Thanks for opening this issue @1ka. Looks like this was an area that was missing the following that similarly appears in some other areas.
--- index.js (saved version)
+++ (current document)
@@ -1035,6 +1035,10 @@
             ) {
               var depIdentifier = identifierPrefix + resolveItem.request;
               var depCacheItem = moduleCache[depIdentifier];
+              if (typeof depCacheItem === 'string') {
+                depCacheItem = JSON.parse(depCacheItem);
+                moduleCache[depIdentifier] = depCacheItem;
+              }
               if (
                 depCacheItem &&
                 depCacheItem.fileDependencies

But I'll fix this with #169 for now.

The change is in 0.4.15 and 0.5.0-rc.7

I'll try it on Tuesday when I'm back at work and let you know the results. Thanks  :-)

Cool, that all worked in 0.5.0, 0.5.1 - Thanks


GHC 8 support

I can't compile IHaskell on GHC 8.
Currently ghc-parser fails with:
Building ghc-parser-<IP_ADDRESS>...
Preprocessing library ghc-parser-<IP_ADDRESS>...
[1 of 2] Compiling Language.Haskell.GHC.HappyParser ( src-7.10/Language/Haskell/GHC/HappyParser.hs, dist/build/Language/Haskell/GHC/HappyParser.o )

src-7.10/Language/Haskell/GHC/HappyParser.hs:33:19: error:
    â€¢ Couldn't match type â€˜GenLocated SrcSpan (HsDecl RdrName)â€™
                     with â€˜OrdList (LHsDecl RdrName)â€™
      Expected type: P (OrdList (LHsDecl RdrName))
        Actual type: P (LHsDecl RdrName)
    â€¢ In the expression: parseDeclaration
      In an equation for â€˜fullDeclarationâ€™:
          fullDeclaration = parseDeclaration

src-7.10/Language/Haskell/GHC/HappyParser.hs:39:21: error:
    â€¢ Couldn't match type â€˜HsDecl RdrNameâ€™
                     with â€˜OrdList (LHsDecl RdrName)â€™
      Expected type: P (Located (OrdList (LHsDecl RdrName)))
        Actual type: P (LHsDecl RdrName)
    â€¢ In the expression: parseTypeSignature
      In an equation for â€˜fullTypeSignatureâ€™:
          fullTypeSignature = parseTypeSignature

Looks like @bgamari is on this: https://github.com/gibiansky/IHaskell/pull/686
Thanks! I'm closing the issue.


Add spinner to the bulk data files page

Definition of Ready

[x] Does this meet the INVEST criteria?
[x] Does this have a clearly defined user?
[x] Does this have an estimate?
[x] Does this have acceptance criteria?
[x] Does this have sufficient context for the specific functionality being developed (design, business rules, etc.)
[x] Does this have a dev link been provided in the design?
[x] Is this traceable to a feature, epic, or PI?

User Story
As a bulk data files user I want the system to display a spinner So that I know that an action is processing
Acceptance Criteria
Given a user has executed an action
When the action is processing
Then the system will display a spinner that the system is processing
Given an action is processing
When the action completes
Then the spinner disappears
Development Notes
The system should display a spinner when:

The system is fetching the files in the data table

Does this Story require 508 Testing?

[ ] Implementing a new authoring tool that will produce code / content for the application
[ ] Implementing a 3rd party widget that will be part of the application
[x] Adding new / updating custom functionality
[ ] Adding new / updating a page template
[ ] Adding new / replacing existing functionality (unless the replacement has already passed 508 testing)
[ ] Full Site Review prior to a scheduled EPA 508 review
[ ] Planning a video that will appear on the application
[ ] Producing a video that will appear on the application
[ ] Producing Training materials
[ ] Producing documents

Context
(User journeys, design mockups, architectural diagrams, business rules, data element definitions)
Testing
Test Case: TC688
Tester: @JanellC
Definition of Done

[x] Have all Acceptance Criteria been agreed to and validated by the scrum team?
[x] Has the code been unit tested and peer reviewed?
[x] Have the functional tests been executed?
[x] Have all defects been reviewed and dispositioned, resolved, or deferred?
[x] Is the user story ready to be deployed to the test/staging environments?

TC688 passed @tlageman-epa

This ticket is ready for 508 testing @aprematta


changed updatedAt json to correct json value

LGTM. Thanks!

For posterity, in case someone wants to write a linter rule that would catch this kind of bug, the latest vet should catch this type of issue, as of https://go-review.googlesource.com/#/c/16704/ (thanks to @dominikh for finding that CL).
However, it's not a part of Go 1.7, it will be a part of Go 1.8.
We run vet in CI, but it's not a critical failure for tip, and we didn't notice this. But it was caught there. See https://travis-ci.org/google/go-github/builds/173415020 and the tip build:
$ go tool vet .
github/repos_pages.go:33: struct field UpdatedAt repeats json tag "created_at" also at github/repos_pages.go:32

@gmlewis Can you take a look as well?

Excellent!  Thank you, @lucasalcantara and thank you @shurcooL for reviewing!
Merging.

Integrated in https://github.com/google/go-github/commit/f561108eef042b61588e174172c8c942ba0d57a4.


Update 01-spell-check.md

increasing pr count

Thank You @parthpatwa for the PR!
Since we want to keep the mistakes for other participants to work on, we wouldn't be merging this PR. Hope the practice was good nevertheless :)


(WIP) Overhaul for Ghost 1.0

This is still in progress, but it'll basically fix everything that's broken due to the 1.0 release (and integrate with new features).

Hi Felix,
Great to see the "Use icon for blog" commit.
Was about to create an issue for that. Thanks!
Regards, JoKi


root rect

In the sample code, the min and max coords are set using the sample data. In a real world scenario, how would you determine a suitable min and max coord?
Thanks!

That depends on how much you know about the data coming in. If there's a known min / max for your data when creating the quadtree then use that, if the min / max is unknown to you then use the world coordinates from (MKMapRectWorld)[https://developer.apple.com/reference/mapkit/mkmaprectworld] to make sure all of the points added will be within the tree

@ateliercw Thank you very much ,that's exactly what I used, wasn't sure of the performance implications! One other thing I was wondering about was how should I animate the clustering / de-clustering of annotations?

@aodhol there isn't really one right answer to that. As a starting point I'd recommend just trying having the removed annotations fade out, and the added annotations fade in. After that, it's a matter of what looks right and how complex of an animation you'd like to implement. With the added / removed list you could calculate which added annotations were included in removed annotations, and use that to generate a "dividing" annotation.

@ateliercw Sounds exciting! When you say removed annotations, do you mean the cluster in this particular case? As in determining which annotations were part of the cluster then animating those from the centroid of the cluster..and would this happen for example, in the updateAnnotations method of your sample code say or would it be something in the annotation itself or in one of the MapKit didAdd/RemoveAnnotations delegate methods

@aodhol that looks like the right place to get started


arch/risc-v: Make CPU index handling based on ARCH_RV_HARTID_BASE

Summary
This PR refactors the CPU index handling in the RISC-V architecture to be based on the ARCH_RV_HARTID_BASE configuration.
The changes include:

Kconfig Updates:

Rewrote the help text for ARCH_RV_HARTID_BASE
Added detailed explanations covering:

Purpose (mapping global hartid to cluster-local id)
Examples (hartid ranges for different clusters)
Key points (SMP_NCPUS, consecutive id requirements)
Special cases (K230 chip, etc.)

Header File Changes:

Modified up_cpu_index() condition from CONFIG_RISCV_PERCPU_SCRATCH to CONFIG_ARCH_RV_HARTID_BASE != 0 in irq.h

Build System Updates:

Changed compilation condition for riscv_cpuindex.c from CONFIG_ARCH_HAVE_MULTICPU to CONFIG_ARCH_RV_HARTID_BASE != 0 in both CMakeLists.txt and Make.defs

Source Code Refactoring:

Removed CONFIG_RISCV_PERCPU_SCRATCH conditional compilation in riscv_cpuindex.c
Added CONFIG_ARCH_RV_HARTID_BASE != 0 conditional compilation in riscv_internal.h
Defined simple hartid/cpuid conversion macros when CONFIG_ARCH_RV_HARTID_BASE is 0

These changes aim to make the CPU index handling more consistent and clear, using ARCH_RV_HARTID_BASE as the primary configuration for managing hartid mappings in multi-clust
systems.
Impact
RISCV SMP
Testing
GitHub CI and QEMU

[Experimental Bot, please feedback here]
Fill In The Commit Message: This PR contains a Commit with an Empty Commit Message. Please fill in the Commit Message with the PR Summary.
Yes, this PR appears to meet the NuttX requirements, although some sections could be more explicit.
Strengths:

Clear Summary:  The summary explains the "why," "what," and "how" of the changes.  The focus on ARCH_RV_HARTID_BASE is helpful.
Impact Section Identifies Affected Area:  Calling out RISC-V SMP is good.
Testing Mentions Environments:  Referencing GitHub CI and QEMU provides some testing context.

Weaknesses (and suggestions for improvement):

Missing Issue References: If this relates to a specific issue, link it.
Impact Section Needs More Detail:  Expand on how the changes impact RISC-V SMP.  Address all the sub-points (user impact, build impact, hardware impact, documentation, security, compatibility).  Even if the answer is "NO," explicitly state it.  For example:

Impact on user: NO. Users should not need to adapt to this change as it is internal.
Impact on build: YES. The build system now uses CONFIG_ARCH_RV_HARTID_BASE != 0 as a condition for compiling riscv_cpuindex.c.
... (and so on for all impact categories)

Testing Logs Missing: The template specifically requests "Testing logs before change" and "Testing logs after change."  Include relevant log snippets or explain why they aren't applicable.  If using CI, link to a successful run.  Be specific about what was tested (e.g., "Boot test on QEMU with 2 cores," "SMP scheduler test on QEMU").

Example for the Testing Section:
Testing:

Build Host: Linux, x86_64, GCC 12.2
Target: QEMU, RISC-V rv64_imafdc_zicsr_zifencei, 2 cores

GitHub CI Run: [Link to CI Run]

Testing logs before change (demonstrating issue X):

```
Testing logs after change (demonstrating the fix):
<Relevant log snippet showing the corrected behavior>

Tests Performed:

Boot test on QEMU with 2 cores - successful.
SMP scheduler test on QEMU - successful.

By addressing these weaknesses, the PR will be even stronger and easier for reviewers to evaluate.


Decompilation failed with fatal error "lineStarts must not be empty."

Bicep version
Bicep CLI version 0.4.1124 (66c84c8ee5)
Describe the bug
Creating a synapse workspace. Used the portal to build template file. Exported template and tried to use bicep decompile to build json file. Received error
To Reproduce
Steps to reproduce the behavior:
run az bicep decompile --file template.json on attached files
Additional context
Add any other context about the problem here.
parameters.json.txt
template.json.txt

I am also using a Synapse based ARM template. Though the fix looks like it has been pushed, it is not yet released.
@anthony-c-martin , any work arounds for this before the fix is made public?

Hi @anthony-c-martin
Do you know when this is being released?
BR David

I suspect the soonest we will release is sometime in February. Other than installing one of the nightly builds, I'm not sure there will be a workaround until the next release.


spec: can't use blank variable in type switch

I often want to use a blank variable in a type switch when I'm building scaffolding.  For example:
package main

import "fmt"

type foo interface { }
type bar struct { }
type baz struct { }

func main() {
	var aFoo foo
	aFoo = bar{}

	switch _ := aFoo.(type) {
		case bar: fmt.Printf("It's a bar!")
		case baz: fmt.Printf("It's a baz!")
		default: fmt.Printf("It's none of these things!")
	}
}

I'd like to write this, then go in and fill in some details.  However, trying to run the above results in the following error message:
.\blank.go:13: invalid variable name _ in type switch

It really wants a variable.  The problem is, I don't want to use a variable yet in my switch, which results in me having to change the code to look like this:
switch n := aFoo.(type) {
	case bar:
		_ = n
		fmt.Printf("It's a bar!")

just to get the compiler error to go away.
I also tried using _ = instead of _ :=, and that doesn't work either.
It would be nice if the blank variable were allowed in the type switch.
$ go version
go version go1.4.1 windows/amd64

this works:
    switch aFoo.(type) {
        case bar: fmt.Printf("It's a bar!")
        case baz: fmt.Printf("It's a baz!")
        default: fmt.Printf("It's none of these things!")
    }

quite nicely (5 characters less, even!)
http://play.golang.org/p/WIB-KQR4Jp

This is consistent with what the spec says:
TypeSwitchStmt  = "switch" [ SimpleStmt ";" ] TypeSwitchGuard "{" { TypeCaseClause } "}" .
TypeSwitchGuard = [ identifier ":=" ] PrimaryExpr "." "(" "type" ")" .

And "The TypeSwitchGuard may include a short variable declaration" which says, a short variable declaration uses the syntax:
ShortVarDecl = IdentifierList ":=" ExpressionList .

and "and at least one of the non-blank variables is new".
I'll let @griesemer close this as working-as-intended or decide whether type switches should support blank identifiers somehow.

This is working as intended. @sbinet suggestion is the perfect answer for this problem.
Perhaps you're thrown off by the "customized error message": Short variable declarations of the form:
_ := expr
are not permitted and the error is "no new variables on left side of :=". But here it is "invalid variable name _ in switch", indicating that the two situations are not handled by the same check. But the effect is the same, in both cases an invalid program is rejected.


Create issues according to grading list

Project grading template (/126)
Task 1: Literature / Background / Physics (42 points)

Introduction; What, Why (/5)
Physics (/10)
comparisons (/5)
references (/10)
clarity (/12)

Task 2: Implementation (/42 points)

docstrings (/7)
unit test (bonus points only)
linting (/7)
used QC (/7)
algorithm (/7)
jupyter notebook (/7)
visualizations (/7)
complexity (bonus points only)

Task 3: Presentation (/42 points)

Github

readme (/7)
issues, pull requests (/7)

Video

Clarity (/10)
YouTube style (/10)
Script (/4)
all three tasks in video (/4)


Document new Split and Sort SearchResponseProcessors

Description
Documents the new Sort and Split SearchResponseProcessors.
Fixes an incorrect field name in the Ingest Split Processor docs.
Issues Resolved
Fixes #7743
Fixes #7744
Fixes #7754
Feature PRs:

https://github.com/opensearch-project/OpenSearch/pull/14785
https://github.com/opensearch-project/OpenSearch/pull/14800

Version
2.16.0
Frontend features
N/A
Checklist

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

@kolchfa-aws Ready for doc review!

@dbwiddis @kolchfa-aws Please see my changes and let me know if you have any questions. Thanks!

Accepted all the recommendations!

Note I'm still waiting for the PRs to get merged (hopefully by today) :)

No problem. If they are not merged, we can revert this PR  😄

Well one is now merged, other should be shortly, so we should be gtg!

And, the other one is merged. 🎉

@dbwiddis thanks for contributing the sort processor. I saw the functionality is very similar to the sort ingest processor.
But there is a difference between ingest and response: in the search response, there are multiple documents. Can we achieve sorting the documents in the response based on the value in sort_field?
for example: a sample search response:
{
  "took": 0,
  "timed_out": false,
  "_shards": {
    "total": 1,
    "successful": 1,
    "skipped": 0,
    "failed": 0
  },
  "hits": {
    "total": {
      "value": 4,
      "relation": "eq"
    },
    "max_score": 1,
    "hits": [
      {
        "_index": "diary_index",
        "_id": "1",
        "_score": 1,
        "_source": {
          "diary": "how are you",
          "similarity_score": -11.055182
        }
      },
      {
        "_index": "diary_index",
        "_id": "2",
        "_score": 1,
        "_source": {
          "diary": "today is sunny",
          "similarity_score": 8.969885
        }
      },
      {
        "_index": "diary_index",
        "_id": "3",
        "_score": 1,
        "_source": {
          "diary": "today is july fifth",
          "similarity_score": -5.736348
        }
      },
      {
        "_index": "diary_index",
        "_id": "4",
        "_score": 1,
        "_source": {
          "diary": "it is winter",
          "similarity_score": -10.045217
        }
      }
    ]
  }
}

can we sort by the similarity_score field using sort processor?
so the target response is sorting by similarity_score in descending order?
{
  "took": 0,
  "timed_out": false,
  "_shards": {
    "total": 1,
    "successful": 1,
    "skipped": 0,
    "failed": 0
  },
  "hits": {
    "total": {
      "value": 4,
      "relation": "eq"
    },
    "max_score": 1,
    "hits": [

{
        "_index": "diary_index",
        "_id": "2",
        "_score": 1,
        "_source": {
          "diary": "today is sunny",
          "similarity_score": 8.969885
        }
      },
      {
        "_index": "diary_index",
        "_id": "3",
        "_score": 1,
        "_source": {
          "diary": "today is july fifth",
          "similarity_score": -5.736348
        }
      },
      {
        "_index": "diary_index",
        "_id": "4",
        "_score": 1,
        "_source": {
          "diary": "it is winter",
          "similarity_score": -10.045217
        }
      }
      , {
        "_index": "diary_index",
        "_id": "1",
        "_score": 1,
        "_source": {
          "diary": "how are you",
          "similarity_score": -11.055182
        }
      }
    ]
  }
}

@mingshl that's not the spec I was asked to write to, it seems you'd want a "sort hits by field" functionality.
But aren't hits supposed to be sorted by score?
If you need a different functionality, please open a new issue to discuss it.  Unfortunately we're within 24 hours of code freeze so there's no way it will get into 2.17.0.

@mingshl that's not the spec I was asked to write to, it seems you'd want a "sort hits by field" functionality.
But aren't hits supposed to be sorted by score?
If you need a different functionality, please open a new issue to discuss it. Unfortunately we're within 24 hours of code freeze so there's no way it will get into 2.17.0.

We will need a new RFC to track the rank processor to sort the search hits based on the field in the hit.

@mingshl that's not the spec I was asked to write to, it seems you'd want a "sort hits by field" functionality.
But aren't hits supposed to be sorted by score?
If you need a different functionality, please open a new issue to discuss it. Unfortunately we're within 24 hours of code freeze so there's no way it will get into 2.17.0.

We will need a new RFC to track the rank processor to sort the search hits based on the field in the hit.

Raised new RFC https://github.com/opensearch-project/OpenSearch/issues/15631


Allowing object type in numba jit signature

It would be nice to be able to include a generic Python object type in a Numba jit function signature much like the case below.
from numba import jit

@jit(["object(int, float)"])
def test(a, b):
    return (a, b)

Thanks for the report. Does this help?
from numba import jit

@jit(["pyobject(intc, float64)"])
def test(a, b):
    return (a, b)

print(test(3, 4.2))

It's also possible to construct signatures from the types themselves, for example:
from numba import jit, types

@jit([types.pyobject(types.intc, types.float64)])
def test2(a, b):
    return (a, b)

print(test2(3, 4.2))

Ah ok. Thanks. That does help. 😄
Also sorry about the int vs. intc bit. Got a little confused by that initially.
FWIW was looking for this on the types doc page, but missed it.
Feel free to close.

No worries. Seems like pyobject isn't mentioned on that page and it probably ought to be! Will add a ticket to update. Thanks.

https://github.com/numba/numba/issues/3219


How to get the same performance as SCDA paper in CUB200-2011 dataset?

How to get the same performance as SCDA paper in CUB200-2011 dataset?

For SCDA, it calculate the top-5 mAP, we calculate mAP on all the samples, so we can not get the same performance.

For SCDA, it calculate the top-5 mAP, we calculate mAP on all the samples, so we can not get the same performance.

How to get the same performance as SCDA paper in CUB200-2011 dataset?

Hi,do you get the same performance as SCDA paper in CUB200-2011 dataset by calculating the top-5 mAP?


Fix modify the binding aggregate function in order by

modify the bind logical to make the order by has same behavior with mysql when sort child is aggregate.
when an order by  Expr has aggregate function, all slots in this order by Expr should bind the LogicalAggregate non-AggFunction outputs  first, then bind the LogicalAggregate Child
e.g.
select 2*abs(sum(c1)) as c1, c1,sum(c1)+c1 from t_order_by_bind_priority group by c1 order by sum(c1)+c1 asc;
in this sql, the two c1 in order by all bind to the c1 in  t_order_by_bind_priority

run buildall

run buildall

run buildall

add description

run buildall

run buildall


[166541517] Add ALBs

What
This adds ALBs and configures BOSH to register the relevant target groups. This will allow us to migrate from the classic ELBs.

 This is only required for testing the dev env
Merge https://github.com/alphagov/paas-haproxy-release/pull/13 and update the paas-haproxy release with the final build

How to review

Code Review
Deploy to your dev env

Who can review
Not me

Have updated the HAproxy release

Both of these commits in order ran down tlwr


[BEAM-4127] Flink streaming translation for portable pipeline.

This is the translator code from the prototype, minus executable stage translation (which I'm going to work an as follow-up).
R: @bsidhom @lukecwik

Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Make sure there is a JIRA issue filed for the change (usually before you start working on it).  Trivial changes like typos do not require a JIRA issue.  Your pull request should address just this issue, without pulling in other changes.
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue.
[ ] Write a pull request description that is detailed enough to understand:

[ ] What the pull request does
[ ] Why it does it
[ ] How it does it
[ ] Why this approach

[ ] Each commit in the pull request should have a meaningful subject line and body.
[ ] Run ./gradlew build to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

@lukecwik PTAL


Fix EMWSClient::get_connection_status()

Also add try/catches to avoid crashed.
Fixes #36239 ,

Thanks!

Cherry-picked for 3.2.1.


inconsistent device specification in scripts

Most of the SkillSpan scripts use --device 0 when invoking machamp. However, run.indiviual.sh uses --device 1. For consistency, the same device should be used.
Note that it seems even better to omit the device specification, as PyTorch has automatic device selection. I did a test of this, it seems to work in my two-GPU setup.
Best,
Tom

Hi Tom,
Awesome, thank you for pointing out the flags and also thank you for the tip, I thought we still had to manually select the device. I revised the scripts. I'll mark this as solved.
Best,
Mike


GlyphList.loadList Error in 1.8.8

Hi  Birdbrain2,
I am using pdfbox-android for few month now in my android app.
I am facing a problem with the extraction of text on Korean files. I tried to upgrade to 1.8.8 to see if there is any improvements. But when using 1.8.8 I always crash with this error :
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.startsWith(java.lang.String)' on a null object reference
at org.apache.pdfbox.pdmodel.font.encoding.GlyphList.loadList(GlyphList.java:104)
I am probably doing something wrong but I've got no problem with 1.8.7 and 1.8.6.

Hi,
I managed to get it working using the library project without the jar.
It didn't solve my problem with korean pdfs.
I am trying to extract text and highlight parts, but the every character send me
W/PdfBoxAndroid﹕ No Unicode mapping for c158 (3) in font GCIIFN+WtKoBaeumGothicL01cc5BUbM
At the end the extracted text is full of unicode codes.

@dun74fr What was your solution the the GlyphList exception? I just started experiencing that yesterday as well.

@AedonEtLIRA
I only stopped using the jar file and linked my project directly on the library project from pdfbox-android.

The current jar has an issue where the glyphlist resource was built in correctly. Building with Gradle or the new jar (released in a day most likely) should resolve this. The unicode mapping issue should hopefully be fixed shortly. As for the text extraction in Korean, it mostly likely will not work. See issue #18 for this problem

Thanks for the information.
Regarding the Korean text extraction, I also submitted a bug on PDFBox because there is the same problem.
I tried to investigate, in PDType1CFont the tounicode code, but it quite difficult to understand the way the font is encoded.
Other tools like Xpdf can extract the text, but the code is too far to try to copy the implementation.

The unicode mapping issue is an issue with desktop PdfBox at the version that the library is currently at. Upgrading the code should get that fixed


Text conversion cleanup

I did a clean up of the current text conversion code to make it a bit easier to understand and more consistent. I thought it would be a good idea to do this before I start writing optimised versions of these functions.

Nice. (From a cursory glance, looks like a lot of the complexity in the glibc implementation is the base handling.)

looks good :+1:

somewhat unrelated, but while you're in there, perhaps make sure this time reading code won't dereference before the start of the buffer. (I guess you could also pad the start of the buffer if you wanted?)
https://github.com/ambiata/icicle/blob/topic/text-conversion-cleanup/data/sea/52-psv.h#L116

I wonder if it's ok because it's on the stack? so it's already padded in a sense

hmm... yes, I suppose so. the stack grows downwards right, so it'd probably be padded by variables in later functions? I'm not sure, I think I'd rather do it explicitly

So something like adding 16 bytes to the start and the end of the buffer?


Create a package to check for duplicate versions of our packages

Is your feature request related to a problem? Please describe.
When there are duplicates of our packages, bad things happen. The typical one is:
"Error: Accessing nonexistent addons channel" (duplicate @storybook/addons)
A new one is weird font loading issues when you have duplication @storybook/theming.
Describe the solution you'd like
Let's make a package that other packages can use to declare themselves singletons and log a prominent error if more than one version of them is loaded. I know a lot of packages (e.g. styled-components, mobx) do this or want to do this already. I feel like there could probably be a single npm module that makes it easy.
Describe alternatives you've considered
Maybe there already is such a package? In which case we should use it. Let's ask around.
Are you able to assist bring the feature to reality?
Yes, post 5.0.

In theory this has been solved by #5679 although #5706 implies it hasn't. Let's sort it out there.


chore(readme): exa is unmaintained

exa is now unmaintained. eza is a fork that is essentially a drop in replacement for exa. This PR encourages its use over the former. 😄

Arch Linux migrated to eza, but point release distributions like Ubuntu, Debian etc. will not so fast. It would be better to add info about eza, without deleting exa, because of it.

Wow didn't know exa was unmaintained--been using it every day. Thanks for the suggestion.
@roland-5 are you saying that Ubuntu and Debian users would have trouble installing eza using the built in package manager?

If user of point release distribution don't use cargo/cargo-bin and only their distribution package manager, then for actual stable releases there isn't anything like eza, only still exists exa.
https://packages.debian.org/bookworm/exa Nor trixie (testing) or even sid (unstable) have eza package.
These distributions doesn't add new packages for stable releases so only security patches or rebuilds if necessary will be released for exa (if so). When Debian will ship eza (if someone will build it for sid and transfer it to trixie), then Ubuntu will suck it to their repositories. Probably Fedora, Open Suse and other point released distro will do the same.

Thanks for explaining the Linux world! Any guess on when Debian will pick up eza?

No idea. Sometimes they update or add some packages even before Arch Linux or Fedora Silverblue, but if there is no willing maintainer for specific application, it could be months or years.
If someone makes a package with Eza, in the case of Ubuntu, it would appear in the 24/04 release at the earliest. The easiest way would be to propose to install and use Eza as a developed application, and for those who are unable to do so, Exa.

Damn, there is no starship still in Debian/Ubuntu repos. :D

Arch Linux migrated to eza, but point release distributions like Ubuntu, Debian etc. will not so fast. It would be better to add info about eza, without deleting exa, because of it.

I would agree, if it were going to affect actual functionality - this is more of a change in recommendation, orthogonal to the functionality of the plugin itself 😄

Yeah this has no actual effects on the plugin and it might be a long wait before Debian adopts eza. I'll give the deprecation of exa another week to marinate before I merge this.


Backward compatibility for API <26

This library requires min API 26. It will be good if we get support for at least until API 21

@kamal-lab may you have a look at feature/api21, test it with your application and give me some feedback, so I can merge it. I tested it already but only with an emulator.

Thanks for the update. I didn't use your library because at the time I was supposed to implement backup feature immediately. So I understood your concept and made a java helper class(since I'm not good with kotlin yet).
I used like this,
File backupFile = ...
File dbFile =...
FileChannel source = new FileInputStream(dbFile).getChannel();
FileChannel dest = new FileOutputStream(backupFile).getChannel();
dest.transferFrom(source, 0, source.size());
And I checked that feature/api21 which is also working fine with minSdkVersion 21 and I tested it on API 28 device. But I don't have API 21 device with me currently if it is necessary for you to confirm.

Thanks for your feedback. With the next release, this changes will be applied


LspRestart causes an abnormal client list

I really enjoy using this plugin; it's very useful, and I appreciate the efforts of the author. However, recently I've encountered an issue. Sometimes I need to switch Python environments, and during this process, “LspRestart” gets executed.
"LspRestart" will result in new clients being created. Only by selecting the last client can it work properly, and the other clients should not appear.
Below is an example of a tsserver restart:

When I select the first client, NavBuddy doesn't respond at all.
Here is my configuration：
{       "SmiteshP/nvim-navbuddy",       dependencies = {         {           "SmiteshP/nvim-navbuddy",           dependencies = {             "SmiteshP/nvim-navic",             "MunifTanjim/nui.nvim"           },           opts = {             lsp = {               auto_attach = true,             },             window = {               position = { col = '50%', row = '27%' },               size = "30%",               sections = {                 left = {                   size = '25%'                 },                 mid = {                   size = '50%'                 },                 right = {                   size = '25%',                   preview = 'never'                 }               }             }           }         }       }     },

Aah I see, we need to somehow detect and detach from the old lsp server 🤔

I am not sure if this is fixed entirely - refreshing the buffer causes this:

By refreshing buffer, what do you mean?

maybe :e
------------------ Original ------------------
From: Smitesh Patil @.>
Date: Sat,Aug 26,2023 1:37 PM
To: SmiteshP/nvim-navbuddy @.>
Cc: Tim Lee @.>, Author @.>
Subject: Re: [SmiteshP/nvim-navbuddy] LspRestart causes an abnormal clientlist (Issue #75)
By refreshing buffer, what do you mean?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

Reopening the same buffer with :e doesn't cause this issue for me 🤔
@timlee1128 Are you able to reproduce this?

I use :e, yes. I am also using neodev.nvim, but I don't thing this should change anything.

@JosefLitos Can you check if it still occurs on latest master? A few commits have been added that might have fixed this issue

Oh, yeah, it totally works. I thought this was closed together with the commit already :D


Cannot map the relation returned from a command

rom = ROM.container(:sql, 'mysql2://root:root@<IP_ADDRESS>:3306/sms_test2'){ |config|
  class Sites < ROM::Relation[:sql]
    dataset(:plants)
    register_as(:sites)
  end

  class TestMapper < ROM::Mapper
    register_as(:api_mapper)
    relation(:sites)
  end

  class CreateSite < ROM::Commands::Create[:sql]
    register_as(:create)
    relation(:sites)
  end

  config.register_relation(Sites)
  config.register_mapper(TestMapper)
  config.register_command(CreateSite)
}

rom.relation(:sites).as(:api_mapper).to_a.inspect # => {id: 33, name: 'AWESOME SITE'}
rom.command(:sites).create.call(name: 'HELLO WORLD').as(:api_mapper).to_a.inspect
/Users/kwando/projects/rom-error/vendor/bundle/gems/rom-1.0.0.beta2/lib/rom/mapper_registry.rb:13:in `block in []': api_mapper (ROM::MapperMissingError)

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/28918105-cannot-map-the-relation-returned-from-a-command?utm_campaign=plugin&utm_content=tracker%2F155789&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F155789&utm_medium=issues&utm_source=github).

Does it work when you do relation(:plants) in the mapper class?

Will check tomorrow =)

Using 1.0.0.beta1 btw.

@solnic Changed the repro to this and it still blows up with a mapper missing.
rom = ROM.container(:sql, 'mysql2://root:root@<IP_ADDRESS>:3306/sms_test2'){ |config|
  class Sites < ROM::Relation[:sql]
    dataset(:plants)
    register_as(:plants)
  end

  class TestMapper < ROM::Mapper
    register_as(:api_mapper)
    relation(:plants)
  end

  class CreateSite < ROM::Commands::Create[:sql]
    register_as(:create)
    relation(:plants)
  end

  config.register_relation(Sites)
  config.register_mapper(TestMapper)
  config.register_command(CreateSite)
}

puts rom.relation(:plants).as(:api_mapper).to_a.inspect # => {id: 33, name: 'AWESOME SITE'}
puts rom.command(:plants).create.call(name: 'HELLO WORLD').as(:api_mapper).to_a.inspect

This is weird. I have a bunch of custom mappers and it works fine. Can you try w/o the block config?

This is just a repro, I'm not using the block form in my "real" code.

This works correctly but the correct incantation is:
rom.command(:sites).as(:api_mapper).create.call(name: 'HELLO WORLD')


Tools_v0.8.4 _27: Pop up screen size is reduced by hovering effect

SEVERITY: Minor
MODULE: Tools page
Platform: Windows 7 / Chrome 48.0
STEPS TO REPRODUCE:

Navigate to URL: http://dev-tools.gapminderdev.org:3001/
Tools page is loaded.
Click Y axis description
Take mouse to the first option which is “Wealth”
Sub options will be available on second small pop up screen
Note that the second small pop up screen size is reduced by hovering effect.

ACTUAL RESULTS:
By clicking Y axis description and then “Wealth”, second small pop up screen size is reduced by hovering effect
EXPECTED RESULTS:
Pop up screen size should not reduce by hovering effect
SCREENSHOT:

the idea here is to replicate Mac Finder multicolumn view. many columns can be open and they still fit
when the new column doesn't fit, the previous columns contract a little, to give space to the latest column
the algortithm is supposed to be implemented in treemenu.js (might be function _resizeDropdown)
but it's either not working at all or buggy

https://github.com/Gapminder/vizabi/pull/1004

Retest Result: Pass
Platform: Windows 7 / Chrome 46.0
Testing Environment: http://dev-tools.gapminderdev.org:3001/


Elements not found in nested groups

When you have several nested groups the parent parameter is not correctly filled and sometimes the elements of a group cannot be found and "NoSuchElementException" is given.
Defined groups example:
class ThirdGroup(Group):
def init_page_elements(self):
self.element3 = Button(By.XPATH, './/button[@class="three"]')
class SecondGroup(Group):
def init_page_elements(self):
self.element2 = ThirdGroup(By.XPATH, './/button[@class="two"]')
self.test_element = Button(By.XPATH, './/button[@class="two"]//button[@class="three"]')
class FirstGroup(Group):
def init_page_elements(self):
self.element1 = SecondGroup(By.XPATH, './/button[@class="first"]')
class ThisPageObject(PageObject):
def init_page_elements(self):
self.my_first_group` = FirstGroup(By.XPATH, '//div')
Elements accessing example:
visible1 = self.my_first_group.element1.element2.element3.web_element.is_displayed()
visible2 = self.my_first_group.element1.test_element.web_element.is_displayed()
That first line (visible1) gives a NoSuchElementException, but the last line (visible2) finds the element and returns the correct result. The element accessed in both cases has the same XPATH, but in the first case there is one more nested group than in the second one.

Hi @laura266,
The element parent was not correctly filled in nested groups.
I have released a new version (1.2.4) with this fix.
Thanks!


Xerial Snappy compressor OOMs on fake data with large uncompressed size

Description
The following code causes OOM:
  private final SnappyBlockCompressor compressor = new SnappyBlockCompressor();

  @Test
  public void uncompress_hugeFakePayload() {
    Bytes hugeLength = ProtobufEncoder.encodeVarInt(Integer.MAX_VALUE);
    final Bytes data =
        Bytes.concatenate(
            hugeLength, Bytes.fromHexString("000000000000000000000000"));

    assertThatThrownBy(() -> compressor.uncompress(data)).isInstanceOf(DecodingException.class);
  }

Thanks @tintinweb for this finding: https://github.com/ethereum/public-attacknets/issues/15

RPC Framed Snappy decompressor doesn't suffer from this bug since it's max frame size is 64Kb

I'd suggest to adopt Netty Snappy block compressor (as it was done for Framed compressor) to get rid of Xerial dependency and handle this case there.


Ambiguous error in rmf_fleet_adapter::agv::parse_graph, no file found when given nav_graph

https://github.com/open-rmf/rmf_ros2/blob/3c17991d6cd003a75986676cc7c0134b8212138b/rmf_fleet_adapter/src/rmf_fleet_adapter/agv/parse_graph.cpp#L30
Passing in a valid path, of the form ~/path/to/nav_graph/0.yaml to parse_graph resulted in a raised exception from yaml-cpp that no file was found.
This was tested on self-compiled main, ubuntu 20, ros foxy, using the full_control fleet adapter launch file.
The solution/realization for me was that yaml-cpp was not performing tilde expansion, so a form of /home/myself/path/to/nav_graph/0.yaml was sufficient.
The main problem is the cryptic-ness of not accepting a shell-valid filepath, when it may get passed in via the shell cmdline args.
I've only tested/suffered the tilde expansion, but symbolic links and relative paths are also common cmdline path inputs.
Maybe this could be short-term fixed with either a comment by the line, though a cleaner long-term interface would resolve the filepath before passing to yaml-cpp, &/or catching the raised no-file-found to give a more specific error msg.
On a deeper note, this seems symptomatic of relying on yaml-cpp to do input (file-format) sanitization, but not doing input (path) sanitization to yaml-cpp. If there's any other deep-ish files that take raw user input, identifying them and listing them somewhere so that they can be checked for appropriate input sanitization would be nice project enhancement.

This is a vexing behavior and I certainly sympathize with your frustration, but I'm not totally convinced that having RMF internally interpret a leading ~ as the home directory is the right move. I say that because the use of a leading ~ to mean a home directory is a platform-specific behavior. Once the path information is moving around inside of RMF, it's simply a string, and it's not obvious to me that RMF should take on the role of interpreting that string in special ways. It would technically be valid (albeit pathological) for a user to create a directory with the name ~  and use it in a relative path name.
In general if I need to refer to the home directory in a path name that I'm passing into an application, I'll use the $HOME environment variable. Inside of a launch file you can use environment variables in launch arguments like this:
<arg name="my_file_path" value="$(env HOME)/my/directory" />

So my current stance on this is "won't fix" but I'll leave this issue open for now in case people think my stance is unreasonable and want to insist that the behavior is changed.

Oh, I agree, I don't think you should add any hacky parsing to rmf for paths.
I think it'd be great if one of the three happened:

A comment by that line explaining that it only takes resolved absolute paths, documenting this, so people don't have to go digging into yaml-cpp to know why it's failing.
Try/catch that line; since the two exceptions are part of the api of the function, catching them and re-throwing them with the path/string in question acknowledges this behavior as intentional and not a bug.

/**
 * Loads the input file as a single YAML document.
 *
 * @throws {@link ParserException} if it is malformed.
 * @throws {@link BadFile} if the file cannot be loaded.
 */
YAML_CPP_API Node LoadFile(const std::string& filename);

Use some library/shell to resolve path names. But I think it's easier just to fail fast and resolve it outside, since C++ doesn't have any good cross platform libraries for more than relative path expansion. Maybe most ideally as an arg $(eval ...) in the launch file, for python's cross-platform resolution, similar to what you suggest, but the ros2 eval is buggy.

I'd be willing to make a PR, if there's a way you prefer.

I definitely like option (2). It's always good to be loud and clear about failure modes. Option (1) would be good to do in addition to (2).
If you're willing to open a PR for that I'll be more than happy to give it a quick review and merge.


Idrinth

@w20k could you please have a quick look at the war-module in here?
Should fix #27

Will take a look.

How should I proceed with changes?
Should I commit into your branch or add a patch? What do you think?

Commit into your own branch, merge properly to the master and let me worry about my own :P we need to merge back once in a while anyway or we'll lose changes.

Weird, looks like my comment disapeared:
I would keep (at least) one private branch to later merge back into the master. Updating your own branch (es) is something you need to take care of yourself - or just start a fresh one every time you pick a task.


fix: bump version in module name to v3

:tada: This PR is included in version 3.0.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


feat: get node info

implement get node info for lnd

LGTM pending CI fixing up! Are you going to take over #10 in this PR?

Picking it up as a follow up to this PR


[ie/MixchMovie] Add extractor

IMPORTANT: PRs without the template will be CLOSED
Description of your pull request and other information
Add support for videos section of video site https://mixch.tv/
Fixes https://github.com/yt-dlp/yt-dlp/issues/10765
Template

Before submitting a pull request make sure you have:

[x] At least skimmed through contributing guidelines including yt-dlp coding conventions
[x] Searched the bugtracker for similar pull requests

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check all of the following options that apply:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Fix or improvement to an extractor (Make sure to add/update tests)
[x] New extractor (Piracy websites will not be accepted)
[ ] Core bug fix/improvement
[ ] New feature (It is strongly recommended to open an issue first)

Hey, I have taken the liberty to remove the comment extraction for now, since I want to get this extractor merged. Thank you for your contribution! If you still would like to add the comment extraction logic, please open a new PR.

Sorry I forgot about this. Thank you so much!