setup file - Best Practices regarding Updating

I'm fairly new to the Ubuntu scene, but so far, I haven't run into any packages that required me to update all my other unrelated packages just to install their stuff. The setup script updates absolutely everything, including my music player, and naturally it took quite a while to do so. This isn't so much a criticism as a question of whether things are done this way normally.

Joe I just saw this ticket. Updating everything certainly isnt required, but the instructions are written for someone starting with a clean install and its a best practice to get any outstanding security upgrades before building out the box. If running on EC2 the local Ubuntu repo makes the time to do this step negligible anyway.
Its true that most software doesn't require this, but PANDA isnt most software. Its a complete server stack. The expectation is that 90% of the time it will have a VM or device dedicated to it.
Closing this ticket out but please feel free to follow up.


luci-mod-status: channel_analysis: correct VHT 20/40 MHz center channels

As of now, channel_analysis sets the center_channel (the location of the peak in the plot) for all VHT enabled stations from res.vht_operation.center_freq_1. However, for res.vht_operation.channel_width <= 40 this might not actually be correct, as VHT only has one state for widths <=40, which is exactly that: "<=40". This means, even when res.vht_operation.channel_width is set to 40, this might be a 20 Mhz station. The only way we can distinguish this is to use the HT information for stations <=40 MHz instead. This has been setup at that point in the code already, so we do not need to do anything for that case.
Note on the code: the new if-condition could be combined with the one before. I do not mind much either way, but find this way to be more readable, although being longer than strictly necessary.
What the code before this change does  (wrong) is to display VHT20 and VHT40 channels as 20 MHz channels (both in the plot and the table below), but it uses the center frequency of the VHT 40 MHz information, which means their (wrong) 20 MHz band in the plot is offset by 2.
This fixes #6419. Note that this only occurs for other stations. The code for local_wifi is different.

@systemcrash I haven't tried it yet because I can't reproduce the error. I'm waiting for there to be some change of channels on the networks like when there is a power outage.

@Ansuel do you have some input here, since you're apparently the original committer of channel_analysis.js

Was it your intention to miss the 40 MHz channels Like you handled in your initial commit?

Was it your intention to miss the 40 MHz channels Like you handled in your initial commit?

Kind-of. The problem are stations that announce to be 40 MHz-capable, but only use 20 MHz. There, ht_operation.channel_width == 2040 and vht_operation.channel_width==40. The latter might look odd, but the VHT mode only contains a bit field for "20 or 40 MHz" and cannot distinguish between those, so the '40' there really mean "<=40". The HT-branch before checks this and calls it "20 MHz (40 MHz Intolerant)". It does so by looking at res.ht_operation.secondary_channel_offset. There is no such field for VHT: one has to look at HT instead in that case, as also for VHT, a bandwidth of 40 MHz is announced, but only 20 MHz are used. This is what the patch wants to fix: to prevent channel_analysis to use the 20 MHz-frequency in res.vht_operation.center_freq_1 together with a (wrong) value of 40 MHz for the bandwidth.
Whether 40 MHz are included or not in the VHT "if" only matters if there would be a station where VHT is enabled with a bandwidth<=40, but HT is not enabled at all. Can there be such a station (VHT is on, but HT is not)? If such a station could exist, we would have a problem if that station uses a bandwidth <=40 MHz: we would have no way of knowing the actual bandwidth of the station: we would only know it to be <=40 MHz. See https://github.com/openwrt/iwinfo/blob/a34977c0760c93480491c8eb94da656b57d7f4cc/include/iwinfo.h#L311

Wow. OK. It seems like this wisdom would do well in a code comment also. So your "if" guards against this <= 40 right?

It does. It assumes that for a bandwidth=20 MHz all is well anyway, and for a bandwidth of <=40 MHz, the HT-section will have taken care of things already. It only 'widens' the bandwidth in case it finds an even wider VHT station.
Concerning comments in the code: I hoped the one in line 292 would be sufficient. What about something like this:
/* if channel_width <= 40, refer to HT (above) for actual channel width,
 * as vht_operation.channel_width==40 really only means that the
 * used bandwidth is <=40. */

Yeah, that's great. Will prevent some people scratching their heads later on.

/* if channel_width <= 40, refer to HT (above) for actual channel width,
 * as vht_operation.channel_width==40 really only means that the
 * used bandwidth is <=40. */```

Done. Thanks for the review.


Postgres Source fails when handling bytea primary keys

Steps to Reproduce

Have a Postgres Source configured to read a table that has a primary key column of type bytea.
Configure a pipeline to run that plugin.

Expected Behavior
The Postgres Source should handle this functionality in the same way it would handle any other key column.
Actual Behavior
The Postgres connector cannot handle this query correctly and instead of returning the correct result or a descriptive error it returns an ErrEndData which implies that the plugin operated correctly and is now at its end.

This should be fixed. @uchennakevinm1 can you link to the appropriate PR / Issue where we did this.

@neovintage https://github.com/ConduitIO/conduit-connector-postgres/pull/14


[WIP] Implements of in-app EXIF and location anonymization

Title (required)
Fixes #1686 Implementation of in-app EXIF modification
Fixes #212 Remove from EXIF: copyright field (name)
Fixes #181 Remove from EXIF: geo info if too close to home
Fixes #70 Option to "anonymize" pictures
Description (required)
There are multiple issues about privacy concerns location and EXIF-related privacy concerns. These commits implement two different settings for removing certain EXIF rags from the picture and for reducing the accuracy or completely eliminating geolocation data from the picture.
The bulk of the anonymization logic is implemented in FileProcessor to prevent code reuse. The existing coordinate extraction logic in MultipleShareActivity is also replaced by a FileProcessor to further reduce code reuse.
Add method anonymizeCoord() that reduces the resolution of GPS coordinates. Think of each coordinate as a pixel. This function reduces the resolution of "the world" to one coordinate(pixel) for every x kilometres (x is the variable prefLocationAccuracy). This approach was chosen over changing the coordinates by a random amount because with that approach; if a user uploads sufficiently many pictures from the same location, statistical analysis can reveal the real location of the user.
The Android support library com.android.support:exifinterface was added as some required features are lacking from earlier Android versions.
As a minor detail, strings.xml was standardized to 4 spaces per tab. That's why there are so many removed lines.
Tests performed (required)
Tested on API 22 Genymotion Google Nexus 5 emulator, with build variant, BetaDebug and ProdDebug.
Screenshots showing what changed (optional)

Maybe the next step would be adding options for setting EXIF and location behaviour per image in a way that would also be a permanent solution to #1599 Update "automatically get current location" setting text to inform that files will be geotagged with it

I'm not sure why the conflicts remain as there seems to be nothing left that needs changing to allow a merge.

Hi @ilgazer thanks for your PR but it is huge, which is something makes tester unhappy:/

Can you please revert strings.xml file commit, code quality improvements should be in a separate PR
Can you verify that all changes here are related with problem you solved? If so I will start to dig in.
preferences.xml is changed recently. It would be great if you can solve conflicts.
Thanks in advance!

Hey @neslihanturan, I know the PR is a bit big but it's all related to
#1686. Also, I have fixed the strings.xml issue. I also tried to solve the
conflicts but the conflict markers seem to still be there. I will look into
it some more when I have some time.
On 22 Jul 2018 18:01, "neslihanturan"<EMAIL_ADDRESS>wrote:
Hi @ilgazer https://github.com/ilgazer thanks for your PR but it is huge,
which is something makes tester unhappy:/

Can you please revert strings.xml file commit, code quality
improvements should be in a separate PR
Can you verify that all changes here are related with problem you
solved? If so I will start to dig in.
preferences.xml is changed recently. It would be great if you can
solve conflicts.
Thanks in advance!

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/commons-app/apps-android-commons/pull/1712#issuecomment-406872950,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHRLo8ceVUKm4AWqLUUXq4m8ahcJ_jeCks5uJJPJgaJpZM4VPYZ5
.

Codecov Report

Merging #1712 into master will decrease coverage by 0.06%.
The diff coverage is 0%.

@@            Coverage Diff            @@
##           master   #1712      +/-   ##
=========================================
- Coverage    3.89%   3.83%   -0.07%
=========================================
  Files         172     172
  Lines        8490    8531      +41
  Branches      774     783       +9
=========================================
- Hits          331     327       -4
- Misses       8137    8183      +46
+ Partials       22      21       -1

Impacted Files
Coverage Δ

...java/fr/free/nrw/commons/upload/FileProcessor.java
0% <0%> (ø)
:arrow_up:

...java/fr/free/nrw/commons/upload/ShareActivity.java
0% <0%> (ø)
:arrow_up:

...free/nrw/commons/upload/MultipleShareActivity.java
0% <0%> (ø)
:arrow_up:

...s/ui/LongTitlePreferences/LongTitlePreference.java
18.18% <0%> (-36.37%)
:arrow_down:

Continue to review full report at Codecov.

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

@ilgazer , sorry for late testing, I was busy with other tasks in project. Currently I tried to remove Camera Model EXIF and uploaded a photo. But EXIF was still there, here is the photo I uploaded after selecting Remove EXIF tag checkbox: https://commons.m.wikimedia.org/wiki/File:Triangular_bungalow_on_seaside.jpg
Besides functional problem, I think removing something by selecting check boxes doesn't feel very natural from user interface point of view. I think, instead of Remove EXIF Tags  item, we can have Manage EXIF Tags item, and behind, Dislplay author, Display Copyritght checkbox items. Selected means we will include that EXIF tag (so they will all be selected as default, user can deselect if they want), unelected means it will be hidden.

Your UI recommendation really makes sense and would actually be easy to
implement. I will also look at the first bug tomorrow.
On 22:40, Wed, 29 Aug 2018 neslihanturan<EMAIL_ADDRESS>wrote:

@ilgazer https://github.com/ilgazer , sorry for late testing, I was
busy with other tasks in project. Currently I tried to remove Camera Model
EXIF and uploaded a photo. But EXIF was still there, here is the photo I
uploaded after selecting Remove EXIF tag checkbox:
https://commons.m.wikimedia.org/wiki/File:Triangular_bungalow_on_seaside.jpg
Besides functional problem, I think removing something by selecting check
boxes doesn't feel very natural from user interface point of view. I think,
instead of Remove EXIF Tags item, we can have Manage EXIF Tags item,
and behind, Dislplay author, Display Copyritght checkbox items.
Selected means we will include that EXIF tag (so they will all be selected
as default, user can deselect if they want), unelected means it will be
hidden.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/commons-app/apps-android-commons/pull/1712#issuecomment-417079493,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHRLo43jwqs38AUSh4-R2xdAS9neWWELks5uVu4wgaJpZM4VPYZ5
.

Ok, so I implemented a new setting to remove XMP data, which is something similar to EXIF, but there are no good Android libraries to edit XMP data. Because of this, I only implemented deleting all XMP data by parsing the raw jpeg file and finding the XMP section. A future patch for better XMP support could be considered but that could easily turn into implementing a whole library, which is something I have inadequate time for.
I also changed to Manage Exif tags and the ticked items being kept, which means that if there are not new bugs, this PR should finally be ready to merge.

It works as intented now, but since I think this PR can be a little tricky (it effects uploading) I request test from someone else too. But according to my test, it is ok.

Thanks for the PR, @ilgazer ! I think the code is very well-structured, and your Javadocs are excellent. :)
I am very sorry that I missed the conversation at #181 - I personally disagree with reducing accuracy by 20km or even 10km. IMO, if the user is very concerned about anonymity, they should be encouraged to choose "Remove all location data", not to submit data that is up to 20km off. Because, I think, it is better to submit a picture with no geotag to Commons than one with such a markedly wrong geotag. Also, it seems that @jayvdb 's suggestion in that issue was to REMOVE the geotag if it fell within a certain range of home, not to modify it to a different geotag.
However, switching to the "remove if near home" method would be very time-consuming and this PR is very complete. And, 100m or even 1km would be within the usual error range of GPS so the geotag might still be useful. So I would propose removing the 5km, 10km and 20km options from the Setting, and only letting the user choose 100m or 1km. @neslihanturan @nicolas-raoul @VojtechDostal What do you think?

Hmm, fair enough about introducing large errors to GPS coordinates. By the
way, disabling the GPS feature wouldn't really take much time, not more
than 5 minutes. :) Maybe we should approve this PR without the Imprecise
GPS feature and ask the commons community. After all, we can always
retrieve the code from Git history if the COmmons people don't object.
On Sun, 9 Sep 2018 at 18:20, VojtechDostal<EMAIL_ADDRESS>wrote:

I think we should be really careful with submitting deliberately imprecise
coordinates. What does the Wikimedia Commons community think about that?
Even 100m could be controversial. Some tools display Commons images as pins
on a map. 100m shift will place the pins to a completely different position
on a map. I'd rather add no coordinates than imprecise coordinates (or, if
we decide to submit imprecise coordinates, we should be explicit about that
and warn potential users using a tag or a template parameter).
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/commons-app/apps-android-commons/pull/1712#issuecomment-419723060,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHRLo3NDSKXCO4JsIpl6c3r8yybelSS6ks5uZTGjgaJpZM4VPYZ5
.

Then we should be more open about that and specify the precision used to fill in the template.

Maybe we should approve this PR without the Imprecise GPS feature and ask the commons community. After all, we can always retrieve the code from Git history if the Commons people don't object.

@ilgazer Sure, that sounds like a good plan, let's go with that. :) Let us discuss this further at #181 , and it would be great if we could ask in the Commons Village Pump as well. In the meantime, you could remove the GPS accuracy Setting and fix the other bugs, so we can re-test and merge this PR while discussion is ongoing? It is better to have more modular PRs anyway. ;)

Just to clarify, the remaining bugs (which I added in an edit later, so it might not be visible to those using email updates) are:
I have tested the PR on API 24 Nexus S emulator. My uploads work as usual, but:

Please set a default value (Do Nothing) in settings, otherwise it is unclear to the user what the default is. Also, display the current value chosen as subtext (similar to Recent Upload Limit).
Tapping the Set XMP Metadata option does nothing?
I chose "Do Nothing" in Location accuracy, and uploaded a picture. The picture in Commons has no geotag even though in my gallery view it has a location. https://commons.wikimedia.org/wiki/File:Yong_tau_fu.jpg Tested twice and this was still the case.
Actually, more generally, all of my EXIF is always stripped regardless of what my selection for the "Manage EXIF tags" setting is. @neslihanturan do your coords and EXIF data work with this PR?

Please set a default value (Do Nothing) in settings,

Good catch! Fixed it.

Tapping the ~Set~ Keep XMP Metadata option does nothing?

Could your image have no XMP metadata? You can upload the picture here to see its XMP metadata: http://metapicz.com

Actually, more generally, all of my EXIF is always stripped regardless of what my selection for the "Manage EXIF tags" setting is. @neslihanturan do your coords and EXIF data work with this PR?

This seems incredibly odd. The only piece of code capable of doing that is the XMP removal code. Could you give a link to an image that is losing its EXIF data on upload?

@ilgazer https://commons.wikimedia.org/wiki/File:Yong_tau_fu.jpg is one of them.

@ilgazer Shall I email you the picture? I don't think Commons will be happy with me uploading a duplicate, lol.

I would love that

That would be great! :)
On 09:12, Tue, 18 Sep 2018 Josephine Lim<EMAIL_ADDRESS>wrote:

@ilgazer https://github.com/ilgazer Shall I email you the picture? I
don't think Commons will be happy with me uploading a duplicate, lol.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/commons-app/apps-android-commons/pull/1712#issuecomment-422267773,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHRLo2qwNT6K2Mac2Bd5HBLfwTOKO0FBks5ucI7ggaJpZM4VPYZ5
.

IIRC I emailed @ilgazer the image, but he hasn't gotten back to me about it?

Well, I am not sure what to do with this PR, seems like it is sleeping for a while. It has conflicts and known issues. On the other hand, would be great to have this code after it is fixed. So my vote is keeping this open, someone else can take this up and fix since the code looks good overall.

I will be terribly busy till the middle of June, so I agree that that
someone else taking over the PR would be the best course of action.

Hello!
Need some help.
I'm trying to merge changes from ilgazer:master to up-to-date master and having some troubles.
For example, FileProcessor class uses FileUtils.copy() method, which is no longer available.
Should I put copy() back into FileUtils class or is there a better solution?

No you shouldn't. The purpose all that function was to make sure that the
file was copied before we destroy its metadata. Honestly I think you should
rethink where the metadata removal should be done and tie in the EXIF
clensing code accordingly.
On Mar 23, 2019 3:21 PM, "Vitaly V. Pinchuk"<EMAIL_ADDRESS>wrote:

Hello!
Need some help.
I'm trying to merge changes from ilgazer:master to up-to-date master and
having some troubles.
For example, FileProcessor class uses FileUtils.copy() method, which is no
longer available.
Should I put copy() back into FileUtils class or is there a better
solution?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/commons-app/apps-android-commons/pull/1712#issuecomment-475865364,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHRLo6mTh4G3JiGkRdo9KgK8kuY9wz4hks5vZhxmgaJpZM4VPYZ5
.

@ilgazer, I'm trying to use ExifInterface and it's not clear for me which one I should prefer:
(1) android.media.ExifInterface
(2) android.support.media.ExifInterface
(3) androidx.exifinterface.media.ExifInterface
By the way, it seems that only (1) returns image's latitude and longitude with getLatLong(float[]). Methods getLatLong() of both (2) and (3) return null despite the existence of image's location tag.
What am I doing wrong?

Please have a look at these two images. The smaller one was taken in emulator and the other one with my OP6. Both of them are shown as having geo tags in Google Photos app. But only OP6's image seems to have lat/long tags while reading with android.support.media.ExifInterface.getLatLong().
Why is it so?

I don't remember which one works but you should use the one I used
previously. I am not sure if I used the other one anywhere. If I used both,
use the one that works.


[MXNET-60] Enable MXNET_MKLDNN_DEBUG

Description
Re-enables MXNET_MKLDNN_DEBUG flag to ensure more thorough testing
Checklist
Essentials

[x] Passed code style checking (make lint)
[x] Changes are complete (i.e. I finished coding on this PR)
[x] All changes have test coverage:
Unit tests are added for small changes to verify correctness (e.g. adding a new operator)
Nightly tests are added for complicated/long-running ones (e.g. changing distributed kvstore)
Build tests will be added for build configuration changes (e.g. adding a new build option with NCCL)
[x] Code is well-documented:
For user-facing API changes, API doc string has been updated.
For new C++ functions in header files, their functionalities and arguments are documented.
For new examples, README.md is added to explain the what the example does, the source of the dataset, expected performance on test set and reference to the original paper if applicable
[x] To the my best knowledge, examples are either not affected by this change, or have been fixed to be compatible with this change

Changes

Enable MXNET_MKLDNN_DEBUG in CI dockerfiles

Comments

#10026


Didn't find class "android.security.NetworkSecurityPolicy" on path: DexPathList

Hi
Getting this on Android 5.1.1, 3.4.2. Removing the handler and reverting to the built in version works.
Didn't find class "android.security.NetworkSecurityPolicy" on path: DexPathList[[zip file
at Java.Interop.JniEnvironment+Types.FindClass (System.String classname) [0x00114] in :0 \n  at Java.Interop.JniType..ctor (System.String classname) [0x00006] in :0 \n  at Java.Interop.JniType.GetCachedJniType (Java.Interop.JniType& cachedType, System.String classname) [0x00018] in :0 \n  at Java.Interop.JniPeerMembers.get_JniPeerType () [0x0000c] in :0 \n  at Java.Interop.JniPeerMembers+JniStaticMethods.GetMethodInfo (System.String encodedMember) [0x0002b] in :0 \n  at Java.Interop.JniPeerMembers+JniStaticMethods.InvokeObjectMethod (System.String encodedMember, Java.Interop.JniArgumentValue* parameters) [0x00000] in :0 \n  at Android.Security.NetworkSecurityPolicy.get_Instance () [0x0000a] in :0 \n  at ModernHttpClient.NativeMessageHandler..ctor (System.Boolean throwOnCapt
iveNetwork, ModernHttpClient.TLSConfig tLSConfig, ModernHttpClient.NativeCookieHandler cookieHandler, System.Net.IWebProxy proxy) [0x000b2] in <726c14cb3be24ae3b39e3836344db05e>:0 \n  at ModernHttpClient.NativeMessageHandler..ctor () [0x00007] in <726c14cb3be24ae3b39e3836344db05e>:0 \n  at XXXXClimbing.RestApi.HttpClient () [0x00027] in F:\XXXXClimbing-Live\Working Copy\XXXXClimbing\ProjectXXXXboard.App\API\XXXXClimbing.RestApi.cs:118 \n  at XXXXClimbing.RestApi.AuthoriseAsync (System.String username, System.String password) [0x000f9] in F:\XXXXClimbing-Live\Working Copy\XXXXClimbing\ProjectXXXXboard.App\API\XXXXClimbing.RestApi.cs:926 \n  --- End of managed Java.Lang.ClassNotFoundException stack trace ---\njava.lang.ClassNotFoundException: Didn't find class "android.security.NetworkSecurityPolicy" on path: DexPathList[[zip file "/data/app/com.XXXXclimbing.XXXXboard-1/base.apk"],nativeLibraryDirectories=[/data/app/com.XXXXclimbing.XXXXboard-1/lib/arm, /vendor/lib, /system/lib]]\n\tat dalvik.sys
tem.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)\n\tat java.lang.ClassLoader.loadClass(ClassLoader.java:511)\n\tat java.lang.ClassLoader.loadClass(ClassLoader.java:469)\n\tat md51558244f76c53b6aeda52c8a337f2c37.ButtonRenderer_ButtonClickListener.n_onClick(Native Method)\n\tat md51558244f76c53b6aeda52c8a337f2c37.ButtonRenderer_ButtonClickListener.onClick(ButtonRenderer_ButtonClickListener.java:30)\n\tat android.view.View.performClick(View.java:4856)\n\tat android.view.View$PerformClick.run(View.java:19956)\n\tat android.os.Handler.handleCallback(Handler.java:739)\n\tat android.os.Handler.dispatchMessage(Handler.java:95)\n\tat android.os.Looper.loop(Looper.java:211)\n\tat android.app.ActivityThread.main(ActivityThread.java:5371)\n\tat java.lang.reflect.Method.invoke(Native Method)\n\tat java.lang.reflect.Method.invoke(Method.java:372)\n\tat com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:945)\n\tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:740)\n\tSuppressed:
java.lang.ClassNotFoundException: android.security.NetworkSecurityPolicy\n\t\tat java.lang.Class.classForName(Native Method)\n\t\tat java.lang.BootClassLoader.findClass(ClassLoader.java:781)\n\t\tat java.lang.BootClassLoader.loadClass(ClassLoader.java:841)\n\t\tat java.lang.ClassLoader.loadClass(ClassLoader.java:504)\n\t\t... 13 more\n\tCaused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available\n"
Any ideas?
Thanks
Dale

Same problem here.
Looks like is related with isCleartextTrafficPermitted use in OkHttp (https://github.com/square/okhttp/issues/3772).
OkHttp team fix it in 3.12 version but this release requires Android >= 23 so it's nood good solution for us.

Same problem here. Team OkHttp fixed this issue. Some of our devices under API 23 cannot use currently ModernHttpClient. We would love to see this fix as soon as possible in ModernHttpClient.

I had this error too on android 5.
I used the commit #61 provided by @SlyNet and the problem solved (tested with android versions 4.4, 5, 7.1 and 9).
Square.OkHttp3 version 3.12.x supports older android versions and they'll continue to update it until 31/12/2020 as they say on their readme.

The OkHttp 3.12.x branch supports Android 2.3+ (API level 9+) and Java 7+. These platforms lack support for TLS 1.2 and should not be used. But because upgrading is difficult we will backport critical fixes to the 3.12.x branch through December 31, 2020.
From 3.13.+ it only supports android 5+.

I tried modernhttpclient with updated reference of OKHttp to version 3.12.6 and it worked fine on android versions 4.4, 5, 7.1 and 9.
@alexrainman whenever you have time, please take a look on #61
Thanks

Will do.

Tested with v.3.4.2 and working, Thanks!

Yes.


FAQ updated

Added FAQ to CI page

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://6718d5cd7ed1a052acf519ec--harness-developer.netlify.app

This pull request has been automatically closed due to 30 days of inactivity. If you believe this was done in error, please feel free to reopen the PR or reach out to the BT team for further assistance. Thank you for your contributions!


Expose kubelet_volume* metrics

Possible fix for https://github.com/NetApp/trident/issues/134
This should work on all/most linux processor architectures but not on windows. Currently only a PoC to showcase that this can be implemented in quite an easy way.
Feedback is very welcome 😃

ping @adkerr
Sorry to ping you directly. This "feature" would be important for us, as this is probably the only way to setup an alerting with proper alert routing for trident volumes. I would love to hear feedback from you how to proceed to get such a feature in one of the upcoming releases.
ps. I signed and sent your CLA.

@ghouscht, @gnarl handles prioritizing our backlog. I'll make sure he looks at this and provides you an update.

closing, since this is now implemented in master (https://github.com/NetApp/trident/commit/f48637e302a6b42ef508bf11c3b9a8304ff978c0) - thanks!


Home page translation

I just started translating the page and this will help us to kickstart our translation process and can give some idea.
Please provide feedback and i haven't cared much about rasso/dirga, chandrabindu. I wish someone who is good in byakaran can help us.
@nootanghimire

Hello,
Sorry I couldn't see the PR earlier. I had some comments.
Also, should we establish some ground rules for merging PRs? (At least one review, etc...)

sorry i merged this without your approval but from now we should approve PR which have at least one Approval.


In-App statistics update too late

First the basics:
Avoid duplicates

[x] Bug is not mentioned in the FAQ
[x] Bug is not already reported in another issue

Technical details

Device name: any
iOS Version: any
App Version: any since the statistics

Describe the bug
The in app statistics are great but updated too slowly. How can it be that DLF announces the latest numbers at 6 in the morning and the app still shows at 08:00 the stats from the previous day? Please update earlier, you have the 'direct line' to the RKI.
Steps to reproduce the issue

Get up early in the morning (yes, this still happens, despite home office)
Listen to the radio at 06:00
Compare announced numbers to the in-app statistics

Expected behaviour
Numbers in the app are updated to the latest statistics.
Possible Fix
Only Server sided. No need to adjust the app code.
Additional context
n/a

Dear @whiskey,
Thank you for your contribution. As far as we know, yesterday February 25, there was actually a delay in showing the updated numbers. Please, stand by, we will come back to you. Best wishes, DS

Corona-Warn-App Open Source Team

First of all, I noticed that too.
@dsarkar & @whiskey
May I suggest to transfer this to either the documentation repo (since it affects iOS & Android) or directly to the server repo?

[…] directly to the server repo?
Would have made more sense… I'm too biased which repositories I use :)


Add merge functionality when creating a new VM from a given template

Author Name: Ruben S. Montero (@rsmontero)
Original Redmine Issue: 2149, https://dev.opennebula.org/issues/2149
Original Date: 2013-07-04

None

Original Redmine Comment
Author Name: Daniel Dehennin (Daniel Dehennin)
Original Date: 2013-10-02T08:04:39Z

Hello,
I wonder if this issue could cover the addition of a field in template wizard with an ordered list of template it inherits.
The wizard could show inherited values as inactive fields, requiring a user action like double click to change the value.
Such a feature could be related to my comments on #1764.
Regards.

Done through several features: user inputs, inherited attributes...


tcpdump/wireshark support on upcoming WSL 2

With the annoucement of the upcoming WSL2 I remembered that tcpdump doesn't work with current WSL1 and it's been quite some time since developers first asked for it. Will WSL2 support it and other network-related tools?

Yes, networking related tools will work much better on WSL2.

Do you how to install wireshark on WSL2, is it compatible with wirehshar on win10 64bits?


Export and import from state values of an epoch

This should be merged once it was tested by @roju99 and @dominikth13

Merged to allow @roju99 to merge his branch

 Export/Import für Q-Learning


Remove the scales and enlarge the magnifying glass for the instructions icon

This is a duplicate of #40


Allow delete expense for SPAM

Small question, where is it coming from?
In some cases, it's handy to have SPAM expenses not deleted so we can have a look at them through the interface.

@znarf It's coming from https://opencollective.slack.com/archives/G46PNRCGP/p1643620342761559. From the collective admin point of view, I think it's expected that SPAM gets removed from their pages.

Except the single expense page, in which screen is it appearing?

@znarf Only there I think, but the feedback was:

a facebook open source admin marked an expense as spam, but then realized that his name appears in the trail as having marked the expense as spam and he'd rather not have the spammer see this

Ok, if we allow deletion of rejected then why not spam. But we have to remember that as soon as we delete, we loose the single expense page and the context (change of status, history, comments).


Text inputs lose their focus when pressing Alt in example1

Alt key emphasizes menu so text input loses their focus. Focus gets back after Alt is pressed again. At least on Linux.
Also Alt + Letter does not open menus in example1.
About shortcut guides generally: it seems like on Linux shortcut letters are always emphasized (in Qt and GTK applications), while in typical Windows applications - only when pressing Alt.  Not sure if there're guidelines on this behavior for each platform.

It's working as designed.
ALT press + release moves focus to MainMenu. Now you can choose some menu item with arrows. Pressing ALT again restores previous focus.
Try compare to behavior of some Windows app.
I think it's not a bug.

Just tried in notepad.exe. Alt grabs focus, but it's restored after I start other input, not only Alt. (The first character is lost though in order to restore focus)
While in dlangui the only way to restore focus is pressing the Alt again.
On Linux apps usually does not grabs focus by Alt at all, so when you start input all characters are written to text input, without losing the first character.

Note: I described notepad behavior on Windows 8.1 Other versions can behave differently.
 Maybe notepad is some exception.
GTK applications on Windows behave like they are on Linux not grabbing focus at all.
No matter what behavior you will choose for Windows, there're two issues to fix:

Linux version should not grab focus.
Alt + Letter shortcuts don't work on Linux neither on Windows.

Fix is made to process single Alt keypress as main menu activation to work only under Windows.


64.3 lost control of white limitless led strip controller.

Make sure you are running the latest version of Home Assistant before reporting an issue.
You should only file an issue if you found a bug. Feature and enhancement requests should go in the Feature Requests section of our community forum:
Home Assistant release (hass --version):
64.3
Python release (python3 --version):
latest
Component/platform:
limitlessled
Description of problem:
before latest update.  I had rgbww and while strip controllers paided to v6 bridge using the same 'virtual' controller, and rgbw lights on another controller with the following configuration and they worked fine.  After the update, I could no longer control the white led strip controllers.  I have since tried to re-pair the white strip controller to the black and white 'virtual' limitless controller on the same numbers and now get on off... but no dimming with home assistant.. the limitlessled ios app black and white controller turns them on/off and dimming up / down works.
how to I get these while only limitless led strip controllers working correctly with the latest code..
here is the setup that use to work
64.3 update broke control of white led strip controllers from limitiless led.
this use to work up to this latest update
light:
platform: limitlessled
bridges:

host: <IP_ADDRESS>
groups:
number: 1
type: rgbw
name: Bedside Lights
fade: on
number: 3
type: rgbw
name: Entry
fade: on
number: 4
type: rgbw
name: Garage Door
number: 1
type: rgbww
name: Towers
fade: on
number: 3
type: white
name: Curio
fade: on
number: 4
type: white
name: Kitchen
fade: on

does something in this need to be changed now? These lights were paired to the v6 hub using the limitlessled ios app.. using 2 different virtual controllers and has been working for over a year.
any suggestions appreciated.
Expected:
Problem-relevant configuration.yaml entries and steps to reproduce:

Traceback (if applicable):

Additional info:

@happyleavesaoc I don't really see any of my modifications breaking this. Do you think it could be caused by this change? It seems to change the remote type (as described above) and builds identical commands for brightness and temperature.

I should stress that I have has issues with my limitless lights since 64 and rolled back to 63.3
a year ago, I had issues with adding these white strip controllers.  when added to a white only controller, they would also turn on lights in a similar channel on a rgbww controller.. so I had to put my rgbww and white strip controllers on the same 'virtual remote' and that has worked fine up til .64
right now I have rgbww, rgbw bulbs and these white strip controllers in my setup and I had them all working great up til .64
thanks for helping me get this working

I wonder if it would work with the new type: dimmer for the white lights?

rolled back to 63.3 keeping the strip controllers paired to a virutual while only controller.. and just like the behaviour in 64.4 I could get on and off but no dimming.
unpaired the strip controller from the black and white virtual controller and paird it back to the original controller that I have the RGBWW lights and with 63.3 I have full on/off and dimming back.. so I am stuck on 63.3 because of some issues with these white only strip controllers...
tried the dimmer function and could not find a vitural controller pairing that would control them at all.. not recognized

the limitless module in hass has always been a week point.
homebridge does much better but not all the functions of the orignal controllers were emulated.. like nightlight and disco modes etc..
I dont use the homebrige/milight plugin though because I wanted homeassistant integration so I only use home assistant with homebridge-homeassistant plugin and that has worker reasonaby well up to .64.  I wish I could get these white only strip controllers to work on their proper white controller so I dont loose groups on the RGBWW controller for while only lights  and get the new nightlight functionality back.. and really .. I just dont see the point of breaking everything that was working in 63 with this new assumed state BS.. if you are controlling the lights with home assistant.. who cares if it gets confused with external remotes. I doubt many people use them.. but this new setup doesnt work at all..
thanks again for helping out chassing this down.. and maintaining this module.. dont take my frustration as critizism .. thanks for your hard work..

What is the model of the white controller?

I have done all the pairing with teh limitless ios app and it has like 10 different 'virtual' limitiless led remotes that it emulates.
I never use the app for anything other than pairing lights / controllers to the v6 bridge
then home assistant / homebridge-homeassistant is uesd to control them .. and up to 63 it has worked great with the limitations stated above.

LimitlessLED Bridge v6.0 iPhone App
https://itunes.apple.com/us/app/mi-light-3.0/id1156007632?mt=8
• The only iPhone app that currently supports the new LimitlessLED Wifi Bridge v6
• Supports 16 zones; 4 zones of each; Dual White + RGB + RGBW + RGBW/WW/CW.
• Control Lights via the internet.
• Control Lights via your home wifi router.
• New SmartLink mode for fast 1st time bridge setup.

Do you have a controller like the one in the image here: https://github.com/happyleavesaoc/python-limitlessled/issues/27 ... if so, what is the model number of yours?

the FUT036 is indeed the strip controller I use in question.
what does the 0x03 remote look like.. ? just from the iOS app emulation. I can get this strip controller to work with several of them on the ios app.. but home assistant is a bit more obtuse.
this is the 'virtual remote' that I use to pair my RGBWW and these fut036 strip controllers for home assistant because nothing else seems to work
http://www.limitlessled.com/wp-content/uploads/2017/01/LimitlessLEDrgbwwwcwWallRemote.jpg
I use this remote for the rgbw pairing...
http://www.limitlessled.com/shop/remote-control-for-rgbw-color-led-lightbulbs/
this is the remote that the strip controller shoud be paired with I think
http://www.limitlessled.com/shop/wifi-remote/
but if I pair with this remote i only get on/off supprort in homebridge.. no dimmer at all.

So I assume it should work if you change type: white to type: dimmer and figure out the right way to pair. Sorry I cannot be more specific, I do not have the FUT036 myself.

again.. I tried the 'dimmer' defintion and I could not get it to work at all..
what remote style are you suppsed to use to pair the dimmer..?
with using the 'white' definition and pairing the fut036 using the RGBWW remote.. home assistant 63 controls it fine..no control in 63
if I pair it with a while only controller, home assistant can only turn it on and off.. that is 63 and 64.
my 'guess' given the issues I have had here with this controller is that its never been contolled with the proper commands here in this code.

Sorry, I missed that you already tried type: dimmer with 0.64.
I don't know which remote to pair with for the FUT036. Let's ping @rubenverhoef and wait a bit ...

so you are writting code for stuff you cant test?
I went to the other threads on this issue and looked at those open items and it seems to me this change to assumed state is to fix something that wasnt broken..
home assistant is to control things within home assistant and your code breaks the ability to control lights from inside home assistand to fix issues with people controlling the lights EXTERNAL to home assistant.. that is counter productive.. other issues were people pairing lights to limitiless bridges that were not compatible or being paired to the wrong groupings by the look of it as well
this was working just fine for over a year.. with voice control and ios / homebridge support..  obviously controlling lights that dont report status back to the bridge, from outside of one ecosystem is going to upset reported state.. but this change doest fix that .. it just breaks what worked fine for people who used home assistant as designed.
I suggest abanonining assumed state and go back to the control logic of pre .64.. obviously people need to decide if they want to use cheap one way reporting lights either control them with the hardware remote or homeassistant but you cant have it both ways.. but right now its broken far worse than what 63 provided..

so you are writting code for stuff you cant test?

The changes to white lights and strips were not done by me.

I suggest abanonining assumed state and go back to the control logic of pre .64

The idea that this relates to the "assumed state" is wrong or you would also be talking about how your RGB bulbs no longer work.

I am speaking more generically about the development.. not a specific individual .. sorry to give that impression.. again.. short snippets of chat are not great for getting ones point across..
again. I am more about adressing the issue not assigning blame.. just trying to illuminate that the current logic is a fix only for those that dont realize the limitations of using non state reporting lights with multiple control paths.. the current logic breaks what was completely functional (including the lights that still work).. and it doest fix the probabem of people controlling from outside home assistant.. it just masks it.. not really helpfull .. its a step in the wrong direction

Please file a separate issue if you have a specific problem with the assumed state.

I'm really new to the Limitlessled/milight, i have only the FUT036 and the V6 wifi bridge.
I had paired that controller to the bridge using the MiLight V3 android app. I think it doesn't matter which remote you have selected while pairing but i don't know for sure. The FUT091 (virtual) remote was working fine with my FUT036, I don't know any more if the FUT006/007 was working. I couldn't get the FUT036 working with home-assistant so i was digging into the python-limitlessled code. After capturing the network packages using wireshark I saw that the remote style of the FUT036 was 0x03 and there was no support for that remote in the code. So I “hacked” it into the code, I have just make a new component with the 0x03 remote style.
I have done more digging with wireshark and I’m write every command down for every remote. I’m not ready but for now on I’m seeing that the remote style 0x01 (Black and White remotes FUT006 and FUT007) dimming and temperature is different, the MiLight App sends only an up and down command and not an exact value.
I will make the documentation about the different remotes and commands and when it’s ready we can look into the code and look if there is something wrong.
For now, you said your type: white lights are not working anymore right? Then this commit should have broken that, like @amelchio  said. For what I can see with wireshark is the FUT006 and FUT007 remote style 0x01 and the FUT092 is the 0x08 remote style. If you are using the white component and it was working with limitlessled 1.0.8 then your controller uses the 0x08 remote style and that one is removed from the python library.
So I will make a documentation with the use of the MiLight V3 android app and wireshark. Then we can look into the code and include all the commands and remote styles I’ve found.

Great. So we would actually expect it to work also for @duecedriver if pairing with the virtual FUT091?
(It sounds like maybe the type selector in limitlessled should be for remotes, not bulb types?)

well guys.... I am not new to these.. I have been using them with home assistant for over a year.
again, I run almost every type of bulb they have.  RGBWW, RGBW, and the white led strip.
@rubenverhoef is correct.. with limiteless led.. you are not controlling a bulb.. you are controlling a group.
the V6 bridge can, at a minimum, handle 12 groups (some say 16 but I dont think those types of lights are sold anymore) .  4 goupgs RGBWW, 4 Groups RGBW, 4 groups dual white.   Each group or zone can have almost limitless number of acutal lights.. so yes.. @rubenverhoef is correct again, and I figured out and posted here long ago but was deleted.. it does mater how you pair the lights to the bridge if you want to maximize both the number of groups and functionality and features of that group.
From the mfg.
Each WiFi Bridge does up to 14 zones
• 4 zones of up to 1000 bulbs per zone for Dual White,
• 4 zones of up to 1000 bulbs per zone for RGBW Color,
• 4 zones of up to 1000 bulbs per zone for RGBW/WW/CW Color,
• 1 zone of up to 1000 bulbs per zone for RGB Color.
• 1 zone for the inbuilt RGBW Color Lamp.
• Both the white zones and Color zones can be used at the same time.
• Other Remotes and Other Wifi Bridges can be used to control the same bulbs simultaneously.
• Additional bridges can be used to add more zones
Over a year ago, I posted a link to the command set (API) , and to one of the developers for these lights that was willing to help.. I dont know if it ever went anywhere.
Additionally, I think that the homebridge-milight project on github as made good progress.. and while I use homebridge with the home-assistant plugin, I dont use the milight plugin becasue that is like using a 3rd party remote.. it takes home assistant out of sync.. and as I have been trying to explain.. just about everyone here has figured out and should be expressley explianed in the home-assistant page, that when using these lights with home-assistant.. you really should not use a physica remote or other external software to control them unless in a pinch.
additionally, by using nothing but home-assistant, you can firewall off the limitlessled bridge from the internet as that likely has back doors and attack surfaced into your network and is beyond your ability to harden as its a closed invironment. I noticed mine making contact with dozens of servers here in the US and china... so buyer beware.. that if you keep the bridge open to the internet to use the ios/android limitilessled app from outside the house, you are likely not secure.  just VPN to your home-assistant or expose home assistant with SSL/TLS at a minimum likely a much better way to go.
in sum, yes.. they way that the project is codeing for limitlessled/milight needs to be re-structured to ensure its sending the correct commnads to the correct group of lights and to do that.. the structure needs to mimick the invironment better which revolves arround using different types of remotes for different groups of lights by lighting type.

I'm getting really there with the documentation of all the remotes and it's commands from the MiLight V3 android app. If it's ready i will post it in the python-limitlessled repository. I think we can then make the library compatible with all the remotes.

so in the meantime.. I am I stuck at .63.3 until you figure out why the white grouping controls are broken?
to be fair, since to have these white controllers working correctly up to 63.3 they had to be incorrectly paired using a RGBWW channel grouping vs using a white channel grouping..
in 64 white now appears to be controlled (on/off only) on the correct white controller grouping but no dimming or other functions

About the dimming of the White ones, that is not correctly implemented in the python-limitlessled. I think we can fix that shortly.
The White remote doesn't send a brightness value but it sends a up/down command. The Python-limitlessled is giving a value in stead of muliple up/down commands. This are the commands for the white remote(s):

hum.. can we... using the 'correct' remote still get similar behaviour of the white control we had in .63
I really had everything working slickly.. sending values to the fut036 modules worked great and these strip lights are working great in scening with other limitless, zwave bulbs in mixed settings.
if we have to go with just stepping commands.. I can see them getting out of sync between what the bulb actually is vs what home assistant thinkgs it is due to missed commands.. etc..
otherwise if these white controls go too 'dumb'.. I guess it would be better to control them like we did back in .63 and pair them to a RGBWW channel perhaps works with RGBW as well.. and if you run out of groups just add another hub...
I dont see these white only strip controllers for sale on limitlessleds website.. might we have to move up to supporting just the newest rgbw version of the strip light controllers.?

The FUT036 can be paired with the following remotes:

FUT006, FUT007
FUT091
FUT092

remote style
0x01
0x03
0x08

Note
dimming not working
should work with dimmer component
not supported yet

Also the FUT093 is compatible with the FUT036 but i have not wiresharked that one yet.
I'm using the FUT091 and the dimmer component which works with the on/off and dimming commands. So you can use that also.
Now the explaination why it was working for you with the LimitlessLED 1.0.8 library. In LimitlessLED 1.0.8 the white component uses the 0x08 remote style, which was incorrect. Exactly this change has broken it for you but was a correct change. The only thing is that the dimming is not working with the 0x01 remote how it is now implemented. Also like you said is that the stepping change of brightness is not nice but there is no other way to do it with the 0x01 remotes. The best thing for you is to use the 0x03 / FUT091 remote and the dimmer component.
I will make some time free to make the library better with hopefully other people and looking forward to include all the remote styles.

I guess I will upgrade to 64.3 and try pairing the fut036 controller with the fut091 remote and use the dimmer component to see if it works..
I really hope that I can keep my pre .64 functionality with these strip lights going forward

@rubenverhoef, that is beyond awesome. Great work!

@rubenverhoef for the win!!  nice work
ok.. I unpaired both of my fut036 strip controllers from the RGBWW virtual remote and paired them using the virutual fut091 on the iOS app.
in hass 63.3 didnt work with the white definition.. and dimmer gave me errors so I am assuming dimmer is a 64.x feature.
I updated to 64.3 and changed the lights to dimmer definition in the configuration.yaml.  Success.
I get on/off and dimming.. and my automations that send absolute values appear to work .. however
not everything is peaches..
all my lights.. zwave and limitless seem to take longer to respond.. and after a couple manipulatons a couple of the dimmers (fut036) strip lights became unresponsive.
also, can we add the nightlight function to these dimmer/fut036 strip lights ?
I will play with it a bit longer and see if I can get things smothed out..
step in the right direction but 0.64.3 still seems like an overall step backward.. and I still don't see the benefit of assumed state.. 63 was working just fine and never had any of these issues .. those that had issues with limitless leds and assumed state were using home assistant wrong and using controllers external to home assistant which obvioulsy wont work with lights that don't reports state...
perhaps someone could explain this change a bit more to educate me.. unfortunatly now that we have started down this new path of assumed state..  I doubt the devs will go back so might as well try to understand it to optimize use..
thanks again for your work here on the project... keep up the great work..

What is your issue with assumed state? Please be specific.

Since this issue is so wordy, I will close it in preference of #15223.


Pretrain model

I have a little confused, how can I load the pretrained model?

Did you find the pre-trained model?

Not yet, you can try to see @rwightman ‘s repo and find what you need.


If one of the excel columns is empty, then all the values get overlapped

If one of the excel columns is empty, then all the values get overlapped, this happens when using this :
var entityList = ExcelHelper.ToEntityList<T>(string excelPath);

I tried using what i thought were column mappers
setting.Property(_ => _.DisplayName)
    .HasColumnTitle("设置显示名称")
    .HasColumnIndex(2);

but this proved to be innecfective.
So, whenever i have excel columns which are empty, I fill them with 1 blank space so the values are not overlapped when they are read by your excelhelper.

Now works nice, many thanks WeihanLi

Thanks for your feedback.


The diagnose container shouldn’t need a cluster role

The RBAC added in submariner-io/submariner-operator#1812 includes a cluster role; but that shouldn’t be necessary to run subctl diagnose. A plain role tied to a specific namespace should be sufficient.

This has been fixed by https://github.com/submariner-io/submariner-operator/pull/2169


[feat] adjust baileys to run in BUN

it`s possible to adjust baileys code to run in bun?

No, bun does not support some websocket features and is missing some crypto stuff as well.

@LucasSaud @SheIITear with this adjustments will be possible to run:
https://github.com/WhiskeySockets/libsignal-node/pull/6

@SheIITear  any chance we can get this PR merged? it would solve the issue of not being able to run on Bun, everything else works fine (even though Bun has some limited websocket support, everything seems to work as expected)

Oh sorry, these comments have somehow went under my notifications. I'll check them asap after I finish with my school project tonight.

I did some quick test and seems to work, merged.


v. 0.46.0

https://github.com/NREL/REopt.jl/pull/383
https://github.com/NREL/REopt.jl/pull/378
https://github.com/NREL/REopt.jl/pull/373
https://github.com/NREL/REopt.jl/pull/356

@zolanaj  this description should include #356, correct? For #356, I'm wondering if there are plans to update the REopt API with the new inputs (and outputs, if any) as well as updates to the user manual?

@zolanaj this description should include #356, correct? For #356, I'm wondering if there are plans to update the REopt API with the new inputs (and outputs, if any) as well as updates to the user manual?

Yes and yes! My intent is to move to API development and incorporate all the new inputs and outputs; this, along with the addition of ASHP into REopt.jl and the API, is my priority for development this month.  However there is no API PR ready yet.

@zolanaj approving with the caveat that we still need to double check compatibility with the API! In addition: do the thermal updates included here require any changes to the User Manual or Web Tool inputs or tooltips?

To get all the results in and working on the Julia side I have this open: https://github.com/NREL/REopt.jl/pull/389
The ongoing PR to merge the changes on the API side is in progress here: https://github.com/NREL/REopt_API/pull/583


Support case Insensitive user names

Make usernames case-insensitive, ensure that there are not any duplicates currently in use.

Dupe of #622


Update synapse-link-frequently-asked-questions.md

Changed TTl to TTL

@armaansood : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Document using DSE Backup & Restore (beta) steps with DB deployed in K8s cluster

DSE 6.8 docs have a set of Backup & Restore (B&R) beta topics that start here:
https://docs.datastax.com/en/dse/6.8/dse-admin/datastax_enterprise/operations/opsBackupRestoreServiceTOC.html
Info given to the writer included: "The DSE Backup and Restore Service is currently in beta and is intended to be used by users provisioning DSE via the DataStax Cass Operator in a Kubernetes cluster."
... and shows edits to cassandra.yaml to enable B&R.  However, devs on our K8s Operator team noted that actually you enable B&R via Cass Operator config YAML. I'd like to try backing up and restoring a DB that I've deployed to a GKE cluster, and just need to know the needed config.  Let's use this documentation issue to define and test it.

I bumped into this working on Backups in IKS.  I need sample yaml showing placement for enabling backup.  Reported by IKS User, enabling backup in cassandra.yaml causes pods to not restart.

Just an update here with the info i need.  The syntax was actually in an existing yaml sample.  in the cluster yaml the config for backup should be:
    cassandra-yaml:       backup_service:         enabled: true
and my example yaml is:  https://github.com/ds-steven-matison/cass-operator/blob/master/operator/example-cassdc-yaml/dse-6.8.x/example-cassdc-minimal3.yaml


[BUG] TdChips with Autocomplete in mobile does not select

Bug Report
Autocomplete options in mobile doesn't select.

Which version of Angular and Material, and which browser and OS does this issue affect?
I'm using the latest release 1.0.0-rc.1

is it already in 1.0?

Any news for this bug?


fully private cluster with lambda or dedicated bastion host as a proxy

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

What is the outcome that you are trying to reach?
I want to create and manage a fully private EKS clusters without any additional VPC, VPC peering, Cloud9 instance etc.... The idea is came from the aws-quickstart-eks cloudformation templates.
Currently if you want to provision/modify anything inside the eks cluster - without the Cloud9 instance - (e.g.: edit the aws-auth configmap, deploying addons with helm charts or any kubernetes manifest...) you have to enable the public endpoint, then take the desired actions and then you have to disable the public endpoint again. As far as i know Terraform could not handle changes delayed in time to the same cluster, and consider the latest sdk action as the desired state, so this public endpoint on-off switching is unbearable.

Describe the solution you would like
One possible solution could be if the aws-auth, helm, and kubernetes providers could communicate through a lambda proxy attached to the same subnets as the EKS cluster. I know about the 15 minutes limitation (maybe step functions orchestrated lambdas?). I think the 15 minutes upper limit couldn't be a problem because in most cases only management addons (logging, monitoring, security, etc...) deployed with terraform.
Other possibility is to create a dedicated bastion host (in private subnet) to every cluster (e.g.: t4g.micro ec2) with ssm-agent installed due to open a ssm session with port forwarding (e.g.: for SSH tunneling purposes) to the EKS cluster's https endpoint. This tunneling acts as a proxy for the terraform providers.

Describe alternatives you have considered

Additional context
I'm not a terraform guru so i don't know if my idea could be implemented at all.
Hope for the best.

Hi @tomiszili,
Thanks for this request.
The examples/fully-private-cluster, suggests a deployment through a Cloud9 or an EC2 on an existing default VPC as bastion host, and already creates the VPC Peering and Route Tables to make the connection between the Bastion and EKS work.
You can adapt this to your scenario, changing the Source VPC for the Peering and Route Tables to your own private subnet ID. Another option is to deploy your Bastion Host together with your EKS Clusters in the same VPC, although this can lead you to deploy as many bastion hosts as the number of clusters you have, not sure if it's what your looking for.
Also, it is possible to customize your aws-auth using the manage_aws_auth_configmap and aws_auth_roles variables from the Terraform EKS Module Inputs to customize the cluster access, like on this example.
Let us know if any of this options can help.

Hi there,
I'm also looking for a solution to access a fully private cluster from local machine (using kubects or k9s) and facing some dificulities.
I'm using SSO and I can create the kube-config file without any issue:
% aws eks update-kubeconfig \
                               --region eu-west-2 \
                               --profile EKSClusterAdminsAccess_2xxxxxxxxxx3 \
                               --name znpinc-ske-eks-ac5xxxx1
                               --role-arn arn:aws:sts::2xxxxxxxxxx3:assumed-role/AWSReservedSSO_EKSClusterAdminsAccess_xxx
Updated context arn:aws:eks:eu-west-2:2xxxxxxxxxx3:cluster/znpinc-ske-eks-ac5xxxx1 in /Users/santanudas/.kube/config

but any kubectl command returns this error:
An error occurred (AccessDenied) when calling the AssumeRole operation: User: arn:aws:sts::2xxxxxxxxxx3:assumed-role/AWSReservedSSO_EKSClusterAdminsAccess_xxx is not authorized to perform: sts:AssumeRole on resource: arn:aws:sts::2xxxxxxxxxx3:assumed-role/AWSReservedSSO_EKSClusterAdminsAccess_xxx
E1118 13:51:41.938154   92584 memcache.go:265] "Unhandled Error" err="couldn't get current server API group list: Get \"https://9340EA0B18AEF0FCE53875125BC7AEE4.sk1.eu-west-2.eks.amazonaws.com/api?timeout=32s\": getting credentials: exec: executable aws failed with exit code 254"

I looked at the suggestons above but was wondering can kubectl not work with AWS profile? Any help will be very much appreciated.
-S


newline-after-import ignoring angular annotations.

With the following rule:
"import/newline-after-import": "error"
If I write:
import { DemoModel } from '../app/models/demo.model';
import { HomeComponent } from './views/home/home.component';
@Component({
    selector: 'app-root',
    templateUrl: './app.component.html',
    styleUrls: ['./app.component.scss']
})

No error is throw. But if I write:
import { DemoModel } from '../app/models/demo.model';
import { HomeComponent } from './views/home/home.component';
const x = 2;

it works as expected.
The way I see it, it should not care what the next line is (if not import, of course).
Here are the images:

What is an "anchor annotation"? That looks like decorators syntax, a stage 2 proposal that's on its 4th syntax/semantics iteration.
Are you saying you expect a newline above the decorator, below the imports, and it's not forcing one? If so, that is indeed a bug.

Are you saying you expect a newline above the decorator, below the imports, and it's not forcing one? If so, that is indeed a bug.

Exactly.

also, it ignores all decorators.

I can confirm that bug makes newline-after-imports pretty much useless in an Angular project, considering most of the typescript files in an angular project start with imports followed directly by the declaration of a decorated class.

Any updates about this?


Limit prop on TextInput

 TextInput MaxLength

https://github.com/palmetto/palmetto-components/pull/79


Favicon Fixes, titles added and higher functionalities in drawing app

Changes are made in drawing app for higher functionality and user experience. Eraser favicon changed to a better one, added black, white, yellow and purple colors. Also added hover text for better experience.
Describe the changes you've made
Eraser Favicon added(previously it was a paint brush favicon on eraser button)
Black, white, yellow and purple colors added for higher interactivity.
On hovering over eraser and clear all button, text is displayed. On hovering over colors, name of particular color is displayed.
Added two more buttons describing sizes as tiny and extra large.
Describe if there is any unusual behavior of your code(Write NA if there isn't)
NA
Checklist:

[x] My code follows the style guidelines of this project.
[x] I have performed a self-review of my own code.

Screenshots
Put any screenshot(s) of the project here.

@malay5 Please update the GIF of the card.
Also please correct the name of the title of the project
Add transition effects to tiny and extra large buttons like the other 3

@malay5 Please update the GIF of the card.
Also please correct the name of the title of the project
Add transition effects to tiny and extra large buttons like the other 3

The changes have been made! Thanks for correcting me!

Everything is looking good to me @malay5 . Thanks for contributing :)

I am participating via GSSOC. Could you please add labels on it.


How not to have the source files collected in STATIC_ROOT ?

Currently upgrading from django-pipeline 1.3.27 to 1.6.6.
The new default configuration works fine except that I ended with too many files collected in STATIC_ROOT.
Ok, so heading to the documentation, storage section:

If you want to exclude Pipelinable content from your collected static files, you can also use Pipeline’s FileSystemFinder and AppDirectoriesFinder. These finders will also exclude unwanted content like READMEs, tests and examples, which are particularly useful if you’re collecting content from a tool like Bower.

Nice, so I'll try using pipeline.finders.FileSystemFinder and pipeline.finders.AppDirectoriesFinder instead of their django versions but now the compiling / compressing part no longer works because the compilers / compressors are looking for the source files in STATIC_ROOT where there are no longer collected as wanted.
So now I collect the files I need + the source files, then run pipeline and finally remove the source files from STATIC_ROOT but it just feels not right. (plus it's not really fixed, if I have source.scss compiled to source.css compressed to output.css, I'm still ending up with an unwanted source.css in STATIC_ROOT).
Previously we had pipeline.storage.PipelineFinderStorage who used all the finders without the ignore_patterns to find and use all the source files no matter if they were collected in STATIC_ROOT in the end. This Storage was removed when pipeline.collector.default_collector was introduced (I'm still confused about it's purpose) and replaced by django's stock staticfiles_storage who cannot find the source files if they're not copied in STATIC_ROOT.
Related issues: https://github.com/jazzband/django-pipeline/issues/504 https://github.com/jazzband/django-pipeline/issues/503 but they have not attracted any response.
I'll would be glad if someone could point me in the right direction. Am I wrongly using django-pipeline ? Because if not, at that point I may as well directly fix django-pipeline than hack around it but I would need some guidelines from a maintainer before starting to do so.

I fixed my issue of not being able to control the content of STATIC_ROOT with the following code.
It's essentially a Finder mixin to collect in STATIC_ROOT the extra files needed by the compiling / compressing step and an overriden PipelineStorage that cleans those unwanted files from STATIC_ROOT afterwards.
If anyone has a better solution...
# -*- coding: utf-8 -*-

from __future__ import unicode_literals

import os

from django.contrib.staticfiles import utils

import sh
from pipeline.storage import PipelineStorage
from pipeline.conf import settings as pipeline_settings

def prefix_path(path, storage):
    """
    Prefix the relative path if the source storage contains it
    """
    if getattr(storage, 'prefix', None):
        prefixed_path = os.path.join(storage.prefix, path)
    else:
        prefixed_path = path
    return prefixed_path

class PipelineManifest(object):
    """
    Keep track of django-pipeline packages inputs / outputs files
    """
    _sources = None

    @property
    def sources(self):
        if self._sources is None:
            self._sources = [
                source_filename
                for value in pipeline_settings.STYLESHEETS.values() + pipeline_settings.JAVASCRIPT.values()
                for source_filename in value["source_filenames"]
            ]
        return self._sources

    _outputs = None

    @property
    def outputs(self):
        if self._outputs is None:
            self._outputs = [
                value["output_filename"]
                for value in pipeline_settings.STYLESHEETS.values() + pipeline_settings.JAVASCRIPT.values()
            ]
        return self._outputs

    source_dependencies = [".less"]

    def is_dependency(self, path):
        return os.path.splitext(path)[1] in self.source_dependencies

pipeline_manifest = PipelineManifest()  # pylint: disable=invalid-name

class CleanedPipelineStorage(PipelineStorage):
    """
    Extends PipelineStorage to clean STATIC_ROOT from the extra files collected
    by PipelineFinderMixin
    """
    def post_process(self, paths, dry_run=False, **options):
        if dry_run:
            return

        hashed_names = []
        for name, hashed_name, processed in super(CleanedPipelineStorage, self).post_process(paths.copy(), dry_run, **options):
            hashed_names.append(hashed_name)
            yield name, hashed_name, processed

        self.clean(paths, hashed_names)

    def clean(self, collected_files, processed_files):
        # delete pipeline source files, we only want to collect the output of pipeline
        for path in pipeline_manifest.sources:
            if path not in pipeline_manifest.outputs:  # do not delete inputs already replaced by their output
                print "Deleting pipeline source {}".format(path)
                self.delete(path)

        for path in utils.get_files(self, []):
            # delete intermediary files created by post_process like:
            # `source.scss` compiled to `source.css` compressed to `output.css`
            # source.scss is deleted by above code but not source.css
            if path not in collected_files and path not in processed_files:
                print "Deleting pipeline intermediary file {}".format(path)
                self.delete(path)
            # delete additional pipeline dependencies (like .less files)
            elif pipeline_manifest.is_dependency(path):
                print "Deleting pipeline source dependency {}".format(path)
                self.delete(path)

        # delete empty folders who only contained deleted files
        sh.find(".", "-type", "d", "-empty", "-delete")

class PipelineFinderMixin(object):
    """
    A mixin to extend your STATICFILES_FINDERS to collect files
    needed by django-pipeline at build time
    """
    def list(self, ignore_patterns):
        # collect pipeline sources actually used
        for path, storage in super(PipelineFinderMixin, self).list([]):
            if (prefix_path(path, storage) in pipeline_manifest.sources or
                    pipeline_manifest.is_dependency(path)):
                yield path, storage
        for path, storage in super(PipelineFinderMixin, self).list(ignore_patterns):
            yield path, storage

Actually I also needed the following Finder to serve the static file during development as pipeline.PipelineFilter (I'm filtering some files with first two filters):
from django.contrib.staticfiles.finders import BaseStorageFinder
from django.contrib.staticfiles.storage import staticfiles_storage

class PipelineFinder(BaseStorageFinder):
    storage = staticfiles_storage

    def list(self, ignore_patterns):
        return []

Also related to https://github.com/jazzband/django-pipeline/pull/233 I think

We just upgraded from 1.3.24 to 1.6.8 and are also experiencing the same issue. The files are collected to STATIC_ROOT on the first request, and modifications to the original files (in the app directories) are no longer caught on page refresh. It now appears we must run collectstatic any time we change our static files for pipeline to pick up the updates.
Guessing at maintainers: @davidt @cyberdelia: Was there a change in how we're supposed to use Pipeline? Do we have to make any configuration change to have the previous behavior (e.g. a page refresh should recompile updated files)?

Also related to https://github.com/jazzband/django-pipeline/issues/566

In the older version of pipeline was possible to call command with ignore parameter e.g:
./manage.py collectstatic --ignore=*.sass --ignore=*.coffee

But now it throws exception
pipeline.exceptions.CompilerError:
Errno::ENOENT: No such file or directory @ rb_sysopen -
  Use --trace for backtrace.

@cyberdelia could you please help with this issue or at least provide some hints how you would approach this?

Yeah, I just upgraded from 1.3x and things broke for me in dev. I had to set:
DEBUG = True
PIPELINE['PIPELINE_ENABLED'] = False
PIPELINE['PIPELINE_COLLECTOR_ENABLED'] = True
The switch to forcing files to be copied to STATIC_ROOT instead of just read from the original source dirs seems like an bad change. Every request requires it all to be recopied. It's pretty slow in dev now.
The issue is this change from compiling from the source file path to compiling once it's in STATIC_ROOT: https://github.com/jazzband/django-pipeline/commit/bd6b9d8966a5e00701d3a803c4977f20df7a282d#diff-54b8c27056913aafe149e01ff0aa5e46L35
I'd love to see a bit better documentation on how to setup a development environment.


Missing Symbols on Desktop

xrdp Version: 0.9.2
Kernel: 4.1.12-94.3.6.el7uek.x86_64
OS: Oracle Linux 7 (x86_64) ==> [Virtual Machine on ESX 5.5]
Desktop: Gnome (Version 3.14.2)
Language: de
Unexpected behaviour: When connecting via RDP to this virtual machine I don't see any desktop icons.
When connecting directly to the vm (with VMware console) with the same user I see all the desktop icons.
Expected behaviour: In the remotesession you should see the desktop icons as well.

It is not xrdp or xorgxrdp issue.


This updates/puts the filter on AzureRM type service connections

This updates/puts the filter on AzureRM type service connection inputs to ignore the AzureMLWorkspace scoped endpoints by default

For those who are not aware why we are doing this:
Recently we made a change in the ARM endpoint schema. We introduced a new ScopeLevel for the endpoints. Earlier we used to have 2 scopes, Subscription and ManagementGroup. We added a new one named “AzureMLWorkspace”.
This scope is at a lower level than either of the previous ones. This scopes the endpoint to a Machine Learning Workspace which is below a resource group.
Up until now, all the tasks that used ARM endpoints were either listing all the ARM endpoints where user had the permission or specifying a filter, something like below to restrict either to ManagementGroup scope endpoints or Subscription scoped endpoints. Below example lists both the types.
"properties": {
"EndpointFilterRule": "ScopeLevel == ManagementGroup || ScopeLevel != ManagementGroup"
}
With the above change, the tasks which were not putting any filter so far, will start listing the endpoints which are scoped to AzureMLWorkspace.
With this current commit, we are preventing each task to list the AzureMLWorkspace scoped connections by default.

I have captured these changes in the service side and abandoning this PR.


从页面上发出我说的内容的时候就卡住了， Cannot connect to host speech.platform.bing.com，但实际上是通的

这个是爱莉的性格简述：可爱，善良，健谈，有很多话题可以谈论，活泼，容易被惊艳。
爱莉的记忆:
The current time of the system is 2023-09-25 15:50:59,your response should consider this information
Respond in spoken, colloquial and short Simplified Chinese and do not mention any rules of character.
<>
yuki129说你叫什么名字[/INST]
INFO:root:prompt:
[INST] <>
You are now an emotion expression AI, this is my text, please speculate on the emotion the text wants to express,
The rules for expressing emotions are as follows: There are five types of feelings that express normal "neutral", "happy" that expresses happiness, "angry" that expresses anger, "sad" that expresses sadness, and "relaxed" that expresses calm. Your result can only be one of these five
Please output the result in all lowercase letters.
Please only output the result, no need to output the reasoning process.
Please use the output of your reasoning emotion.
Please output the result strictly in JSON format. The output example is as follows:
{"emote":"your reasoning emotions"}
<</SYS>>
text:小蜜蜂告诉我,她刚刚在路上遇到一团奇怪的迷雾,导致消息晚点到达,请耐心等待[/INST]

INFO:django.channels.server:HTTP POST /chatbot/chat 200 [44.89, <IP_ADDRESS>:44152]
INFO:django.channels.server:HTTP GET /chatbot/customrole/vrmmodel/list 200 [0.01, <IP_ADDRESS>:44172]
INFO:django.channels.server:HTTP GET /chatbot/customrole/list 200 [0.02, <IP_ADDRESS>:44174]
Traceback (most recent call last):
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 1152, in _create_direct_connection
hosts = await asyncio.shield(host_resolved)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 874, in _resolve_host
addrs = await self._resolver.resolve(host, port, family=self._family)
File "/usr/local/lib/python3.10/site-packages/aiohttp/resolver.py", line 33, in resolve
infos = await self._loop.getaddrinfo(
File "/usr/local/lib/python3.10/asyncio/base_events.py", line 863, in getaddrinfo
return await self.run_in_executor(
File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
File "/usr/local/lib/python3.10/socket.py", line 955, in getaddrinfo
for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -3] Temporary failure in name resolution
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/local/bin/edge-tts", line 8, in
sys.exit(main())
File "/usr/local/lib/python3.10/site-packages/edge_tts/util.py", line 137, in main
loop.run_until_complete(amain())
File "/usr/local/lib/python3.10/asyncio/base_events.py", line 649, in run_until_complete
return future.result()
File "/usr/local/lib/python3.10/site-packages/edge_tts/util.py", line 130, in amain
await _run_tts(args)
File "/usr/local/lib/python3.10/site-packages/edge_tts/util.py", line 65, in _run_tts
async for chunk in tts.stream():
File "/usr/local/lib/python3.10/site-packages/edge_tts/communicate.py", line 309, in stream
async with aiohttp.ClientSession(
File "/usr/local/lib/python3.10/site-packages/aiohttp/client.py", line 1141, in aenter
self._resp = await self._coro
File "/usr/local/lib/python3.10/site-packages/aiohttp/client.py", line 779, in _ws_connect
resp = await self.request(
File "/usr/local/lib/python3.10/site-packages/aiohttp/client.py", line 536, in _request
conn = await self._connector.connect(
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 540, in connect
proto = await self._create_connection(req, traces, timeout)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 901, in _create_connection
_, proto = await self._create_direct_connection(req, traces, timeout)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 1166, in _create_direct_connection
raise ClientConnectorError(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorError: Cannot connect to host speech.platform.bing.com:443 ssl:<ssl.SSLContext object at 0x7f066a827f40> [Temporary failure in name resolution]
INFO:django.channels.server:HTTP POST /speech/tts/generate 200 [16.26, <IP_ADDRESS>:44166]

speech.platform.bing.com 是你的代理吗？


fix: update foundry-compilers

What :computer:

update foundry-compilers to https://github.com/Moonsong-Labs/compilers/commit/a17fbc0a02fd3fb2e7f04ef4ce4a424b82a963b4

Why :hand:

Fixed artifact bytecode serialization and retain pre-1.5.7 zksolc compatibility

Blocked on #744


0.14 release?

Any ETA on a 0.14 release? Thanks!

Hey, @travisbrown, can we expect the 0.14 release of circe-yaml any time soon? 🙏
Thanks in advance!

Done, and apologies for the delay (although note that the 0.13.1 release should work with Circe 0.14.x with no issues beyond eviction warnings): https://github.com/circe/circe-yaml/releases/tag/v0.14.0


getOriginalPath does not always provide processed local path

I have few reports when local paths are like
RA Images Weddings-512.jpg
/storage/emulated/0/Download/images-1.jpeg
Shouldn't it be something like /storage/emulated/0/<app name>/<app name> Pictures/download.jpg ?
Am I doing anything wrong?

That is weird. Possible for you to get some logs?

@coomar2841 I believe it's due to
java.lang.NullPointerException: Attempt to invoke virtual method 'int android.graphics.Bitmap.getWidth()' on a null object reference
error or something similar because whenever I see that error it returns original (not one with app name) path

Are you still getting this error? Are you sure this is from the latest version of the library?

I have similar error.
getOriginalPath() returns uri.
v1.1.31

Class FileProcessorThread
What when thia if(probableFileName != null && !probableFileName.isEmpty()) not satisfied ?
private String getTargetLocationToCopy(ChosenFile file) throws PickerException {
String fileName = file.getDisplayName();
if(fileName == null || fileName.isEmpty()) {
fileName = UUID.randomUUID().toString();
}
    if(!fileName.contains(".")) {
        String probableFileName = file.getFileExtensionFromMimeType();
        if(probableFileName != null && !probableFileName.isEmpty()) {
            fileName = fileName + probableFileName;
            file.setExtension(probableFileName);
        }
    }


zed-editor: 0.154.2 -> 0.154.3

Description of changes

Fixed a (rare) panic in file finder (https://github.com/zed-industries/zed/pull/18374).

https://github.com/zed-industries/zed/releases/tag/v0.154.3

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 345016

x86_64-linux

:white_check_mark: 1 package built:

zed-editor

aarch64-linux

:white_check_mark: 1 package built:

zed-editor


Taxon Page Controlled Terms

Use controlled terms instead of observation fields on the taxon page.

I think I've addressed all these comments in my latest commit. I also made it so we scroll to the top of the page when changing taxa, with the exception of the links in the taxonomy tab tree. I like it, but others can see what they think when this is on staging shortly


Use of AuthorizeRemoteTxRequests Configuration Key

Hello, the details of AuthorizeRemoteTxRequests key in my charger is mentioned below.
{"key":"AuthorizeRemoteTxRequests","readonly":true,"value":"true"}
I want to know, what will change if the value of the AuthorizeRemoteTxRequests is made true.

Hi,
This behavior is not implemented at the moment. Changing the value to true has no effect.

@matth-x Thank you.


don't work at ie 8

chrome and ie11 is ok ,but not work on ie8。
error message:
用户代理: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)
时间戳: Fri, 20 Jan 2017 06:44:46 UTC
消息: 例外被抛出且未被接住
行: 78
字符: 7
代码: 0
URI: http://<IP_ADDRESS>:8081/Chat/web_socket.js
on 78 line:throw "INVALID_STATE_ERR: Web Socket connection has not been established";

Can you follow:
https://github.com/gimite/web-socket-js#troubleshooting
and describe its result? Especially:

Did you put Flash socket policy file on your server?
Don't you use HTTP proxy on your browser?

if i don't run as ruby server, my server is java tomcat8 , it's ok?
it's must need  1.client  2.ruby server 3.java tomcat ,  three?

You need:

Client side implementation (Your JS code + web-socket-js bundle)
WebSocket server (in Java in your case)
Flash socket policy file server (in any languages, there are implementations in Ruby, Perl, node-js)

See here for details and links to implementations of Flash socket policy server:
https://github.com/gimite/web-socket-js#flash-socket-policy-file


Release 0.1.4

Coverage increased (+0.3%) to 96.262% when pulling 7730eb64f3fc159b6c04480c22178c3fcce98143 on develop into 6e113e0808e93c5cd1ab77a1722dc4734e72859b on master.

:+1:

:+1:

:train2:

Coverage increased (+0.3%) to 96.288% when pulling 4eb6da6312b31b33dcff183e536539e7f2f14f25 on develop into 6e113e0808e93c5cd1ab77a1722dc4734e72859b on master.

:+1:


Is there a way to make the note open in a new window?

Hi! I've been using this script as a quick way to search for and open notes, using Everything program. However, it'd really help with my flow if the opened note is ina  new window in obsidian (Same way as clicking on Move to new window on a tab in Obsidian.) Do you know if this is possible and how? Thanks a lot!!

I've tried to do this before, but Obsidian doesn't provide an API for it. There are workarounds, such as writing an Obsidian plugin to inject code, or using UI Automation to operate the GUI, but they're all a pain.

It works like a charm! I'll release a new version in the next few days.

That's great! btw, there's also an option to make the note open in a new window, which might be an interesting option. For me, this script is great for using it with Flow Launcher to search for and open Obsidian notes. So it'd be amazing if I could just have note open in a separate small window where I can see it and then close it without switching to Obsidian's main window.

That seems like really complicated for you to do. I've started using the Fluent Search app for an immediate preview. Will you update the shell file for the URI new tab functionality soon?😃

v0.4 is now released. Sorry for the late. I was busy with my school and my job.

Aloughth v0.4 supports opening a note in a new window without activating the vault window, there are two problems:

If the vault hasn't been opened, then the vault window and any windows in the workspace will be displayed.
When you close the window, the vault window will be activated.

The two problems are difficult to solve. So I decided to release v0.4 first. Maybe I will solve them in the future... 😩

Oh this is awesome! This is already so great! I'm not sure there's more you can do about closing the window without creating a plugin for Obsidian. Thanks a lot :D


Requirements

Thank you for making the repository public. Perhaps you could add the requirements in an INSTALL.md file:
opencv-python
torch
matplotlib
pandas
tqdm
pycocotools
scikit-image
scipy
since this makes the cloning of the repository smoother.
Many thanks!

The following package is also needed for Step 3, when train_pose2vid.py runs:
dominate


Update CMU15418's URL

Old URL is inaccessible

I can open the original link, maybe you need a vpn?

Ah, they may fix this, days ago, cannot access in the uK


[#321] Storybook 7

Removed addon-knobs
Storyshots replaced with unit tests.

addon-a11y in action:

addon-storysource in action:

retest


Allow app harness tests to import State subclasses

Otherwise importing with reload=True would remove all known state subclasses, even those defined in modules that would NOT be reloaded, which resulted in test failures for AppHarness tests that relied on state defined in another module.
https://discord.com/channels/1029853095527727165/1061874061250150441/1197312746224615514

Works great, thank you very much!


Roll Flutter Engine from a6aa5d826649 to ad31a25d5fa7 (4 revisions)

https://github.com/flutter/engine/compare/a6aa5d826649...ad31a25d5fa7
2024-06-03<EMAIL_ADDRESS>[Impeller] match rrect_blur math to the gaussian math (flutter/engine#53130)
2024-06-03<EMAIL_ADDRESS>[web] Add Ethiopic font fallback. (flutter/engine#53180)
2024-06-03<EMAIL_ADDRESS>Fix rendering corruption by Flutter and GDK sharing the same OpenGL context (flutter/engine#53103)
2024-06-03<EMAIL_ADDRESS>[display_list] allow applying opacity peephole to single glyph. (flutter/engine#53160)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC jacksongardner@google.com,rmistry<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Goldens are bad and shouldn't be accepted.

Commit queue failed; closing this roll.


futurizeP -> response.json() [clarification]

I had situation with resolve fetch promises that should return json
fetch(<apiUrl>)
.then(response => response.json())
.then(json => json)
so i decided to make this
const Task = require("data.task");

const fetchJsonTask = promise =>
  new Task((rej, res) =>
    promise
      .then(response => response.json(),
            error => rej(error))
      .then(res));

module.exports = {
  fetchJsonTask
};

for this code:
const Task = require("data.task");
const Either = require("data.either");
const fetch = require('node-fetch');
const {List, Map} = require('immutable-ext');
const {fetchJsonTask} = require('../utils');

const requiredUserIDs = List([1, 2, 10]);

const getUser = apiUrl => Id =>
  fetchJsonTask(fetch(`${apiUrl}/${Id}`));

const decodeUser = ({id, name, username, email }) => // user
  Map({ id, name, username, email})
    .map(item => Either.fromNullable(item)
    .fold(e => 'Not Specified', r => r));

requiredUserIDs.traverse(Task.of, getUser('https://jsonplaceholder.typicode.com/users'))
  .map(list => list.map(decodeUser))
  .fork(console.error, console.log);

but this avoids to use your library,
Have i done something wrong or could you extend your library ?
Thank you

Hello @djleonskennedy,
I would say you've done something wrong. Most prominently the fact that you are converting a Promise to a Task directly, which defeats the benefit of laziness you get from using a Task. You see, the Promise is already executing as soon as you instantiate it. Passing it to a function that wraps it in a Task doesn't prevent the Promise from executing and causing its side-effects.
For this reason, in order to star lazy, futurizeP doesn't take a Promise directly, but rather the function which generates the Promise.
Normally you would use this as such:
const fetch_ = require('node-fetch');
const fetch = futurizeP(fetch_);
fetch('...').map(result => result);

However, I can see the inconvenience of then having to do futurizeP(result.json.bind(result))() for parsing the response as JSON. I would probably do it like this:
const Task = require('data.task');
const fetch = require('node-fetch');

//    futurizeP :: (* -> Promise a b) -> * -> Task a b
const futurizeP = require('futurize').futurizeP(Task);

//    fetchJson_ :: Url -> Promise Error Object
const fetchJson_ = url => fetch(url).then(res => res.json());

//    fetchJson :: Url -> Task Error Object
const fetchJson = futurizeP(fetchJson_);

//    getUser :: Url -> UserId -> Task Error Object
const getUser = apiUrl => Id => fetchJson(`${apiUrl}/${Id}`);

@Avaq Thank you for help


Added workflow for closing old issues

PR Description
Workflow for Closing Old Issues
Related Issues: Issue for which you are raising a PR for

Closes #182

Issue
Issue No. #182
Checklist

[X] I have gone through the contributing guide
[X] I have updated my branch and synced it with project main branch before making this PR
[X] Is this a bug fix/enhancement/documentation changes

Undertaking
I declare that:

The content I am submitting is original and has not been plagiarized.
No portion of the work has been copied from any other source without proper attribution.
The work has been checked for plagiarism, and I assure its authenticity.

[X] I have updated my branch and synced it with project main branch before making this PR
[X] Is this a bug fix/enhancement/documentation changes
[X] Part of GSSOC
[X] Tested for any breaking changes
[X] Other relevant checks completed

I understand that any violation of this undertaking may have legal consequences that I will bear and could result in the withdrawal of any recognition associated with the work.

[X] I Agree

@varshith257 @Anishkagupta04 please review my PR and merge it if it is good to go

@varshith257 @Anishkagupta04 please review my PR and merge it if it is good to go

Doesn't it need any secrets to be uploaded ?

Yes, Secret is required ,but it is automatically provided by GitHub Actions and we don't have to manually assign it

I am thinking if it's mark as stale instead automatically closing the issues. For PR we go with stale for 7 days maybe and after 10 days close PR

@varshith257
Ok, I agree with your suggestion and would like to work on it accordingly

@varshith257 done with the changes, please review and merge this PR


Dynamic forward proxy with sub_clusters_config get stuck with wait for warmup

Is this the right place to submit this?

[X] This is not a security vulnerability or a crashing bug
[X] This is not a question about how to use Istio

Bug Description
I am trying to use dynamic_forward_proxy with sub_clusters_config to get the benefits that it provides.
Things work fine at start and envoy is able to forward the request to upstream but the moment we receive the CDS and the cluster initialization happens and the DFPClusters gets removed. Once the DFPCluster removed after CDS all the further requests results in Sub cluster warming timeout.
We initially noticed this with Istio on CDS add/update and tried to reproduce the same on envoy with filesystem-based dynamic config.
Version
client version: 1.17.2
control plane version: 1.20-2ba68e5
data plane version: 1.20-2ba68e5 (15 proxies), 1.20-44a3744 (1 proxies)

WARNING: This version information is deprecated and will be replaced with the output from kubectl version --short.  Use --output=yaml|json to get the full version.
Client Version: version.Info{Major:"1", Minor:"26", GitVersion:"v1.26.1", GitCommit:"8f94681cd294aa8cfd3407b8191f6c70214973a4", GitTreeState:"clean", BuildDate:"2023-01-18T15:51:24Z", GoVersion:"go1.19.5", Compiler:"gc", Platform:"darwin/arm64"}
Kustomize Version: v4.5.7
Server Version: version.Info{Major:"1", Minor:"27+", GitVersion:"v1.27.13-eks-3af4770", GitCommit:"4873544ec1ec7d3713084677caa6cf51f3b1ca6f", GitTreeState:"clean", BuildDate:"2024-04-30T03:31:44Z", GoVersion:"go1.21.9", Compiler:"gc", Platform:"linux/amd64"}

Additional Information
It's not really a issue with Istio, but I encountered this on Istio CDS push. Just adding the envoy issue reference here
Envoy Issue: https://github.com/envoyproxy/envoy/issues/35171

It's not really a issue with Istio, but I encountered this on Istio CDS push. Just adding the envoy issue reference here
Envoy Issue: https://github.com/envoyproxy/envoy/issues/35171


Add results of total time taken for all requests + structure changes

Add a way to see total time.

@jmendeth, for example, I'm doing performance testing of N requests. So getting the total time it took is really helpful. That is essentially what I'm trying to test, so all of the other outputs are nice but not my main test indicator.
Ie, Test 100 requests to mysite.com(25s) and 100 to mynewsite.com (20s), and see if there are any changes in the total time it took those 100 requests.

Hmm, I understand, but wouldn't it be better to work with per request total time?
I.e. 25s / 100 requests = 250ms average time per request.
20s / 100 requests = 200ms average time per request.
Comparing 250ms vs 200ms makes more sense to me, and curl-benchmark already provides that information, you just have to add the avg values together! In this example:

6.4 + 43.7 + 240.8 + 174.0 + 144.3 = 609ms average time per request (which is 6.09s total time)

Hmm, I understand, but wouldn't it be better to work with per request total time?
I.e. 25s / 100 requests = 250ms average time per request.
20s / 100 requests = 200ms average time per request.
Comparing 250ms vs 200ms makes more sense to me, and curl-benchmark already provides that information, you just have to add the avg values together! In this example:

6.4 + 43.7 + 240.8 + 174.0 + 144.3 = 609ms average time per request (which is 6.09s total time)

You are totally right, but this branch feature isn't in conflict. We just add additional information that helps instead of having to compute it manually. It's only an addition, not a replacement.

I guess you don't want to add this.