light.turn_off with transition on Hue lights causes dimming when turned on/toggled

Home Assistant release with the issue:
0.87.1

Last working Home Assistant release (if known):
Unknown (just started using Hue lights)
Operating environment (Hass.io/Docker/Windows/etc.):
Docker

Component/platform:
Light/Hue

Description of problem:
Using light.turn_off with a transition on a Philips Hue light sometimes causes a light to turn on with the lowest brightness when using light.turn_on or light.toogle
It only happens sometimes. When removing transition when turning off lights in the automation the issue does not seem to occur.
Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):
- alias: 'Light - Hallway (off)'
  trigger:
    - platform: state
      entity_id: binary_sensor.hallway_motion_pir
      from: 'on'
      to: 'off'
      for:
        minutes: 2
  action:
    - service: light.turn_off
      data:
        entity_id: light.hallway
        transition: 3

- alias: 'Light - Hallway (on)'
  trigger:
    - platform: state
      entity_id: binary_sensor.hallway_motion_pir
      from: 'off'
      to: 'on'
  action:
    - service: light.turn_on
      entity_id: light.hallway
      data:
        brightness: 200
        kelvin: 2700

Traceback (if applicable):

Additional information:
Using the Philips Hue hub.
I have about 20 Hue lights (bulbs and lamps).
Issue happens randomly on them.

Removing transition from the action did not fix the issue. It still happens.

Have you updated to 0.90?  if not, try that.  If you have updated, is this still a problem?
Thanks

HA Github Issues Clean-up crew :)

I believe it's still an issue however I moves all my Zigbee stuff to deConz/Conbee about 2 weeks ago and that solved the issue for me.

I moved all my Zigbee stuff to deConz/Conbee about 2 weeks ago and that solved the issue for me.


log timestamp delay

After I install and run this plugin , I found that new logs' timestamp would delay 20 mins offset. Does anyone face the same issue?

@kyauaa This plugin doesn't modify the "timestamp" message field, so maybe your DNS resolvers are slow?
Although 20 minutes would be quite long…
You can check the runtime metrics of the DNS Resolver filter to see, if the problem lies there:

org.graylog.plugin.filter.dns.DnsResolverFilter.resolveTime
org.graylog.plugin.filter.dns.DnsResolverFilter.resolveTimeouts

Hi Joschi. Thanks for your reply. I have changed my DNS setting, and it works properly now. Thank you so much.


Autocorrect tooltips don't appear on iOS

Steps to Reproduce
When using a native iOS app without text prediction enabled, there is a pop-up that indicates when autocorrections are going to occur, and when backspacing on a correction a pop-up appears that gives alternative choices for the word.
In flutter, the autocorrections happen silently and require backspacing into the word to make the correction.  See the gif below for a comparison of the behavior.
Flutter should either integrate with the iOS autocorrection system to provide the popups or emulate them.  This is a pretty big usability concern which makes it more difficult to enter text because the corrections are harder to notice and harder to fix.

Logs
N/A, this is a design issue.
Flutter Doctor
$ flutter doctor
Building flutter tool...
[✓] Flutter (on Mac OS X 10.12.6 16G29, locale en-US, channel master)
    • Flutter at /Users/jwm/Projects/flutter
    • Framework revision 337150308c (2 days ago), 2017-11-05 19:39:49 -0800
    • Engine revision e059cc0258
    • Tools Dart version 1.25.0-dev.11.0

[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.io/setup/#android-setup for detailed instructions).
      If Android SDK has been installed to a custom location, set $ANDROID_HOME to that location.

[✓] iOS toolchain - develop for iOS devices (Xcode 9.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 9.0.1, Build version 9A1004
    • ios-deploy 1.9.2
    • CocoaPods version 1.3.1

[✗] Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.io/setup/#android-setup for detailed instructions).

[✓] IntelliJ IDEA Community Edition (version 2017.2.5)
    • Flutter plugin version 18.2
    • Dart plugin version 172.4343.25

[✓] Connected devices
    • iPhone 7 Plus • DF665BBF-F7D6-4B75-8FCA-E092AD4AD6DC • ios • iOS 11.0 (simulator)

MD doesn't seem to talk about this, so this is likely going to be cupertino specific.
https://material.io/guidelines/components/text-fields.html
Thoughts @cbracken @xster?

@eseidelGoogle iOS doesn't have autocorrect on the keyboard like Android does, so this is not MD vs Cupertino, but more like we just need it in all apps on iOS.

Thanks for the feedback. We're addressing a few non-cupertino iOS text entry issues at the moment like https://github.com/flutter/flutter/issues/9507, https://github.com/flutter/flutter/issues/20693 and https://github.com/flutter/flutter/issues/9288. Hopefully we'll have the bandwidth to address this one too after.

You know what's kind of embarrassing? I was using my phone today and autocorrect was coming up on the keyboard. Literally never seen or noticed it before. So my apologies for my incorrect statement earlier. I'm not sure when that changed or when it displays. This was on iOS 10 btw.

What's the status on this?

@Ethras
Using "add reaction" on the initial comment would increase priority while +1 comments are rather pointless and cause lots of people to get notified for no reason.
To get notified yourself use the [Subscribe] button to the top right instead.

This is currently in progress!

Any ETA regarding the fix?

There's a solution in work but our work allotment was reshuffled recently. I would realistically expect this to be done closer to June.

According to UIKit documentation, some of the behaviors described above come from spellchecking rather than autocorrection (Although when I tested on iOS 12 & 13 if autocorrection is on turning off spellchecking only hides the red underline).
Created #34688.

Please note that the popup shown in the original post is only shown if "Predictive" is turned to OFF in the General->Keyboard settings. By turning off this setting, you don't get 3 auto-correct choices at the top of the keyboard, but just one right next to the word you're typing in, exactly as shown in the original post, and a cross to dismiss the correction.
It was the default behaviour of iOS until the top-of-the-keyboard thing was included, so personally I keep this setting off on my phone as I'm used to it. My guess it that the percentage of users with this setting off is small as it's not the default behaviour anymore, but I'm surely not alone.
Unfortunately, Flutter textfields are almost unusable in this configuration, as you have no idea what word will be replaced by the auto-correct.

Thanks for the explanation @dvxf, could never figure out why others had the top-of-the-keyboard thing and I don't. Flutter should be designed to work without the top-of-the-keyboard thing without a doubt.

Autocorrected words are now highlighted on iOS. Closing.

@dvxf
Just a little comment from my side - it's also a default behavior when... there's no prediction implemented for the given language (e.g. Polish).
Anyway, I'm glad it's fixed now 🎉

@LongCatIsLooong
Thank you, it's definitely an improvement that autocorrected words are now highlighted on iOS! However, it only fixes half of the issue: as far as I can tell, the autocorrect tooltip still doesn't appear on iOS.
So it improves the behaviour when Predictive Keyboard is turned on, but not when Predictive Keyboard is turned off (or in Polish as @jakub-bacic mentioned).
As I mentioned before, unfortunately Flutter textfields are almost unusable in this configuration, as you have no idea what word will be put by the autocorrect in place of the highlighted word.

@LongCatIsLooong it appears that there was a misunderstanding about this issue. This issue is about tooltips, not squiggly line highlighting.

@dvxf do you happen to know if there is any way to turn on the Predictive Keyboard in one app? We could shim this issue with that for the time being if it's possible.

Oh my apologies. I didn't realize the tooltip can still appear in some cases, reopening.
It seems the tooltip will be difficult to implement at the moment: we can't draw the tooltip in flutter, and currently there doesn't seem to be a good way to return the accurate CGRect in func firstRect(for range: UITextRange) -> CGRect in the text input plugin.
Related: https://github.com/flutter/flutter/issues/9344

Even if we relocated it to be above the text line instead of below, that would be fine.

@LongCatIsLooong is the remaining issue still a customer critical?

@xster I would think it's still blocking at least for apps that target Polish users?
@lukepighetti I think anchoring the tooltip to the text input's bounds would confuse the users, especially when the text field is multiline.

I'm confused by the lack of priority on this issue. I am an English iOS user and I have no controls for autocorrect in any of my Flutter apps on iOS.

I recommend filing separate bugs for the remaining work so that we can track each specific item separately. Having one issue track a large number of separate work items doesn't lend itself well to clear prioritisation.
For the new bugs, I recommend marking them customer critical, etc, as per: https://github.com/flutter/flutter/wiki/Issue-hygiene#prioritization

(Please list the new bugs filed here, so that people who are following this one can follow up with the relevant bugs.)

This issue tracks the remaining work precisely, it was just misunderstood.

Got it, thanks. Sorry, I misread the bug earlier.

@LongCatIsLooong Any updates?

@Hixie Currently working on 55613. I will start looking into this more closely after that.

I spoke with @GaryQian and @HansMuller about this.
Proposed solutions so far generally fall into these 2 categories:

Blocking execution

Delegate the func firstRect(for range: UITextRange) -> CGRect computation to the framework using platform channels, block the platform thread until the result comes back. See https://github.com/flutter/engine/pull/4358 for potential problems with blocking the platform thread.

Asynchronous prefetching

Keep a copy of Paragraph data (or whatever information it takes) in the iOS text input plugin, and keep it up to date with the framework using platform channels. Implement func firstRect(for range: UITextRange) -> CGRect using the engine copy of information.
This introduces a race condition: when text is entered via the software keyboard, the iOS text input plugin sends the update back to the framework (which in turn triggers an update in Paragraph data that needs to be synced back to the engine side), and at the same time the keyboard calls func firstRect(for range: UITextRange) -> CGRect. There's no guarantee the updated Paragraph data will arrive in the engine before func firstRect(for range: UITextRange) -> CGRect returns. And there's no way to tell iOS to update the rect should the Paragraph data arrives late.

@LongCatIsLooong I don't know if your comments was meant to indicate that this issue was blocked or reconsidered, but I wanted to add some weight to this.
We're building a secure messaging app for healthcare, and 50% of the user experience is around typing. Currently on iOS, unless you set your iPhone to have the 3 autosuggestions above the keyboard, the typing experience is simply broken. Some replacements that are usually shown using the white tooltip before being applied do not appear, creating confusion and straight inability to prevent said replacement.
Below, on the left is a reference working example, using Notion (probably react-native or something like this), and on the right, our app using Flutter.

I want to emphasize this: the experience is currently broken. I cannot tell our users to go in the settings and change their keyboard specifically for our app. It is high priority, not a minor visual glitch.

What's especially alarming to me is the lack of priority on the team side and the lack of severity on the community side. We have started recommending React Native for any heavily text based apps that are going on the iOS App Store because of this broken experience.

@lukepighetti that's understandable, and unfortunate since Flutter is such a great framework.
On our end, being a bootstrapped startup with limited resources we simply can't afford to switch to another tech at this point. We made the leap and invested heavily in Flutter. I'm just really hoping the team fixes it soon, since our app really looks clumsy and buggy because of our tech choices.
/cc @Hixie @LongCatIsLooong please, please increase the bug priority. It's a pretty big deal.

Maybe someone from the flutter team can give us a high level strategy for implementing it. I don't have the bandwidth to work on this feature ATM but if they already have an idea of how to implement then someone someone may have the time to achieve it.

@matehat the gif on the right confuses me a bit, at least the background highlight should have shown up when the text was autocorrected.
For autocorrect as previously mentioned in func firstRect(for range: UITextRange) -> CGRect a correct CGRect needs to be returned for iOS to be able to correctly position the text background highlight and the tooltip. Currently we don't have an easy way to get the correct CGRect synchronously, so we have 2 options:

Return CGRectZero to prevent iOS from drawing the highlight and the tooltip, and send the UITextRange provided in the call to the framework to let Flutter draw the highlight. This is the current approach, it should work well for the highlight but we lose the tooltip.

Try our best to predict the correct Rect and let iOS draw the highlight & the tooltip. I made a POC that seems to work well enough for #9344, but in the case of autocorrect, the entire Rect needs to be on point (instead of just the leading edge or the trailing edge), so the background highlight rect iOS shows indicates the correct range of the text that will be autocorrected.

@LongCatIsLooong I'm using the latest stable:
Flutter 1.17.5 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 8af6b2f038 (2 weeks ago) • 2020-06-30 12:53:55 -0700
Engine • revision ee76268252
Tools • Dart 2.8.4

Here are the exact keyboard settings:

The whole puzzle is also because we're trying to do all of this with asynchronous callbacks between the host platform and the framework if I understand correctly, right?

The whole puzzle is also because we're trying to do all of this with asynchronous callbacks between the host platform and the framework if I understand correctly, right?
Yes, we'd like to avoid doing synchronous communication: flutter.dev/go/flutter-platform-idling.

I noticed in the second gif nothing got highlighted when autocorrect took place. That looks like a different bug that needs fixing? In my test flutter app I can make the text highlight show up with the same keyboard configuration, by following these steps:

turn predictive off
in the flutter app,  switch keyboard to French
type "ca va bien" ("ca" is highlighted, and if I continue to type it's autocorrected)

What do you mean by highlighted? The squiggly line below text?

@lukepighetti  No I was referring to the surrounding light gray correction rectangle. Maybe there's a way to change its color to transparent to make it invisible, so we don't have to worry about having the precise rectangle.

I have literally never seen the light gray correction rectangle in a Flutter app on iOS. Can you show us a screenshot of what you're talking about on Flutter?

Sorry I forgot it's light blue by default:

I thought that was only shown when selecting text?

Gotcha. Yeah, this issue is about the autocorrect suggestions that appear next to the iOS cursor while you're typing regardless of the styling of the app.
Currently it works as expected if you have Predictive setting turned on in General => Keyboards.
However, if that's turned off these tooltips do not appear when typing.

There are two solutions in my mind.

Find a way to force Predictive setting whenever in a Flutter app.
Implement the autocorrect tooltips for when Predictive is off.

It doesn't seem like option 2 is possible if I look at all the documentation and questions around predictive UI.
I think showing the tooltip is more important than showing the exact highlighted region, since the tooltip gives you the ability to accept or refuse a correction.
Is there a way to show the tooltip and position it approximately right?

Sorry I just saw this part of @LongCatIsLooong comment:

It seems the same Rect returned is used for both the highlight and the tooltip, and returning a Rect that has 0 width (or height) would also prevent both the tooltip and the highlight from showing up, so we can't just tell iOS to hide the highlight and show the tooltip.

Maybe a minimal but non-zero width, and a height deducted from the text's known line height would do?

I found an approach that seems to work well for https://github.com/flutter/flutter/issues/9344, save for a few edge cases. I'll see if that works for the autocorrect tooltip too. The highlighted region must accurately indicate the range of the autocorrect otherwise it can be misleading. Maybe we can override addSubview to prevent the highlight from being added.

@matehat did you end up finding any immediate relief? I just had a UX testing session with someone entering tags and they were having a really hard time getting by without tooltips.
Do we know if there's a way to at least detect if predictive keyboard is enabled? We could then show them a message suggesting they turn it on.
What I've noticed is that people who are long time iPhone users have this feature disabled by default and don't even know it exists. If you're using an iPhone on an account that isn't many years old then you might not realize that iOS had this tooltip feature.

There's another option. If we can get autocorrect options programmatically we can turn off autocorrect on the field and display our own predictive text options in Flutter. That would also allow us to add in our own actions which is a value add over the native controls (afaik).
There's also this method for detecting if Predictive is enabled. https://stackoverflow.com/questions/25993949/check-if-predictive-text-is-enabled

I encountered the same situation like you guys. I have been searching for a period of time looking for a solution to have same text input experience as other iOS apps built with either native Swift/Objective-C/React-Native. Finally, I resorted to writing my own package to export UITextView from iOS for use in Flutter:
https://pub.dev/packages/flutter_native_text_input
I hope you guys find it useful. Please feel free to report any issues or create PRs for any missing features.
Cheers🍻

Any chance if the iOS experience will be incorporated into Flutter natively?

@LongCatIsLooong Any updates for this?

@LongCatIsLooong Can you add this feature to the Flutter roadmap ?

@FloLecoeuche sorry I don't think I can provide a good time estimate, I'm running out of ideas of how the rest of iOS autocorrect can be implemented without introducing obvious visual glitches. Unassigning myself for now but I'll keep thinking about this, and would be happy to discuss new ideas.

So this is a wontfix?

This isn't a "wontfix", we're just trying to be transparent about our efforts to fix it so far.

As this is critical feature for many apps and there is still no official fix, I have decided to create my own solution.
My package supports null-safety and allows theming. You don't have to use my theme, the widget works standalone.
It is hybrid solution where there are theme-able Flutter widgets wrapping UITextField and UITextView for just text, which can be customized too.
Maybe Flutter team should consider similar solution.
https://pub.dev/packages/tch_common_widgets

I encountered the same situation like you guys. I have been searching for a period of time looking for a solution to have same text input experience as other iOS apps built with either native Swift/Objective-C/React-Native. Finally, I resorted to writing my own package to export UITextView from iOS for use in Flutter: https://pub.dev/packages/flutter_native_text_input
I hope you guys find it useful. Please feel free to report any issues or create PRs for any missing features. Cheers🍻

Android support is added in v2😀

I fail to understand how this is only P3. This is a very serious issue with flutter as a core typing functionality of iOS is broken.

There is no perfect solution yet, so I bring this bridging demo to help the community enrich the knowledge. @Hacklone
ios_native_text_field_bridging

CC @cyanglaz @camsim99 I just noticed this older issue and wanted to put it on your radar since it partially has to do with spellcheck on iOS.

+1 on this – this is probably the fit-and-finish issue I notice most on Flutter iOS apps. Also, I noticed this was tagged "cupertino", but it is not only a cupertino issue (it happens with Material text fields as well).

+1

Should be raised to P1

I think there are two main features to implement here:
1. Spellcheck
A red underline appears under misspelled words.  The normal context menu shows suggestions that can be tapped to replace.

This is currently in progress for Android and iOS:

[x] Android engine work: https://github.com/flutter/engine/pull/32941
[x] iOS engine work: https://github.com/flutter/engine/pull/30858
[ ] Context menu refactor: https://github.com/flutter/flutter/pull/107193
[ ] Android framework: in progress by @camsim99
[ ] iOS framework: in progress by @camsim99 (after Android)

2. Autocorrect
A blue highlight appears on a word available for autocorrect as the user types, along with a menu showing replacement options.

This has been investigated by @LongCatIsLooong in the comments above and is up next for implementation.

5+ years still open...
Maybe it's all from the evil one and it's time to return to native development?

@LongCatIsLooong, there is already a precedent for blocking call from engine to UI thread in FlutterKeyboardManager.mm. It runs nested CFRunLoop in kMessageLoopCFRunLoopMode until it gets the response.
Looking at the code I am wondering a bit what happens if the UI isolate gets terminated when within the inner loop. This is a bit underdocumented and I'm not 100% sure it is handled correctly.
Arguably this is playing with fire a little bit, but in this case it should be perfectly safe since the UI thread action is completely synchronous and UI thread can not do blocking calls to other threads.
We do similar thing in super_drag_and_drop to get items for UIDragInteractionDelegate and UIContextMenuInteractionDelegate (though using FFI instead platform channel in order to make sure not to deadlock when isolate is terminated before platform code receives the response). But in our case it gets bit more complicated because the call also involves getting image data and thus waits for raster thread, which under some circumstances is blocked on platform thread, but fortunately that's not the case here. So the approach from FlutterKeyboardManager.mm should work for text input plugin just fine.

This issue as a whole seems to have regressed with the changes introduced in iOS 17 Beta. Namely, the autocorrect “highlight rectangle” is now always highlighting the most recently entered character, regardless of whether there is an autocorrect pending or not.
https://github.com/flutter/flutter/assets/1598289/7f22f58d-ff3b-49db-b834-7cf3da6fba72


Hiding keys when not translated

After having tried different solutions to avoid FOUC, I decided to change the linking of the translate directive so that it just hides the element in the preLink and show it in the postLink function.
compile: function compile(tElement, tAttr) {
    return {
        pre: function (scope, iElement, iAttr) {
            iElement.css('opacity', 0);
        },
        post: function (scope, iElement, iAttr) {
            [...]
            var applyTranslation = function (value, scope, successful, translateAttr) {
              if (translateAttr === 'translate') {
                // default translate into innerHTML
                if (!successful && typeof scope.defaultText !== 'undefined') {
                  value = scope.defaultText;
                }
                iElement.html(scope.preText + value + scope.postText);
                iElement.css('opacity', '1');
                [...]

Isn't that simpler than any cloaking approach? I think that a lot of users just want to hide their resources when they are not translated yet.

Please have a look at our a Guide about FOUC, as well the translate-cloak directive.

Using this attribute made my page crash. I have this version:  *
angular-translate - v2.6.0 - 2015-02-08 *
Adding translate-cloak attribute (replacing translate with translate-cloak)
prevents the resource from being translated, so I guess I'm using the wrong
version?
For other propositions to prevent FOUCs, I prefer my solution of using
Angular's preLink and postLink feature. css(opacity, 0), then in
applyTranslation: css(opacity, 1). Almost just two lines.
On Tue, Oct 6, 2015 at 6:00 PM, Jan Philipp<EMAIL_ADDRESS>wrote:

Please have a look at our a Guide about FOUC
http://angular-translate.github.io/docs/#/guide/12_asynchronous-loading%23asynchronous-loading_fouc---flash-of-untranslated-content,
as well the translate-cloak directive
http://angular-translate.github.io/docs/#/api/pascalprecht.translate.directive:translateCloak
.
—
Reply to this email directly or view it on GitHub
https://github.com/angular-translate/angular-translate/issues/1246#issuecomment-146014829
.

Following remarks:

Crash?! We would like to see this!
The current release is 2.8.1. Please consider an update. Also 2.6 has followed patch releases...
No, a css hack in the main directive is not a proper solution. Sorry. ;)

Oops, I should have removed this phrase. Actually, It just prevents the
translation, but it doesn't crash.
Ok, I will update. My version contains translate-cloak, but maybe I'm
experiencing other bugs, then.
:P I'm still curious to know who really wants to see this element during
the time it is not translated. I'll check your code to see how you are
hiding the item without just affecting the style.

On Tue, Oct 6, 2015 at 6:28 PM, Jan Philipp<EMAIL_ADDRESS>wrote:

Following remarks:

Crash?! We would like to see this!
The current release is 2.8.1. Please consider an update. Also 2.6
has followed patch releases...
No, a css hack in the main directive is not a proper solution.
Sorry. ;)

—
Reply to this email directly or view it on GitHub
https://github.com/angular-translate/angular-translate/issues/1246#issuecomment-146020176
.

In general, the angular-module can't solve on issue on the FOUC you probably mean:
If the HTML file is loading and the browser starts rendering it - depending on the flow and script integration, it might show the "raw html" right upfront.
The only known solution to me is to set the body element to style="display: none;" and then in an onload event reset this style. This is rather hacky, but seems to be the only cross-browser reliable way to reach your goal if you really need it.

Take also into account: ng-cloak and translate-cloak.

The issue with the raw HTML showing with bindings is nicely solved using
ng-cloak on the ng-app DOM element. The only issue I had is with my
translation keys showing. And my final question was about why
angular-translate was not just hiding the DOM element in preLink and
showing it in applyTranslation using the opacity css property. I'm starting
to wonder if placing the translation in an attribute would solve my issue,
though the "collapsing" effect of empty DOM elements would impact the
layout much more than just applying opacity 0 -> 1, which doesn't affect
the layout.
On Wed, Oct 7, 2015 at 3:40 AM, Jan Philipp<EMAIL_ADDRESS>wrote:

Take also into account: ng-cloak and translate-cloak.
—
Reply to this email directly or view it on GitHub
https://github.com/angular-translate/angular-translate/issues/1246#issuecomment-146102808
.


Added Snapchat Filter

Related Issuse or bug

Added Cool Glasses on eye Snapchat Filter.
Fixes: #66 Snapchat Filters using OpenCV

Screenshots

@akshitagupta15june Mam I have added a folder where everyone can contribute their snapchat filters, so that they can be maintained seperately and added my contribution (Glasses on Eye Filter) too. Please review my PR for SWOC21.

@akshitagupta15june Mam I have added a folder where everyone can contribute their snapchat filters, so that they can be maintained seperately and added my contribution (Glasses on Eye Filter) too. Please review my PR for SWOC21.

great @Aayush-hub

great @Aayush-hub

I will update your points!

I will update your points!


Add classId to removed component

So we can get rid of named components in the implementations

@menduz could you please provide more details about this one?


Visual Studio Code cannot locate "eosio.hpp" while trying to run "Hello World"

Hi, I am running this on Ubuntu 20.04. I know I installed the CDT 1.7 and I did all the other steps in the EOSIO guide successfully. Now, when I try to run the "Hello World" program, I get an error when trying to #include <eoslib/eosio.hpp>
How do I get the header file to be properly recognized? I have never had this issue before when developing with C++ for other applications.

Hi @wfalcon3,
I'm not sure if we can provide much help without more information about how your environment is configured, but you may want to try adding include paths via VSCode's settings json C_Cpp.default.includePath'.  From here you can point it to where your version is installed.


External power sense exceeds analogue voltage max

Looking at R4/R9 voltage divider taking the +5V nominal supply voltage (which might be slightly over depending on the power source), it would appear that the input voltage on GPI39 would be 3.4V. While this might not technically damage the chip (I believe the IO pins are rated up to 3.6V) this still means that we can't see full scale voltages and any potential brown out on the 5V rail.
The battery has R22/R17 of 470k/470k for a ~4.2V max input giving ~2.1V or 63% of full scale. This actually seems kind of low, unless the charge voltage is significantly higher... Perhaps 330k/470k might be a better choice. This would give ~2.5V at full charge and be 75% of full-scale giving a slightly better resolution.
This would also be a good choice for the R4/R9 pair to give ~2.94V for a 5V input at 89% full-scale.
I don't know if there are any other reasons behind these choices, but it feels like this is a mistake.

We reviewed your input and we can't find mistakes here.
R4/R9 is for detection presence of external power supply via digital input, not to measure it.
R22/R17 is always connected to the battery and should be higher impedance so the battery won't discharge via it. You have enough scale to measure it.

@DanKoloff R4/R9 can still apply a voltage of 3.4V to a 3.3V input using 47k/100k assuming 5V is 5V. Is the drop across D1 or FET1 sufficient to prevent this? What happens if 5V is fed in externally through EXT1?

No problem to provide 5V on EXT1 as long as you don't have USB attached at the same time. 3.4V is not a problem for the ESP32.


Sync and offline support

Save questionnaire resource to SQLite DB and ensure it syncs to FHIR server

[ ] Sync offline data for patient registration and vaccine administration automatically sync to the FHIR server.
[ ] Check for new patients/updates associated with that vaccine site or worker.

For ANC App

[ ] The application will be able to support all key workflows offline including patient registration and ANC visit administration.  The app will be able to automatically sync with a FHIR server.  This will include checking for new patients/updates associated with that.

From @fredhersch
Current approach: client constructs the query and sends to the HAPI restful end-point to perform an operation

Versus:

Does the SDK just point to an API end-point (passing in the authenticated user) that performs the operations server-side to determine what patients and resources the client should have access to?

The later makes sense to me because the server is what knows about permissions, and I believe that's what we're doing now.
@Andati @rkodev can you describe if this aligns w/what we're doing now?
CC @mberg

We need to coordinate with Google on this to flesh this out and figure out a strategy on sync. From this week's call, it seems like they would want our input on this.

Related to #42

Upload of new FHIR records and local modifications to the server

Currently handled by FhirEngine#syncUpload. This gets all the local changes on the database and syncs to the server

We can improve by bulk uploading all the changes, currently each change is uploaded in it's own request
Fetch local changes from DB by timestamp to make sure we maintain the event timeline for other devices which are going to be using the information/data
Batch the fetching and uploading of local changes to avoid too much memory usage
Order squashing of LocalChangeEntity for a single resource by timeline so that the latest changes are always on the right during the reduce function
periodicSync only downloads periodically but needs to also upload first before downloading

Download of FHIR records periodically

FhirEngine and periodicSync

On FhirEngine initialization, it triggers a download, this however should follow the same strategy of pushing first and then later downloading - This might not be a big issue since for the first time, the workers will be setup, there will be no data to push and for subsequent application restarts, the download job will not replace the previously scheduled download jobs for apps with sync configurations.
Is SyncData#LAST_UPDATED_KEY similar to SyncData#LAST_UPDATED_ASC_KEY ?
We should use an ordered list for the syncData in the SyncConfiguration so as to maintain the order in which we download resource types
We might need to define the no of retries in the SyncConfiguration
Initialising the FhirEngine starts an endless loop of syncs(data downloads) based on the SyncConfiguration . The downloads happen periodically based on the sync configuration
The SyncConfiguration directly imitates what we do, the only addition is that the server should perform an authorisation and authentication check for each filter. The server can also add extra filters depending on the user authorisation
We need to add the location-mapping filters to the SyncConfiguration and update it in case the user changes their current focus location/care-team/organisation or their assignment changes
We need to decide how we'll be filtering FHIR resources based on the location mapping conversation

Next steps

Decide how FHIR core will be filtering FHIR resources based on the results of the location mapping conversation
Options for filtering when requesting data

Option 1: Use the search API to define custom parameters on how to download the data
Option 2: Add custom APIs on the server side to support complicated JOINs
Option 3: In case the filters are simple enough and properties of the resources, we can extend the current SyncConfiguration to support custom resource property filters

Add a FHIRCoreApplication that implements generating the SyncConfiguration with the appropriate filters, resource types to sync and timing between periodic syncs
Add FHIREngine#syncUpload as the first call during periodic sync in FHIR to ensure upload happens before the download

We can send a batch request by grouping by Resource Type and Request Type, the ordinality of the group can be determined combination of all POST requests = 0 and everything else = 1 + and the minimum change in the set of resources.
On the event downloads not exactly sure why the order will matter since the SDK seems not to care about the downloads, my understanding from the codebase looks like all data is saved regardless of the relationship and as long as sync is complete there will be Eventual Consistency.
On Sync :
Option 4 We can implement a custom interceptor for Retrofit, this is assuming the sync params are simple might not need any changes to the SDK side
General comment:
I think adding access control on the server-side instead of only relying on the client as we currently do in OpenSRP will great.

@rkodev  I have updated the strategy based on your recommendations

@rkodev what do you mean by:
I think adding access control on the server-side instead of only relying on the client as we currently do in OpenSRP will great.

How does the client perform access control on OpenSRP?

@vincent-karuri the older implementations of OpenSRP would return data without performing an authorization check to check whether the user requesting the data has access to the data.
The server relied on OpenSRP clients to request only the data the client has access to i.e provide the filter parameters

Currently blocked by location mapping tasks

what's remaining here?

Update

Some tasks on this issue are complete
The remaining tasks

Updates for vaccine site/worker site - Requires work on location mapping to be completed
Support all key workflows required for the ANC app - This needs to more specific and broken down into smaller issues
Sync API updates based on discussions -> Not yet done. These need to be created as separate issues for better tracking

We probably want to change this issue into a discussion

Great to see the progress here.
Couple of questions:

Are you planning to use the sync API to construct the queries to determine which resources to sync or will you be using a custom end-point that you will point the SDK too?
What are the offline support updates required?

@f-odhiambo @dubdabasoduba Can you help answer # 1 :arrow_up:
Required offline updates - It seems this was fixed. I'd noticed that resources to be synced were not available on the resources table until synced to the server. This was probably fixed with the new engine update :smile: :+1:

I have updated my comment and updated the details also

@fredhersch @ekigamba Yes. This is what we want to achieve with the Single APK approach.
We will also tie in Keycloack to facilitate Role-Based access control (RBAC). Also, we have the location hierarchy (Sync Location/Team) piece that will aid in unblocking this once done i.e. #188 & #189
Lastly, converting this to a discussion point


Fix memory access error when IPv6 prefix reading, should resolve #1972

Apparently we don't always get the RouterLinkLayerAddress, so it is null, and we crash. Fixing that. Made sure that this case is handled appropriately when we actually resolve the prefixes later
Should fix #1972

Found another one with the same problem.


Part of main spark release

Will this ever be part of main spark distribution, like R and Python.

There have been no discussions regarding that, we still need to see if there is enough interest for the project

Makes sense but we are reluctant to use this in prod because its not part of main distribution..so its a chicken and egg thing :)

Hi Saurabh, this question has been on our (internal) back-burner for a while, could we discuss it further? You can reach me at fallside a_t us.ibm.com.


Update readme

Types of changes

[ ] Docs change / refactoring / dependency upgrade
[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Motivation and Context / Related issue

The readme was out of date. This starts to address that (more work to be done on this soon).
How Has This Been Tested (if it applies)

Checklist

[ ] The documentation is up-to-date with the changes I made.
[ ] I have read the CONTRIBUTING document and completed the CLA (see CONTRIBUTING).
[ ] All tests passed, and additional code has been covered with new tests.

Note that we should still keep an open mind as to where the Dockerfile lives. It should be easy to change though, so it's not a blocker for the merge as far as I can tell.


Unsupported data type in placeholder op:2

When I tried to convert a .pb to .tflite, an error occurred.
The command line shows below:

tflite_convert
--output_file=model_file.tflite
--graph_def_file=model_file.pb
--input_arrays=input1,input2
--output_arrays=output1,output2
--input_shapes=512,512,3:2

And the errors :

RuntimeError: TOCO failed see console for info.
2019-01-10 16:03:15.168961: I tensorflow/contrib/lite/toco/import_tensorflow.cc:181] Unsupported data type in placeholder op: 2
2019-01-10 16:03:15.168987: I tensorflow/contrib/lite/toco/import_tensorflow.cc:181] Unsupported data type in placeholder op: 2
2019-01-10 16:03:15.168995: I tensorflow/contrib/lite/toco/import_tensorflow.cc:181] Unsupported data type in placeholder op: 2
2019-01-10 16:03:15.169013: I tensorflow/contrib/lite/toco/import_tensorflow.cc:181] Unsupported data type in placeholder op: 2
2019-01-10 16:03:15.169019: I tensorflow/contrib/lite/toco/import_tensorflow.cc:181] Unsupported data type in placeholder op: 2
2019-01-10 16:03:15.169025: I tensorflow/contrib/lite/toco/import_tensorflow.cc:181] Unsupported data type in placeholder op: 2
2019-01-10 16:03:15.177018: I tensorflow/contrib/lite/toco/graph_transformations/graph_transformations.cc:39] Before Removing unused ops: 740 operators, 1073 arrays (0 quantized)
2019-01-10 16:03:15.191193: I tensorflow/contrib/lite/toco/graph_transformations/graph_transformations.cc:39] Before general graph transformations: 740 operators, 1073 arrays (0 quantized)
2019-01-10 16:03:15.205171: I tensorflow/contrib/lite/toco/graph_transformations/graph_transformations.cc:39] After general graph transformations pass 1: 126 operators, 296 arrays (0 quantized)
2019-01-10 16:03:15.207152: I tensorflow/contrib/lite/toco/graph_transformations/graph_transformations.cc:39] Before dequantization graph transformations: 126 operators, 296 arrays (0 quantized)
2019-01-10 16:03:15.208723: F tensorflow/contrib/lite/toco/allocate_transient_arrays.cc:164] An array, detect/cast, still does not have a known data type after all graph transformations have run.
Aborted (core dumped)
None

I have no idea about this error, can anyone offer help.

Hey i'am facing similar problem with tflite conversion of a  keras model(plain keras not tf.keras) with Input layer type float16 in TF 1.15.0.
 I tensorflow/lite/toco/import_tensorflow.cc:193] Unsupported data type in placeholder op: 19 F tensorflow/lite/toco/import_tensorflow.cc:2679] Check failed: status.ok() Unexpected value for attribute 'T'. Expected 'DT_FLOAT' Aborted (core dumped)
Is float16 placeholder not still supported, even though other operators are supported?


Are the type types right?

Hi,
Are the type type encodings right?
I've just had wasm-objdump complain about using '0xff' to represent a result type of 'int32' in the 'type' section. I got this value from here:
https://github.com/sunfishcode/wasm-reference-manual/blob/master/WebAssembly.md#type-encoding-type
I checked the 'official docs' and it has this table instead:
https://www.w3.org/TR/wasm-core-2/binary/types.html#number-types
Going by these docs, I tried using '0x7f' for int32 and it does at prevent wasm-objdump complaining about the result type, although I haven't confirmed my program even actually works yet so it still could be my fault!
Anyway, I've generally found your docs to be clearest wasm docs around by far, keep up the great work.
Bye,
Mark

Actually, thinking about it now, -0x01 in LE 'varsint' encoding will be 0x7f wont it, as bit 6 is the sign bit instead of bit 7. OK, ignore this.


Example of VM name confusing

In the intro text of the article, it says "For example, the name of a virtual machine (VM) maps to a DNS name, so the VM name must be unique throughout Azure. But the name of a VM is scoped to the resource group in which it resides."
Although I think I understand what the author is getting at with this sentence based on my understanding of DNS labels needing to be globally unique, it is confusing (especially to someone who does not know this) and appears contradictory when you first read it - i.e., it could easily be interpreted as "VM names need to be globally unique because of DNS, but they only need to be unique within a resource group." which is obviously contradictory.
Would it be possible to clarify or replace the example with something else?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 1ddc35bf-00d9-67c8-bf6a-ade5ebea07ca
Version Independent ID: 7324a1e6-7010-c620-145b-3d8027709545
Content: Naming rules and restrictions for Azure resources
Content Source: docs/best-practices/resource-naming.md
Service: architecture-center
Sub-service: cloud-fundamentals
GitHub Login: @DerMar
Microsoft Alias: pnp

@mdi-db Thanks for your feedback. We will review and update as appropriate.

@mdi-db PR has been created for this which will address this. Thanks so much for providing the feedback that help us in improving the documentation. For now I will proceed with closure of this and If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


Helm version update

Hi, wondering if you would take a PR that updates Helm to 3.13.3?

Sorry for the late response. Sure, your PR will be more than welcome!

Hi @zweihan. I'll close this issue as we have already upgraded helm version to the most recent version v3.16.3. You can find this changes with new rules version v1.2.0.

Thanks!


Using the Archimatetool components in Java web applications

I want to develop my own Java application that describes my infrastructure using many Archimate projects.
I need some libraries to parse Archimate files and render requested views as SVG.
Are there any ready-to-use pure java libraries, not depended on Eclipse ( https://mvnrepository.com/search?q=archimate )?
Is there any chance of extracting the mentioned functionality from your codebase?

This was raised before:
https://forum.archimatetool.com/index.php?topic=1054.msg5658#msg5658
So, no, there are no plans to do this as the conversion depends on Eclipse based libraries. It may be possible by developing a plug-in or some other means (directly from the *.archimate file) but not something we will do.


Extension not working after update to version 1.0.24

The extension stopped working after the update to version 1.0.24.  Preview colors are no longer displayed in front of the colour code.  It doesn't matter which colour coding method is used - hsl, rgb, #, etc.  None of them produce a preview colour.
The problem is the same on both of my development PCs.  I tried uninstalling the extension, clearing the MEF, reinstalling the extension.  No change.
I'm using Microsoft Visual Studio Community 2022 (64-bit) Version 17.8.3.

Same issue with 1.0.27 as well


About the region loss

Hi authers:
About the region loss
                loss_dict["loss_region"] = loss_func(                     out_region * gt_mask_region[:, None], gt_region * gt_mask_region.long()                 ) / gt_mask_region.sum().float().clamp(min=1.0)
I think out_region * gt_mask_region[:, None] can't remove the loss of background. This operation makes all the channels of the background point to 0, which will all become 1/65 after passing through the softmax of CE_LOSS.
I don't know if my understanding is correct, hope to get your reply! Thanks very much!

Hi, this formulation does not remove the loss of background, but tries to map the background to a "background" region. For truly remove the background loss, one might need to use the "ignore" trick. You can try that out. But I think it would not make a big difference.

Hi, thanks for your reply! But I think this can't map the background to a "background" region as I mentioned above, make all the channels of a pixel to 0 will make them all become 1/65 after passing through the softmax, so the loss of this "background pixel" is log(1/65).  I don't quite understand what you mean by mapping the background into the "background" area. Is the purpose of this operation to eliminate the interference of the background? If yes, why not just ignore it?
Looking forward to your reply! Thanks very much!


change font of mcv_below_weekday_separator and mcv_below_header_separator

changing the font doesn't take any effect, only colour and size gets changed

app:mcv_weekDayTextAppearance="@style/CustomWeekDayTextAppearance"

where CustomWeekDayTextAppearance has a different font specified

https://github.com/prolificinteractive/material-calendarview/pull/582

now in https://github.com/prolificinteractive/material-calendarview/pull/782


Provider cannot be found

I'm not sure the decision to use a provider was the best here. :-) It can be used in the direct descendant chain (eg. in the ContextualAction builders) but not outside of it. In my present case, I have an outer ContextualScaffold and deeper in my tree I have a few pages (inside a TabBarView although I don't think this matters). It is in these individual pages that I would like to subscribe to the ActionMode listener so that I can notify the upper portion of the app that the CAB appeared or disappeared (because I have another similar app mode that I would like to invalidate when the selection mode kicks in).
I would be able to access it if ActionMode was, for instance, a singleton, maybe mapped to a compulsory unique key to keep more than one if necessary. But it's no use for me to go up the tree because I won't find your provider among my context ancestors, anyway.

I went a bit further. I can reach the provider from the actual build() of my deeper widgets but I'm not allowed to touch my widget state from inside a build function in Flutter.
Also, the following gives an error:
ContextualAppBar<Password> buildCAB(S t) {
  return ContextualAppBar<MyType>(
    counterBuilder: (int itemsCount) => Text(t.actionSelected(itemsCount)),
    contextualActions: [
      ContextualAction<MyType>(
        itemsHandler: (list) {
          ActionMode.addItems(context, []);
        },
        child: Icon(Icons.select_all),
      ),
    ],
  );
}

I just tried a dummy call to ActionMode.addItems(context, []); to see if I reach there and pouf, provider cannot be located.

It turned out that I need more than one mode and corresponding extra app bar in the end, so I had to move on from you solution. But this is how I solved it in the end, you may want to make use of it some day. I also wrote my own Scaffold but no provider needed. The Scaffold state keeps the data (what would be your ItemController plus others I needed for the other modes as well). Instead of the provider, I simply used the same .of(context) approach so widespread in Flutter and I don't look for a provider but for my own scaffold state inside. In order to avoid the usual problem of the .of() not finding something in its own context, I used the standard Builder trickin the build()` of my scaffold:
 @override
  Widget build(BuildContext context) {
    return Builder(builder: (ctx) {
      return Scaffold(
``


Why the method "dataTaskWithRequest:completionHandler" is deprecated?

the method "dataTaskWithRequest:completionHandler" is deprecated;
Which one is preferred? Thx!

https://github.com/AFNetworking/AFNetworking/pull/3490


Unable to add the tags to IP Groups via Azure Portal

The update operation for tag of IP Group goes though HTTP Patch method, Patch method is not allowed for IP Group via Azure Portal at this moment. This will cause the failure when adding tag into IP group.
Please evaluate and fix it. Thanks!

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 55b4c3f6-7ea3-9b94-cd8c-cbe37dc31656
Version Independent ID: 0310805b-ff71-85bf-3f74-ca4caa6a46ce
Content: Tag resources, resource groups, and subscriptions for logical organization - Azure Resource Manager
Content Source: articles/azure-resource-manager/management/tag-resources.md
Service: azure-resource-manager
Sub-service: management
GitHub Login: @tfitzmac
Microsoft Alias: tomfitz

@oaas Thanks for the feedback! Our SME will review the feedback and update you shortly.

@oaas - thanks for this feedback. I have added some additional information about how to update tags for resources that don't currently support portal updates. It looks like there is an existing feature request that is similar to your request. You might want to add your scenario to the request.
The update for the article will get published later today. Given that there are no more doc updates for this item, I will close it.
#please-close


andFilterWhere not include is null condition

  andFilterWhere(['or',
                ['participantStatus' => ParticipantStatus::DONE],
                ['participantStatus' => null],
            ]);

Generated sql is
AND ((`participantStatus`=1))

But must generate
AND ((`participantStatus`=1) OR participantStatus IS NULL)

This is expected behavior:
https://github.com/yiisoft/yii2/blob/master/framework/db/QueryTrait.php#L133


Cannot reload page by URLS

@thenaim, reload the pages and get 404 error. Examples:

https://thenaim.github.io/ionic-tk-social-network/tabs/messages
https://thenaim.github.io/ionic-tk-social-network/tabs/main

I got same issue when run the site in subfolder. Bbut I can fix it by React HashRouter. I don't know how to fix it in Angular. Check my site https://nguoianphu.github.io/pkmn.help/#/pokedex

@nguoianphu, I know about this error, but I don’t know how to solve it yet, so I’m looking for a solution. Thanks for noticing.
If there are any solutions or ideas, I will be glad. Your project uses the URL fragment instead of the history API. I think this is why the page reload works.

@nguoianphu, good news) Check pages.


OS X Tray for 0.30.1 - emits clicked event even when ctx menu is shown / stretches icon

There are two issues related to the tray icon with Electron 0.30.1

the tray icon is stretched instead of fitted like the previous version
clicked event is emitted on tray even though ctx menu is also shown - unlike the previous versions

Maybe both are expected behaviours, but they do not make any sense - at all. It's obviously easier for developers when tray icons are fitted instead of stretched, and same goes to the click event.

I believe these have been tackled: https://github.com/atom/electron/issues/2360

the tray icon is stretched instead of fitted like the previous version

It has been fixed in #2370.

clicked event is emitted on tray even though ctx menu is also shown

Yes.  In the v0.30.1 previous version, the clicked event will be ignored when there is context menu in tray due to the limitation of implementation. In v0.30.1, we remove this limitation.

clicked event is emitted on tray even though ctx menu is also shown - unlike the previous versions

I'm :+1: on emitting the clicked event even when menu is shown, generally loosing the the limitation of the API always gives developers more powers, also it matches the behavior of the right-clicked event on Windows, which also emits the event while the menu is shown.

@zcbenz I know it's logical on some level, but the situation is that on Windows you can depend on the "clicked" event to do stuff like show/hide window, while on OS X behaviour is different and it shows menu.
From a user perspective, nobody is going to need the "clicked" event when the menu is shown. It makes absolutely no sense for no application.
Can we at least have a ".menuShown" property in the event or something? Or control over when the tray icon ctx menu shows? E.g. the only way to show it is listen to "clicked" and call a function like ev.showCtxMenu() ?

@Ivshti I'm down to not emitting clicked when there is menu showing, I agree it is not quite useful, and it is breaking current apps.

@zcbenz So:

On OS X, the clicked event will not be emitted when a menu context is showing.
On Windows, the right-clicked event will not be mitted when a menu context is showing.

Is that correct?

On OS X, the clicked event will not be emitted when a menu context is showing.
On Windows, the right-clicked event will not be mitted when a menu context is showing.

Yes.


Requested New Resource not working

If I request for new resource from Project Details page for any particular page, nothing happen.

Still this functionality does implemented,will implement asap

Fixed Now


ensure openshift examples stay in sync for base attributes

Fixes https://github.com/Azure/acs-engine/issues/2984
Will rebase when https://github.com/Azure/acs-engine/pull/2978 is merged to add normalization and new test file.
@jim-minter

Cool - I'd have been tempted just to json.Decode into a map[string]interface{} though to save all the boilerplate ;)

Cool - I'd have been tempted just to json.Decode into a map[string]interface{} though to save all the boilerplate ;)

Chickened out when I thought about api version skewing in examples

reminder for: examples/e2e-tests/openshift/definition.json in https://github.com/Azure/acs-engine/pull/2991/files

/approve
/lgtm


System T + Church-Rosser + reductions & substitutions preserve typing

Closes #7.
As this pull request does a lot of work in common with #17,  I think the best thing to do is to reuse what has been done here. Either you can do it or I can work on it if you prefer


feat: Cli core upgrade

Contributing to TwilioReasons to remove some e2e testcases:
Removed some tests because:

These testcases were deploying a new video app with actual api keys & secrets configured on circleci. It's unclear which account's creds are those. Also, second guessing the process of storing the secrets anywhere.
The existing testing suite of deploying apps yields a 404 error from serverless api. Failed Pipeline run

Current coverage report:

All third-party contributors acknowledge that any contributions they provide will be made under the same open-source license that the open-source project is provided under.

[x] I acknowledge that all my contributions will be made under the project's license.

We, SDK team attempted to review this PR but we do not have expertise on the codebase. So, we cannot give any meaningful feedbacks.


Error message for indexer 400

It looks like youre querying the mainnet indexer, which is quite out of sync with Goerli and settling branch frontend
Add NEXT_PUBLIC_NETWORK=goerli to .env

Closing as resolved


Serialize and deserialize timestamps as strings

Fields that are known to be timestamps or durations are serialized and
deserialized as strings.
This is done to avoid loss of precision in JavaScript 'number' type for
values above Number.MAX_SAFE_INTEGER (2^53 - 1).
The models are updated to use 'bigint' type instead of 'number' for
these fields.
In outgoing requests, bigint values are replaced by strings in the
JSON.stringify() replacer. The strings are then replaced by unquoted
numbers in the JSON request.
In incoming JSON responses, long numbers are replaced by strings prior
to parsing, and the JSON.parse() reviver will replace those strings by
either bigint or number values, depending on the field. For bigint
fields, small numbers are replaced by their bigint value.
Signed-off-by: Patrick Tasse<EMAIL_ADDRESS>

Pending @bhufmann's and @paul-marechal's comment threads I believe.


[stable/sonarqube] Fix for issue #10195

What this PR does / why we need it:
allow latest docker image for sonarqube to be used with this chart fix issue #10195
Which issue this PR fixes
(optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged)

fixes #10195

Special notes for your reviewer:
original PR for this same thing was at https://github.com/helm/charts/pull/10196
but I got the sign-off mixed up with merging from master
no other changes in this PR other than to bump minor version as originally asked for
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped

/assign @rjkernick

/retest

/ok-to-test

/retest

/lgtm


Brendancol/viewshed testing

[x] small fixes to viewshed numba dtypes
[x] adds better tests for viewshed accuracy

@jbednar This is currently not passing the nbsmoke appveyor tests, but there were no changes to notebooks.  It looks like appveyor is missing a holoviews dependency.  is this a known issue?

@jsignell ?

This is currently not passing the nbsmoke appveyor tests, but there were no changes to notebooks. It looks like appveyor is missing a holoviews dependency. is this a known issue?

This is super strange. The deps are the same and don't include holoviews, but on travis holoviews gets pulled in and on appveyor holoviews doesn't. The only difference is the channel. I guess we can try getting rid of conda-forge on appveyor and see what happens.

This is currently not passing the nbsmoke appveyor tests, but there were no changes to notebooks. It looks like appveyor is missing a holoviews dependency. is this a known issue?

This is super strange. The deps are the same and don't include holoviews, but on travis holoviews gets pulled in and on appveyor holoviews doesn't. The only difference is the channel. I guess we can try getting rid of conda-forge on appveyor and see what happens.

@jsignell cool cool. thanks for checking this out. I'll see if

This is currently not passing the nbsmoke appveyor tests, but there were no changes to notebooks. It looks like appveyor is missing a holoviews dependency. is this a known issue?

This is super strange. The deps are the same and don't include holoviews, but on travis holoviews gets pulled in and on appveyor holoviews doesn't. The only difference is the channel. I guess we can try getting rid of conda-forge on appveyor and see what happens.

Cool I will try this and revert if it doesnt work

Seems like the python 2.7 failures are legit.
UnsupportedParforsError: Failed in nopython mode pipeline (step: nopython mode backend)
The 'parallel' target is not currently supported on Windows operating systems when using Python 2.7, or on 32 bit hardware.

Probably not caused by this PR, but legit.

I'll go ahead and merge this even though I think we do need py27 tests, but apparently they shouldn't be on Appveyor anyway, because of limitations in Numba's parfors support on Windows.  So that will need to be a separate PR.


Fix logging

@enmasse-ci run tests profile=isolated-shared-infra

@lulf does it require CSV change as well?

:heavy_check_mark: Test Summary :heavy_check_mark:
TEST_PROFILE: isolated-shared-infra
TEST_CASE:
TOTAL: 39
PASS: 33
FAIL: 0
SKIP: 6
BUILD_NUMBER: 810
BUILD_ENV: oc cluster up

@kornys no, there was just permissions i forgot to remove in the bundle a long time ago. They are not in the CSV so nothing to remove.


Add TestPaths.delete

...to delete a directory or file.
Reviewer checklist

[ ] Ensure relevant issues are linked (description should include text like "Fixes #")
[ ] Ensure any appropriate documentation has been added or amended

Coverage decreased (-0.3%) to 96.097% when pulling 75630f1e3dfe550cdf08f5943ac4f4caabb37592 on delete into bae678a20b06beb2cf1effc4f572d4cf91307fd2 on main.


No help for force fetch type

Should be great to get quick help on what types are supported and how to spell them. Probably add something to force help fetch.

There is a force descibe that lists out metadata and a force describe <metadata> for more details.
On Tue, Mar 17, 2015 at 6:23 AM, Fernando da Silva Trevisan <
<EMAIL_ADDRESS>wrote:

Should be great to get quick help on what types are supported and how to
spell them. Probably add something to force help fetch.
—
Reply to this email directly or view it on GitHub
https://github.com/heroku/force/issues/148.

--
Thanks,
Dave

Dave, thanks a lot for the quick answer! But :
./force describe metadata
Shows:
ERROR: You must specify metadata or sobject for description
example: force describe metadata
and also:
./force describe
ERROR: You must specify metadata or sobject for description
example: force describe metadata

Sorry, the help is wrong.
Try
force describe -t metadata
or
force describe -t metadata -n EmailTemplate
On Tue, Mar 17, 2015 at 10:46 AM, Fernando da Silva Trevisan <
<EMAIL_ADDRESS>wrote:

Dave, thanks a lot for the quick answer! But :
./force describe metadata
Shows:
ERROR: You must specify metadata or sobject for description
example: force describe metadata
and also:
./force describe
ERROR: You must specify metadata or sobject for description
example: force describe metadata
—
Reply to this email directly or view it on GitHub
https://github.com/heroku/force/issues/148#issuecomment-82495564.

--
Thanks,
Dave

GREAT, that worked. And confirmed the other issue I've opened... no EmailTemplate on export/fetch :(
Thanks a lot, Dave!

that works or me. Saved my hours.
force describe -t sobject -n=Merchandise__c


printk output with gdbserver?

I feel like this is a really dumb question but I haven't been able to figure it out after an hour of searching.
I'm using this Redbear Nano2 board. I'm able to build and flash Zephyr without any problems, but I haven't been able to figure out how to see output from my printk statements. Running ninja debug gets me a gdb console using pyocd, in which I can run continue, but I'm not seeing any output. I'm sure the solution is simple.

I had 2 problems. First was I needed to connect to the serial debugging over USB, using:
minicom -D /dev/ttyACM0

I also didn't have my TX/RX lines connected initially, since my nano 2 wasn't directly connected to the DAPlink board because the nano 2 was on a breadboard.


Add queue support to client

So to track/notify stalled imports, lets add this.
Monitor the queue every 5 mins, if an item has been finished for more than 10 minutes we need to post that to the site. I'll make an endpoint to accept it
Post payload should include: app, download_id, title, release_name, finished_time

Is it possible to grab the message from queue (if it exists)?

Yes.

I've put some thought into this. The more I think about it the less I like the idea of this being in Unpackerr. I also don't like the idea of (1) sending you "stuck items" every 5 minutes, but that approach seems almost appropriate. The other option is that (2) the client tracks the items in each app's queue. The client could be configurable to send 1 POST (notification) when an item has been stuck for N minutes.
Both approaches allow folks to get 1 notification, or configure it to get 1 every N minutes until they fix the problem. In approach (1) you'd have to track the downloads on your end if they chose only 1 notification per "stuck item."  In the approach (2) the client tracks the items if they select that option.
Notes/Question:

How do we report back to notifiarr.com that the problem is fixed (so you can remove the tracking record)? Maybe we don't need to, and you can just time it out after 24 hours of not being sent.
AFAICT, the queues do not include how long it's been finished. I can see if it is finished, and I can see if it has status messages (errors).

Let me know your thoughts. It'd be really easy for  to slap together a timer to poll each app every 5 minutes, and send you a list of completed/stuck/error'd queue items for each configured app. A little less easy to track them, but one of us has to deal with that. I like the idea of the site doing it because it's more stateful and will live through a client restart.


LILYGO T3 v1.6.1 does not work.

I installed the firmware on the LILYGO T3 v1.6.1 and it uploads without any issues. However nothing happens after that, the LEDs flash but the screen is totally black
Expected behavior
Should boot and show something on the display

Firmware Version:

Board name:

LILYGO T3 v1.6.1

https://www.aliexpress.com/item/32872078587.html?spm=a2g0o.order_list.order_list_main.5.303d1802nFPDmv
just realized this is not an officially supported board from the Tracker section.
What would be needed to add support to this board, if possible

This board does not have a GPS build in. you can use it as an iGate. Take a look on my iGate project.


Placeholder shows when content only contains white space or new lines.

中文用户注意：

尽量用英文描述你的 issue
不要把内容堆彻在标题上，逻辑清晰地写在内容区
贴代码要提前格式化好，有颜色高亮那种，贴文本，不要贴图片
提问题前，必须仔细阅读 REMADE.md + 在已关闭的问题中寻找与自身相关的问题，90% 的可能它已经被解决
如果无法做到提一个合格、优秀的问题，则问题会被 close + block

BUG REPORT TEMPLATE
Vue.js version and component version
vue 2.4.4
vue-quill-editor 2.3.2
Reproduction Link

A minimal JSBin, JSFiddle, Codepen, or a GitHub repository that can reproduce the bug.
You could start with this template: https://jsfiddle.net/39epgLj0/

Steps to reproduce

Set some content in the editor
Assume the v-model name on editor is content

this.content = "
123
"

Then set content empty using white space(or new line).
(Do not type in the editor directly, use Javascript controll it instead)

this.content = "

"
// or try new line: this.content = "

"

The default placeholder will show, but the content is not empty exactly.
At this step, the v-model content was emptied when placeholder shows. (I didn't clear it)

What is Expected?
The default placeholder should not show when the content only contains white space(or only new lines).
Because the content is

 or

, not empty.
當內容並非空白或者只有換行的情況，Placeholder 不應該顯示。
What is actually happening?
The placeholder shows when there is white space or new line.
Placeholder 在內容只有空白或換行的情況下，也會顯示。

https://github.com/quilljs/quill/issues/1235#issuecomment-273044116
https://github.com/quilljs/quill/issues/1328
https://github.com/surmon-china/vue-quill-editor/blob/master/src/editor.vue#L79

Okay, so it looks like it's unabled to solve. Thanks for the reply!
I read official design guide
It seems that the problem I encountered is a design limitation.


enh: add timeout in golang-ci lint

Signed-off-by: Kush Trivedi<EMAIL_ADDRESS>Signed commits

[x] Yes, I signed my commits.

If after 5m we cancel this step, does that mean the build check will fail overall?

The flake which you encountered yesterday was because that there was no timeout & due to setting the cache it may had took longer & it failed. So it is just a precaution, hoping the flake won't occur again.

Makes sense


Issue 79 - solved

Description
The publicationsSlice has been extended to contain reducers that operate on the data necessary for creating and managing publications. The Publication interface has been extended with new fields derived from user interface mock-ups.
The only field of the Publication interface that required a separate reducer was the collaborators array. Its inclusion into the common reducer that changes other fields would cause an issue with index access writes on union of keys, solving which would make the code less readable.
The solution has been tested by dispatching actions on a frontend button and ensuring proper state changes in the console.
Linked issues
closes #79
Correct PR Checklist

[x] I have linked an issue
[x] I have assigned Reviewers
[x] I have assigned a Description label
[ ] I have assigned a Milestone (if applicable)

FYI: I have also merged the main branch into this one for the updated eslint config.


Any chance for a similiar high performance minimal tunneling solution but for UDP?

The title says it all. Any chance for a future project that support UDP?  as UDP has already been marked "Beyond the scope" of this project.
I have searched high and low but I haven't found another tunneling solution that is as elegant as this. No unnecessary bloat, just a simple tunnel.

I don't know if it's possible in the same way that bore works. You might try doing UDP hole-punching with a STUN server.

An alternative project that might work for udp is https://github.com/snsinfu/reverse-tunnel, sorry if recommending other project not allowed


Power Delivery v3

Description
Upon completing v2 and sending for the PCBs i realised yet some more changes to be made to the board:

Make use of through hole components for easier manufacturing.

Caps on the voltage supplies of the logic chips.
Power on LEDs

Tasks

Update dev-log with a list of components and why they were picked.
Update and tidy up the schematic to include correct component names, datasheets, and footprints.

Board v3 created


BUG: optimize.least_squares giving poor result compared to optimize.leastsq and optimize.curve_fit

Describe your issue.
I am seeing some poor results when using optimize.least_squares to fit a 1-D function.  The fitting result is highly dependent on the initial guess.  I understand these issues can be easily caused by a poor initial guess, but I do not believe that is what's going on here.
In the attached screenshot, the top left panel shows the poor fitting result if the peak position of the initial model is shifted slightly to the right.  The top right panel uses different parameters where the peak position is shifted slightly to the left and that gives the expected result.  I also ran tests using optimize.leastsq and optimize.curve_fit and they do not have this issue; one obtains the expected result for both initial guesses.  I also know that optimize.curve_fit can give a consistently good fit for different data, as I have about 100 experimental peaks in this dataset with different positions, areas, and widths and I was able to fit them all successfully with optimize.curve_fit (but not optimize.least_squares).
Other things I tried, which did not work for me:

Switching the optimization algorithm to lm or dogbox
Setting max_nfev to a very large number (1e6)
Trying several values for diff_step (1e-6 or 1e-8)

Changing these settings will sometimes give a different optimization result, but still not correct.
I have attached a screenshot and the codes to reproduce the error as a script and in Jupyter Notebook format.  The data file is also attached.
Thanks for your attention to this issue!  SciPy is extremely valuable to my research and this is the first issue I have had to report in >10 years as a user.

test.ipynb.zip
R.csv.zip
Reproducing Code Example
#!/usr/bin/env python

import numpy as np
import scipy
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
from scipy.optimize import least_squares, leastsq, curve_fit

# The bug is observed with SciPy version 1.11.3
import sys, scipy, numpy; print(scipy.__version__, numpy.__version__, sys.version_info); scipy.show_config()

# Load the data and reshape into 1-D arrays.
X_array = np.loadtxt('R.csv',skiprows=1,delimiter=',')
deltas = X_array[:,0].flatten()
signal = X_array[:,1].flatten()

# Lorentzian model function. x0 = center; A = area; sigma = width
def lorentzian(x, x0, A, sigma):
    return A * sigma / ((x-x0)**2 + sigma**2)

# Function to calculate the residual.
def calc_residual(params):
    model = lorentzian(deltas, params[0], params[1], params[2])
    residual = (model - signal)
    return residual

# Two sets of initial parameters.
p_init0=np.array([-62.88, 6e7, 0.02])
p_init1=np.array([-62.9, 6e7, 0.02])

#====================================================#
# The unexpected result using optimize.least_squares #
#====================================================#

result0 = least_squares(calc_residual, p_init0)
popt0 = result0.x
model_init0 = lorentzian(deltas, *p_init0)
model_opt0 = lorentzian(deltas, *popt0)

result1 = least_squares(calc_residual, p_init1)
popt1 = result1.x
model_init1 = lorentzian(deltas, *p_init1)
model_opt1 = lorentzian(deltas, *popt1)

fig, (ax0, ax1) = plt.subplots(1, 2)
fig.suptitle('Fitting results using optimize.least_squares')
fig.set_size_inches(8, 4)
ax0.plot(deltas, signal, linewidth=0.5, marker='o', label='Data')
ax0.plot(deltas, model_opt0, linewidth=0.5, marker='x', label='Fitted Model')
ax0.plot(deltas, model_init0, linewidth=1, label='Initial Model')
ax1.plot(deltas, signal, linewidth=0.5, marker='o', label='Data')
ax1.plot(deltas, model_opt1, linewidth=0.5, marker='x', label='Fitted Model')
ax1.plot(deltas, model_init1, linewidth=1, label='Initial Model')
ax0.legend()
fig.savefig('using_least_squares.pdf')

#====================================================#
#     The expected result using optimize.leastsq     #
#====================================================#

result0 = leastsq(calc_residual, p_init0)
popt0 = result0[0]
model_init0 = lorentzian(deltas, *p_init0)
model_opt0 = lorentzian(deltas, *popt0)

result1 = leastsq(calc_residual, p_init1)
popt1 = result1[0]
model_init1 = lorentzian(deltas, *p_init1)
model_opt1 = lorentzian(deltas, *popt1)

fig, (ax0, ax1) = plt.subplots(1, 2)
fig.suptitle('Fitting results using optimize.leastsq')
fig.set_size_inches(8, 4)
ax0.plot(deltas, signal, linewidth=0.5, marker='o', label='Data')
ax0.plot(deltas, model_opt0, linewidth=0.5, marker='x', label='Fitted Model')
ax0.plot(deltas, model_init0, linewidth=1, label='Initial Model')
ax1.plot(deltas, signal, linewidth=0.5, marker='o', label='Data')
ax1.plot(deltas, model_opt1, linewidth=0.5, marker='x', label='Fitted Model')
ax1.plot(deltas, model_init1, linewidth=1, label='Initial Model')
ax0.legend()
fig.savefig('using_leastsq.pdf')

#====================================================#
#    The expected result using optimize.curve_fit    #
#====================================================#

result0 = curve_fit(lorentzian, deltas, signal, p0=p_init0)
popt0 = result0[0]
model_init0 = lorentzian(deltas, *p_init0)
model_opt0 = lorentzian(deltas, *popt0)

result1 = curve_fit(lorentzian, deltas, signal, p0=p_init1)
popt1 = result1[0]
model_init1 = lorentzian(deltas, *p_init1)
model_opt1 = lorentzian(deltas, *popt1)

fig, (ax0, ax1) = plt.subplots(1, 2)
fig.suptitle('Fitting results using optimize.curve_fit')
fig.set_size_inches(8, 4)
ax0.plot(deltas, signal, linewidth=0.5, marker='o', label='Data')
ax0.plot(deltas, model_opt0, linewidth=0.5, marker='x', label='Fitted Model')
ax0.plot(deltas, model_init0, linewidth=1, label='Initial Model')
ax1.plot(deltas, signal, linewidth=0.5, marker='o', label='Data')
ax1.plot(deltas, model_opt1, linewidth=0.5, marker='x', label='Fitted Model')
ax1.plot(deltas, model_init1, linewidth=1, label='Initial Model')
ax0.legend()
fig.savefig('using_curve_fit.pdf')

Error message
No error message.

SciPy/NumPy/Python version and system information
1.11.3 1.22.3 sys.version_info(major=3, minor=9, micro=18, releaselevel='final', serial=0)
Build Dependencies:
  blas:
    detection method: pkgconfig
    found: true
    include directory: /home/leeping/opt/miniconda3/envs/scipytest111/include
    lib directory: /home/leeping/opt/miniconda3/envs/scipytest111/lib
    name: openblas
    openblas configuration: USE_64BITINT= DYNAMIC_ARCH=1 DYNAMIC_OLDER= NO_CBLAS=
      NO_LAPACK=0 NO_LAPACKE= NO_AFFINITY=1 USE_OPENMP=0 PRESCOTT MAX_THREADS=128
    pc file directory: /home/leeping/opt/miniconda3/envs/scipytest111/lib/pkgconfig
    version: 0.3.21
  lapack:
    detection method: pkgconfig
    found: true
    include directory: /home/leeping/opt/miniconda3/envs/scipytest111/include
    lib directory: /home/leeping/opt/miniconda3/envs/scipytest111/lib
    name: openblas
    openblas configuration: USE_64BITINT= DYNAMIC_ARCH=1 DYNAMIC_OLDER= NO_CBLAS=
      NO_LAPACK=0 NO_LAPACKE= NO_AFFINITY=1 USE_OPENMP=0 PRESCOTT MAX_THREADS=128
    pc file directory: /home/leeping/opt/miniconda3/envs/scipytest111/lib/pkgconfig
    version: 0.3.21
  pybind11:
    detection method: pkgconfig
    include directory: /home/leeping/opt/miniconda3/envs/scipytest111/include
    name: pybind11
    version: 2.10.4
Compilers:
  c:
    commands: /croot/scipy_1696543286448/_build_env/bin/x86_64-conda-linux-gnu-cc
    linker: ld.bfd
    name: gcc
    version: 11.2.0
  c++:
    commands: /croot/scipy_1696543286448/_build_env/bin/x86_64-conda-linux-gnu-c++
    linker: ld.bfd
    name: gcc
    version: 11.2.0
  cython:
    commands: cython
    linker: cython
    name: cython
    version: 0.29.36
  fortran:
    commands: /croot/scipy_1696543286448/_build_env/bin/x86_64-conda-linux-gnu-gfortran
    linker: ld.bfd
    name: gcc
    version: 11.2.0
  pythran:
    include directory: ../../_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p/lib/python3.9/site-packages/pythran
    version: 0.13.1
Machine Information:
  build:
    cpu: x86_64
    endian: little
    family: x86_64
    system: linux
  cross-compiled: false
  host:
    cpu: x86_64
    endian: little
    family: x86_64
    system: linux
Python Information:
  path: /home/leeping/opt/miniconda3/envs/scipytest111/bin/python
  version: '3.9'

Is anyone able to reproduce this issue?  Several of my students were also seeing it on their machines, so I don't think it's particular to my local machine.

I'm not sure what we could do in this situation. Do you see differences across different scipy versions for the same code? Otherwise it's not clear that there is a bug.
As you say there are a whole heap of things that could affect this, like starting parameters, or parameter scaling (the second parameter is a factor of 1e6 larger than the others). It's going to be difficult for devs to spend time looking into this specific problem unless there's clear evidence of a bug.

Thanks for the response.  I saw the same behavior in multiple SciPy versions ranging from v1.7 to v1.11.
I did some more testing and found the following.
When using least_squares(method='lm') without providing variable scales via x_scale, an array of ones is passed as the last argument (diag) to _minpack._lmdif, which is the entry point of the MINPACK Levenberg-Marquardt algorithm.  (This is because least_squares.py computes diag = 1 / x_scale if x_scale != 'jac').  During the second step of the optimization, the algorithm repeatedly cuts the step size until xtol is met, which leads to the poor quality-of-fit I described.  If xtol is reduced to 1e-10 then the correct fit is recovered for all algorithms.
When using leastsq or curve_fit, the default last argument to _minpack._lmdif is diag=None.  This results in significantly improved behavior of the optimization without a large number of step size cuts.  This is presumably because _minpack._lmdif is applying a default scaling to the parameters, (for example using the column norms of the Jacobian).  If I provide diag=[1, 1, 1] to calling leastsq, the poor behavior of least_squares is reproduced.
Therefore, I think the cause of the poor behavior in least_squares for my example was due to the default value of 1.0 for parameter scales.  However, leastsq and curve_fit applied a default parameter scaling that prevented the problem from appearing.  I think the latter behavior is more desirable and more robust.  Given that leastsq is already deprecated and least_squares is intended as a drop-in replacement, it would become an issue if a user of leastsq changes over to least_squares and gets very different results.
In conclusion, I agree this isn't a bug per se, but it is arguably a performance regression, and I'd like to propose an enhancement where least_squares(method='lm') will pass diag=None to _minpack._lmdif as the default rather than an array of ones.  This is already the behavior when using method='lm', x_scale='jac' as the code explicitly sets diag=None in that case, so the enhancement could be implemented by setting the default value of x_scale to jac in the case of method=='lm'.  It is possible x_scale='jac' is also more robust for the other algorithms but I haven't tested this extensively.
If there is agreement from the developers then we can change this issue from a bug report to an enhancement proposal.

Hi @leeping,
We are a team of students from CentraleSupélec, we would like to work on this issue for our project for a class. We have reproduced the bug and will implement the enhancement suggested by you to compare the results. Also, analyse for any other fix possible.
Can we work on this?

@nish0699 we don't assign issues, so you are free to submit a PR with a fix if you want to. Please check our contributing guide and feel free to reach out if you have questions. Cheers!

I'm not a SciPy maintainer but I would love to see your class implement this enhancement! :)


fix: serialize request.data in logging middleware

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/47509
PROPOSAL: https://github.com/Expensify/App/issues/47509#issuecomment-2297064160
Tests

Try to send a .txt file via any chat in NewDot app (Equivalently, enable Client Side Logging in Troubleshoot menu > View debug console > Share log)

Verify that there're no infinite errors occur in the console, the file is sent and the app function normally

[x] Verify that no errors appear in the JS console

Offline tests

QA Steps

Try to send a .txt file via any chat in NewDot app (Equivalently, enable Client Side Logging in Troubleshoot menu > View debug console > Share log)

Verify that there're no infinite errors occur in the console, the file is sent and the app function normally

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

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

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

https://github.com/user-attachments/assets/6683d389-03b0-4104-98fd-664d0cb5fb95

Android: mWeb Chrome

https://github.com/user-attachments/assets/6243eff1-f36d-4637-b127-62593144cb67

iOS: Native

https://github.com/user-attachments/assets/46fe7cab-6c0c-41be-a3ca-cf0d31ecec55

iOS: mWeb Safari

https://github.com/user-attachments/assets/2257fd4c-ac6f-402f-a286-174915ebf8ee

MacOS: Chrome / Safari

MacOS: Desktop

https://github.com/user-attachments/assets/aba65b37-b5a9-4285-b615-b25944dabb10

using JSON functionality can simplify the logic

Can you expand on what you mean by this? And if it would make the logic simpler, should we do it?

Ok let's do that then. What do you think @dominictb?

Great. @suneox can you please re-review?

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/puneetlath in version: 9.0.30-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


fix rolling fuel cost average bug

Overview
Closes #3889.
What problem does this address?
What did you change?
Documentation
Make sure to update relevant aspects of the documentation.
- [x] Update the [release notes](https://catalystcoop-pudl.readthedocs.io/en/nightly/release_notes.html): reference the PR and related issues.
- [ ] Update relevant Data Source jinja templates (see `docs/data_sources/templates`).
- [x] Update relevant table or source description metadata (see `src/metadata`).
- [ ] Review and update any other aspects of the documentation that might be affected by this PR.

Testing
How did you make sure this worked? How can a reviewer verify this?
# To-do list
- [x] Run `make pytest-coverage` locally to ensure that the merge queue will accept your PR.
- [ ] If updating analyses or data processing functions: make sure to update or write data validation tests (e.g. `test_minmax_rows()`).
- [ ] Review the PR yourself and call out any questions or issues you have.
- [ ] For minor ETL changes or data additions, once `make pytest-coverage` passes, make sure you have a fresh full PUDL DB downloaded locally, materialize new/changed assets and all their downstream assets and [run relevant data validation tests](https://catalystcoop-pudl.readthedocs.io/en/nightly/dev/testing.html#data-validation) using `pytest` and `--live-dbs`.
- [ ] For bigger ETL or data changes run the full ETL locally and then [run the data validations](https://catalystcoop-pudl.readthedocs.io/en/nightly/dev/testing.html#data-validation) using `make pytest-validate`.
- [ ] Alternatively, run the `build-deploy-pudl` GitHub Action manually.

I'm still running tests - I'd especially like to run the validation tests on both the EIA output table and the FERC1 plant tables. but I think the upstream stuff is currently ready for review.


Menu extends ActionBar

ref #55258
This is what the extension model would look like. I think it demonstrates that the Menu is very closely related to the ActionBar and gives us more freedom to tweak Menu behavior without impacting ActionBar which is ubiquitous.
@joaomoreno had suggested forking ActionBar which I considered (have not ruled out), but wanted to hear everyone's opinion after seeing the amount of code that easily remains in ActionBar.
fyi, I am also working on the new mnemonics model which would require the menu to know about its actions list which cannot be done with the current menu/actionbar structure in a clean/reliable way without additional interfaces being added once again to ActionBar.

Definetely looks cleaner than before and this feels like the right apporach to me.
Can please remove isMenu option from the IActionBarOptions since it is no longer being used

:100:


Improve error handling

res.send()ing an Error object just returns {}. Better to pass errors like this on to Express's default error handling. This makes debugging Routers much nicer!
Note: npm run lint and npm test are failing in this commit, but it doesn't appear to be a result of what I added.

@dallonf thanks for running lint and test, those are set to be fixed in #22 so likely not from your changes.