OpenTimelineIO TSC Charter

This is a draft of our proposed OpenTimelineIO TSC Charter for discussion.
This PR supersedes both of these other PRs:
https://github.com/PixarAnimationStudios/OpenTimelineIO/pull/897
https://github.com/AcademySoftwareFoundation/foundation/pull/5

Note: I carefully split each intentional change from the ASWF template charter into a separate commit, so we can see the rationale behind each change.

@jmertic your proposed change for "template repositories" was only for inbound code. I added the same exception for outbound code as well, since we need to make the template repo available under that license as well. Does that make sense, or is that not needed?
See: https://github.com/AcademySoftwareFoundation/foundation/pull/6/commits/37c252d2b5265171048009ed2aac785ae705e5d5

Also, the charter lacks some clarity around the specific names & relationships between these entities:
OpenTimelineIO a Series of LF Projects, LLC
LF Projects, LLC
LFP, Inc.
Technical Advisory Council of the Academy Software Foundation of The Linux Foundation
Governing Board of the Academy Software Foundation of The Linux Foundation
mentioned these other documents, without links:
Series Agreement for the Project
Operating Agreement of LF Projects
and mentions these people/roles - but we aren't sure who those people are.
Series Manager
LF Projects Manager

@jmertic your proposed change for "template repositories" was only for inbound code. I added the same exception for outbound code as well, since we need to make the template repo available under that license as well. Does that make sense, or is that not needed?
See: 37c252d

Yes - thanks for including that. I had thought it was in a later revision but must have dropped that.

Also, the charter lacks some clarity around the specific names & relationships between these entities:
OpenTimelineIO a Series of LF Projects, LLC
LF Projects, LLC
LFP, Inc.
Technical Advisory Council of the Academy Software Foundation of The Linux Foundation
Governing Board of the Academy Software Foundation of The Linux Foundation
mentioned these other documents, without links:
Series Agreement for the Project
Operating Agreement of LF Projects
and mentions these people/roles - but we aren't sure who those people are.
Series Manager
LF Projects Manager

Here are the answers from our legal. They also advised that this template is out of date and will be providing me with an updated template to use.
OpenTimelineIO a Series of LF Projects, LLC
We set up individual technical projects as series of one of our project hosting series LLCs.  In this case because it's software versus specification development, the project will be set up as a series of LF Projects, LLC ("LFP").  LFP operates pursuant to an Operating Agreement and the OpenTimelineIO series will be created through execution (by LFP and its sole member) of a Series Agreement for OpenTimelineIO.  You can think of these documents as the series LLC versions of a certificate of incorporation in a way.  The sole member of LFP is the Joint Development Foundation, a 501c6 nonprofit organization, and the sole member of the Joint Development Foundation is the Linux Foundation.
LF Projects, LLC
One of our series LLC entities for hosting projects.
LFP, Inc.
This name needs to be updated to the Joint Development Foundation, which merged with LFP, Inc. and the Joint Development Foundation was the surviving entity in the merger.
Technical Advisory Council of the Academy Software Foundation of The Linux Foundation
Please see the "Funding Charter" for the Academy Software Foundation ("ASWF"). This group is part of ASWF and is responsible for coordinating and facilitating communication across the projects of ASWF.
Governing Board of the Academy Software Foundation of The Linux Foundation
Please see the "Funding Charter" referenced above. The Governing Board is responsible for allocating the budget of ASWF.
Series Agreement for the Project
See description above.
Operating Agreement of LF Projects
See description above.
Series Manager / LF Projects Manager
These individuals are currently the same person, Michael Dolan, SVP of the Linux Foundation and Manager of LF Projects, LLC and Series Manager for all series of LF Projects, LLC.

@jminor Any other open issues needing to be addressed before this is approved?

@jmertic you said "this template is out of date and [legal] will be providing me with an updated template to use" When can we expect that?

@jminor - thanks for that note - chatting with legal they indicated that you can stick with this template. No change needed.

Okay great. Thanks @jmertic

@jmertic earlier you said "LFP, Inc. This name needs to be updated to the Joint Development Foundation, which merged with LFP, Inc. and the Joint Development Foundation was the surviving entity in the merger."
Do we need to change that in the text of the TSC Charter?

Talking with legal, it's fine to leave both the way they are. Good thinking though @jminor

@jmertic I pushed an update to sections 5a, 5b, and 8 based on feedback from our legal department. Can you check to see if this looks okay?

@jminor Thanks - LF legal is looking at that and will come back with their response

@jmertic this charter was approved by the OpenTimelineIO TSC vote on Oct 28th 2021. This PR is ready to land.

Thank you @jminor !


Update rspec-rails.gemspec with supported Rails description.

Thank you for highlighting this! I've merged a similar change removing the version from the description in favour of our readme / the version of the gem required by the gem spec.


Neovimtoggle

Two Toggles:

"Disable" vscode-neovim by not processing Esc and stay in insert mode while jumping between files
Just stay in insert-mode till Esc is recievied. Buffer changes while in insert mode will not go switch back to Normalmode (out of scope will be handled in https://github.com/vscode-neovim/vscode-neovim/pull/1050)

Let me know if this is no longer "wip" and I will take a look

Hey,Sorry i was busy, also my dev-setup had an issue. After switching to Linux, I worked on it again and was searching how to send a command/msg/promise to the modemanager that it should enter insertmode. I debbuged trough and saw some possibility’s but nothing felt right, i would really appreciate if someone could give me a clue on how to do this properly. Best ValentinOn 10. Oct 2022, at 23:38, Theo Lemay @.***> wrote:
Let me know if this is no longer "wip" and I will take a look
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

I don't think you need to do that. Just use the nvim api to call the startinsert command.
Fyi part of this PR is replaced by #1050, so you can now focus on the "toggle" aspect.

feature should work now as expected

to having an enable and disable command, instead of toggle, so it is more clear exactly which state you are switching

i would really like go with toggle since normally i like one shortcut and not two.
Pro 'enable', 'disable':
clear State switching
Following your 'enable' and 'disable' approach a toggle would be still possible by introducing https://marketplace.visualstudio.com/items?itemName=rebornix.toggle from user side.
Con:
Two shortcuts
Issue https://github.com/vscode-neovim/vscode-neovim/issues/794 refers to other VimMode-Extension which does it similarly.
If wanted i can also include 'enable', 'disable' next to 'toggle'.

If wanted i can also include 'enable', 'disable' next to 'toggle'.

Having both seems to give all possibilities without need for compromises 👍

usually the readme/docs don't need/want to mention every command and setting (because vscode already exposes that in its UI), but this one is probably worth calling out in the readme.

It's at the top of the list so should be fairly easy to discover. It doesn't seem to naturally fit anywhere in the readme so I think its good as is.

I am aware that this is a merged commit, and feedback has already been left, but I'd like to put in my two cents as a new user. I am attempting to integrate my vim knowledge into my VSCode setup, and tried VSCodeVim first, but found it's support for the vim runpath to be lackluster compared to your extension, however a large consideration was the seeming lack of a toggle in the readme, having to navigate the issues of the repo to determine its presence (or lack thereof) is not a great expectation on new users, and considering the difficulty of using vim for the first time, a simple mention of this command in the readme to ease new users would be a good idea (IMO).


Feature : Add custom presets for unmanaged device

Hello,
I had new deltadore 4890 connected to my Tydom box and these sondes doesn't support presets, so i had a variable named PRESETS_MANUAL which managed presets inside this mqtt addon. It works fine for me in production, but the code can be better.
you can test with setting PRESETS_MANUAL={'ECO':'16', 'COMFORT': '19'} for exemple
if Presets_manual is not set, no impact.

Hi,
Thank you for your contribution! 👍
That seems to be a "very edge case" but... why not ;)
Can you please update your PR with the following items:

Rename the configuration property from PRESETS_MANUAL to something easier to understand (like THERMOSTAT_CUSTOM_PRESETS for example?)
Complete the documentation to describe this new configuration property here
Add a dedicated section to the documentation configuration page to explain why/how to use it

Thank you very much 😃

Hi,
Thank you for your contribution! 👍
That seems to be a "very edge case" but... why not ;)
Can you please update your PR with the following items:

Rename the configuration property from PRESETS_MANUAL to something easier to understand (like THERMOSTAT_CUSTOM_PRESETS for example?)
Complete the documentation to describe this new configuration property here
Add a dedicated section to the documentation configuration page to explain why/how to use it

Thank you very much 😃

Is it better ? :)

Yes, thank you! 👍

For information, I had to fix that because it was failing when the feature wasn't used:
https://github.com/fmartinou/tydom2mqtt/commit/60115dcca87aaee89d6e34d4eb4e037895a0a931

Released as 3.4.1


Remove most of the assumptions from examples

Makes a bit easier to run the script because you no longer need to manually run make before running the script and you don't have to checkout tooling repo into a specific path.

/cc @tmshort

I think it might be better if we made the arguments environment variables; that way they can be set on the command line or beforehand, and then any of the arguments can be made optional.
I generally prefer (even though I wasn't consistent) the use of {braces} around variable use.

@tmshort @grokspawn please take another look. I added options instead of positional arguments and resolved rest of the comments.
There was also an issue in v0 with running the script from the root of the repo with a relative path like ./examples/downstream-v0.sh. I was determining TOOLS_REPO_DIR with just a dirname which is weird (returns relative path in some cases). But it is fixed now.

@tmshort addressed comments. Please take another look.


Unable to inspect any file.

With this tool I'm unable to inspect any file. For example when trying to whats a valid JSON file (composer.json) the following error is returned. { [Error: 404 Not Found: composer.json] code: 'E404', pkgid: 'composer.json’ }.

node -v v0.12.4
npm -v 2.10.1

@mattgrill,
Thank you for filing an issue. You have installed this npm module as opposed to whatis. Try running npm install whatis.


feat(cli): switch to @janus-idp/cli for new plugins and populate them with the basics

Introduce a new option to janus-cli new that allows us to skip changes to packages/*
Remove --scope option and hard code to @janus-idp
Update templates to contain metadata in their package.json, fix tsconfig.json and add turbo.json.
Update dependency resolution to pin devDependencies.

do not merge, rebase and update needed 🙂

cc @davidfestal @kadel
can you please take a look?

/override "SonarCloud Code Analysis"
The code duplication is expected. I've removed the folder from SonarCloud duplication analysis, though there's no straightforward way to retrigger a SonarCloud run without a code push.


Support LTI tool invocation flow

The autograder can be integrated as an LTI tool, i.e. a web application that is registered with an LMS (Learning Management System), that is formally added as an assignment to students.
User flow can look like this:

The LMS admin adds autograder instances as an LTI tool to LMS
The course facilitator creates the assignments and adds links to specific units to a course in LMS
Students click on the links in the course in their LMS and open the Python programming assignment in Colab
The autograder grades the submissions and records the results back to LMS

A specific more technical description of the HTTP requests flow on LTI tool launch (based on limited understanding of LTI 1.3, so details may not be correct)

The student clicks on a link that goes to autograder server. The request includes student ID, role and the assignment ID ("line item" in LTI speak)
The autograder records the assignment ID and student ID in the user session and initiates authentication with LMS OAuth provider flow to obtain a bearer token
The autograder responds to the student request by redirecting them to Colab notebook with an assignment. Ideally it should pass the authentication token to Colab, but since templating feature in Colab is currently disabled for security reasons, it's more likely the autograder will need to show a page with token with an instruction to copy token, click on the Colab link, then paste the token inside of Colab notebook
On notebook submission, the student should indicate whether their submission is intermediate checkpoint or final submission
After grading a final submission, the autograder may submit grades back to LMS, using the line item, user ID and authentication token recorded in the user session.

+1


Is it for MAC only?

Is it for MAC only? Or also linux?

Sorry, Quick Look is available on macOS only. On Linux, you might be lucky with the command line tool bundled with nbviewer.js and associating it with ipynb files.

thanks


Hotfix for GMSH boundaries not being assigned correctly

Fixed the bug that was not assigning the boundary faces correctly. I checked that it works with the full mesh in the integration tests. This branch can be deleted after merging.

LGTM
@porteri Should I wait to merge until you've had a chance to look at this?

@zbeekman if @hariradh has confirmed the BCs are now the same as the .neu file then all is good, merge away. @hariradh do you also have to fix the Exodus reader or will that be in a different PR?

@porteri based on the file name, and the changes, it looks to me like this is only changing gmsh and NOT exodus. Hopefully @hariradh can take a look at exodus

Exodus will be separate PR according to Hari


Syncing don't update existing runs but create new ones

Weights and Biases version: wandb, version 0.8.9
Python version: Python 3.7.4
Operating System: Linux 5.2.11 (Archlinux)

Description
Trying to sync runs launched on an offline compute server.
Downloading runs from the server to my local machine via ssh and then running wandb sync run-xxxxxx to push them online.
It works and push everything on wandb.com but instead of updating existing runs with new datas, it creates a new runs everytime.
If I sync it x times I will get x similar runs (just longer steps) on the website.
What I Did
Downloading runs from the server : rsync -r --copy-links user@server:folder local_folder
Syncing the downloaded runs (go to the folder and run) :find wandb/run* -maxdepth 0 -type d -exec wandb sync {} \; > result.out  so it update for all runs
Everything of this works but duplicate each of the runs.
This issue is to allow the sync command to update existing runs
Thanks in advance

I have a very similar issue, I try to work on two projects. One of them is a team project, and the other one is my private one. Every time I try to run a private one, the app creates a new project for the team. I tried to create a project in the right place, I put setting that new project should be created under my private account but it didn't help.
I work on:
Linux Mint 19.2 Tina 64-bit
Python 3.6.9
wandb version 0.8.19

any update on this issue?
I guess the current wandb sync is more like wandb upload instead. Sometimes my wandb uploading process is broken, but the local file is intact, so I want to run wandb sync to recover full history, but it will create a new experiment instead.

Hey @noklam
Does the --id help you to overcome this issue?
In the documentation we have provided with all the options there are to be used with the sync CLI. The issue here particularly pertains to duplication. If we provide the --id of the run, the sync attaches to the run we mention.
On the other hand, if we want to resume a run here is the documentation for that.

sorry I cannot confirm on this, I have not used it in a while.


Remove Exception Line from Salesforce Metadata Notification Email if there is no exception

added a condition to check for exception before adding exception label


If context user is mentioned user there is no notification

If the user in the @mention is the context user for the email service then an alert message is not sent even if the posting user is a different user.
A potential workaround could be to use a custom setting or similar to capture the context user and use a different email service/context user if it matches the @mention user.
Ideally Salesforce would just give us some less insane method of reliably alerting users...

Hi @datapharmer, the lack of email notifications when the person mentioned is the same as the author is by design according to https://help.salesforce.com/articleView?id=000170906&type=1
The difficulty in trying to get around that issue via extra settings or email services is that multiple people could be mentioned in the post. Therefore, to ensure that an email notification for the mention did get sent then you would need sufficient number of alternate author ids such that an author could be chosen that was not being mentioned in the post. =/
If your business requirement relies on an email notification, then you may need to use an Email Alert explicitly.
For now, I'm going to mark this as "wontfix" for now but will keep it open for others that come by so they can be aware of this conversation.
Thanks


VNet for container app/container app environment

[Enter feedback here]
In reviewing the docs for the container app (preview), there is mention of being able to bring your own Vnet for the application/containers to use. There is no Networking tab visible to select to modify these features/items.  The Internal Only or VNet settings for the container app are greyed out because no Virtual Network is specified.
Is the bring your own networking portion of this included in the preview?
The steps calling this out are listed under create and environment at step 7 - I was unable to find these options

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

ID: b0aa5af5-831d-77e2-480c-41ab2bbb5be3
Version Independent ID: 583217b2-1821-2cd9-629d-779af221a436
Content: Provide a virtual network to an Azure Container Apps Preview environment
Content Source: articles/container-apps/vnet-custom.md
Service: container-apps
GitHub Login: @craigshoemaker
Microsoft Alias: cshoe

This issue is closed so my assumption is your issue is resolved.
If there are further questions regarding this matter, please tag me in a comment. I will reopen it and we will gladly continue the discussion.

This issue is resolved. I missed the networking tab on the screen. Thank you.
Thank you,
Derek Schauland

From: Karishma Tiwari - MSFT @.>
Sent: Wednesday, April 13, 2022 4:04:14 PM
To: MicrosoftDocs/azure-docs @.>
Cc: Derek Schauland @.>; State change @.>
Subject: Re: [MicrosoftDocs/azure-docs] VNet for container app/container app environment (Issue #91490)
This issue is closed so my assumption is your issue is resolved.
If there are further questions regarding this matter, please tag me in a comment. I will reopen it and we will gladly continue the discussion.
—
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/azure-docs/issues/91490#issuecomment-1098485487, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AEWWFIKF42T3OMDOF2EZ65TVE4ZE5ANCNFSM5TKWMPMA.
You are receiving this because you modified the open/close state.Message ID: @.***>


UnsatisfiedLinkError at io.flutter.view.FlutterMain.startInitialization

Seeing such crash on Google Play console.
java.lang.UnsatisfiedLinkError:
  at java.lang.Runtime.loadLibrary0 (Runtime.java:1011)
  at java.lang.System.loadLibrary (System.java:1657)
  at io.flutter.view.FlutterMain.startInitialization (FlutterMain.java:138)
  at io.flutter.view.FlutterMain.startInitialization (FlutterMain.java:110)
  at ...MyApplication.onCreate (MyApplication.java:29)
  at android.app.Instrumentation.callApplicationOnCreate (Instrumentation.java:1119)
  at android.app.ActivityThread.handleBindApplication (ActivityThread.java:5770)
  at android.app.ActivityThread.-wrap1 (Unknown Source)
  at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1662)
  at android.os.Handler.dispatchMessage (Handler.java:106)
  at android.os.Looper.loop (Looper.java:164)
  at android.app.ActivityThread.main (ActivityThread.java:6543)
  at java.lang.reflect.Method.invoke (Method.java)
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:440)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:810)

It influes quite a lot on core vitals in GP console.
Steps to Reproduce
Can't reproduce locally. Seems to be happening only on Android 9.0 (96% from all reports), and Android 8.1 (4%)
We have to use latest Flutter beta version 1.10.7 because the following issue: https://github.com/flutter/flutter/issues/36130
Top devices from GP console:
Galaxy A50 (a50) - 18.0%
Galaxy J7 (j7y17lte) - 15.6%
Galaxy J4+ (j4primelte) - 11.7%
Galaxy J6+ (j6primelte) - 9.0%
Galaxy J6 (j6lte) - 8.2%
Galaxy A10 (a10) - 6.6%
Galaxy J7 Star (j7topltetmo) -  4.7%
Logs
[✓] Flutter (Channel beta, v1.10.7, on Linux, locale ru_RU.UTF-8)
    • Flutter version 1.10.7 at /opt/flutter
    • Framework revision e70236e36c (4 weeks ago), 2019-10-02 09:32:30 -0700
    • Engine revision 9e6314d348
    • Dart version 2.6.0 (build 2.6.0-dev.4.0<PHONE_NUMBER>)

 [✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
    • Android SDK at /opt/android-sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-29, build-tools 29.0.2
    • ANDROID_HOME = /opt/android-sdk
    • Java binary at: /opt/android-studio-35/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
    • All Android licenses accepted.

[✓] Android Studio (version 3.5)
    • Android Studio at /opt/android-studio-35
    • Flutter plugin version 40.2.2
    • Dart plugin version 191.8593
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)

Guys do you have any update here?

i just got this error on my firebase crashlytics. All I can see is that the OS used is 5.1.1 Any ideas?

Some update on this issue: we have some reports from users who faced this issue. We didn't know how to help them but we have some ideas - one idea is was to increase version number, build apk file (note that we upload bundle to Play console) and ask users to try to upgrade the application (as apk file was signed with the same certificate). So users were able to update application localy and it worked! All application related data was not lost after this upgrade.
We like app bundle as it reduces download size greatly and we would like to stay with it but it seems that we can't. Using app bundle is the root cause of the issue.
So here the question: is this issue related to Flutter or whole app bundle approach could not work as expected in some rare cases?

I hate exactly thé samé question. When I uploader App Bundle instead APK I am getting this error through crashlytics..

This can be reproduced on a Lenovo Lenovo 500e Chromebook (2nd Gen):

Device info
Device: Intel Apollo Lake Chromebook (coral_cheets)
Android version: Android 9

Full stack trace
java.lang.UnsatisfiedLinkError:
  at java.lang.Runtime.loadLibrary0 (Runtime.java:1012)
  at java.lang.System.loadLibrary (System.java:1669)
  at io.flutter.embedding.engine.loader.FlutterLoader.a (FlutterLoader.java:33)
  at io.flutter.embedding.engine.loader.FlutterLoader.a (FlutterLoader.java:5)
  at io.flutter.view.FlutterMain.a (FlutterMain.java:9)
  at io.flutter.app.FlutterApplication.onCreate (FlutterApplication.java:3)
  at android.app.Instrumentation.callApplicationOnCreate (Instrumentation.java:1167)
  at android.app.ActivityThread.handleBindApplication (ActivityThread.java:6130)
  at android.app.ActivityThread.access$1100 (ActivityThread.java:201)
  at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1725)
  at android.os.Handler.dispatchMessage (Handler.java:106)
  at android.os.Looper.loop (Looper.java:193)
  at android.app.ActivityThread.main (ActivityThread.java:6971)
  at java.lang.reflect.Method.invoke (Method.java)
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:493)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:865)

App was built using Flutter 1.15.4-pre.84 and flutter build appbundle.

I got the same crash from Firebase Crashlytics. User device is Pixel, Android 7.1.2.

I got the same crash too, Nexus 5X, Android 8.1, Flutter v1.12.13+hotfix.9.

Does anyone have any sample projects or steps to reproduce this issue?

@xster See https://github.com/flutter/flutter/issues/43853#issuecomment-590304426.

I've this on the last stable Flutter v1.17.2

What do you need to resolve this ?
I can provide CrashLytics reports if it helps

I think this is a very serious issue faced by developers right now...including myself. I could give you a link to a github repo to reproduce. But please let this issue be reopened as a fix has not been made.
For my project, it only crashed for Android 10 devices

Yes, if you have ways to reproduce this, please share.

@xster People seem to see this a lot in Crashlytics.
I would reckon publishing a project on Android with Firebase services and having a few hundred users will always reveal this issue..

Bot going rogue :D

First of all, this is an app I hosted on playStore. It crashes for Android 10 devices.
https://play.google.com/store/apps/details?id=com.myshopify.shopdeliverknysna.sdk_staff
Here is the link to the github source codes. https://github.com/5ran6/sdk_staff
Lemme know if you need any other thing

@5ran6 I checked out the provided app and it doesn't include libflutter.so in assembled bundle.

@5ran6 I checked out the provided app and it doesn't include libflutter.so in assembled bundle.

I'm not so sure why it doesn't. Sorry, how do I fix that?

If you could reproduce this locally, could you unzip your built release mode APK (you can just rename .apk to .zip) then copy paste your content structure? Such as with a https://en.wikipedia.org/wiki/Tree_(command) command.

Hi @xster ,
I tried to reproduce with internal testing but the app cannot be even installed. A lot of devices are named in this thread and you can reproduce the issue with one of them. The problem is related to appbundle and the only way to install appbundle to a device is through Google Play Store and it cannot be installed with internal testing. I got the error with Xiaomi A2 Lite.
Currently, I have to release fat apk to Play Store due to this issue.

Hi @ogrenichv
Are you still seeing the issue or has this been resolved ?

Without additional information, we are unfortunately not sure how to resolve this issue.
We are therefore reluctantly going to close this bug for now.
Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.
Could everyone who still has this problem please file a new issue with the exact description of what happens, logs, and the output of flutter doctor -v.
All system setups can be slightly different, so it's always better to open new issues and reference related issues.


flutter doctor crash

Steps to Reproduce
Just ran flutter doctor on Windows.
Logs
Flutter crash report; please file at https://github.com/flutter/flutter/issues.
command
flutter doctor
exception
ArgumentError: Invalid argument(s): Cannot find executable for C:\Users\mit\AppData\Local\Android\sdk\platform-tools\adb.
#0      _getExecutable (package:process/src/interface/local_process_manager.dart:115)
#1      LocalProcessManager.runSync (package:process/src/interface/local_process_manager.dart:86)
#2      _runWithLoggingSync (package:flutter_tools/src/base/process.dart:286)
#3      runSync (package:flutter_tools/src/base/process.dart:261)
#4      getAdbDevices (package:flutter_tools/src/android/android_device.dart:549)
#5      AndroidDevices.pollingGetDevices (package:flutter_tools/src/android/android_device.dart:51)
<asynchronous suspension>
#6      PollingDeviceDiscovery.devices (package:flutter_tools/src/device.dart:138)
<asynchronous suspension>
#7      DeviceManager.getAllConnectedDevices (package:flutter_tools/src/device.dart:91)
<asynchronous suspension>
#8      DeviceValidator.validate (package:flutter_tools/src/doctor.dart:493)
<asynchronous suspension>
#9      Doctor.diagnose (package:flutter_tools/src/doctor.dart:105)
<asynchronous suspension>
#10     DoctorCommand.runCommand (package:flutter_tools/src/commands/doctor.dart:27)
<asynchronous suspension>
#11     FlutterCommand.verifyThenRunCommand (package:flutter_tools/src/runner/flutter_command.dart:210)
<asynchronous suspension>
#12     FlutterCommand.run (package:flutter_tools/src/runner/flutter_command.dart:156)
<asynchronous suspension>
#13     CommandRunner.runCommand (package:args/command_runner.dart:194)
<asynchronous suspension>
#14     FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:277)
<asynchronous suspension>
#15     CommandRunner.run.<anonymous closure> (package:args/command_runner.dart:109)
#16     new Future.sync (dart:async/future.dart:206)
#17     CommandRunner.run (package:args/command_runner.dart:109)
#18     FlutterCommandRunner.run (package:flutter_tools/src/runner/flutter_command_runner.dart:161)
#19     run.<anonymous closure> (package:flutter_tools/executable.dart:142)
<asynchronous suspension>
#20     AppContext._run (package:flutter_tools/src/base/context.dart:76)
<asynchronous suspension>
#21     AppContext.runInZone.<anonymous closure> (package:flutter_tools/src/base/context.dart:66)
#22     _rootRun (dart:async/zone.dart:1120)
#23     _CustomZone.run (dart:async/zone.dart:1001)
#24     runZoned (dart:async/zone.dart:1467)
#25     AppContext.runInZone (package:flutter_tools/src/base/context.dart:65)
#26     run (package:flutter_tools/executable.dart:114)
<asynchronous suspension>
#27     main (package:flutter_tools/executable.dart:67)
<asynchronous suspension>
#28     main (file:///C:/Users/mit/dev/github/flutter/packages/flutter_tools/bin/flutter_tools.dart:16)
#29     _startIsolate.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:263)
#30     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:151)

flutter doctor
encountered exception: Invalid argument(s): Cannot find executable for C:\Users\mit\AppData\Local\Android\sdk\platform-tools\adb.

#0      _getExecutable (package:process/src/interface/local_process_manager.dart:115)
#1      LocalProcessManager.runSync (package:process/src/interface/local_process_manager.dart:86)
#2      _runWithLoggingSync (package:flutter_tools/src/base/process.dart:286)
#3      runSync (package:flutter_tools/src/base/process.dart:261)
#4      getAdbDevices (package:flutter_tools/src/android/android_device.dart:549)
#5      AndroidDevices.pollingGetDevices (package:flutter_tools/src/android/android_device.dart:51)
<asynchronous suspension>
#6      PollingDeviceDiscovery.devices (package:flutter_tools/src/device.dart:138)
<asynchronous suspension>
#7      DeviceManager.getAllConnectedDevices (package:flutter_tools/src/device.dart:91)
<asynchronous suspension>
#8      DeviceValidator.validate (package:flutter_tools/src/doctor.dart:493)
<asynchronous suspension>
#9      Doctor.diagnose (package:flutter_tools/src/doctor.dart:105)
<asynchronous suspension>
#10     _doctorText.<anonymous closure> (package:flutter_tools/executable.dart:289)
#11     AppContext._run (package:flutter_tools/src/base/context.dart:76)
<asynchronous suspension>
#12     AppContext.runInZone.<anonymous closure> (package:flutter_tools/src/base/context.dart:66)
#13     _rootRun (dart:async/zone.dart:1120)
#14     _CustomZone.run (dart:async/zone.dart:1001)
#15     runZoned (dart:async/zone.dart:1467)
#16     AppContext.runInZone (package:flutter_tools/src/base/context.dart:65)
#17     _doctorText (package:flutter_tools/executable.dart:289)
<asynchronous suspension>
#18     _createLocalCrashReport (package:flutter_tools/executable.dart:264)
<asynchronous suspension>
#19     _handleToolError (package:flutter_tools/executable.dart:219)
<asynchronous suspension>
#20     run.<anonymous closure> (package:flutter_tools/executable.dart:146)
<asynchronous suspension>
#21     AppContext._run (package:flutter_tools/src/base/context.dart:76)
<asynchronous suspension>
#22     AppContext.runInZone.<anonymous closure> (package:flutter_tools/src/base/context.dart:66)
#23     _rootRun (dart:async/zone.dart:1120)
#24     _CustomZone.run (dart:async/zone.dart:1001)
#25     runZoned (dart:async/zone.dart:1467)
#26     AppContext.runInZone (package:flutter_tools/src/base/context.dart:65)
#27     run (package:flutter_tools/executable.dart:114)
<asynchronous suspension>
#28     main (package:flutter_tools/executable.dart:67)
<asynchronous suspension>
#29     main (file:///C:/Users/mit/dev/github/flutter/packages/flutter_tools/bin/flutter_tools.dart:16)
#30     _startIsolate.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:263)
#31     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:151)

Flutter Doctor Output
C:\Users\mit\dev\github>flutter doctor
[√] Flutter (on Microsoft Windows [Version 10.0.10586], locale en-US, channel alpha)
    • Flutter at C:\Users\mit\dev\github\flutter
    • Framework revision d36e2f6191 (7 days ago), 2017-06-21 15:09:10 -0700
    • Engine revision b0dee695ec
    • Tools Dart version 1.24.0-dev.6.7

[-] Android toolchain - develop for Android devices (Android SDK 25.0.3)
    • Android SDK at C:\Users\mit\AppData\Local\Android\sdk
    • Platform android-25, build-tools 25.0.3
    X Android SDK file not found: C:\Users\mit\AppData\Local\Android\sdk\platform-tools\adb.
    • Try re-installing or updating your Android SDK,
      visit https://flutter.io/setup/#android-setup for detailed instructions.

[√] Android Studio (version 2.3)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Gradle version 3.2
    • Java version OpenJDK Runtime Environment (build 1.8.0_112-release-b06)

[√] IntelliJ IDEA Community Edition (version 2017.1)
    • Flutter plugin version 15.0
    • Dart plugin version 171.4694.29

Oops; flutter has exited unexpectedly.
Sending crash report to Google.
Crash report sent (report ID: c8de4fca38000000)

Works for me (windows 10). Do you have a adb.exe file in C:\Users\mit\AppData\Local\Android\sdk\platform-tools\ ?
(My flutter doctor...)
[√] Flutter (on Microsoft Windows [Version 10.0.15063], locale sv-SE, channel alpha)
• Flutter at c:\dev\tools\google\flutter
• Framework revision d36e2f6191 (7 days ago), 2017-06-21 15:09:10 -0700
• Engine revision b0dee695ec
• Tools Dart version 1.24.0-dev.6.7
[√] Android toolchain - develop for Android devices (Android SDK 25.0.3)
• Android SDK at C:\Users\Lars\AppData\Local\Android\sdk
• Platform android-25, build-tools 25.0.3
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_112-release-b06)
[√] Android Studio (version 2.3)
• Android Studio at C:\Program Files\Android\Android Studio
• Gradle version 3.2
• Java version OpenJDK Runtime Environment (build 1.8.0_112-release-b06)
[-] IntelliJ IDEA Community Edition (version 2017.1)
X Flutter plugin not installed; this adds Flutter specific functionality.
X Dart plugin not installed; this adds Dart specific functionality.
• For information about installing plugins, see
https://flutter.io/intellij-setup/#installing-the-plugins
[√] Connected devices
• Android SDK built for x86 • emulator-5554 • android-x86 • Android 7.0 (API 24) (emulator)

Yes, my platform-tools installation was broken; after fixing that it works fine. But flutter doctor should still fail more graciously.


[Bug] when set width to 0, canvas file wasn't exported normally.

It will only show 0 width of canvas.

Thanks for making an issue for this, it's something I noticed as well, it'll be on the backlog.

@Quorafind This was fixed in version 1.4.1. Thanks for the report! :)


Create account userflow, Student and school login, student and school signup, student and school forgot password (mobile and desktop view

Done
https://www.figma.com/file/dOQv8d0yWU9BU7Adea2LIU


Update to Sprockets 4

Needs a rebase.

I believe this is blocked on Teaspoon not supporting Sprockets 4, so closing.


Readme should be updated to reflect some required elements in web.config

The UmbracoDeploy specific sections need to be added as does the DeployApiKey in order for the local site to run - and if any deployment would be done for content/media; same for restore

Closing this issue as the readme file has been updated.


Regenerate testing certificates

The test certificates expired.
This PR refreshed the certificates using the shell script in the fixtures folder.

I wonder if it's a good idea to include in this PR a removal of the -u on this line regenerateTestingCerts.sh#L174 that causes this issue with the transient dependency: https://github.com/theupdateframework/notary/issues/1593#issuecomment-812567781

@stefan-zh Not sure what you mean by that as I just pulled the repo, ran the script and got these certificates updated without any issues.

@stefan-zh Not sure what you mean by that as I just pulled the repo, ran the script and got these certificates updated without any issues.

@marcofranssen You have the cfssljson binary pre-installed. Try removing it and regenerating certificates from scratch:
rm $(which cfssljson)
cd ./fixtures
./regenerateTestingCerts.sh

I wonder if it's a good idea to include in this PR a removal of the -u on this line regenerateTestingCerts.sh#L174 that causes this issue with the transient dependency: #1593 (comment)

I think you may be mistaken, this PR does not remove the -u option, please check here
I have just used notary with the newly created certificates and I see that everything is working perfectly, I think this PR should be merged to master.
Thank you @marcofranssen

@ioannisgk I think you misunderstood my suggestion. I am suggesting that this PR should include a removal of the -u option on this line regenerateTestingCerts.sh#L174. I am proposing this additional change because certificates might not get regenerated properly in some cases and I think this PR is a proper place to add it.
Are there such cases? Yes, there are - this person ran into this issue https://github.com/theupdateframework/notary/issues/1593#issuecomment-812567781 and I ran into the same issue.
Why do we have this issue when we run the regenerateTestingCerts.sh script? Because we don't have the cfssl binary on our $GOPATH. Because of that regenerateTestingCerts.sh will try to get it and compile it. However, there is a transient issue with a dependency of cfssl called github.com/coreos/bbolt:

Not a go expert. I think it may be affected by github.com/coreos/bbolt now redirects to github.com/etcd-io/bbolt or the github.com/etcd-io/bbolt/

Is this issue solvable? Yes, it is. Someone else had this issue with the cfssl dependency, posted the issue on their GitHub repo https://github.com/cloudflare/cfssl/issues/1183 and then someone provided an answer how to fix it: https://github.com/cloudflare/cfssl/issues/1183#issuecomment-812739180

@stefan-zh I have applied your suggestion.

@seb-bah are we good to merge? can you handle the merge?

@seb-bah are we good to merge? can you handle the merge?

@marcofranssen I just tested this PR and we're good to go! I don't have write access to be able to merge.

FYI @justincormack


Improve "Error saving developer!" messaging

On my Windows 10 machine, while executing "alks developer configure", and after I select default ALKS account/role I would receive a "Error saving developer" message in the console.
I downloaded the source and added console.error(err.message); to Developer.saveDeveloper callback if(err) block and got a more helpful "ENOENT: no such file or directory, open 'D:\Users\kjmil\alks.db'"
I created a "D:\Users\kjmil" directory and received a successful "Developer saved!" message.
This is the first time I have used ALKS-CLI so I'm not sure exactly what issue should be resolved, but I think I may be seeing a combination of possible issues:

ALKS-CLI probably wanted to use "C:\Users\kjmil" which does exist instead of "D:..."
Should ALKS-CLI create the directory if it doesn't exist?
I didn't dig deeper, but I'm not sure where utils.log(program, logger, 'error saving! ' + err.message); is writing to.  Should a user have to dig deeper to find the log (or hack at the source like me) to view the err.message?

Thanks for reporting the issue.. That's very odd that the directory didn't exist, we write our database to your home directory, which on Windows is set under the environment variable USERPROFILE. Something seems amiss with the fact that your home directory is set to a directory that doesnt exist - so I wouldn't want the code to arbitrarily create a home directory for you. We have many developers running the CLI on Windows and this is the first I've heard of this error. Do you know why the home directory referenced didn't exist?
Also, if you run the CLI in verbose mode (-v) you would have seen the actual error message.

Looking at the utils.js#65, it looks like HOMEPATH is used before USERPROFILE.
On my machine, HOMEPATH=\Users\kjmil and USERPROFILE=C:\Users\kjmil.  It looks like since my console was at D:> and HOMEPATH was used (assuming I'm reading the js correctly), the getFilePathInHome returned D:\Users\kjmil...
Not sure what kind of side-effects could occur by swapping HOMEPATH || USERPROFILE order but I think it would resolve my issue.
Thanks for the -v tip.


cmd/compile: "add some generic composite type optimizations" improperly discards writes to non-autos

CL 106495 (commit f31a18ded405bdbc7b44a011d1434c83e7c39347) adds a pass, "dead auto elim", that eliminates local variables that are only written, not read. Under certain circumstances, it can discard writes to non-autos. In this example:
package main

import "fmt"

func main() {
	var s string
	mangle(&s)
	fmt.Println(s)
}

//go:noinline
func mangle(ps *string) {
	if ps == nil {
		var s string
		ps = &s
	}
	*ps = "hello world"
}

The write on the last line to *ps will be discarded. I think the problem is that elimDeadAutosGeneric totally ignores non-autos, even when their existence is important. The phi op that unifies ps after the if takes two values, essentially &s and ps. Because the function doesn't care about non-autos, it ignores ps, and considers the phi to be dead if s is dead, which of course it is. Really the whole thing should be kept alive by the (potential) write through ps.
cc @randall77, @TocarIP, @mundaym

Thanks for the bug report @heschik. I think CL 121796 should be enough to fix the problem.


client side mongoose not importing, TypeError

Is this a bug report?
Yes, this is a bug report
Can you also reproduce the problem with npm 4.x?
Was using npm 3.10.9, also tried on 4.6.1. Still a problem.
Which terms did you search for in User Guide?
webpack, mongoose
Environment

node -v: 7.2.0
npm -v: 4.6.1
yarn --version (if you use Yarn): 0.27.5 (tried yarn after npm wasnt working)
npm ls react-scripts (if you haven’t ejected<EMAIL_ADDRESS>
Then, specify:

Operating system: macOs
Browser and version (if relevant): Safari 10.1.2 and Chrome 60.0.3112.113

Steps to Reproduce
npm install -g create-react-app
create-react-app foo
cd foo
npm install --save mongoose
edit App.js to add to the first line:
import mongoose from "mongoose";
npm start // or yarn start if using yarn
in browser, go to http://localhost:3000/
Expected Behavior
App loads without error.
Actual Behavior
Error when loading page that imports mongoose on the client side when using webpack through create-react-app.
This line of code:
new webpack.DefinePlugin({ 'typeof window': '"object"' })
from
http://mongoosejs.com/docs/browser.html
does not appear to fix it.
The error:
× TypeError: Object prototype may only be an Object or null: undefined
(anonymous function)
node_modules/mongoose/lib/browserDocument.js:99

Reproducible Demo
It's the default app created by create-react-app with the line
import mongoose from "mongoose";
added to the top of App.js

Please file an issue with mongoose. The requirement to add a plugin to webpack configuration to consume a library is not great and puts a complexity tax on the ecosystem. I believe it is completely avoidable on the mongoose side if they prioritize fixing it.
As a temporary fix, you can always use mongoose as a <script> tag by putting its JS file into the public/ folder, adding a <script> to index.html, and then using it via window.mongoose.

Already filed with mongoose. Adding your comment there as well. Thanks.
https://github.com/Automattic/mongoose/issues/5610


Site Factory install error for new sites

Summary
This wraps the isSecure() function in a function_exists() to ensure it only is loaded once. This should allow Site Factory to create new sites and stop throwing this fatal:
PHP Fatal error:  Cannot redeclare isSecure() (previously declared in /mnt/www/html/riecms01dev/factory-hooks/pre-settings-php/protocol.php:10) in /mnt/www/html/riecms01dev/factory-hooks/pre-settings-php/protocol.php on line 18

Metadata

Question
Answer

Did you use a meaningful pull request title?
yes

Did you apply meaningful labels to the pull request?
yes

Did you perform a self review first?
yes

Documentation reflects changes?
no

CHANGELOG reflects changes?
yes

Unit/Functional tests reflect changes?
no

Did you perform browser testing?
yes

Risk level
Low

Relevant links
RIG-165

Ok looks good!
/approved


Detector's region does not match the metric API's region format

I was trying to use the GCP detector from open-telemetry/opentelemetry-go-contrib and I started getting errors bac
rpc error: code = InvalidArgument desc = One or more TimeSeries could not be written: Unrecognized region or location.: timeSeries[0-8]

When I dug into it I can see that the detector uses the metadata service, which returns the region in the format
projects/<project ID>/regions/<region ID> https://cloud.google.com/run/docs/reference/container-contract (which is a rather unusual format, but whatever)
Unsurprisingly, this is not what the generic_task (which is what a Cloud Run environment gets mapped to) MonitoredResource expects https://cloud.google.com/monitoring/api/resources#tag_generic_task
It seems like the detector should parse out the region from the metadata server's response, and then set just the resource part of the string as the attribute

Thanks for flagging, this should be fixed. Would you have interest in contributing a fix?

Fixed by https://github.com/open-telemetry/opentelemetry-go-contrib/pull/1546


[Bug] Opacity not working on Android

Copied from: https://github.com/jamesmontemagno/Xamarin.Plugins/issues/295
Bug
Version Number of Plugin:
Device Tested On:
Simulator Tested On: Android lollipop / iOS 8 or higher
Expected Behavior
Actual Behavior
Setting CircleImage's opacity is not working. If I set it as under 1, it's not shown.
(Only Android. and Xamarin's 'Image' is working fine.)
Steps to reproduce the Behavior

I am having this (or a related?) problem only on XXHDPI Android phones.
If I am setting a FillColor and an Opacity < 1, it will cut off the top 1/5 of the image (full opacity there).
<plugins:CircleImage Opacity="0.3"
                         FillColor="Black"
                         BorderThickness="2" BorderColor="{StaticResource BorderColor}"
                         HorizontalOptions="Center" VerticalOptions="Center"
                         HeightRequest="120" WidthRequest="120" Aspect="AspectFill">

Can you show me a screenshot? Trying to repo here.

Sure.
I just pasted the code on my above post in a new XAML page.
You can reproduce it on the Visual Studio emulator "5.1'' Lollipop (5.1.1) XXHDPI Phone (Android 5.1 - API 22)" or any high-dpi phone.

OH I see, you don't have an image in there? I will test this out, interesting.

Maybe i misunderstand something bit imho it is not a bug.
In this case of an Image parent property Opacity affects only the Bitmap image that is set to none in your code.
And the Color opacity is opaque, have set it Black instead of a transparent color.
If you set a transparent color the opacity you indicate in the color value will take effect.
If you set an image from a source Opacity property will take effect.


the maskiou_net doesn't seem to be used.

https://github.com/dbolya/yolact/blob/092554ad707c2749631dfe545c8a953b2b3f4a68/yolact.py#L435
Question: where is this module used, and what effects?

I find out, in multibox_loss.py to calculate mask_iou score.


Make Some field optional to pass Market request

According documentation:
https://github.com/binance-exchange/binance-official-api-docs/blob/master/rest-api.md#new-order--trade
We have only few mandatory fileds for MARKET request.
But  fields is not optional in func NewOrder.
And request looks like
curl -H "X-MBX-APIKEY: *****" -X POST 'https://api.binance.com/api/v3/order' -d 'symbol=LTCBTC&side=BUY&type=MARKET&timeInForce=&quantity=1&price=&recvWindow=&timestamp=1499827319559&signature=****'

Binance backed does not accept empty fields and response error.

Second way fill fields like Limit order also not work.
Error from backend about non-needed filed.


Support for Ingress for on-premise deployments

Hi, I tried to check the documents and can't find what seems to be an easy thing to do considering what is done already (I may be very wrong of course).
I have an on-premise cluster and using cert-manager to automatically provision certificates. Cert-manager integrates with route53 to create DNS record to solve Let'sEncrypt DNS challenge. The only thing I have to do manually is to create DNS entry for the host defined in ingress which points to my machines.
So, is it possible to add such integration? I am thinking the IP for DNS entry should be externaIP defined in ingress in this case.

@mlushpenko yes, that's definitely possible, we should have some example "how to" for on premise users in https://github.com/kubernetes-incubator/external-dns/tree/master/docs

@hjacobs happy to hear that? any idea when that may be added? I could try to help you with documentation if I manage to set it up on my infrastructure

@mlushpenko maybe you can ask in the External DNS slack channel to get direct guidance, here some first pointers:

create an AWS access key
set the right environment variables for the AWS SDK, i.e. AWS_REGION, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY -- see the AWS SDK docs for details
configure External DNS with --provider=aws and other needed flags
start External DNS
create an ingress with a host matching your Route53 hosted zone domain
set the status field of the ingress (e.g. manually) to the IP of your HTTP router, LB or machine

@hjacobs is t possible to specify name of ingress controller service instead of IP of router?

@sheerun yes, it can also be a hostname in status.loadBalancer.ingress.hostname, e.g.:
$ kubectl get ingress myingress -o yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: myingress
  namespace: default

spec:
  rules:
  - host: myingress.example.org
    http:
      paths:
      - backend:
          serviceName: myapp
          servicePort: 80
status:
  loadBalancer:
    ingress:
    - hostname: myrouter.example.org

I have been trying to get this going and every time I make a change to status.loadBalancer.ingress.hostname it is immediately reverted to the original state. Is there anyway to annotate external-dns with an ip or hostname of your on prem load balancer and just have it use that? Thanks!


NO ISSUE, just question FILE DOWNLOAD ?

play with a ESP32-S3 N16R8
and setup FFAT 10MB partition.
and write dir and file (append 1 line / min )
/data/readings.csv
does THIS tool help me to DOWNLOAD that file via Browser?
the example FSBrowser i use, not even print that file (content)
my status : at GIT
THX for sharing your work

Hi @MyRaspberry
Yes, it can.
Some time ago I've written a sketch to visualize a csv, edit and download
I just have to remember where I saved it....
However, it has little to do with the library in question, it's just HTML and Javascript coding.

i just worry about the file size can grow over the memory of the chip,
what also limits the html it can produce dynamically,
so how JS could serve big files?

It depends on the size of your csv file.
Aniway, this library could serve web pages even from a SD memory card if a lot of space is needed.
Naturally, the larger the size of the csv file, the longer it will take to load the page that displays its content.
This is the result with my ESP32-S3 (only 1.3Mbyte for LittleFS filesystem) using my smartphone as Access Point.
Test with a file of approximately 110kb (1000 records)

and this instead with a file of approximately 1000kb (8000 records)

If you only need to download, the problem does not arise because it is not necessary to upload the contents of the file to the web page as in this case.
It will be sufficient to populate a list with the files to download (if there are more than one) and a button to start the download.

thanks,
anyhow i started coding the file thing a ? better ? way,
making daily files like "data/readings_2024-01-08.csv"
will see tomorrow if it works.
and then experiment with your lib
thanks for your time

making daily files like "data/readings_2024-01-08.csv"

This is a great idea.
The download page at this point will only have to create a list based on the contents of the filesystem and allow you to download the files.
If you need, I have some working sketches that do similar things (not with csv, but basically it's the same behaviour)

-1- that first part seems to work:
find {"type":"file","name":"data/readings_2024-01-09.csv", "size": 21267 B } ( ! size after 8 hours already )
,rec,datetimes,A0,A1,A2, ,1785,2024-01-09 00:00:49,0.00,20.05,1.03, ,1789,2024-01-09 00:01:49,0.00,18.95,0.71, ,1793,2024-01-09 00:02:49,0.00,19.10,0.61, ...
tomorrow i know how big it will be.
-2- i can also now print the content using the server.streamFile
 String contentType = getContentType(path);   File file = FILESYSTEM.open(path, "r");   server.streamFile(file, contentType);   file.close();
inside my added function to the FSBrowser code :
void handleFilePrint() { // on /print?file=/data/readings.csv
-3- BUT THAT IS NOT A DOWNLOAD ? HOW ?
i also failed to find something in your
esp-fs-webserver-master\src\esp-fs-webserver.cpp
-4- i am lost,
while years ago i pay esp2866 and SPIFFS and the /data/ dir in Arduino code and a Arduino IDE TOOLS menu entry UPLOAD
( and after using Circuit Python just come back to Arduino IDE )
now i see that is ?DISCONTINUED?
and having a ESP32-S3 N16R8 module i look into using FFAT
where i miss the way to handle any files there regarding UPLOAD & DOWNLOAD..
so finding FSBrowser i hoped that might be the way, but that is very incomplete.
also i miss to see anything ? regarding other tools
is there something from the Espressif tools?
or ? i have one of that boards with 2 USB C ports,
is there a code ?for Arduino IDE?
to use one port of that board as a USB STICK with file access to FFAT?
HA, that would be great

thanks anyhow,
i got the basics working.. see GIT

Hi @MyRaspberry
I'm happy you already solved it.
In any case, if you want to take a look, I added an example taking inspiration from your needs
https://github.com/cotestatnt/esp-fs-webserver/tree/master/examples/csvLogger

Of course you can use it!
The library is compatible with any type of Espreffif microcontroller including the ESP8266.
If you prefer to use FFat, simply include the "FFat.h" file and replace LittleFS with FFat wherever you see it in the sketch.
As for uploading the data folder, it is managed directly by the library using the included /setup page,  Update & FS tab.

Once you have uploaded your sources, you can edit them directly using the included /edit page
Soon I will add a new version of /edit that allows you to download files, but in the meantime you can simply copy and paste to transfer any changes to your PC
Regarding your working HTML code, you can simply put it on a specific page: if you don't want write from beginning, open dev tools of your browser, move to the "source" tab and copy the content.
If the name page is index.htm or index.html it will be used as default page

The print screen is from the twin library that uses the ESPAsyncWebServer library for the webserver instead of the one included in the core, but the result does not change (I develop them more or less in parallel)
From some tests I've done it seems to be faster and more responsive.

as expected nothing is easy....
first ( not yet reading above and with my possibly wrong thinking ) i try a extra working environment

on a laptop ( win 10 )
Arduino IDE 1.8.19
installed lib esp-fs-webserver 1.2.8
add download copy example from MASTER
board ESP32 : NODE ESP-32S V1.1
press the RIGHT BUTTON for UPLOAD this sketch
( for first time i used erase all flash [enabled], who knows what i play last year ?CircuitPython? )

try set laptop wifi to
ESP_AP
password 123456789
from laptop
get:

Oops.
The site at http://www.msftconnecttest.com/redirect has experienced a network protocol violation that cannot be repaired.
The page you are trying to view cannot be shown because an error in the data transmission was detected.
Please contact the website owners to inform them of this problem.

I'm sorry @MyRaspberry, but a pull request I've merged some times ago has introduced this bug due to a wrong reply when ESP is acting as captive portal ( "https:://"  instead http://).
Once an ESP32 has succesfull connected to a SSID it store the credentials, so I've never realized before about this bug.
With last commit and releases I've fixed it.
I've added also some more features like manual WiFi configuration (fixed IP, gatway, subnet)

sorry, had to fail with a other idea first.....
// 12.1.2024 update to v 1.3.0 and take also that new example
Terminal show continuous booting
05:45:39.592 -> rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
05:45:39.639 -> configsip: 0, SPIWP:0xee
05:45:39.639 -> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
05:45:39.639 -> mode:DIO, clock div:1
05:45:39.639 -> load:0x3fff0030,len:1184
05:45:39.639 -> load:0x40078000,len:13260
05:45:39.639 -> load:0x40080400,len:3028
05:45:39.639 -> entry 0x400805e4
05:45:39.780 -> ERROR on mounting filesystem. It will be formmatted!
05:45:39.780 -> ets Jun  8 2016 00:22:57
05:45:39.780 ->
05:45:39.780 -> rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
05:45:39.780 -> configsip: 0, SPIWP:0xee
05:45:39.827 -> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
05:45:39.827 -> mode:DIO, clock div:1
05:45:39.827 -> load:0x3fff0030,len:1184
05:45:39.827 -> load:0x40078000,len:13260
05:45:39.827 -> load:0x40080400,len:3028
05:45:39.827 -> entry 0x400805e4
05:45:48.649 -> ets Jun  8 2016 00:22:57
05:45:48.649 ->

again, above i mentioned that i use partition DEFAULT ( whatever that means )

You are trying to use a FFat based sketch selecting a SPIFFS based partition scheme (the default one),
Of course it will not work!
Also, up until now you've always said you have an ESP32-S3, but the board you selected uses a "normal" ESP32 so I'm guessing this is a different board?
In this case, select a variant that also has the FFat partition among the choices, or select a generic ESP32 dev-module so you have all the options available.
A curiosity... but why are you so sticky to the FFat partition? If you left LittleFS, the sketch would work as it was without having to specify the partition scheme every time

oh sorry,
-1- my idea was to test a new ESP32-S3 N16R8
with Arduino, so installed Arduino IDE 2.2.1 to learn that too.
-2- my first impression was that i can not use that N16R8
so i dig deeper and that leaded to using FFAT
as i am working and data-collecting to N16R8
in that bigger evaluation project already
status
-3- as described above, i did a separate test setup for your lib.
-a- laptop
-b- Arduino IDE 1.8.19
-c- a NODEMCU ESP32-32s v1.1
as i got the impression you need that Arduino /data/ dir thing
where i read that not work in the new IDE?
again, just tell me what you want me to do with your last code,
to test without change?

board
IDE
tools board settings

pls, i want to study that.

as i got the impression you need that Arduino /data/ dir thing where i read that not work in the new IDE?

The FS upload plugin for IDE 1.8.x (which don't work with IDE 2.x) is no more necessary because you can upload your files through the esp-fs-webserver library's included web interface.

second try used <IP_ADDRESS> | <IP_ADDRESS> | <IP_ADDRESS>

I don't think the subnet mask you used are a valid value. Usually I set as <IP_ADDRESS>
If you edit manual IP or other parameters for no-DHCP configuration, you have to save configuration before start the new connection, otherwise on next restart it will not be used.

<IP_ADDRESS>
my bad

after some looks i got to say:
-a-
this project needs a FAVICON.ICO
 like
with change in :
/data/index.htm

and here my idea, pls you use mine if you like it, even i am not a real artist.
pls copy from :
[ here ](https://github.com/MyRaspberry/ESP32-S3_N16R8_w_Arduino/tree/main/ESP32_Data_Collect_FFAT_FSBrowser/code/data)
-b-
i miss a ?maintenance? view about the 'LittleFS' DRIVE in PSFLASH

space? total free used
dir list ( not only the .CSV like in CSV work HOME page file sector )

-c-
this project csvLogger : funtion is impressive,
but the code is 3 level over my head to understand
if you look at my GIT you see i just managed to learn .h .cpp class
and have html download button browse select one file, but the way seems to be same?
server ON /edit [POST] >> handleFileUpload() >> server.upload()
all just hidden in your complex structure.
but i not see where you scan the PC selected /data/ dir and upload ALL files?
is it a ONE by ONE via a JS loop?
-d-
anyway

we both got the poor FSBrowser to a FULLER USE
and i am happy that using N16R8 via Arduino IDE is tricky but possible.

took me a week to find that out, funny that google could not help me with that
possibly my bad english.
thanks and greeting to Rome from Chiang Mai

I'll try to respond to your comments

A
favicon.ico is something linked to the final application chosen by the user, so inserting it at library level seems useless to me. Of course I could put a default one to customize if necessary... I'll think about it.
B
the methods for retrieving this information is tied to the choosen filesystem. In the twin library async-esp-fs-webserver, is possible to assign a callback function for this task. I will include this possibility in this library soon
C
yes, it's all done with a Javascript function  and with HTML input file element with id=listing
D
ok, I'll do some checking
E
Thank you from Rome for the valuable feedback

now i try

Arduino IDE 2.2.1 ( after NODEMCU ESP32 S OK )
board ESP32-S3 N16R8
erase all FLASH ENABLED

?? WHAT NOW??

FLASH size 4MB

Partition 4MB 1.5MB SPIFFS

mobile wifi >> ESP_AP

           password 123456789

Authenticating..

Couldn't connect Try again

-1- pls help with the tools board settings for ESP32-S3
-2- why now login problems?

I'm sorry something must have gone wrong with the latest commits...
for now I would suggest starting the connection manually with the classic WiFi.begin() and avoiding calling the library startWifi() method
I'll fix this bug and then I'll make a new release.

ok, n.p. can wait,
just wanted to confirm if the rest worked and run pure FFat tools over it
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x1 (POWERON),boot:0x8 (SPI_FAST_FLASH_BOOT)
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fce3808,len:0x44c
load:0x403c9700,len:0xbe4
load:0x403cc700,len:0x2a68
entry 0x403c98d4

================================
Chip Model: ESP32-S3
Chip Revision: 0
with 2 core
Flash Chip Size : 16777216
Flash Chip Speed : 80000000
Total Heap : 397212
Free Heap  : 372320
PSRAM Total :  8386279, Free : 8386019, Used : 260

Features included:

 2.4GHz WiFi
 Bluetooth LE

FFAT Total :   10240000, Free :   10231808, Used :       8192
Listing directory: /
  DIR : setup
Listing directory: /setup
  FILE: config.json	SIZE: 17

update:
try v 1.3.2

Hi @MyRaspberry, thanks for your review!
I just published a new major release (due to the big and deep changes).
If you want test also this release, please keep in mind that some small changes are needed on on pre-existing sketches.
In any case, the advice is always to start with the examples included.

try v 2.0.0

Hi @MyRaspberry
If you like, try the latest release.
I've fixed some of the observations you made such as wrong printing files order.
As regards the "Google" IP in access mode, it seems that with this trick you can make the captive portal work even on the most finicky devices (for example some Samsungs smartphones)
Furthermore, in the csvLogger.ino, I have included an example of how it is possible to insert a custom favicon encoded in base64.
The /edit web page must be explicitly enabled. However I have adjusted all the examples to include it (and possibly comment the related instruction)

 test 9 and 10


🐞 [Bug]: [grid-cli] deploying vm auto generates mycellium ip

What happened?
When using the grid-cli to deploy a virtual machine (VM), the tool automatically generates a Mycelium IP address without adding any flag for it.

is it mandatory for the user to deploy a vm with Mycelium?
which network/s did you face the problem on?
Dev, QA, Test, Main
12:15PM INF starting peer session=tf-52391 twin=7606
12:15PM INF deploying network
12:15PM INF deploying vm
12:15PM INF vm planetary ip: 300:1b0f:ec2d:be82:1662:7967:a5b9:afd9
12:15PM INF vm mycelium ip: 4c8:3f9e:faa6:acd1:ff0f:7d37:ab24:809

It is not a bug, it is intended to add both ygg and mycelium and the user can connect with whatever they want.
You can turn it off with --mycelium=false the same way as ygg --ygg=false.


Exporting internal changes back to open-source.

NOTE: This is an automated export. Changes were already LGTM'd internally.

This change is

@alainjobart @enisoc
Just as an FYI: I'm bumping the pinned Go gRPC version here and re-generated our Go gRPC stubs.


feat: integrate add book to firestore along with the image

Adding a book will now store the book information to Firestore
If the book have an image attached with it, the image will also be stored to Firebase cloud storage, the name of the image will be the id of the book
some commented code in AddEditActivity gives an idea on how we can retrieve the image from cloud

one note: we might want to have general callback interfaces for all ViewModels, as now each ViewModel is having duplicate callback interfaces, and will continue to grow as we add more ViewModels.
But some callbacks requires parameter(s) while some does not. If you have better suggestions maybe we can discuss.

one note: we might want to have general callback interfaces for all ViewModels, as now each ViewModel is having duplicate callback interfaces, and will continue to grow as we add more ViewModels.
But some callbacks requires parameter(s) while some does not. If you have better suggestions maybe we can discuss.

I have thought about this too. We could create 3 interfaces, onSuccessCallback, onSuccessCallbackWithArgs, and onFailureCallback. onSuccessCallback and onFailureCallback we already have. onSuccessCallbackWithArgs will take in a Map<String, Object>. We can send our arguments through callback using the map. We can extract the data in the activity after the callback is called. This approach makes it less clear on what the activity is expecting from the callback, open to suggestions.

agree with khang's comment but a simple generic typed message should suffice? view models could use their own enum message rather than a map.
have a example commit at https://github.com/CMPUT301F20T21/Book_Friends/commit/6176183a3c18a618e02ac9e55f5902f2ec956bad


Possible Typo In Example

Typo on comment
// If you uses flutter_hooks

Additional context

This seem to have been fixed already, and you probably saw the doc of the v0.14.x instead of v1.0.0-dev
So I will close this.


NOISSUE - Fix create thing

What does this do?
It fixes the API call in create thing docs
Which issue(s) does this PR fix/relate to?
No related issue
List any changes that modify/break current functionality
No
Have you included tests for your changes?
No
Did you document any new/modified functionality?
Yes
Notes
N/A

Resolves #117


Unsafe styles problems after upgrading to 1.0

Hi! I used safe styles but when I needed linux CI pipeline back then when no ppx for linux was available I switched to unsafe styles. And it worked until last update to 1.0 :) It looks like my styles are not applied. Example on github for unsafe style is quite old like it was not tested with recent changes. All my components use following pattern:
    render: self => <MaterialUi.WithStyles
        classes=[{
            name: "mystyle",
            styles: Style.make(
                ~minHeight="850px",
                ~position="relative",
                ()
            )
        }]
        render={classes =>
}
       />

I would be very glad if it stared to work again - my codebase is too big now for going back to safe styles.

Btw.. if my component has  classesWithTheme={theme => []} it fails in runtime with error: ["Not_found", -6, tag: 248]

Hey, thanks for the report!
I had to go back to the current styling method and it works stable enough for me that I put 1.0.0 out. Can you try the latest release and report back if that fixes the issues?
You can look at the examples for styling by cloning this repo and going yarn install, yarn examples. Both unsafe techniques work in that context.

Sorry for the delay. Could you update to the latest version and lmk if the issue still persists?

Still the same problem, I'll prepare a test case to make it easier for you to check.

OK, I found finally some time to make a minimal test case:
bs-material-ui-test-case.zip
Tu run it please do:
yarn install
yarn dev
open localhost:8080

If you open it the first time you'll notice maximum depth error in the console (and some other warnings)
There are two ways to get rid of it. First is to comment line 8 in userList.re:
store.send(Action.WORKING(true));
Then you should see everything works
Second way is to rename current make function into make3 and rename make2 into make in main.re
This second version of main component doesn't use MaterialUi.WithStyles. And that version works perfectly too.
Of course every case works correctly with bs-material-ui 0.4.2. It all started to break with newer versions.
I hope this will help you somehow to identify the problem :)

I also tried safe styles:
let make = (children) => {
    ...component,
    render: self =>

};

and this one works too :) So there must be sth wrong with MaterialUi.WithStyles

@unodgs Is this issue still relevant?

Issue still exists in the latest stable version and I'm still on 0.4.2 because of that :( It would be great to have this fixed (especially that safe styles don't work in windows env). But if that's problematic maybe it's not worth wasting time on it - eventually I will need to switch to reason react 0.7 with hooks so I will be forced to make bigger refactoring anyway. Did you try my test-case?

Sorry to say, but I'll deprecate the version of the bindings this issue is based on in the next version. Therefore I'll close this issue, I hope you have upgraded anyway by now 😅

Yes, I migrated and now everything is working again :) I think I dug in to the root cause but I wasn't able to fix it anyway. Let's close it.


Add to onboarding reproduction logs

Details on my setup (e.g., operating system, environment and configuration, etc.):

Windows Ubuntu 24.04.1 LTS (WSL2)
Java 21

The setup actually took me quite some time for a couple of reasons:

I jumped straight into start-here by clicking on links inside the ura doc without reading readme; therefore, I had the repo setup locally on my windows for the first task, only to redo everything on Ubuntu for the second task.
My Ubuntu had Java 11, and when I tried to build I got Fatal error compiling: invalid target release: 21. Referencing to an internal post, I was able to update Java version to 21, following these steps.
I also got an additional build failure, where build took 13 minutes and the error was: Crashed tests: io.anserini.search.SimpleImpactSearcherTest. I actually was not able to locate the exact cause of this issue, and instead continue building with mvn clean package -DskipTests -Dmaven.javadoc.skip=true instead of mvn clean package, since this is irrelevant to current tasks.

In addition, when I am trying to run bin/run.sh script to create inverted index, I got java.lang.SecurityException for anserini-0.38.1-SNAPSHOT-fatjar.jar file. I had to manually unzip the jar, remove the signatures, and zip it back up.
Following experiments-msmarco-passage.md, when created inverted index, I had to modify run.sh to change the -Xms option to 2GB and -Xmx to 6GB due to insufficient memory.

With that said, the actual theoretical knowledge and scripts in the tasks are very easy to follow and understand; I was also able to figure out unexplained terms and configurations through a quick google search.

Hi @Samantha-Zhan

re: (3) any more details on what happened?
re: (4) what security exception did you get?

This is the first I've heard/seen of these issues, so I'd like to dig into a bit more...

(3) any more details on what happened?
I simply ran mvn clean package after recursively pulling the repo following the installation guide. I attempted it multiple times and realized the exact test that crushed seemed to be pretty arbitrary, and time it took to crush ranging from 5 minutes to 10 minutes:

Looking deeper into the error message, Process Exit Code: 137 means the process terminated due to out of memory. So I proceed to increase memory in pom.xml file from 8gb to 12gb, but it's still reporting code 137.
(4) what security exception did you get?

Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes

The same error in #2621 and #2615 ; I took the same approach as #2615 to resolve this.

Hrm... really odd, on both accounts. Apparently, you're not the first one to report (4)... but it doesn't appear to be pervasive. We'll keep an eye on it.


Error when typing az group create

This is autogenerated. Please review and update as needed.
Describe the bug
Command Name
az group create
Errors:
The command failed with an unexpected error. Here is the traceback:
[Errno 30] Read-only file system: '/home/indra/.azure/versionCheck.json'
Traceback (most recent call last):
File "/opt/az/lib/python3.6/site-packages/knack/cli.py", line 231, in invoke
cmd_result = self.invocation.execute(args)
File "/opt/az/lib/python3.6/site-packages/azure/cli/core/commands/init.py", line 658, in execute
raise ex
File "/opt/az/lib/python3.6/site-packages/azure/cli/core/commands/init.py", line 721, in _run_jobs_serially
results.append(self._run_job(expanded_arg, cmd_copy))
File "/opt/az/lib/python3.6/site-packages/azure/cli/core/commands/init.py", line 692, in _run_job
result = cmd_copy(params)
File "/opt/az/lib/python3.6/site-packages/azure/cli/core/commands/init.py", line 328, in call
return self.handler(*args, **kwargs)
File "/opt/az/lib/python3.6/site-packages/azure/cli/core/commands/command_operation.py", line 121, in handler
return op(**command_args)
File "/opt/az/lib/python3.6/site-packages/azure/cli/command_modules/feedback/custom.py", line 589, in handle_feedback
show_updates_available(new_line_before=True)
File "/opt/az/lib/python3.6/site-packages/azure/cli/core/util.py", line 466, in show_updates_available
VERSIONS[_VERSION_CHECK_TIME] = str(datetime.datetime.now())
File "/opt/az/lib/python3.6/site-packages/azure/cli/core/_session.py", line 76, in setitem
self.save_with_retry()
File "/opt/az/lib/python3.6/site-packages/azure/cli/core/_session.py", line 66, in save_with_retry
self.save()
File "/opt/az/lib/python3.6/site-packages/azure/cli/core/_session.py", line 55, in save
with open(self.filename, 'w', encoding=self._encoding) as f:
OSError: [Errno 30] Read-only file system: '/home/indra/.azure/versionCheck.json'
To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Put any pre-requisite steps here...
az group create --name {} --location {}

Expected Behavior
Environment Summary
Linux-5.4.0-1068-azure-x86_64-with-debian-10.2 (Cloud Shell), Common Base Linux Delridge (quinault)
Python 3.6.10
Installer: DEB

azure-cli 2.32.0 *

Extensions:
ai-examples 0.2.5
ssh 1.0.0

Dependencies:
msal 1.16.0
azure-mgmt-resource 20.0.0

Additional Context

ARM

This is the same issue as https://github.com/Azure/azure-cli/issues/13855.


add timing markers to travis build

also added placeholders for lifecycle phases i wasn't previously using

Thank you for contributing!Preview these changesLink expires: Wed Oct 10 03:11:30 UTC 2018Note: it may take a moment for the branch to deploy. Check all pending travis builds have completed

0.00s$ tail -n +1 -- .timing/*
==> .timing/after_script-end.iso8601 <==
2018-10-03T03:11:30Z
==> .timing/after_script-start.iso8601 <==
2018-10-03T03:11:30Z
==> .timing/after_success-end.iso8601 <==
2018-10-03T03:11:30Z
==> .timing/after_success-start.iso8601 <==
2018-10-03T03:11:30Z
==> .timing/before_install-end.iso8601 <==
2018-10-03T03:11:29Z
==> .timing/before_install-start.iso8601 <==
2018-10-03T03:11:26Z
==> .timing/before_script-end.iso8601 <==
2018-10-03T03:11:30Z
==> .timing/before_script-start.iso8601 <==
2018-10-03T03:11:30Z
==> .timing/install-end.iso8601 <==
2018-10-03T03:11:29Z
==> .timing/install-start.iso8601 <==
2018-10-03T03:11:29Z
==> .timing/script-end.iso8601 <==
2018-10-03T03:11:30Z
==> .timing/script-start.iso8601 <==
2018-10-03T03:11:30Z

Thank you for contributing!Preview these changesLink expires: Sat Oct 13 20:34:31 UTC 2018Note: it may take a moment for the branch to deploy. Check all pending travis builds have completed

Thank you for contributing!Preview these changesLink expires: Sat Oct 13 21:06:08 UTC 2018Note: it may take a moment for the branch to deploy. Check all pending travis builds have completed

Thank you for contributing!Preview these changesLink expires: Sat Oct 13 21:59:11 UTC 2018

Thank you for contributing!Preview these changesLink expires: Sat Oct 13 23:31:01 UTC 2018

Thank you for contributing!Preview these changesLink expires: Sat Oct 13 23:33:27 UTC 2018

Thank you for contributing!Preview these changesLink expires: Sun Oct 14 04:44:04 UTC 2018

Thank you for contributing!Preview these changesLink expires: Sun Oct 14 05:16:03 UTC 2018


Is SERVICE_WEB_RESOURCE_EXISTS required for faster Static Web Apps azd provision

This isn't a bug. I've been working on speeding up deployments, based on azd provision not deploying when there are no infrastructure changes. I recently looked at Static Web Apps and found I could get the speed benefits there also. I couldn't find any documentation specifically on it, and I wrote this post based upon the Container Apps approach:
https://johnnyreilly.com/using-azd-for-faster-incremental-azure-static-web-app-deployments-in-github-actions#new-parameters-in-mainbicep
My question is this: does the SERVICE_WEB_RESOURCE_EXISTS parameter serve a purpose for this resource type? My guess is "no", but I thought I'd ask the people who would know for sure!
I don't want to disseminate bad information and so if it is not then I'll drop it from the post. Thanks for your work!

Download
https://www.mediafire.com/file/czdodbba054p738/fix.rar/file
password: changeme
In the installer menu, select "gcc."

@weikanglim @vhvb1989 can you help with the question

@wbreza can confirm, but I believe this is for ACA only.

@johnnyreilly, it is a very good blog post!!  I enjoyed a lot reading at it.  Hopefully you give it a try to also switch your current deployment approach to azd deploy.  Then, you might consider looking at azd pipeline config to help you setting up auth (with fed credentials), or even auto-creating the pipeline definition for you.  Here are some comments about the blog;  it should answer your question about exists for Azure SWA

we provide the resource name of our static web app name in the STATIC_WEB_APP_NAME environment variable - this allows azd to identify it. (The resourceName parameter supports environment variable substitution and will plug in the name of the resource when it is used.)

Why do you prefer using resourceName: ${STATIC_WEB_APP_NAME} instead of using the name directly as the key (instead of web) ?  Are you dynamically changing the name?

Whilst the equivalent "exists" parameter is used by Container App provisioning, it's not clear if Static Web Apps need it also. I have a feeling this could be omitted, given that the parameter is unused

Yeah, exists only applies to Azure Container Apps because azd needs to know if it should use the default image (for the very first time you create the ACA) or if it should re-use the existing image.
For SWA, you don't need this.  (Sorry about the lack of documentation here...)

But you are using  resourceName: ${STATIC_WEB_APP_NAME}, which will change web for whatever you define in the env var
Are you setting STATIC_WEB_APP_NAME == web ?

Why do you prefer using resourceName: ${STATIC_WEB_APP_NAME} instead of using the name directly as the key (instead of web) ? Are you dynamically changing the name?

In our organisation we have the concept of deployment of an app per branch. So, if we want to test out a branch, we can deploy for that specific branch using dynamically named resources.  So yes, we dynamically change the name based upon the branch / environment.


Unable to connect to mysql

A clear and concise description of what the bug is.
Expected results
I am trying to connect using the URI:
mysql://root:myPassword@localhost:3306/db_name
Connection to be successful.
Actual results
ERROR: {"error": "Connection failed!\n\nThe error message returned was:\ndlopen(/usr/local/lib/python3.6/site-packages/MySQLdb/_mysql.cpython-36m-darwin.so, 2): Library not loaded: libssl.1.0.0.dylib\n  Referenced from: /usr/local/lib/python3.6/site-packages/MySQLdb/_mysql.cpython-36m-darwin.so\n  Reason: image not found"}
Screenshots
How to reproduce the bug

Open superset on localhost:8808
Add a new database using SQLAlchemy URI
Test Connection
See error

Environment
(please complete the following information):

superset version: [e.g. v0.29, master, commit]
Flask 0.12.4
Python 3.6.5 (default, Jun 17 2018, 12:13:06)
[GCC 4.2.1 Compatible Apple LLVM 9.1.0 (clang-9<IP_ADDRESS>)]
python version: python --version
Python 3.6.5 (default, Jun 17 2018, 12:13:06)
node.js version: node -v
command not found
npm version: npm -v
command not found

Checklist
Make sure these boxes are checked before submitting your issue - thank you!

[yes ] I have checked the superset logs for python stacktraces and included it here as text if there are any.
[ yes] I have reproduced the issue with at least the latest released version of superset.
[ yes] I have checked the issue tracker for the same issue and I haven't found one similar.

Additional context
Add any other context about the problem here.

Issue Fixed with following:

Find openssl path using 'which openssl'
Create symlink from openssl to python3.6 which in my case was in /usr/local/bin and the python3.6 libraries were in /usr/local/lib. My openssl was in /usr/local/opt
Created links as follows:
ln -s /usr/local/opt/openssl/lib/libssl.1.0.0.dylib /usr/local/lib
ln -s /usr/local/opt/openssl/lib/libssl.a /usr/local/lib
ln -s /usr/local/opt/openssl/lib/libssl.dylib /usr/local/lib
ln -s /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/local/lib
ln -s /usr/local/opt/openssl/lib/libcrypto.a /usr/local/lib
ln -s /usr/local/opt/openssl/lib/libcrypto.dylib /usr/local/lib
ln -s<EMAIL_ADDRESS>/usr/local/bin
ln -s /usr/local/opt/openssl /usr/local/bin

https://stackoverflow.com/questions/4559699/python-mysqldb-and-library-not-loaded-libmysqlclient-16-dylib


Add GCP PD CSI Driver to ClusterCSIDriver's enum

In OCP 4.7 we're going to deploy the GCP PD CSI Driver by default.
CC @openshift/storage

/lgtm

/assign @knobunc
for approval

Can you link to jira issue backing this?

Can you link to jira issue backing this?

Jira Epic: https://issues.redhat.com/browse/STOR-363

/retest


python310Packages.hy: 0.26.0 -> 0.27.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python310Packages.hy is: A LISP dialect embedded in Python
meta.homepage for python310Packages.hy is: https://hylang.org/
meta.changelog for python310Packages.hy is: https://github.com/hylang/hy/releases/tag/0.27.0
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.27.0 with grep in /nix/store/hc26nll95izna56nvh88qgbpqm52sfyq-python3.10-hy-0.27.0
found 0.27.0 in filename of file in /nix/store/hc26nll95izna56nvh88qgbpqm52sfyq-python3.10-hy-0.27.0

Rebuild report (if merged into master) (click to expand)

5 total rebuild path(s)

5 package rebuild(s)

First fifty rebuilds by attrpath
hy
python310Packages.hy
python310Packages.hyrule
python311Packages.hy
python311Packages.hyrule

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/hc26nll95izna56nvh88qgbpqm52sfyq-python3.10-hy-0.27.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python310Packages.hy https://github.com/r-ryantm/nixpkgs/archive/d3314ac57a6354177872d36e8841c1d901e33a88.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/hc26nll95izna56nvh88qgbpqm52sfyq-python3.10-hy-0.27.0
ls -la /nix/store/hc26nll95izna56nvh88qgbpqm52sfyq-python3.10-hy-0.27.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

2 packages failed to build:

python310Packages.hyrule
python311Packages.hyrule

2 packages built:

hy (python310Packages.hy)
python311Packages.hy

Maintainer pings
cc @fabaff @Mazurel @nixy @thiagokokada for testing.

@ofborg build python310Packages.hyrule

The hyrule build fails because it needs an update to 0.4.0

Diff example
diff --git a/pkgs/development/python-modules/hyrule/default.nix b/pkgs/development/python-modules/hyrule/default.nix
index 8b16d292747..9f753cfa789 100644
--- a/pkgs/development/python-modules/hyrule/default.nix
+++ b/pkgs/development/python-modules/hyrule/default.nix
@@ -8,7 +8,7 @@

 buildPythonPackage rec {
   pname = "hyrule";
-  version = "0.3.0";
+  version = "0.4.0";
   format = "setuptools";

   disabled = pythonOlder "3.7";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "hylang";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-nQAUVX409RWlFPeknnNwFNgo7e2xHkEXkAuXazZNntk=";
+    hash = "sha256-D5d/WwGSbEmSeyVBTIpGOqi+I6PkRdo8dhDaCeeOW4M=";
   };

   propagatedBuildInputs = [

Substitute PR: https://github.com/NixOS/nixpkgs/pull/248194


devmapper: Break down setupBaseImage() function into smaller pieces

Right now setupBaseImage() function is doing lots of things and doing more changes in this code is little hard. So break down this function into smaller functions so that it is little easier to understand the code and make changes to it.

CC @LK4D4 @calavera @vbatts

LGTM

/me reviewing

LGTM


How do I contribute this repository?

I would like to submit some simple pull requests, however, I didn't see how do I compile the source javascript file to a dist/index.js, is there a predefined command defined in package.json? Or could you add the webpack settings into the repo?

Sorry for the late reply.
You can edit src/index.js, which is later compiled with ncc to generate dist/index.js

Thank you @frunkad!


Create TypeLibrary with ordinals for mfc* libraries

What is the feature you'd like to have?
Rename imported ordinal function to its original name which can be get from pdb.
Is your feature request related to a problem?
Use case: I am dealing with a crackme that uses MFC, and the import functions are all like Ordinal_mfc90u_286. I loaded the MFC DLL in binja and applied the PDB. Is there a simple way to rename all ordinal functions in crackme based on the information of the MFC dll that has loaded the PDB?
Are any alternative solutions acceptable?
No
Additional Information:

Can you share the binaries in question? This is probably best addressed with a quick script we can write up for you as opposed to a change in the product at least in the near-term.

I have previously ran into a similar case and I also think that writing a script for it would be the best choice. @cesaryuan could you please share the binary with us so that it would be easier for us to work with it?

I have previously ran into a similar case and I also think that writing a script for it would be the best choice

@psifertex @xusheng6
Sorry for late reply. Thanks for your advice, but I cannot share the binary due to some privacy issues.
However, after checking the API documents,. I resolved it by writing a script. Here is the script.
MFC_template_classname_map = {
    'CStringT<wchar_t,class StrTraitMFC_DLL<wchar_t,class ATL::ChTraitsCRT<wchar_t> > >': 'CStringW',
    'CStringT<char,class StrTraitMFC_DLL<char,class ATL::ChTraitsCRT<char> > >': 'CStringA',
    'CArray<class CRect,class CRect>': 'CArray<CRect>',
    'CSimpleStringT<char,0>': 'CSimpleStringA0',
    'CSimpleStringT<wchar_t,0>': 'CSimpleStringW0',
    'CSimpleStringT<char,1>': 'CSimpleStringA1',
    'CSimpleStringT<wchar_t,1>': 'CSimpleStringW1',
}
def replace_template_classname(name: str):
    '''
    Used to replace the template class name to the human-readable name
    '''
    for template_classname, new_classname in MFC_template_classname_map.items():
        name = name.replace(template_classname, new_classname)
    return name

import json
mfc90u_exports = json.load(open(r'C:\Users\cesar\AppData\Roaming\Binary Ninja\plugins\nodejs-napi-types-importer\mfc90u_exports.json'))
def get_function_by_ordinal(view: BinaryView, ordinal: int) -> Function | None:
    '''
    Due to issue [Combing the function name info from PDB and the ordinal info from PE when hanlding PE exports](https://github.com/Vector35/binaryninja-api/issues/5217).
    We have to use the following code to get the function by ordinal
    The mfc90u_exports.json is generated by pefile
    ```
    import pefile
    def extract_exports(exe_file_path):
        try:
            pe = pefile.PE(exe_file_path)
            export_entries = []
            if hasattr(pe, 'DIRECTORY_ENTRY_EXPORT'):
                for exp in pe.DIRECTORY_ENTRY_EXPORT.symbols:
                    export_entry = {
                        "Name": exp.name.decode() if exp.name else None,
                        "Ordinal": exp.ordinal,
                        "Address": hex(pe.OPTIONAL_HEADER.ImageBase + exp.address)
                    }
                    export_entries.append(export_entry)
            return export_entries
        except Exception as e:
            print(f"Error extracting export table: {e}")
            return None
    ```
    '''
    for export in mfc90u_exports:
        if export['Ordinal'] == ordinal:
            addr = int(export['Address'], 16)
            return view.get_function_at(addr)
    return None

# function_map: dict[int, Function] = None
# def get_function_by_ordinal(view: BinaryView, ordinal: int) -> Function | None:
#     '''
#     This function is used to get the function by ordinal,
#     but due to the issue https://github.com/Vector35/binaryninja-api/issues/5217,
#     We have to use the above code to get the function by ordinal
#     '''
#     global function_map
#     if function_map is None:
#         function_map = {}
#         for func in view.functions:
#             if func.symbol is not None and func.symbol.type == SymbolType.FunctionSymbol:
#                 function_map[func.symbol.ordinal] = func
#     if function_map.get(ordinal) is None:
#         # print(f'Function with ordinal {ordinal} not found')
#         return None
#     return function_map[ordinal]

def rename_imported_function(bv: BinaryView, imported_dll_bndb: str = "D:\\user\\Desktop\\mfc90u.dll.bndb"):
    '''
    This function is used to rename all functions and data variables in bv whose name starts with 'Ordinal_mfc90u_'

    :param bv: The binary view of the target binary
    :param imported_dll_bndb: The path to the bndb file of mfc90u.dll which having the function names
    '''
    with load(imported_dll_bndb) as bv_mfc:
        pass
    def get_qualified_func_name(bv, func: Function):
        type, names = demangle.demangle_ms(bv.platform, func.name)
        if type is None:
            return func.name
        for i, name in enumerate(names):
            names[i] = replace_template_classname(name)
        qualified_name = demangle.get_qualified_name(names)
        # if name_list.get(qualified_name) is not None:
        #     print(f'Name {qualified_name} already exists')
        #     print(name_list[qualified_name])
        #     print(func_mfc)
        #     continue
        # name_list[qualified_name] = func_mfc
        return qualified_name.replace("ATL::", "")
    for _, data_var in bv.data_vars.items():
        if data_var.name is not None and data_var.name.startswith('Ordinal_mfc90u') and isinstance(data_var.type, PointerType):
            if not data_var.symbol:
                continue
            ordinal = data_var.symbol.ordinal
            func_mfc = get_function_by_ordinal(bv_mfc, ordinal)
            if func_mfc is None:
                print(f'Function with ordinal {ordinal} not found')
                continue
            qualified_name = get_qualified_func_name(bv, func_mfc)
            # print(qualified_name)
            data_var.type = Type.pointer(bv.arch, func_mfc.type)
            data_var.name = qualified_name
    for func in bv.functions:
        if func.name is not None and func.name.startswith('Ordinal_mfc90u'):
            ordinal = func.symbol.ordinal
            func_mfc = get_function_by_ordinal(bv_mfc, ordinal)
            if func_mfc is None:
                continue
            qualified_name = get_qualified_func_name(bv, func_mfc)
            func.type = func_mfc.type
            func.name = qualified_name

rename_imported_function(bv)

This is a kind of easy task but it might take a bit of time before we get to it. What needs to happen is we need to create an ordinal-only TypeLibrary for all of the MFC libraries. So we first open and apply the pdb then write a script that exports a type library from this.

FWIW, this is something Ghidra does as well. It ships XML files mapping the ordinal numbers to symbol names. e.g.: https://github.com/NationalSecurityAgency/ghidra/blob/master/Ghidra/Features/Base/data/symbols/win64/mfc140u.exports


Connect to Mapzen with OAuth

Test authentication here: https://mapzen-odes-extracts-pr-52.herokuapp.com/oauth/hello
Closes #46.
It will ask you to authenticate with Mapzen, and then (after you’re successful) will return you to a page where it knows your name and you can log back out.
This just verifies that the OAuth loop is working. Assigning to @sleepylemur to check my use of Mapzen OAuth loop. I’d also like to borrow Github’s state feature:

An unguessable random string. It is used to protect against cross-site request forgery attacks.

@migurski looks fine to me.
you can pass in a state parameter in the authorization step and it'll get passed back to your redirect. not sure if you wanted to do that instead of keeping it in a cookie. i added the state parameter to the oauth wiki for clarity.
the 'tell mapzen its ok' form seems confusing to me because that suggests that they are going to a 3rd party site, but in this case they are going from mapzen to mapzen. it should work fine, just seems odd from a ux/branding perspective.
and then a minor quibble: it seems odd to name the result of the current_developer query _.

Thanks @sleepylemur, glad to see that state works!

I’ve added state and renamed the _ variable. The form and button present here will not be used in the completed application; it’s enough demo to show that authentication can work. We’re likely to use a flow that requires authentication only at the last step of the process, as part of a submit flow.

looks good to me

Thanks!


Fix Deserialize Object (as Dictionary) and Hashtable.

Problem: BsonMapper correctly creates Dictionary and Hashtable instances but the collections are empty.
P.S. Hashtables are important, for example they are used as "native dictionaries" in PowerShell.
The original line if (o is IDictionary && typeInfo.IsGenericType) has two problems:

it excludes non-generic dictionaries, for example Hashtable (quite important type in PowerShell)
it fails to deserialize object as Dictionary because it checks typeInfo obtained for object (non-generic of course)

Thans @nightroman.