java.lang.NoClassDefFoundError: com.firebase.client.Firebase

I just run you app then suddenly crash. I just found out that your android SDK don't have com.firebase.client.Firebase class
Error message
03-12 01:19:31.664: E/AndroidRuntime(29209): java.lang.NoClassDefFoundError: com.firebase.client.Firebase

Add Firebase SDK to the project.

@nandha-dev  @datomnurdin
I have added thedepandency as mention in quick start. But it seems like not working. I am still getting crashing problem.
I have also remove the dependency and add jar library. But still no solution.
I really need help in that to start working my app.
Sincerely,
Shreyash

Hello, @datomnurdin @nandha-dev
I have follow the instruction to integrate Firebase as explain below:
https://www.firebase.com/docs/android/quickstart.html
However, it is working fine with Lollipop devices. But when I run same app in android devices lower then Lollipop, the application get crashed. I have checked the log, which shows the error like below:

java.lang.VerifyError: com/firebase/client/Firebase

I have check the log and come to know that, the issue is at below line:
Firebase.setAndroidContext(this);

I have Google about this issue, somewhere found one suggestion that you need to add jar file. So I have remove dependency and added jar file as mention. But even after adding jar library, I am not getting success in it. I am not figure out where it the issue.
I need your reply in solution to this.
Thanks.

Hello, @datomnurdin @nandha-dev
I have try in so many ways but could not able to resolved this issue. Its very strange issue. I have just mane new TestApp and integrate Firebase in it. Its working fine, but when i run my original app, it get crashed.
Need someone expert to help in this.
FYI, Error log is like as below.....
java.lang.VerifyError: com/firebase/client/Firebase
at com.somename.myappname.MyApplication.onCreate(MyApplication.java:37)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:999)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4151)
at android.app.ActivityThread.access$1300(ActivityThread.java:130)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1255)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4745)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
Sincerely,
Shreyash

Hi Shreyash,
I've just pulled a clean copy of the AndroidChat repo and don't see any problems when I run it. Can you post a minimal reproduction of your problem, e.g. by creating a repo with your project?
   Frank

@puf @datomnurdin
Hello, I am not sure, where is the exact issue. But it is resolved when i have updated the google plat service library.
Initially i don't know the version of the google play library. So i have added it like below:
compile 'com.google.android.gms:play-services:4.+'
( I have added like this because somewhere it is written that, with this it will automatically detect the version of the google play store.)
However i am not getting compilation error or any other problem but it get crashed on the Lower version of android devices on mention line of  Firebase.
I have manually, remove login one by one and then add it and when i change the play service library, it seems like proper working. I have added below library version of the google plays service
compile 'com.google.android.gms:play-services:4.1.0'
It is really strange issue. Firebase should work with any google play library version but it is not for android lower version.
Anyway, thanks for the reply and support for the issue. I would like you to check in the google play services library and check whether there is issue with that or not.
Thanks.
Sincerely,
Shreyash

@puf @datomnurdin
Once the issue is resolved as i have explained above. But after that i got another issue of VarifyError on another screen of my app.
I have search a lot for the cause of that issue. Please refer below link for same:
http://stackoverflow.com/questions/100107/reasons-of-getting-a-java-lang-verifyerror
http://stackoverflow.com/questions/668788/android-java-lang-verifyerror
http://solvedstack.com/questions/reasons-of-getting-a-java-lang-verifyerror
http://solvedstack.com/questions/android-java-lang-verifyerror
Finally I have removed the firebace library and code from my project and do try. Problem is resolved.
Still i am not sure why this issue happen, but that is sure that if I remove firebase, application works fine without VarifyError but if i add Firebase library, I got VarifyError on unexpected screen.
I guess, there might be some class file in firebase library causes the VarifyError issue.
I will wait to have solution to this issue.
FYI, Do not try the demo given by firebase, but add that dependency to own project and try it. I have Facebook library, Fabric library and google play library available in my project.
Sincerely,
Shreyash

This thread is already quite long and I still have not reproduced your problem. Can you post a repo that reproduces the problem you are having?

@puf
Well, I can not upload code on github as its a privacy policy of the client I am working with. I can make a demo and will share it with you. Give me some time, i will do it and let you know.
Thanks for the reply and support.
Sincerely,
Shreyash

Thanks, @ShreyashPromact! A demo is usually much better than a copy of the code anyway. We generally don't have the experience and bandwidth to troubleshoot an entire app, but by simplifying it to a smaller sample (presumably something that will be fairly straightforward if you understand the code and the use case), it makes the problem much easier to spot and address.

@ShreyashPromact am I correct that the issue is not strictly based on this AndroidChat repo? In that case it might also be better to move it over to a more generic place like StackOverflow. Both Kato and I will be there too, but you'll also get a much wider audience.

@puf
Yes true. Please share a link of stackoverflow with me. I will be available there to discuss regarding this things. If there is no other issue in this, you can please close this issue.
Thanks.
Sincerely,
Shreyash

www.stackoverflow.com Tag your question with Firebase and Android. See this link for their description of a minimal reproduction: http://stackoverflow.com/help/mcve


[$250] Web - Expense - Two RHPs open when opening Add receipt modal via TAB key

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.4.83-0
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail: N/A
Issue reported by: Applause - Internal Team
Action Performed:

Go to staging.new.expensify.com
Go to workspace chat
Go to + > Submit expense > Manual
Enter amount > Next
Using TAB key, open Add receipt modal (below To field, not 3-dot menu)
Might need to repeat Step 5 a few times to reproduce this issue

Expected Result:
In Step 5, when opening Add receipt modal via TAB, the modal will slide smoothly from the right
Actual Result:
In Step 5, when opening Add receipt modal via TAB, two RHPs open - one is workspace chat details, another one is Add receipt modal
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/Expensify/App/assets/78819774/479df87b-6e8a-42d4-89f4-9f64a75bd63a
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~0113c5af3ca5595eff
Upwork Job ID:<PHONE_NUMBER>146054436
Last Price Increase: 2024-06-13

Issue OwnerCurrent Issue Owner: @jayeshmangwani

We think that this bug might be related to #wave-collect - Release 1

I can't seem to be able to reproduce this. @jayeshmangwani @anmurali @mountiny Can you guys double check?

@pecanoro I am not able to reproduce this in main, though I can reproduce on staging

I tried on staging and I can't haha Maybe it's some weird edge case?

I am going to leave it open for suggestions but remove the deploy blocker label.

Weirdly, after trying a few times, I am now able to reproduce it on the main branch too. 😕
https://github.com/Expensify/App/assets/35371050/dd7a5f01-2bb5-416c-8508-dae023f69a66

Also could not repro

This has been labelled "Needs Reproduction". Follow the steps here: https://stackoverflowteams.com/c/expensify/questions/16989

I am going to close it since I tried again and it seems to be working fine


return hash with symbol keys in Database module

won't do as would require active support or boilerplate


Add Without<Parent> filter to sync_simple_transforms' orphaned entities query

Objective
sync_simple_transforms only checks for removed parents and doesn't filter for Without<Parent>, so it overwrites the GlobalTransform of non-orphan entities that both removed and added a parent since the last update.
Introduced by #7264
Solution
Filter for Without<Parent>.
Fixes #9517, #9492 (needs confirmation)
Changelog
sync_simple_transforms:

Added a Without<Parent> filter to the orphaned entities query.

Can you add some regression tests to make sure that this fixes the issues?

Definitely a reasonable fix, but I'd also like to see a test or three.

Can you add some regression tests to make sure that this fixes the issues?

Will do.
I'd like to get @Nicopap to review as well. I think my understanding of the problem is correct, but want to make sure that there wasn't a good reason for not filtering by Without<Parent>.


⚠ Bofrost.lu has degraded performance

In 9f1924b, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1750 ms

Resolved: Bofrost.lu performance has improved in 088b1c1 after 6 minutes.


License file fix for #34

Moves the license files to package_data instead of data_files

I think it would be better that the licenses stay in the root of this repository. By moving them to cv2 folder Github can't autodetect the license and it's harder to find them when they are "hidden".
No big changes needed, just copy the licenses to the cv2 folder during build process. This has to be done before setup.py is called.
And don't worry about the broken builds, I'm looking into that issue.

Updated the travis yml file to copy those license files as part of the before_install step - does this work?

Yes, that should do it. Could you also add it to the Windows builds? New xcopy line to appveyor/build.cmd should be enough.

Of course, forgot that setup.py needs it there either way. 🙄 My bad.

No problem and thanks :) I will merge this when I get the builds fixed.


Unable to retrieve secret as plain text

❯ Get-Secret -Name 'Some secret' -AsPlainText  -Vault lastpass -Verbose
VERBOSE: Invoking command Get-SecretInfo on module SecretManagement.LastPass.Extension
VERBOSE: Secret information was successfully retrieved from vault lastpass.
VERBOSE: Invoking command Get-Secret on module SecretManagement.LastPass.Extension
VERBOSE: Secret Some secret was successfully retrieved from vault lastpass.

UserName                                                      Password
--------                                                      --------
<EMAIL_ADDRESS>                   System.Security.SecureString

For some reason I am unable to retrieve Lastpass secrets as plain text. Can someone reproduce the issue, or is it an error on my side?
❯ gmo *Secret* | select name,version

Name                                  Version
----                                  -------
Microsoft.PowerShell.SecretManagement 1.0.0
Microsoft.PowerShell.SecretStore      1.0.0
SecretManagement.LastPass             0.2.1

❯ $PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.1.3
PSEdition                      Core
GitCommitId                    7.1.3
OS                             Microsoft Windows 10.0.19043
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

For now I'm using this workaround (source):
[System.Runtime.InteropServices.Marshal]::PtrToStringAnsi([System.Security.SecureStringMarshal]::SecureStringToCoTaskMemAnsi((ConvertTo-SecureString -String ((Get-Secret -AsPlainText foo).Password | ConvertFrom-SecureString) -Force)))

I'm gonna need some help with this extension since I don't use lastpass anymore :(

Oh... missed that this was the LastPass provider for SecretManagement... The workaround works like a charm with KeePass 😋
So, sorry, I can't help...

You can store the secret in a variable, and then use the ConvertFrom-SecureString cmdlet on the Password property of that variable with the switch -AsPlainText to see the password.
Example:
$mySecret = Get-Secret -Name "Some secret"
ConvertFrom-SecureString $mySecret.Password -AsPlainText
This will only work if $mySecret is of type Selected.System.Management.Automation.PSCredential, which has a Password property of type System.Security.SecureString
Let me know if this helps!

I have written a wrapper for this:
# Get-SecretPasswordAsPlainText.ps1
param([Parameter(Mandatory = $true)][string] $Name, [string] $Vault)

[System.Runtime.InteropServices.Marshal]::PtrToStringAnsi([System.Security.SecureStringMarshal]::SecureStringToCoTaskMemAnsi((ConvertTo-SecureString -String ((Get-Secret -AsPlainText -Name $Name -Vault $Vault).Password | ConvertFrom-SecureString) -Force)))


Added AttackSeam to Actions

Fixes https://github.com/DeamonHunter/AWBW-Replay-Player/issues/139
Known issues:

when undoing to a previous turn, units that attacked the pipeseam are not greyes out
desync errors: Destroyed pipe seams can have different CP values, sometimes they are at 20 CP and sometimes at the last CP before the pipeseam was destroyed, couldnt figure out why

Hi thanks for doing this!
I've gone ahead and merged this in, with some changes. Mostly minor stuff like adding in animations, format cleanup. Did end up fixing the bugs you meantioned. (Though might've added more... haha)

This was caused by not setting unit.TimesMoved = 1; in the SetupAndUpdate method. Its admittedly a bit jank that it doesn't pick up based on firing.
Found a cause of desync, when returning a building back to normal, it didn't set the capture value at all. Starting at GameMap Line 667.

No problem, thanks for making the tool in the first place ^^


Missing endpoint for "Lookup by Company Name"

I was trying to request the v2/company/search.json?companyName=fullcontact' API endpoint without success, so I start to read your code and I found that FullContact.Py does not support this specific endpoint. Click here to go to the line I'm talking about.
The missing endpoint described above is documented inside the FullContact official documentation, as you can see here. There's any plans to implement this missing endpoint?

@paladini endpoint added. Thanks for bringing that to our attention.


Compact Machines with Larger Vertical Space

While I understand that the current size of the Maximum Compact Machine is meant to fit inside a single chunk, I think it would be quite useful to have Compact Machines with larger vertical space as well. This would allow players to fit more into a single chunk, and be situationally useful for multiblocks from mods like Extreme Reactors.
As for the recipe, you could require three blocks inside 5x5x5 recipes instead of one. In the case of the Maximum Compact Machine, you’d add an additional Emerald block above and below the one in the current recipe to designate that you want it to be taller.
I recognize that this is probably not going to be implemented in Compact Machines 3, but it is worth considering for Compact Machines 4 when 1.13 comes out. It shouldn’t require much in the way of changes to implement.
And yes, I’m mainly asking because I want to build an Extreme Reactors Turbine.

No, the more people ask for this the less likely it gets that I implement it. It would also require a major rewrite of some of the internal mechanics. The recipe would be the least of the problems caused by this.


Reporting should be separated from the audits themselves

The audits are "doing too much". They are responsible for doing the install or cleanup, but then also doing the reporting. This should be a separate concern, and not in the same package as the audits themselves.

#294 factors out report somewhat naively may be there is a better approach what do you think ?


For a 2.1.0 release

#15

Codecov Report

Merging #16 (a248bce) into master (d63cd06) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #16   +/-   ##
=======================================
  Coverage   97.67%   97.67%
=======================================
  Files           2        2
  Lines          43       43
=======================================
  Hits           42       42
  Misses          1        1

Impacted Files
Coverage Δ

src/ScientificTypesBase.jl
94.73% <ø> (ø)

Continue to review full report at Codecov.

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


UDS connection only accessible to root

(If the "port" specified in /etc/xrdp/xrdp.ini is an absolute path then a
Unix Domain Socket (UDS) is created instead of a TCP port. I want to use
this feature to implement authentication over SSH, issue #773.)
UDS files are created by trans_listen_address() and given permissions 0660, so only root can connect to it.  I want the RDP incoming connection only to be given permissions 0666 so that any user can connect.  I would do this in xrdp_listen_main_loop() just after trans_listen_address().
Will that be acceptable or should I require an /etc/xrdp/xrdp.ini option to be set?  (E.g. "af_unix_auth" from #773.)
Test case:

Edit /etc/xrdp/xrdp.ini to set "port=/var/run/xrdp-local.socket".

Restart xrdp.

Run the following.
socat TCP-LISTEN:12345 UNIX-CONNECT:/var/run/xrdp-local.socket &
rdesktop localhost:12345

Expected behaviour: rdesktop starts up and displays the logon dialog.
Observed behaviour: rdesktop exits with "ERROR: Connection closed" and
socat exits with "Permission denied".

I think specifying port to file is not designed to do such thing. But it is interesting for me.

@metalefty Specifying a file for the client RDP connection was added intentionally: see commit 8b1639b96b34c6867842fd0ad19203cf50a1c9d5, "xrdp: allow xrdp to listen in UDS".  And this actually works for me with this change plus #782.
To show specifically the change I propose, I have created pull request #784.

Closing issue because the fix has been merged (PR #784 commit 8b4d057).


Some makefile tweaks

@robertgzr I have reworked the entire makefile here:
https://github.com/balena-os/leviathan/pull/547/commits/3e6bbc732fc02834bf00dd464aecf6704af65d10
The main issue with that PR right now is the switch to alpine base images, so I might split it into multiple PRs since I really want the makefile stuff.

@klutchell good stuff :)


FIX: gracefully handle bad patient info in edf reader

I have EEG data that I  saved to EDF with MNE a long time ago (maybe 2 years ago). Reading that file back used to work, but I believe a regression/bug was introduced in #11952 . Specifically this block:
https://github.com/mne-tools/mne-python/blob/d810cc5977f95f76c3eb82db6b7003af68bd6176/mne/io/edf/edf.py#L826-L830
This code logic  assumed that patient hand info would be something like "hand=1" or "hand=2" but in my case it was "hand=None" which caused a ValueError because you cannot do int('None').
What does this implement/fix?
This PR just wraps things in a try-except block to gracefully handle weird cases like mine.
Additional information
I really don't know much about the EDF format, so cc'ing @paulroujansky as the author of https://github.com/mne-tools/mne-python/pull/11952. LMK if you think this looks reasonable to you!.
Also - Perhaps no change log necessary?

Thanks @scott-huberty!


dispatcher: make approximateMonotonicTime() more accurate

Commit Message: update the approximate_monotonic_time_ after polling instead of before polling. The Envoy FileEventImpl doesn't timeout the polling when there is no I/O. Updating  approximate_monotonic_time_ before polling could cause it to be lagged behind for a substantial period. approximateMonotonicTime() is only used by EnvoyQuicClock.
Additional Description: Register a new LibeventScheduler callback with evwatch_check_new() to do the update right before LibeventScheduler::onCheckForStats().
Risk Level: low, it should at most made no difference if not improving QUIC performance.
Testing: new unit test
Docs Changes: N/A
Release Notes: Yes
Platform Specific Features: N/A
Runtime guard: envoy.restart_features.fix_dispatcher_approximate_now

/assign @RyanTheOptimist

/retest

/retest

/retest

Looks like a real TSAN failure:
https://dev.azure.com/cncf/envoy/_build/results?buildId=178370&view=logs&jobId=d1f76054-8f79-554b-6f4a-11d6a63b8e00&j=d1f76054-8f79-554b-6f4a-11d6a63b8e00&t=33c64725-b304-5065-9740-0ce244fa1a25

Looks like a real TSAN failure:
https://dev.azure.com/cncf/envoy/_build/results?buildId=178370&view=logs&jobId=d1f76054-8f79-554b-6f4a-11d6a63b8e00&j=d1f76054-8f79-554b-6f4a-11d6a63b8e00&t=33c64725-b304-5065-9740-0ce244fa1a25

Fixed

/retest

These TSAN failure has nothing to do with dispatcher: https://dev.azure.com/cncf/envoy/_build/results?buildId=178449&view=logs&j=d1f76054-8f79-554b-6f4a-11d6a63b8e00&t=33c64725-b304-5065-9740-0ce244fa1a25&l=23569. But they are only reproducible with this PR. I'll take further look.

/wait


[RFC] BlockParam* classes refactoring

The existing BlockParam classes have some issues, which IMO prevent the use of them by default.

The biggest issues is the memory overhead: each instance has a linked list pointer, a pointer to the vtable (because it contains virtual methods), and a param_t handle (16 bits on NuttX, but because of the memory layout in that specific case, it will still use 32 bits). While the actual data we care about is only 32 bits.
Since we have >1000 params by now and tendency increasing, this will account for several kb's of (wasted) RAM, if those classes are used everywhere.
if the parent naming prefix is used, grepping the src tree for a param name will not find all usages. I already ran into problems because of this.
the parent naming prefix is optional, which makes the API confusing
the namespace name control is not appropriate (it's not only used for controllers anymore, so we should rename it). Any ideas?

Otherwise, the existing API is ok, which is why I largely tried to keep it, and only change the deficiencies.
Proposed solution
Since in the majority of the cases, we know which param we want already at compile-time, I decided to use an enum instead of a string to specify the parameter. This has benefits in terms of runtime (no param_find() required), and memory (no need to store the handle). In addition it's a template parameter, so that the type can be checked at compile-time.
This is how it's used: BlockParamFloat<px4::params::MPC_MANTHR_MAX> _manual_thr_max
Automatic Parameter updates
One thing missing from that is the automatic parameter update calls. As it turns out this is more difficult to achieve without overhead, and minimal boilerplate. What I wanted to do is to iterate over all fields of a struct. This requires a language-feature called Reflection, but C++ does not support that. The closest I found is this, which aliases a struct as a tuple (using lots of template magic so it's quite involved). A different solution uses macros, and I decided to do something similar: the block param definitions are wrapped in a macro, which automatically generates a (virtual) method that calls .update() for all params. This is then called as usual from the Block base class on a param update notification.
Final usage example (see 4c7d623 ):
	DEFINE_BLOCK_PARAMETERS(
		(BlockParamFloat<px4::params::MPC_MANTHR_MIN>) _manual_thr_min, /**< minimal throttle output when flying in manual mode */
		(BlockParamFloat<px4::params::MPC_MANTHR_MAX>) _manual_thr_max
	)

Potential programming/user errors
The use of a macro can lead to some usage errors:

forget to use the macro or use the block param classes outside of the macro.
Avoided by placing the class definitions into a special namespace, that makes it clear that it should not be used explicitly. In addition, we can add a class definition outside the namespace, that leads to a clear compile error message (using a static_assert), that the macro should be used instead.
In a custom class hierarchy, the child class must call the updateParams method of the parent. But C++ does not have a way to generically find the parent class'es name, so the macro cannot do that automatically. Instead, the macro marks the method as final, so that a wrong usage will lead to a compile error, forcing the user to use the extended macro, with explicit parent class (however this use-case is rather atypical, and I don't think we have it currently in our code-base).

Benefits

param type statically checked (type-safety w/o runtime overhead)
no invalid param handles anymore: A used param is guaranteed to be included in the build
reduced memory usage. The new interface is even better than the typical uses of the C API, since no param handle is stored. A block param really only requires the storage of the param (float or int32)
reduced runtime overhead: no param_find() & linked list operations -> faster bootup
the default constructor can be used (no additional code in the constructor's initializer list of the SuperBlock required)
src tree can still be grepped for parameter names

Drawbacks

no dynamic parameter names (the templated enum requires the param name to be known at compile-time). But we only use dynamic strings at a few places, and we can still use the C API for those.
no arrays possible (BlockParamFloat _mag_params[3]). Currently only used once in ekf2
the need for a macro, which is not so nice

Note that this only shows the basic working example, and will require additional cleanup.
Sorry, this description got way longer than expected.
Thoughts?

If you write a module that conforms to "best practices" huge portions of error prone manual boilerplate disappear, and you can really focus on the "business logic"

Right, and I think we have that now: using a param requires adding only a single line of code. If you remove even that, I think it becomes too intransparent for a developer (and things like, he/she cannot chose an appropriate variable name). Plus we wanted to move away from the _params.c files.

using a param requires adding only a single line of code

2-3 :smirk:
Don't get me wrong, this is still much better. I share your concerns about transparency. I regularly help people with simple things like adding params and using params, and either way (BlockParam or traditional) there's enough magic going on that it's hard to fully understand without understanding the full picture. I just can't help but wonder if there's a way to skip over even having good boilerplate.
What I was thinking of was if you just had a const reference to a struct with your parameter subset. Then in the code you could directly access params.MPC_MANTHR_MIN or similar. In the rare cases you need to commit, you manually use a BlockParam or the old API. Adding a new param would literally be 1 line.

All that being said, I'm in favour of this PR as an updated BlockParam and I'll help get it in if needed. My one nitpicky ask would be if we can try to make it slightly less verbose. Once settled I'd also like to make a concerted effort to use the new/updated API across the majority of the code base.

2-3 😏

Alright, depending on how or what you count 😃. I see your point though. Your method is probably doable, but still requires adding a macro to the class (and provide a module-specific struct name, that can be derived from the module name for example) to include the param struct & for the update method. Problems I see are that you don't see the type of the param (it's important to know whether you are working with a float or an int), you lose some generality: params used by multiple modules need to be handled differently (logger and VTOL come to my mind), library code is excluded (might be solvable though), and should we decide to centralize the params with JSON (or something else), it would probably require this to be changed again.
To me, given the gain (removed 1 line per param), does not outweigh the drawbacks.

I did the following updates:

moved the classes to a better place
dropped the Block* prefix & control namespace
handling of build dependencies (there might be a somewhat better way?)

Subscription/Publication classes
I planned to refactor these classes too at a later point, but it's becoming relevant for this PR as well (though I want to do a separate PR for that).
My idea is to make the ORB_ID a template parameter and provide 2 variations: one which contains the topic data, and another that does not. The version without the data basically only contains the file descriptor and allows for more efficient implementations which keep the topic data on the stack, for example like EKF2 is currently structured.
The definition will then look like this:
Subscription<parameter_update_s, ORB_ID(parameter_update)> param_update_sub;
SubscriptionWithData<vehicle_gps_position_s, ORB_ID(vehicle_gps_position)> gps_position_sub;

Benefits:

less error prone (topic data type & ORB_ID are right next to each other)
no separate initializer required
allows for better type-checking at compile-time
(much!) easier to extract uorb graph information
reduced overhead (vtable pointer, orb_metadata is a compile-time param)

Drawback: cannot be stored in a generic list/array. However looking at Flight Tasks for example, all we really need is the topic data and a way to update all subscriptions. This can easily be achieved by a subscription array that uses the C-API internally and returns a pointer to the requested topic data. Alternatively we can still add a non-templated abstract base class if needed.
Block/SuperBlock classes
Initially I planned to keep those, and just remove the unneeded overhead in the base class (the list of parameters and the name are not needed, and the dt is only used in LPE & some of the Block classes themselves). A heavy base class quickly adds up wasting resources (we've seen that before).
In addition to removing the Subscription & Publication lists (not needed in many cases as only the main module contains subs/pubs), this leaves the class pretty much empty.
For these reasons I propose to add a new base class ModuleParams that will be used instead to handle the automatic param update propagation. Additional benefits:

Only a single base class, which avoids confusion between SuperBlock & Block (I've seen them being used wrong in multiple cases). But this might as well just be due to lack of class documentation.
no automatic update() call for all subscriptions/publications. This can be seen as a drawback, but I think it's actually better, because then you get a chance to know which topics got updated. This can be used to reduce computational load and allows more control over when a topic is updated or published.
incremental refactoring is possible
only pay for what you use/want: it's more modular, allowing you to inherit only from the things you need.

The existing Block & SuperBlock classes can be reduced eventually to only contain dt (which is their main use within controllib).
As an example, I updated the template module: 300af3c
Thoughts/criticism/better ideas?

I missed your last update 8 days ago, but I definitely like the ModuleParams base class idea, and in fact wanted to take that idea further. I'll review this in detail.
On the topic of Subscriptions I have some fundamental questions/ideas I'd like to discuss.

I changed the navigator to use the new Param classes and RAM usage is already reduced by 1 KB.
This is now ready for review and/or merge. I'd like to get this in soon (if people are happy with it), to avoid rebase troubles. The refactoring of the rest can be done in steps.
@dagar I removed some final keywords (https://github.com/PX4/Firmware/pull/8789/commits/a440a9813461a6a1295ad2aa74421d960644c743), since I think we should not artificially restrict class hierarchies. This is in accordance to the C++ Core Guidelines: http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Rh-final. Of course if you feel otherwise, we can discuss it.

On the topic of Subscriptions I have some fundamental questions/ideas I'd like to discuss.

Sure, if you want to discuss it directly, we can have a call, or write me on slack (but not today anymore).

Lgtm.

Thanks for the reviews


Implement more controls on how Container is loaded, including ability to apply cached ops

This PR supersedes https://github.com/microsoft/FluidFramework/pull/5485
Addresses #5477
It gives a lot of flexibility to developers to control loading process.
In particular, it allows Bohemia to apply cached ops before container is returned, and (optionally) allow ops from storage to continue to trickle in through initial boot / render cycle to speed up catch up process (this would need to be tested to ensure existing code behaves correctly in presence of changes).
Better test coverage is required (happy to hear what tools we have here).
In particular, I need to control summarization process (i.e. force summary) in order to verify all options.

@anthony-murphy , can you please glance? I'd love to get it in before fork.
If you see some good way to add UTs here - please let me know, I'll poke around


"outside root contents directory" error when run cell.

Environment data
Build of Visual Studio Code - Insiders: 1.67.0-insider(user setup)
Build of python-insider: v2022.5.11051003
Build of jupyter-insider:v2022.4.1001071005
Build of pylance-insider: v2022.4.1
Build of jupyter Notebook Renderers: v1.0.6
Build of jupyter Keymap: v1.0.0
Steps to reproduce:

Make sure Anaconda installed in local
Open the file src/test/datascience/manualTestFiles/manualTestFile.py in VS Code
At the top of the file it will list the things that you need installed in your Python environment
On the first cell click Run Below

Expected behaviour
Interactive Window should open, show connection information, and execute cells
Actual behaviour
"outside root contents directory" error pops up.

Create a new Jupyter Notebook and input some code to run. This issue also occurred.

Logs
[DEBUG 2022-3-19 6:50:33.915]: Getting activation commands for file:///c%3A/ProgramData/Anaconda3/python.exe [DEBUG 2022-3-19 6:50:33.915]: Getting activation commands for file:///c%3A/ProgramData/Anaconda3/python.exe are cached. [DEBUG 2022-3-19 6:50:33.916]: Got env vars with python c:\ProgramData\Anaconda3\python.exe in 1914ms [DEBUG 2022-3-19 6:50:36.250]: Telemetry Event : HASHED_PACKAGE_PERF Measures: {"duration":0} Props: {"isInsiderExtension":"true","ds_notebookeditor":"native","localOrRemoteConnection":"local","isPythonExtensionInstalled":"true","rawKernelSupported":"false","installSource":"marketPlace","VSCode.ABExp.Features":"invitationLink;installRecovery;livesharecontinuousaacf;reusableLinks;RemoveKernelToolbarInInteractiveWindow;portForwardingServiceEnabled-development;portForwardingServiceEnabled-staging;portForwardingServiceEnabled-production;jupyterTest;pylanceIndexingEnabled;pythonSurveyNotificationcf;jupyterEnhancedDataViewer;pythonDeprecatePythonPath;mindaroBinariesVersion-1.0.20210702;mindaroBinariesVersion-1.0.20210723;account-aa;pythonInterpreterInfoPinned;config.python.createNewFileEnabled","abexp.assignmentcontext":"vsliv695:30137379;vsins829:30139715;vsliv368cf:30146710;vsreu685:30147344;python383:30185418;vspor879:30202332;vspor708:30202333;vspor363:30204092;vsjup275:30257432;pythonvspyl392:30422396;pythonvspyt551cf:30291413;pythondataviewer:30285072;pythonvspyt200:30323110;bridge0708:30335490;bridge0723:30353136;vsaa593:30376534;pythonvsnew555:30438690;pynewfile477:30451556;","isamlcompute":"false","userExecutedCell":"true"}  [DEBUG 2022-3-19 6:50:37.677]: Telemetry Event : DS_INTERNAL.HASHED_OUTPUT_MIME_TYPE_PERF Measures: {"duration":1} Props: {"isInsiderExtension":"true","ds_notebookeditor":"native","localOrRemoteConnection":"local","isPythonExtensionInstalled":"true","rawKernelSupported":"false","installSource":"marketPlace","VSCode.ABExp.Features":"invitationLink;installRecovery;livesharecontinuousaacf;reusableLinks;RemoveKernelToolbarInInteractiveWindow;portForwardingServiceEnabled-development;portForwardingServiceEnabled-staging;portForwardingServiceEnabled-production;jupyterTest;pylanceIndexingEnabled;pythonSurveyNotificationcf;jupyterEnhancedDataViewer;pythonDeprecatePythonPath;mindaroBinariesVersion-1.0.20210702;mindaroBinariesVersion-1.0.20210723;account-aa;pythonInterpreterInfoPinned;config.python.createNewFileEnabled","abexp.assignmentcontext":"vsliv695:30137379;vsins829:30139715;vsliv368cf:30146710;vsreu685:30147344;python383:30185418;vspor879:30202332;vspor708:30202333;vspor363:30204092;vsjup275:30257432;pythonvspyl392:30422396;pythonvspyt551cf:30291413;pythondataviewer:30285072;pythonvspyt200:30323110;bridge0708:30335490;bridge0723:30353136;vsaa593:30376534;pythonvsnew555:30438690;pynewfile477:30451556;","isamlcompute":"false","userExecutedCell":"true"}  [DEBUG 2022-3-19 6:51:37.732]: Telemetry Event : DS_INTERNAL.COMMAND_EXECUTED Measures: undefined Props: {"command":"jupyter.viewOutput","isInsiderExtension":"true","ds_notebookeditor":"native","localOrRemoteConnection":"local","isPythonExtensionInstalled":"true","rawKernelSupported":"false","installSource":"marketPlace","VSCode.ABExp.Features":"invitationLink;installRecovery;livesharecontinuousaacf;reusableLinks;RemoveKernelToolbarInInteractiveWindow;portForwardingServiceEnabled-development;portForwardingServiceEnabled-staging;portForwardingServiceEnabled-production;jupyterTest;pylanceIndexingEnabled;pythonSurveyNotificationcf;jupyterEnhancedDataViewer;pythonDeprecatePythonPath;mindaroBinariesVersion-1.0.20210702;mindaroBinariesVersion-1.0.20210723;account-aa;pythonInterpreterInfoPinned;config.python.createNewFileEnabled","abexp.assignmentcontext":"vsliv695:30137379;vsins829:30139715;vsliv368cf:30146710;vsreu685:30147344;python383:30185418;vspor879:30202332;vspor708:30202333;vspor363:30204092;vsjup275:30257432;pythonvspyl392:30422396;pythonvspyt551cf:30291413;pythondataviewer:30285072;pythonvspyt200:30323110;bridge0708:30335490;bridge0723:30353136;vsaa593:30376534;pythonvsnew555:30438690;pynewfile477:30451556;","isamlcompute":"false","userExecutedCell":"true"}

I'm getting this too:

Just disable zmq support.
I believe this is related to this change here:
https://github.com/microsoft/vscode-jupyter/commit/a27632502a0c6027384055dec659a57821a4581f


Permission browser callback issue

When the application tries to obtain it's access token, it opens the default web browser.
On my machine http://localhost:80 pointed towards an IIS server and intercepted the callback with the token.
Now it seems like this browser opening thing is part of SpotifyAuthServer which seems sealed.
I think it's a better way to open a WebBrowser component with a NavigatedEventHandler to catch certain url schemes with the access token.
I've used this before with the Azure API
WebBrowser.Navigated += NavigatedEventHandler;

...

private void NavigatedEventHandler(object sender, NavigationEventArgs e)
        {
            if (e.Uri.Scheme == CallbackUri.Scheme)
            {
                var parsedQuery = HttpUtility.ParseQueryString(e.Uri.Query);
                var token = parsedQuery.Get("spotify_token");
                // Make callback and save correct tokens
                Close();
            }
        }

Using another port should be fine right? I have that in the works.

Yes that would also fix this issue.

The latest version 0.7.2 has an option to change the port

Important notice when trying to configure this setting, is to edit the redirect URI in the spotify developer console. Otherwise you will get an INVALID_CLIENT: Invalid redirect URI error

I easily solved this problem as you said before, changing the Redirect URI. I choosed port 8081
On spotify:

on audioband settings:

Now it works perfect!


Research options for streaming a movie to many frosh (>50)

Coffeehouse will be streaming a movie to many frosh as an activity one night. We need to find an option that will let them stream a movie to all frosh that want to watch, and the cap of 50 on Discord is too low. Look into and present some other options. It doesn't have to be free as we can allocate a small amount of budget if needed.

Have we given any thought to just using zoom? Idk if it breaks their TOS but given that lectures over zoom are generally pretty accessible, it may work.
The ability to mute everyone exists, and I think separate chats can be created for teams. Additionally, if users are on computers, they can also join a discord voice channel and talk over the movie with their teams.

That's a really good point / idea. I'm going to look more into that because that does sound like the easiest.


require("form-data") returns undefined in Safari in webworker

When executing the following code:
var FormData = require("form-data");
var formData = new FormData();

I see the following error in the console output:
[Error] TypeError: undefined is not a constructor (evaluating 'new FormData()')

This code works fine in Firefox + Chrome.

it looks like the issue is that self.FormData returns undefined in a web worker in Safari.

May be it is a problem with the browser field in the package.json?
Loaded in browser FormData is the browsers implementation.

Just had the problem with the request module (browserifyed version) ;-) They use methods which doessn't exist in the browser. But that another issue :-)


Code Highlighting sample sheet

There needs to be a sample specimen doc with different code blocks using the different code types used within the projects as a basic standard for how a block should look when using highlightjs, in both light and dark mode
Will also need a way to create a gulp preview

Totally agree with this. We could use this opportunity to switch to something like Vite. What do you think?


Wait for result when deploying from studio

superseded by https://github.com/nearprotocol/NEARStudio/pull/89


Scroll is too slow

I have a requirement that recyclerview shouldn't be focused on evrey dpad down or dpad up pressed. User when pressing dpad down or up, it is going slow and on every item inside recyclerview, method onFocused is being called and in my case epg list is being downloaded. I want from user to be able to fast scroll down when pressing dpad and when he stops, right then download epg list. Sorry for my english, however I hope you will understand what I am saying.

It doesn't pass fast all items. It is going slow when you hold down key D-pad Down on remote control. You can see that it has to focus every next item and I want this case, when user hold down key D-pad down or D-pad up, it would fast pass all items inside list and when he stops, than the method for onFocused will be called.

it only select item not visible that will be slide center, please see my note


Error while process words that are captalized but function is running fine !

Challenge Search and Replace has an issue.
User Agent is: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:

function myReplace(str, before, after) {
  str = str.split(' ');
  str[str.indexOf(before)] = after;
  return str.join(' ');
}

myReplace("A quick brown fox jumped over the lazy dog", "jumped", "leaped");

Challenge has no issue, your code has one. :)
Hint:

NOTE: Preserve the case of the original word when you are replacing it. For example if you mean to replace the word "Book" with the word "dog", it should be replaced as "Dog"

Thank you for reporting your issue.
As @JoolsMcFly mentioned.. your code is wrong
This is a standard message notifying you that this issue seems to be a request for help. Instead of asking for help here, please click the "Help" button on the challenge on freeCodeCamp, which will take you to the help chatroom for that specific challenge. You can also view our full list of official chatrooms.
If you think I'm wrong in closing this issue, please reopen it and add further clarification.
Thank you, and happy coding.


04/08/2018 20:55 : Create Pull Request for branch prTesting_2018040820 -> master

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestCon.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Brew install on macOS installs v0.1

Hello,
I have run the Homebrew commands to install ets on a Mac running macOS 12.4.  The brew install only provided version 0.1 of ets.
Can you advise on how to install v0.2.1 ?
Thanks.

Hey @section83, please read https://github.com/zmwangx/ets/issues/37 for a link to a current binary release, for both Intel and Apple Silicon Macs. There is no homebrew tap there yet, but it may be created in the future!


TypeError · Cannot read property 'reduce' of undefined

Bug Report
TypeError Cannot read property 'reduce' of undefined
    node_modules/semantic-ui-react/dist/commonjs/lib/AutoControlledComponent.js:193 AutoControlledComponent
    node_modules/semantic-ui-react/dist/commonjs/addons/Portal/Portal.js:65 new t
    node_modules/react-dom/cjs/react-dom.production.min.js:174:470 Rg
    node_modules/react-dom/cjs/react-dom.production.min.js:202:15 xh
    node_modules/react-dom/cjs/react-dom.production.min.js:203:230 yh
    node_modules/react-dom/cjs/react-dom.production.min.js:212:213 Vh
    node_modules/react-dom/cjs/react-dom.production.min.js:211:276 Yh
    node_modules/react-dom/cjs/react-dom.production.min.js:211:112 Wh
    node_modules/react-dom/cjs/react-dom.production.min.js:209:243 Ah
    node_modules/react-dom/cjs/react-dom.production.min.js:207:315 og

Steps
No idea yet (Maybe <Portal/> component?)
Version

semantic-ui-react: 0.82.1
react: 16.4.1

Affected User Environments

browserName: Chrome
browserVersion: 40.0.2214
locale: en-US
os: Windows 7
userAgent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.85 Safari/537.36

I found above error in our error monitoring tool.
Have no idea to repeat this issue yet, but hope this issue can be prevented by adding simple guard code here:
https://github.com/Semantic-Org/Semantic-UI-React/blob/7da1dd029471f653bac513661d27ac5092ef523d/src/lib/AutoControlledComponent.js#L131-L149

In development we're checking that autoControlledProps are defined: https://github.com/Semantic-Org/Semantic-UI-React/blob/7da1dd029471f653bac513661d27ac5092ef523d/src/lib/AutoControlledComponent.js#L80
Sorry, but without a repro case this issue doesn't make a sense. Please also check you aren't using uglify-es, it causes really weird bugs:
https://twitter.com/dan_abramov/status/1060216917493981184

Thanks, that might be the problem. 👍


Unable to call static methods

All static methods are apparently exported as non-static. It results in a fatal error when trying to access any static methods of a class from an extension. There was no such problem with PHP-CPP-LEGACY.
Source (myextension1.cpp):
#include <phpcpp.h>

class MyClass : public Php::Base
{
    public:
        static Php::Value staticMethod(){return true;}
};

extern "C" PHPCPP_EXPORT void *get_module()
{
    static Php::Extension myExtension("myextension", "1.0");
    Php::Class<MyClass> myClass("MyClass");
    myClass.method<&MyClass::staticMethod>("staticMethod");
    myExtension.add(std::move(myClass));
    return myExtension;
}

Build:
g++ -o myextension1.so -shared -fPIC -std=c++0x -Wall -lphpcpp myextension1.cpp

Test:
php -dextension=./myextension1.so -r 'var_export(MyClass::staticMethod());'

Output:
PHP Fatal error:  Uncaught Error: Non-static method MyClass::staticMethod() cannot be called statically in Command line code:1
Stack trace:
#0 {main}
  thrown in Command line code on line 1

However, this works:
# php -dextension=./myextension1.so -r '$obj = new MyClass();var_export($obj->staticMethod());'
true

OS: Ubuntu 16.04
PHP version: 7.0.4-7ubuntu2.1

Fixed this one too. Thanks for reporting!


document how to build and test archetype for developers

Currently, we just run mvn clean install from archetypes folder to do the build and it prints out notes as the end as to how to test generated archetypes using helidon cli i.e. helidon init --reset --url file:///Users/<XXX>/helidon/archetypes/helidon/target/cli-data
We want to document this along with how to skip test using -Darchetype.test.skip=true option etc.

This is addressed with https://github.com/helidon-io/helidon/pull/5939


WARNING: Too many active WebGL contexts. Oldest context will be lost.

Is it suppose to be?
never end of pumping warning, could make any developer panic!

Same issue. It occures on browser reloading

Would like to follow up on this as well!


ListView: Rendering multiline or long text fields

Category
[ ] Enhancement
[ ] Bug
[ V] Question
Version
Please specify what version of the library you are using: [2.3.0 ]
Question
Suppose we have a simple case with a few columns. The "Note" column contains between 3 and 30 words. Is there a way to wrap the "Note" column to display either all contents of this field or at least show more rows?

Is it possible to get the columns to render in this way?

Sample code used
<ListView
items={props.items}
viewFields={[
	{
		name: "InputDate",
		displayName: "Input Date",
		sorting: true,
		isResizable: true,
		maxWidth: 70
	},

	{
		name: "Notes",
		displayName: "Notes",
		isResizable: true,
		maxWidth: 200,
	}
]}
compact={false}
selectionMode={SelectionMode.none}
showFilter={true}
filterPlaceHolder="Search..."
stickyHeader={true} />

It's probably a solution that will cause issues, but here is what i came up with so far:

<ListView
items={props.items}
viewFields={[
	{
		name: "InputDate",
		displayName: "Input Date",
		sorting: true,
		isResizable: true,
		maxWidth: 70
	},

	{
		name: "Notes",
		displayName: "Notes",
		isResizable: true,
                render: (item: RenataItem) => {
                            return (<p
                                style={{
                                    maxWidth: 190,
                                    height: 60,
                                    verticalAlign: "top",
                                    display: "table-cell",
                                    whiteSpace: "pre-wrap"
                                }}>
                                {item.Notes}
                            </p>);
                        },

		maxWidth: 200,
	}
]}
compact={false}
selectionMode={SelectionMode.none}
showFilter={true}
filterPlaceHolder="Search..."
stickyHeader={true} />

Result

Hi @Zerg00s ,
Even the below code should help in custom rendering to break the word


React step 5

Closes #
{{short description}}
Changelog
New

{{new thing}}

Changed

{{change thing}}

Removed

{{removed thing}}

pull request is fixed.
application is deployed to the IBM cloud. Path: http://carbon-tutorial-himagirishh-humble-otter-lx.mybluemix.net/#/


ARROW-10908: [Rust][DataFusion] Update relevant tpch-queries with BETWEEN

@Dandandan
Fixes per https://github.com/apache/arrow/pull/8892#discussion_r541944358

Codecov Report

Merging #8906 (737b001) into master (5353c28) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #8906   +/-   ##
=======================================
  Coverage   75.48%   75.48%
=======================================
  Files         181      181
  Lines       41649    41649
=======================================
  Hits        31439    31439
  Misses      10210    10210

Continue to review full report at Codecov.

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

@jorgecarleitao I think it should have been using >= and <= before instead of being replaced in the benchmarks by > and <. So the change now fixes the behavior?

I filed a separate subtask to track this work  https://issues.apache.org/jira/browse/ARROW-10817 as I think that is Arrow project standard (not to reuse tickets).

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 75.48%. Comparing base (5353c28) to head (737b001).

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #8906   +/-   ##
=======================================
  Coverage   75.48%   75.48%
=======================================
  Files         181      181
  Lines       41649    41649
=======================================
  Hits        31439    31439
  Misses      10210    10210

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Linking to pdf files inside public folder doesn't work on routing.

I have a repo that builds on top of solid-start here: https://github.com/nikitavoloboev/nikitavoloboev
I have a pdf file in public called cv.pdf: https://github.com/nikitavoloboev/nikitavoloboev/blob/main/public/cv.pdf
If I for example do this:
https://github.com/nikitavoloboev/nikitavoloboev/blob/a0ab2a594e77e0cbcc450de56099a15aa4691c06/src/components/Nav.tsx#L37
        <a class="nav-link" href="./cv.pdf">
          CV
        </a>

Inside the app if I go to this page, it will 404:
https://www.loom.com/share/900b34ae19904c59aed372d2a7457103
Not sure what I am doing wrong. I need to refresh the page for the PDF to actually show.

I can confirm this and also the same thing happens for api routes.
Seems like this happens because links are handled by https://github.com/solidjs/solid-app-router while files inside the public folder and api routes are not known by solid-app-router.
API routes also do not currently support parametric and wildcard routes like regular routes since that part is also handled by solid-app-router. I was about to make a PR for that but I'm now thinking there needs to be a bigger change to consolidate how routing works.

Now that we changed how the router works and it doesn't hijack every anchor I think this is no longer a problem. You can just do what the OP did and it works.


I could not find what I was looking for

Hi! I have a documentation issue on InstantSearch.js, I could not find what I was looking for which is: -- PLEASE FILL IN HERE --
I am trying to utilize instantsearch.js for something that doesn't appear to be very clear in the documentation or possible.
My use case is that I have a product catalog and using the connectors, I have refiners and a search box to get the correct results. However, what I need to do is add another filter to my query saying 'give me all the products that are missing the attribute 'device'.
Is it possible (using instantsearch.js preferably) to search my algolia indice for records that are missing an attribute?

Hi there @mswilson4040
Is it not possible to express that with an Algolia query. Sorry.
You could use a special facet like __no_value__ instead of not having the attribute.


raw data of example project download link

Due to network reasons, automatic downloading through code always fails. Can you provide a link to the original download of sample data? thank you

I'm going to go ahead and close this issue, reply here if this doesn't solve the problem and I can reopen for further discussion.


to_str_radix produces odd number of digits

I think this should return "0102" instead of "102".
How about supporting it by deciding on odd bits to fill leading zeros?
Glad to submit a pr to fix it.

Why do you expect leading zeros? The standard library doesn't do that -- println!("{:x}", 0x0102_u16); prints "102". But you can get that padding with a format like "{:04x}", and you can make that width "4" dynamic based on bits() too.


Getting started code throws error in notebook

Running this code from the Getting Started section of the readme.md:
from azure.devops.connection import Connection
from msrest.authentication import BasicAuthentication
import pprint

# Fill in with your personal access token and org URL
personal_access_token = '**removed**'
organization_url = 'https://**notthedevdomain**.visualstudio.com/'

# Create a connection to the org
credentials = BasicAuthentication('', personal_access_token)
connection = Connection(base_url=organization_url, creds=credentials)

# Get a client (the "core" client provides access to projects, teams, etc)
core_client = connection.clients.get_core_client()

# Get the first page of projects
get_projects_response = core_client.get_projects()
index = 0
while get_projects_response is not None:
    for project in get_projects_response.value:
        pprint.pprint("[" + str(index) + "] " + project.name)
        index += 1
    if get_projects_response.continuation_token is not None and get_projects_response.continuation_token != "":
        # Get the next page of projects
        get_projects_response = core_client.get_projects(continuation_token=get_projects_response.continuation_token)
    else:
        # All projects have been retrieved
        get_projects_response = None

Produces this error:
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
/tmp/ipykernel_19/1987585116.py in <cell line: 19>()
     18 index = 0
     19 while get_projects_response is not None:
---> 20     for project in get_projects_response.value:
     21         pprint.pprint("[" + str(index) + "] " + project.name)
     22         index += 1

AttributeError: 'list' object has no attribute 'value'

In this environment:

ArcGIS Notebooks
Server Information:
You are using Jupyter notebook.
The version of the notebook server is: 6.4.12
The server is running on this version of Python:
Python 3.9.16 (main, Jan 11 2023, 16:05:54)
[GCC 11.2.0]
Current Kernel Information:
Python 3.9.16 (main, Jan 11 2023, 16:05:54)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.34.0 -- An enhanced Interactive Python. Type '?' for help.

To solve this error you have to remove the ".value" on get_projects_response on line 20.
while get_projects_response is not None:
    for project in get_projects_response:

rather than the current:
while get_projects_response is not None:
    for project in get_projects_response.value:

Would be cool if the readme.md could get updated to improve the onboarding experience for this package.

It seems that the Getting Started code is expecting a specific kind of object, but when I run it, I get list.
After printing all of the projects in my org I get this error:

AttributeError                            Traceback (most recent call last)
/tmp/ipykernel_19/114958425.py in <cell line: 19>()
21         pprint.pprint("[" + str(index) + "] " + project.name)
22         index += 1
---> 23     if get_projects_response.continuation_token is not None and get_projects_response.continuation_token != "":
24         # Get the next page of projects
25         get_projects_response = core_client.get_projects(continuation_token=get_projects_response.continuation_token)
AttributeError: 'list' object has no attribute 'continuation_token'

To resolve this error, I removed the outer while loop and the if/else statement that was checking for the continuation_token resulting in this code:
for project in get_projects_response:
    pprint.pprint("[" + str(index) + "] " + project.name)
    index += 1

Whereas before it was:
while get_projects_response is not None:
    for project in get_projects_response:
        pprint.pprint("[" + str(index) + "] " + project.name)
        index += 1
    if get_projects_response.continuation_token is not None and get_projects_response.continuation_token != "":
        # Get the next page of projects
        get_projects_response = core_client.get_projects(continuation_token=get_projects_response.continuation_token)
    else:
        # All projects have been retrieved
        get_projects_response = None

I'm also looking for a way to get the continuation_token as this is required when you have a big list (like when you are going to get the list of builds).
I have not found yet a way around it using the library. Maybe the only option is to use requests directly.

Thanks @uncheckederror I was wondering why example was not working
I created a PR to change the README to help others
https://github.com/microsoft/azure-devops-python-api/pull/474


Fix errors in mobile app

Description

For fixing the issue related to fluro packages, I renamed all reference of Router class to FluroRouter.
Uncommented missing functions.

Fixes #524
Type of change

[x] Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?
No errors are now shown in the terminal and App can be run.
Checklist:

[x] I have performed a self-review of my own code
[x] My changes generate no new warnings
[x] New and existing unit tests pass locally with my changes

For point no, 2, can any of the project maintainers please tell if it's okay to just uncomment the missing code or is another fix necessary, assuming the code was originally commented out for some reason?

For point no, 2, can any of the project maintainers please tell if it's okay to just uncomment the missing code or is another fix necessary, assuming the code was originally commented out for some reason?

Thanks for the PR @amlannandy.
The code was initially commented due to an issue with the provider package, and if there are no issues with the build it's fine to uncomment it. The rest looks good to me.

Thanks for the PR @amlannandy.
The code was initially commented due to an issue with the provider package, and if there are no issues with the build it's fine to uncomment it. The rest looks good to me.

Thanks for the PR @amlannandy.
The code was initially commented due to an issue with the provider package, and if there are no issues with the build it's fine to uncomment it. The rest looks good to me.

Actually the app build was still failing. I had to update the gradle distribution url in another commit and now the app is working. 👍🏻

Thanks for the PR @amlannandy.
The code was initially commented due to an issue with the provider package, and if there are no issues with the build it's fine to uncomment it. The rest looks good to me.

Actually the app build was still failing. I had to update the gradle distribution url in another commit and now the app is working. 👍🏻


Warning: Unknown prop jsx on

I'am getting this error Warning: Unknown prop jsx on


[Improvement][dolphinscheduler-api] Optimization for task instances query

Search before asking

[X] I had searched in the issues and found no similar feature requirement.

Description
The action /projects/{projectCode}/task-instances is very slow,

Total count of table t_ds_task_instance is only 100, 000 +.
Below is the query sql for the action.
select
        // ...
        process.name as process_instance_name
        from t_ds_task_instance instance
        left join t_ds_task_definition_log define on define.code=instance.task_code and define.version=instance.task_definition_version
        left join t_ds_process_instance process on process.id=instance.process_instance_id
        where define.project_code = #{projectCode}
       // ...

I have 2 sugguestions for the performance optimization.

create a index for table t_ds_task_definition_log on column code,
the query performance is improved obvisouly.

the logic could be optimized in org.apache.dolphinscheduler.api.service.impl.TaskInstanceServiceImpl#queryTaskListPaging.

for (TaskInstance taskInstance : taskInstanceList) {
            taskInstance.setDuration(DateUtils.format2Duration(taskInstance.getStartTime(), taskInstance.getEndTime()));
            // TODO it could be optimized here.
            User executor = usersService.queryUser(taskInstance.getExecutorId());
            if (null != executor) {
                taskInstance.setExecutorName(executor.getUserName());
            }
        }

such as assemble an user map Map<Long, User> userMap outside of the loop.
Use case
improve the query performance.
Related issues
No response
Are you willing to submit a PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

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

I will solve the issue.

https://github.com/apache/dolphinscheduler/pull/7331 this is the PR, pls check and merge it if works, tks. @calvinjiang


Eslint changes only for quorum example

Test
./node_modules/.bin/eslint examples/quorum/**/*.js

My editor seems to want a comment like /* global Vow */, rather than the plural /* globals Vow */. Are these comments to make an editor syntax-color Vow correctly, or to make eslint happy, or both?

Just ESLint, but we should make your editor happy while we are at it :) I can change that.


Bundle Install Error

Build scan:
Repro line:
Reproduces locally?:
Applicable branches:
Failure history:

Failure excerpt:

Manticore gem is already installed


[Bug]: Hydrogen CLI Deploy Deployment Tokens Not Supported

Please confirm that you have:

[x] Searched existing issues to see if your issue is a duplicate. (If you’ve found a duplicate issue, feel free to add additional information in a comment on it.)
[x] Reproduced the issue in the latest CLI version.

In which of these areas are you experiencing a problem?
Hydrogen custom storefront
Expected behavior
I expected the command shopify hydrogen deploy to deploy my branch to Oxygen when running the command with the SHOPIFY_HYDROGEN_DEPLOYMENT_TOKEN environment variable presented and populated without needing any user interaction.
Actual behavior
Even when providing a deployment token, the CLI prompts the user to log in to their Shopify account both from my local machine and my deployment CI in Gihub Actions, which is making my deployment CI fail. I tried instead to provide the token using the -t option but was given the error "Nonexistent flag: -t". The same happened with the long-form version of the option.
Verbose output
2024-09-10T00:42:33.048Z: Obtaining the dependency manager in directory ***...
2024-09-10T00:42:33.051Z:
Running system process:
· Command: ruby -v
· Working directory: ***
2024-09-10T00:42:33.055Z: Obtaining the dependency manager in directory ***...
2024-09-10T00:42:33.056Z:
Running system process:
· Command: ruby -v
· Working directory: ***
2024-09-10T00:42:33.290Z: Request to https://monorail-edge.shopifysvc.com/v1/produce completed in 226 ms
With response headers:

x-request-id: 66e082ef-ba38-4fed-8d55-71057e1f21bd

2024-09-10T00:42:33.291Z: Analytics event sent: {
"command": "hydrogen deploy",
"time_start":<PHONE_NUMBER>027,
"time_end":<PHONE_NUMBER>042,
"total_time": 15,
"success": false,
"cli_version": "3.49.2",
"ruby_version": "2.6.10",
"node_version": "22.8.0",
"is_employee": false,
"uname": "darwin arm64",
"env_ci": false,
"env_plugin_installed_any_custom": false,
"env_plugin_installed_shopify": "["@shopify/cli","@shopify/cli-hydrogen","@shopify/plugin-did-you-mean"]",
"env_shell": "zsh",
"env_device_id": "87f2f3705d95aa1c5cfcdc33516e543d7399bffe",
"env_cloud": "localhost",
"env_package_manager": "npm",
"cmd_all_launcher": "npm",
"cmd_all_topic": "hydrogen",
"cmd_all_plugin": "@shopify/cli-hydrogen",
"args": "--token *** --verbose",
"error_message": "Nonexistent flags: --token, --verbose\nSee more help with --help",
"env_plugin_installed_all": "["@shopify/cli","@shopify/cli-hydrogen","@shopify/plugin-did-you-mean"]",
"metadata": "{"extraPublic":{},"extraSensitive":{}}"
}
Reproduction steps
Unfortunately, I cannot publicize my repository to provide a clone for reproduction but I'm simply running npx shopify hydrogen deploy. I have also tried installing the CLI with no change in result
Operating System
Mac OS Sonoma
Shopify CLI version (check your project's package.json if you're not sure)
3.66.1
Shell
zsh
Node version (run node -v if you're not sure)
v22.8.0
What language and version are you using in your application?
Node 22

I transfered this issue to the Hydrogen repo from the CLI repo, as this is the correct place for it :)


refactor: update jest and tests

@d3viant0ne looks like update jest is not solve problem :confused: investigate deeply


The HXMT (LE/ME/HE) spectra are added.

Thank you so much; this is very helpful. I've not worked on this instrument, so I can't do it - thank you so much for filling in the blacks here!


fix(aot-tools): add missing tsc-wrapped dep

Fix #2498

Should the typescript version be bumped as well?  Looks like tsc-wrapped has a peer dep of ^2.0.2

@clydin good catch, will update.

All looks good, only thing is that now TypeScript is at version 2.0.3

@Brocco I'll update that separately, we have 2.0.2 everywhere atm and I just wanted parity on this package.

Here it is: https://github.com/angular/angular-cli/pull/2738


Prepare for 53.3.0 release

Which issue does this PR close?
Part of

https://github.com/apache/arrow-rs/issues/6597

Rationale for this change
Prepare for release
What changes are included in this PR?

Update version to 53.3.0
Add CHANGELOG -- rendered here https://github.com/alamb/arrow-rs/blob/alamb/prepare_53.3.0/CHANGELOG.md

Are there any user-facing changes?
New version / changelog

🚀  -- here we go


"COVID-19 Exposure Logging - Weekly Update" - Strange information

I understand this isn't directly (only) a thing of CWA but as there is no real way to contact Apple and I would hope you are in contact with Apple about the framework and ways to improve it and the CWA UX. (The information in the FAQ is a bit sparse I think)
Describe the bug
The Apple ENF sends those weekly updates as you are well aware. Until today it was always "... identified 0 potential exposures ..." which I think is already misleading as any contact to another person is a possible exposure unless we can be sure those contacts are 100% covid free.
Today this changed: The counter suddenly changed to 5 so I had "5 potential exposures". When clicking the notification one lands inside the iOS COVID-19 settings dialog instead of the app which to me would be the logic target. But even worse you don't see any information in this settings dialog. The app state is green with "no exposure up to now".
Clicking through some of the checks in the log I saw only something like "Matched Key Count 1" on the topmost entry on 24.08., the same on the second entry on the 25. etc. Aren't this all the same exposures that then seem to be rechecked every day? This one match was counted 5 times until it wasn't matched this night so I know which day this matched might have occured.
Expected behaviour
Give more verbose information in the app. Like: The ENF matched 5 keys but you haven't been in close proximity...
That simplified interface is more annoying than verbosity.
Steps to reproduce the issue
Be near enough to someone who is later identified as expose but be outside the RKI parameters...
Technical details

iOS Version: 13.6.1
Device: iPhone 7 Plus

Possible Fix
More clarity and verbosity in the user interface and more open information about what happens behind the curtain.
Additional context
I think this kind of UX is more annoying and terrifying than not having the app although of course this for me is no reason to throw away the app.
Haven't been out in a sense of meeting people I don't know since Corona started but was on a train ride two weeks ago so maybe that match was there which with the current press about unreliability in trains ...
PS
While I'm on it you should in general talk better with Apple. They should for example auto-start each Covid-App at first download to trigger the dialog wheter to activate. And allow more regular tests than once a day and in case of a match give more information to be able to get a rough idea of what one did at that day to better understand the detected situation. Maybe the "v2" of the API coming with iOS 14/13.7 improves on this front somehow.

Internal Tracking ID: EXPOSUREAPP-2532

Regarding the iOS weekly update:

The plan is to rework this message as soon as possible.

(link)
In general you might want to check out this issue, as there seems to be currently a lot of confusion surrounding those "weekly updates" by iOS: https://github.com/corona-warn-app/cwa-app-ios/issues/1011
Just out of curiosity: did you check your CWA on one of the days where the ENF log shows a match and if so: was it showing you "1 Exposure with low risk (green)" on this day?
If you want, you can also share your ENF log here or over at https://github.com/corona-warn-app/cwa-app-ios/issues/1011, then we could look at it and try to determine how the "weekly update" by iOS might have come about.
Also: if you want a quick look at those encounters in your ENF logo, this tool is pretty neat: https://felixlen.github.io/ena_log/ 🙂.
Regarding an improvement in the sense that more information is shown on green encounters: I fully agree and I hope we see some movement by RKI in this respect. Relevant threads on this topic:

https://github.com/corona-warn-app/cwa-backlog/issues/23
https://github.com/corona-warn-app/cwa-wishlist/issues/100

I think with what I found out and now saw in the linked threads that my search for weekly update and other keywords didn't find it is expected behaviour for what it is now with the ENF and my info doesn't add much new to the other thread so I append it here.
From the linked ena_log tool I got what I already found out:

Anzahl Treffer
Überprüfungszeitpunkt

1
8/24/2020, 5:16 PM

1
8/25/2020, 5:25 PM

1
8/26/2020, 5:54 PM

1
8/27/2020, 6:16 PM

1
8/28/2020, 7:48 PM

0
8/30/2020, 12:23 AM

0
8/30/2020, 12:23 AM

Key showed up on 24th and is now out of scope.
Unfortunately I didn't look in the app for some days. I keep an eye on the exposure checks log every few days but since 13.6.1 and the most recent CWA update I haven't had a single hickup (after manually starting it once after the update, which shouldn't be required). Was expecting to get notifications in case of exposures.

Yes, your log seems to perfectly fit the "iOS weekly update adds up all the matches of the last 7 days" explanation.
Given that the match disappeared today, the encounter probably happened on 2020-08-15.

Was expecting to get notifications in case of exposures.

You only get a push notification from CWA in case of a "increased risk (red) exposure".

Given that the match disappeared today, the encounter probably happened on 2020-08-15.

That's what I figured. So it was nearly guaranteed to have been an outdoor passing by on this day based on my activity. Therefore it would be nice to have at least the day. One day of hiking for me is completely different to one day of 3 hours train rides ...

You only get a push notification from CWA in case of a "increased risk (red) exposure".

Would be nice to give the user some self responsibility ("Mündigkeit") and don't hide stuff. The UI shows it anyway so why not be open?

Would be nice to give the user some self responsibility ("Mündigkeit") and don't hide stuff. The UI shows it anyway so why not be open?

I agree… I think the user should at least have the option to get more information displayed. I've suggested exactly this e.g. here (ignore my statement that "CWA hides encounters", there was confusion around this topic, but it has since been tested and found out that all encounters are shown in CWA 😅).

I agree… I think the user should at least have the option to get more information displayed. I've suggested exactly this e.g. here (ignore my statement that "CWA hides encounters", there was confusion around this topic, but it has since been tested and found out that all encounters are shown in CWA sweat_smile).

Good idea, an expert mode is exactly what came to my mind yesterday when seeing how the app is trimmed to keep it simple stupid.

Hello @irieger , thank you for sharing your content. I will go forward with our development team to discuss this point based on a duplicate regarding to #1011
Thank you.
Best,
MP
Corona-Warn-App Open Source Team

Hi @irieger, thanks for sharing your content and your proposal for the additional information inside the CWA app. I will keep this point to discuss this with our development team. I will come back to you as soon as possible.
Thanks,
MP
Corona-Warn-App Open Source Team

Internal Tracking ID: EXPOSUREAPP-2532

I add one more question here as today I realized it is not clear to me and is related to this message: What does one encounter mean?
Until today I was under the assumption that one encounter means one 15 Minute block matching. Then I heard Linus Neumann today in the https://logbuch-netzpolitik.de/ Podcast and he talked about his low-risk encounters number. And they seemed to assume it was only counting the number of daily keys that matched one or more 15 minute keys? If this is so I would also expect the length of the encounter, which otherwise I could roughly assume from the number of encounters.

@irieger Did you see this  FAQ entry?

I add one more question here as today I realized it is not clear to me and is related to this message: What does one encounter mean?

Encounter  just means that you recorded a rolling proximity identifier (RPI) of someone who later tested positive and uploaded their keys.
For an encounter per se it is irrelevant how much time you spent/at which distance you were wrt the infected person.
Unfortunately there is currently a lot of misinformation surrounding this issue, especially since the FAQ entry Tim mentions above got an update which made it straight up false, see my Edit4 here.
@Ein-Tim I would try to avoid guiding ppl to this FAQ entry w/o further explanation, until it is fixed.  I totally forgot about this wrong entry. Please could somebody from the devs (@mtb77 @svengabr) come back to us here. Thanks! And thanks for the reminder @daimpi 😀👍

Saw that not so helpful FAQ entry. It doesn't answer anything.

For an encounter per se it is irrelevant how much time you spent/at which distance you were wrt the infected person.

But it might be interesting for me knowing if it was one short key recording of one RPI or if I saw multiple RPI from the same person. When I was outdoor and just passed a person on the street exactly at the RPI recording interval so I only saw the key once is something different than having the same person around for like 2 hours. I think the user knows best in which situations she/he was at that day and should at least get the day and length of this encounter.
So is the encounter one person (cumulative over the RPI matched to the days key) or each individual RPI? That is still not clear from your answers.

@Ein-Tim @daimpi I saw your feedback regarding the FAQ entries and Risk Encounters. I can assure this is not forgotten. There are currently 5 open issues regarding the same topic and there will be feedback soon. The RKI is working out a new text which isn't final yet. The text changes are expected to come to FAQ and CWA with the next hotfix version after 1.3.0.

@irieger

But it might be interesting for me knowing if it was one short key recording of one RPI or if I saw multiple RPI from the same person. When I was outdoor and just passed a person on the street exactly at the RPI recording interval so I only saw the key once is something different than having the same person around for like 2 hours. I think the user knows best in which situations she/he was at that day and should at least get the day and length of this encounter.

Yes I agree, that's why we have issues like

https://github.com/corona-warn-app/cwa-backlog/issues/23
https://github.com/corona-warn-app/cwa-wishlist/issues/100
https://github.com/corona-warn-app/cwa-wishlist/issues/178

where all of this can be discussed in more detail 🙂.

So is the encounter one person (cumulative over the RPI matched to the days key) or each individual RPI? That is still not clear from your answers.

I think I now better understand what your question was.
tl;dr: one encounter means one or more matches with one 24h valid key (DK) that someone who tested positive shared.
Long version: when you download the Diagnosis Keys (DKs)/Temporary Exposure Keys(TEKs)  from the server those have a validity window of 24h. Each positive person shares up to 14 DKs for the last 14 days before their diagnosis/upload. Your phone expands each TEK/DK (I'm using the terms DK & TEK interchangeably) it downloaded to 144 RPIs which are then compared to the RPIs your phone saw/recorded (via @mh-, Slack invitation link):

It’s explained here: https://blog.google/documents/69/Exposure_Notification_-_Cryptography_Specification_v1.2.1.pdf
You are right that from one TEK, 144 RPIs are derived. 144x10min == 1440 min == 24x60min.
Each RPI is based on the TEK as well as the ENIN which represents this 10 minute interval.
So we know when this RPI should have been generated. It is only accepted as a match, if it was received in a +/- 2 hours time window around the expected generation time.

You can also see this process described here (in particular in Figure 11) in the CWA documentation.
So one match in your ENF log/one encounter in your CWA can mean anything from 1 - 144 RPIs matched, as long as they all belong to the same DK/TEK. When you matched with RPIs (no matter the number) from two different TEKs you'd get 2 matches in your ENF log/ 2 encounters in CWA and so forth…

@svengabr Why is this a Hot Topic Issue? I would rather say it is solved 😅

@Ein-Tim I think this was labelled by accident. Removed the label and closed the issue, since it was addressed by Apple and has an FAQ entry with info for turning it off completely.


closing connection manually does not trigger onClose

What I've figured out so far

The connection is reported to be closed for client with the same 1010 code, so it actually gets closed and no problem on that side.
If the connection is closed by the client, this function gets triggered without any problems.

The problem
I'm doing something like:
$conn->close(1010);

But this function is not triggered.
    public function onClose( ConnectionInterface $conn ) {
        $this->print("ssss");
        parent::onClose( $conn );
    }

I use that function to cleanUp connection specific data, so it's kind of important.
however I can just call it myself, but I need to know is this a bug or is it intended? (to prevent duplication.)
Also using :
        $ws_server->enableKeepAlive($server->loop, 15);

Not sure if that is supposed to help in this case, but it has no effect on this case.

I am Facing Same Problem.did you Find any Solution?
@Stevemoretz

I am Facing Same Problem.did you Find any Solution? @Stevemoretz

The workaround is to extend the class, override the close method and call onClose in there.

Can you Please share the Code.
actually I am using enablekeepAlive and it is not Suitable for Large number of websocket Connection

You're right my explaining was insufficient, actually it has one more step, you need to create a client wrapper, also you need to put your ratchet server instance in a container or global variable, once you call the close on your client wrapper you need to access the global variable and call onClose in there manually.
I can't share my code because it has a lot of dependency subclasses it would be harder to Understand, but that's the way it works under the hood, if you have any further questions feel free to ask.


No performance improvement after using radar data

Hi @aharley :
Thanks for your job, which give me some ideas.
In my BEV detection model, I Rasterisation the RADAR data and concatenated with the BEV feature output from LSS according to dimensions, but the result was 2-3 points lower.
Do you know why? Or tell me some potential problem.

Did you try rasterizing and concatenating the same way as in this repo? In this repo, it gives a very reliable boost.

Did you try rasterizing and concatenating the same way as in this repo? In this repo, it gives a very reliable boost.

I referred to the idea of simple_bev and did same radar preprocessing and concatenation method, but my BEV detection model adopts different projection method of  image features into BEV features,  I don't think this will affect the performance improvement brought by Radar.
I found the simple_bev uses the InstanceNorm2d normalization method, but my model uses BN, Is this the key reason why the model performance cannot be improved?
Best regards
Cynthia

I like to avoid BN in general, as it seems tricky to tune. If you are using a small/medium batch size, IN may indeed help stabilize things.


Custom blockquote tags

Custom blockquote tags can be a nice addition for some users. Related to https://github.com/pulldown-cmark/pulldown-cmark/issues/718#issuecomment-2113460565.

Bumping this. My website isn't in English and I'd like to allow people to put custom tags that map into something pulldown-cmark understands.
let parser = parser.map(|event| match event {
    Event::Start(Tag::BlockQuote(kind)) => {
        Event::Start(Tag::BlockQuote(kind.map(|kind| match kind {
            BlockQuoteKind::Unknown("NOTO") => BlockQuoteKind::Note,
            BlockQuoteKind::Unknown("KONSILO") => BlockQuoteKind::Tip,
            BlockQuoteKind::Unknown("GRAVA") => BlockQuoteKind::Important,
            BlockQuoteKind::Unknown("ADMONO") => BlockQuoteKind::Warning,
            BlockQuoteKind::Unknown("AVERTO") => BlockQuoteKind::Caution,
            _ => BlockQuoteKind::Note,
        })))
    }
    _ => event,
});

For this use case, a preprocessing step that translates the tags with a simple match makes more sense to me.

@Martin1887 Isn't pulldown-cmark already doing all the parsing? I don't want to have to import another parsing lib just to rewrite the blockquote kind.
I'm also realizing now that the BlockQuote would need to have some way to change the output text as well, to ensure it isn't the auto-generated English.

The scope of the pulldown-cmark HTML renderer is a simple and working example of HTML rendering, but not a full-fledged renderer.
The creation of another renderer that uses pulldown-cmark in another crate is welcome, though, as reflected in the issue #645.
At the same time, the purpose of the parser is being standard-compatible, with some other standards like Github Flavoured Markdown, but not a parser that supports all custom use cases as this. However, the custom blockquote tags is something easy to consider and it will be probably added soon.


Default camera inertia is too much

Operating system or device, Godot version, GPU Model and driver (if graphics related):
5cb90ad67ed16115b53da4fb0865be612afed2ac
Issue description:

The camera keeps moving for a lot of time, even when gently moving or pressing move keys (like in freelook mode)
Steps to reproduce:
Move around in Freelook mode
Link to minimal example project:

yea I agree that freeload mode is much too fast atm. and inertia too heigh.
But maybe you also still have older settings. I changed the behaviour recently and this change expects different numbers (0 - 0.5 Is about reasonable) before it used integers I think...
so maybe you have an old settings file?
Freeload also takes the zoom lvl into account. I find that confusing sometimes, since that can make the movement really fast...
@Zylann is that the zoom dependant speed commonly used. I mean it makes sense but I feel it has a too big influence.

@toger5 it is proportional to the speed used for panning, but maybe the factor to calculate is too high? In fact it's a user setting https://github.com/godotengine/godot/blob/master/editor/plugins/spatial_editor_plugin.cpp#L1716

@Zylann and @djrm did one of you guys test the current defaults. I have recently and I think they are okay. except the movement speed for freeload is too much for my taste. it can be really low I think since there is the option to just use a high speed multiplayer.
Lets use that pr to discuss defaults and than one of us can make a pr with the discussed values.
I will try really soon on a higher performance machine so I have smooth fps and give you my values

I had the best experience with:
orbit inertia 0.1
zoom inertia 0.1
Freelook inertia 0.2
Freelook base speed 0.1
Freelook Modifier speed 3

but the zooming doiring freeload still is weired. it has a HUGE impact on speed and only little impact on fov... so it is really import to know that the mouse wheel affects the speed...
But it still has effect on the zoom when not moving.
I think we should disable zooming in Freeload. and just adapt the speed with the mouse wheel.
and there should be a little explatnation in the top right corner how to use freeload
mouse wheel: speed
wasd: movement
qe: up down
mouse: look around

Note that zoom doesn't impact fov, it just makes camera closer to focus point. Also, again "HUGE" impact on speed is how experience feel, because you can also say zoom has a "HUGE" impact on panning currently^^
I left the speed modifier for people who are used to have it rather than mouse wheel, I personally only use the wheel and never press that modifier.
So you want to decorrelate freelook speed and orbit zoom? At the time I was unsure if that should be done because I eventually got used to the current system, so I just mentionned it as a comment a while ago  https://github.com/godotengine/godot/issues/10516#issuecomment-323880273
I'm not a fan of controls shown in corner of screen, it's useful for one or two days then it becomes wasted space once you know it on longer term. It should also reflect the actual control map.

@Zylann good points. I just recently used a mouse for the first time. with a trackpad you can't zoom during freelook.
So the concept was kind of new to me thats why I asked.
But you are right it is much better than the modifier!
But it was still confusing to me that it changed the focus point. It was kind of hard to control for me.
So I would prefer that you just use w and s for zooming and only use mouse wheel for speed...
Is there any advantage in having the mouse wheel to "zoom out"/ change the distance in freelook?

I think the default free look speed is fine but the inertia should be much lower. The change was pretty jarring and I personally set it to 0. However, setting it to almost 0 would be a good indication to the user that the feature exists.

@toger5 I explained the intent in the comment I linked above, it's taking the size of the reference frame into account (this is why I compare it to panning, which does the same). In practice, I had this idea from the fact that when moving around, then switching back to orbit, it required re-adjustment of zoom level because orbitting could jump too far away or be left in near-fps mode in midair. Conversely, when using freelook very close to a scene or far away, it would start moving too fast or too slow, because it has no info to adjust, except zoom... so I interpreted cursor distance as a basis for translation speed in general.

actually makes a lot of sense. it's just cumbersome for ppl with trackpad. but it is cumbersome with a trackpad anyways so we should not optimise for it...
I played around with it a little longer and your design makes more and more sense. it's actlually pretty good!!
So no changes to the behaviour. except.. it is zooming in the wrong direction.

I think freelook should accelerate if you bring your finger forward as you move the wheel.

@Zylann jea that is a pretty good point.
I still would prefer if the zoom is correct. If you scroll in orbit mode and than go back to freelook you will also be faster when zooming out.
Its probably just something i have to get used to.
Would you at all consider changing it?
If you got used to it and say that it is really comfortable to use we can keep it.

When I implemented it I didn't touch the way orbit worked, but as a result wheel directions are different in both modes (I referred to Blender's fly mode for this).
I think it's fine as it is, but that's my subjective advice^^

Oh even blender is doing it this way. (I'm not using the fly mode. didn't even know it exists (damn it)).
I think going with the same setup than blender does is always a good idea since a lot of ppl are going to use it together.

I think problem is that non-freelook camera zoom level is tied to speed of freelook camera.
It's the same as in Blender but I think this design is broken :)
I think we should make freelook camera speed consistent and predictable, not tied to normal view camera zoom level.

@n-pigeon now would you than handle da/acceleration?

@toger5
FOV - both View and Freelook cameras should have it tied so when you move from one mode to other perspective looks the same.
Position - both cameras should overwrite it so where each stops, stays there.
Focus point - it should be lost when entering Freelook (F-key should be used to reassign it again).
Freelook speed - those are constant in world units, so no other setting in any camera has impact on it. Speed can be tweaked (scroll wheel or keys) current speed value should be visible somewhere for user as reference.

That is the idea behind the zoom speed correlation. On the left there is the zoom bar which mutates to a speed indicater in freelook.

I don't understand how Fov came here^^"

I already adjusted this, and added separate settings for manipulation and
view switching. Please give it a try.
On Sep 18, 2017 9:41 AM, "Marc"<EMAIL_ADDRESS>wrote:
I don't understand how Fov came here^^"
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/11216#issuecomment-330207204,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AF-Z25nmFapOBXrqc9-gmYQrTRitMtklks5sjmTrgaJpZM4PVYKb
.

@reduz, in orbit mode the controls are great, but freelook, still really bad (at least with default settings)

@djrm would you mind trying #11222 I think @reduz is not planning replace his commit. So I would adapt it to only do the things which are not in reduz change (mainly the touchpad behaviour.)
but if you prefer those default values. I will also update them.

i think this is fine now


Added overload for definition of a custom CSS class

Bumped version number. Added to definitions by. Corrected return type of
JQuery method.

@neilculver Thanks mate!


JAVA-1328: Provide compatibility with Guava 20

Based on original work by @mspangdal.

Is there a compelling reason to target 3.0.7 instead of 3.2.0? I would personally be more comfortable with 3.2.0.

In addition to my review, we should also

in /pom.xml, replace the javadoc link with this one:

 <link>https://google.github.io/guava/releases/20.0/api/docs/</link>

Replace links to code.google.com/p/guava-libraries with github.com/google/guava; this happens in two files at least: CloseFuture.java and ResultSetFuture.java.

Addressed all feedback.

Is there a compelling reason to target 3.0.7 instead of 3.2.0? I would personally be more comfortable with 3.2.0.

That's a good point, it doesn't break API compatibility, but is more of a new capability than a hotfix so 3.2.0 does seem more appropriate.

CI looks happy with guava 16.0.1, 17.0, 18.0, 19.0, 20.0 and 21.0, excellent work!

Glad to see this approved! Is there any chance for a release in the near future?

@Xaerxess no timeframe yet, but it shouldn't be long.

Squashed and rebased on top of 3.x instead of 3.0.x.

Note to reviewers: I added an extra commit to fix OSGi tests and also to revert the Import-Package instruction that we use to create our bundles. We need to explicitly declare that the driver bundle accepts any Guava version in the range [16.0.1,21) so I modified the instructions to read that.


[enh] store cfg in comments, so when component re-initiates, it can read the values back

as a fallback, also try to read {path}/.shadercfg (name pending)
see: https://github.com/FZJ-INM1-BDA/siibra-explorer/issues/1273


Comments UI

This branch provides a frontend for the comments API for government users.
Extension for use by Fuel Supplier users would be simple to do by adjusting the utility functions to enable it, but the existing notes column will have to be deprecated and a script created to roll it into comments (or some other approach) and the vestiges of note will need to be removed.
Two issues remain: to notify users if they try to navigate away from the page with a partially-typed comment, and to support adding comments to nonexistent (unsaved) proposals (but this is not an issue until fuel suppliers can comment).

 Credit Transfer | Notes required for a Government Analyst Recommendation to Decline |2| [v0.2.1]

 Confirmation Alerts | Recommend Declining Approval of a Credit Transfer Proposal |1| [v0.2.1]

 Credit Transfer | Government Analyst Recommend Declining Approval |3| [v0.2.1]

 Credit Transfer | Notes required for Director's decision to Decline to Approve a credit transfer |2|