[cloud_firestore_web] Crashes on load when not using default firebase app

Description
The Readme for cloud firestore, and other FlutterFire plugins that support the web, indicate that you can either setup the FirebaseApp in index.html, or in Dart using package:firebase_core methods.
However, cloud_firestore_web crashes on application load when a default app has not been initialised in index.html. From what I can see, this is because the implementation of cloud_firestore_web tries to access the default firebase app when it is constructed as part of plugin registration. Since web plugin registration runs before the main() function of the Flutter app this means there is no chance to register a firebase app before the crash occurs.
The specific use case in which I encountered this issue was using different firebase projects for dev/test/production environments. Each environment has its own main.dart that supplies the Firebase settings. This works fine when used with firebase_auth_web for example.
To Reproduce
Steps to reproduce the behavior:

See modified example project here from the cloud firestore packag , with only change made being to comment-out the firebaseApp initialization in index.html. The FirebaseApp configuration in main.dart is still present.
Run the example app for web flutter run -d chrome.
App fails to load with the following error:

FirebaseError: Firebase: No Firebase App '[DEFAULT]' has been created - call Firebase App.initializeApp() (app/no-app).
    at Object.p [as app] (https://www.gstatic.com/firebasejs/7.5.0/firebase-app.js:1:10100)
    at Object.app$ [as app] (http://localhost:56586/packages/firebase/src/top_level.dart.lib.js:72:56)
    at new cloud_firestore_web.FirestoreWeb.new (http://localhost:56586/packages/cloud_firestore_web/src/write_batch_web.dart.lib.js:793:57)
    at Function.registerWith (http://localhost:56586/packages/cloud_firestore_web/src/write_batch_web.dart.lib.js:738:71)
    at Object.registerPlugins (http://localhost:56586/packages/firestore_example/generated_plugin_registrant.dart.lib.js:13:38)
    at main$ (http://localhost:56586/web_entrypoint.dart.lib.js:15:35)
    at main$.next (<anonymous>)
    at runBody (http://localhost:56586/dart_sdk.js:43121:34)
    at Object._async [as async] (http://localhost:56586/dart_sdk.js:43149:7)
    at main$ (http://localhost:56586/web_entrypoint.dart.lib.js:14:18)
    at <anonymous>:1:8
    at Object.runMain (http://localhost:56586/dwds/src/injected/client.js:8319:15)
    at http://localhost:56586/dwds/src/injected/client.js:22326:19
    at _wrapJsFunctionForAsync_closure.$protected (http://localhost:56586/dwds/src/injected/client.js:3636:15)
    at _wrapJsFunctionForAsync_closure.call$2 (http://localhost:56586/dwds/src/injected/client.js:10827:12)
    at Object._asyncStartSync (http://localhost:56586/dwds/src/injected/client.js:3600:20)
    at main__closure1.$call$body$main__closure (http://localhost:56586/dwds/src/injected/client.js:22338:16)
    at main__closure1.call$1 (http://localhost:56586/dwds/src/injected/client.js:22270:19)
    at StaticClosure._rootRunUnary [as call$2$5] (http://localhost:56586/dwds/src/injected/client.js:3958:16)
    at _CustomZone.runUnary$2$2 (http://localhost:56586/dwds/src/injected/client.js:12137:125)
    at _CustomZone.runUnaryGuarded$1$2 (http://localhost:56586/dwds/src/injected/client.js:12065:14)
    at _ControllerSubscription._sendData$1 (http://localhost:56586/dwds/src/injected/client.js:11621:19)
    at _DelayedData.perform$1 (http://localhost:56586/dwds/src/injected/client.js:11775:59)
    at _PendingEvents_schedule_closure.call$0 (http://localhost:56586/dwds/src/injected/client.js:11824:14)
    at Object._microtaskLoop (http://localhost:56586/dwds/src/injected/client.js:3801:21)
    at StaticClosure._startMicrotaskLoop (http://localhost:56586/dwds/src/injected/client.js:3807:11)
    at _AsyncRun__initializeScheduleImmediate_internalCallback.call$1 (http://localhost:56586/dwds/src/injected/client.js:10699:9)
    at invokeClosure (http://localhost:56586/dwds/src/injected/client.js:1172:26)
    at MutationObserver.<anonymous> (http://localhost:56586/dwds/src/injected/client.js:1191:18)

Expected behavior
A clear and concise description of what you expected to happen.
Additional context

Flutter Doctor
[√] Flutter (Channel dev, v1.18.0-dev.5.0, on Microsoft Windows [Version 10.0.18362.778], locale en-AU)
    • Flutter version 1.18.0-dev.5.0 at C:\flutter
    • Framework revision 7f56b53de4 (3 days ago), 2020-04-12 12:00:01 -0400
    • Engine revision beb8a7ec48
    • Dart version 2.8.0 (build 2.8.0-dev.20.0 89b0f67261)

[√] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at C:\Users\t\AppData\Local\Android\sdk
    • Platform android-29, build-tools 28.0.3
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[√] Android Studio (version 3.6)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin version 41.1.2
    • Dart plugin version 191.8593
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)

[√] VS Code (version 1.44.0)
    • VS Code at C:\Users\t\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.9.1

[√] Connected device (3 available)
    • Android SDK built for x86 • emulator-5554 • android-x86    • Android 8.0.0 (API 26) (emulator)
    • Chrome                    • chrome        • web-javascript • Google Chrome 80.0.3987.163
    • Web Server                • web-server    • web-javascript • Flutter Tools

• No issues found!

Flutter run -v
flutter run -d chrome -v
[  +27 ms] executing: [C:\flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[  +86 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[   +1 ms] 7f56b53de4e5da2147c4d30d857a72c6f2e4f42f
[        ] executing: [C:\flutter/] git describe --match *.*.* --first-parent --long --tags
[  +66 ms] Exit code 0 from: git describe --match *.*.* --first-parent --long --tags
[        ] 1.18.0-dev.5.0-0-g7f56b53de
[  +11 ms] executing: [C:\flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[  +68 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/dev
[        ] executing: [C:\flutter/] git ls-remote --get-url origin
[  +54 ms] Exit code 0 from: git ls-remote --get-url origin
[   +2 ms] https://github.com/flutter/flutter.git
[  +98 ms] executing: [C:\flutter/] git rev-parse --abbrev-ref HEAD
[  +52 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] dev
[  +67 ms] Artifact Instance of 'AndroidMavenArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[  +19 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +19 ms] executing: C:\Users\t\AppData\Local\Android\sdk\platform-tools\adb.exe devices -l
[  +46 ms] List of devices attached
           emulator-5554          device product:sdk_gphone_x86 model:Android_SDK_built_for_x86 device:generic_x86 transport_id:2
[   +9 ms] Artifact Instance of 'AndroidMavenArtifacts' is not required, skipping update.
[  +18 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[   +3 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +85 ms] Found plugin cloud_firestore at C:\git\flutterfire-buntagonalprism\packages\cloud_firestore\cloud_firestore\
[   +9 ms] Found plugin cloud_firestore_web at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\cloud_firestore_web-0.1.1+2\
[  +24 ms] Found plugin e2e at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\e2e-0.2.4+4\
[   +8 ms] Found plugin firebase_core at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\firebase_core-0.4.4+3\
[  +22 ms] Found plugin firebase_core_web at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\firebase_core_web-0.1.1+2\
[ +117 ms] Found plugin cloud_firestore at C:\git\flutterfire-buntagonalprism\packages\cloud_firestore\cloud_firestore\
[   +4 ms] Found plugin cloud_firestore_web at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\cloud_firestore_web-0.1.1+2\
[  +30 ms] Found plugin e2e at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\e2e-0.2.4+4\
[   +3 ms] Found plugin firebase_core at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\firebase_core-0.4.4+3\
[   +4 ms] Found plugin firebase_core_web at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\firebase_core_web-0.1.1+2\
[ +110 ms] Generating C:\git\flutterfire-buntagonalprism\packages\cloud_firestore\cloud_firestore\example\android\app\src\main\java\io\flutter\plugins\GeneratedPluginRegistrant.java
[ +101 ms] Launching lib\main.dart on Chrome in debug mode...
[  +96 ms] Updating assets
[ +132 ms] Syncing files to device Chrome...
[   +9 ms] Found plugin cloud_firestore at C:\git\flutterfire-buntagonalprism\packages\cloud_firestore\cloud_firestore\
[  +20 ms] Found plugin cloud_firestore_web at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\cloud_firestore_web-0.1.1+2\
[   +4 ms] Found plugin e2e at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\e2e-0.2.4+4\
[   +2 ms] Found plugin firebase_core at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\firebase_core-0.4.4+3\
[   +1 ms] Found plugin firebase_core_web at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\firebase_core_web-0.1.1+2\
[  +36 ms] Found plugin cloud_firestore at C:\git\flutterfire-buntagonalprism\packages\cloud_firestore\cloud_firestore\
[   +2 ms] Found plugin cloud_firestore_web at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\cloud_firestore_web-0.1.1+2\
[  +27 ms] Found plugin e2e at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\e2e-0.2.4+4\
[   +2 ms] Found plugin firebase_core at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\firebase_core-0.4.4+3\
[  +28 ms] Found plugin firebase_core_web at C:\Users\t\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\firebase_core_web-0.1.1+2\
[  +36 ms] Generating C:\git\flutterfire-buntagonalprism\packages\cloud_firestore\cloud_firestore\example\android\app\src\main\java\io\flutter\plugins\GeneratedPluginRegistrant.java
[  +40 ms] <- reset
[  +31 ms] C:\flutter\bin\cache\dart-sdk\bin\dart.exe C:\flutter\bin\cache\artifacts\engine\windows-x64\frontend_server.dart.snapshot --sdk-root C:\flutter\bin\cache\flutter_web_sdk/ --incremental --target=dartdevc --debugger-module-names
-Ddart.developer.causal_async_stacks=true --output-dill C:\Users\t\AppData\Local\Temp\flutter_tool.edbd8d13-7f8c-11ea-8169-bc5ff4756d18\app.dill --libraries-spec file:///C:/flutter/bin/cache/flutter_web_sdk/libraries.json --packages
C:\git\flutterfire-buntagonalprism\packages\cloud_firestore\cloud_firestore\example\.packages -Ddart.vm.profile=false -Ddart.vm.product=false
--bytecode-options=source-positions,local-var-info,debugger-stops,instance-field-initializers,keep-unreachable-code,avoid-closure-call-instructions --enable-asserts --track-widget-creation --filesystem-root
C:\Users\t\AppData\Local\Temp\flutter_tools.edbd8d14-7f8c-11ea-8169-bc5ff4756d18 --filesystem-scheme org-dartlang-app --initialize-from-dill build\cache.dill --platform file:///C:/flutter/bin/cache/flutter_web_sdk/kernel/flutter_ddc_sdk.dill
[  +31 ms] <- compile org-dartlang-app:///web_entrypoint.dart
[+20174 ms] Syncing files to device Chrome... (completed in 20,440ms, longer than expected)
[   +3 ms] Synced 22.8MB.
[   +1 ms] <- accept
[ +266 ms] [CHROME]:
[   +2 ms] [CHROME]:DevTools listening on ws://<IP_ADDRESS>:56986/devtools/browser/6ec2c261-79ea-4175-b9b2-c9ce28a41b11
[+6844 ms] Debug service listening on ws://<IP_ADDRESS>:57027/K-sKMrN7qg4=

[ +359 ms] Debug service listening on ws://<IP_ADDRESS>:57027/K-sKMrN7qg4=
[   +2 ms] Warning: Flutter's support for web development is not stable yet and hasn't
[   +1 ms] been thoroughly tested in production environments.
[        ] For more information see https://flutter.dev/web
[   +2 ms]   To hot restart changes while running, press "r". To hot restart (and refresh the browser), press "R".
[  +44 ms] For a more detailed help message, press "h". To quit, press "q".
[  +86 ms] FirebaseError: Firebase: No Firebase App '[DEFAULT]' has been created - call Firebase App.initializeApp() (app/no-app).
               at Object.p [as app] (https://www.gstatic.com/firebasejs/7.5.0/firebase-app.js:1:10100)
               at Object.app$ [as app] (http://localhost:56952/packages/firebase/src/top_level.dart.lib.js:72:56)
               at new cloud_firestore_web.FirestoreWeb.new (http://localhost:56952/packages/cloud_firestore_web/src/write_batch_web.dart.lib.js:793:57)
               at Function.registerWith (http://localhost:56952/packages/cloud_firestore_web/src/write_batch_web.dart.lib.js:738:71)
               at Object.registerPlugins (http://localhost:56952/packages/firestore_example/generated_plugin_registrant.dart.lib.js:13:38)
               at main$ (http://localhost:56952/web_entrypoint.dart.lib.js:15:35)
               at main$.next (<anonymous>)
               at runBody (http://localhost:56952/dart_sdk.js:43121:34)
               at Object._async [as async] (http://localhost:56952/dart_sdk.js:43149:7)
               at main$ (http://localhost:56952/web_entrypoint.dart.lib.js:14:18)
               at <anonymous>:1:8
               at Object.runMain (http://localhost:56952/dwds/src/injected/client.js:8319:15)
               at http://localhost:56952/dwds/src/injected/client.js:22326:19
               at _wrapJsFunctionForAsync_closure.$protected (http://localhost:56952/dwds/src/injected/client.js:3636:15)
               at _wrapJsFunctionForAsync_closure.call$2 (http://localhost:56952/dwds/src/injected/client.js:10827:12)
               at Object._asyncStartSync (http://localhost:56952/dwds/src/injected/client.js:3600:20)
               at main__closure1.$call$body$main__closure (http://localhost:56952/dwds/src/injected/client.js:22338:16)
               at main__closure1.call$1 (http://localhost:56952/dwds/src/injected/client.js:22270:19)
               at StaticClosure._rootRunUnary [as call$2$5] (http://localhost:56952/dwds/src/injected/client.js:3958:16)
               at _CustomZone.runUnary$2$2 (http://localhost:56952/dwds/src/injected/client.js:12137:125)
               at _CustomZone.runUnaryGuarded$1$2 (http://localhost:56952/dwds/src/injected/client.js:12065:14)
               at _ControllerSubscription._sendData$1 (http://localhost:56952/dwds/src/injected/client.js:11621:19)
               at _DelayedData.perform$1 (http://localhost:56952/dwds/src/injected/client.js:11775:59)
               at _PendingEvents_schedule_closure.call$0 (http://localhost:56952/dwds/src/injected/client.js:11824:14)
               at Object._microtaskLoop (http://localhost:56952/dwds/src/injected/client.js:3801:21)
               at StaticClosure._startMicrotaskLoop (http://localhost:56952/dwds/src/injected/client.js:3807:11)
               at _AsyncRun__initializeScheduleImmediate_internalCallback.call$1 (http://localhost:56952/dwds/src/injected/client.js:10699:9)
               at invokeClosure (http://localhost:56952/dwds/src/injected/client.js:1172:26)
               at MutationObserver.<anonymous> (http://localhost:56952/dwds/src/injected/client.js:1191:18)

Hey, as part of our on-going work for #2582, this has been resolved in our Firebase Firestore rework (#2913) - which has now been merged into master. We'll look at publishing some prereleases in the next few days. Thank you


Getting error slices sortFunc usage

Hi Team,
Seems there is a issue slices package as it is supposed to return int we are returning bool need to have a fix for this.
Getting below error could you please help me fix the issue:
github.com/otterize/otterize-cli/src/pkg/intentsoutput
../../../../go/pkg/mod/github.com/otterize/otterize-cli@v1.0.5/src/pkg/intentsoutput/transform.go:65:27: type func(intenta v1alpha3.ClientIntents, intentb v1alpha3.ClientIntents) bool of func(intenta, intentb v1alpha3.ClientIntents) bool {…} does not match inferred type func(a v1alpha3.ClientIntents, b v1alpha3.ClientIntents) int for func(a E, b E) int
../../../../go/pkg/mod/github.com/otterize/otterize-cli@v1.0.5/src/pkg/intentsoutput/transform.go:77:45: type func(intenta v1alpha3.Intent, intentb v1alpha3.Intent) bool of func(intenta, intentb v1alpha3.Intent) bool {…} does not match inferred type func(a v1alpha3.Intent, b v1alpha3.Intent) int for func(a E, b E) int

Hey @pavanmt! This looks like a mismatch between our GitHub Actions Go version and the one in the go.mod. Will be fixed soon.


iter_lines gives different results depending on chunk_size

When using iter_lines with chunk_size other than None, it can generate an extra blank line if the end of a chunk lands on a delimiter.
Reproduction Steps
import StringIO
import requests

def getTestFile():
    f = StringIO.StringIO()
    f.write('a-b')
    f.seek(0)
    return f

r = requests.Response()
r.raw = getTestFile()
print [l for l in r.iter_lines(delimiter='-')]

r = requests.Response()
r.raw = getTestFile()
print [l for l in r.iter_lines(delimiter='-', chunk_size=2)]

Expected Result
['a', 'b']
['a', 'b']
Actual Result
['a', 'b']
['a', '', 'b']
Proposed Fix
I modified iter_lines as follows, and the above test passes:
    def iter_lines(self, chunk_size=ITER_CHUNK_SIZE, decode_unicode=None, delimiter=None):
        """Iterates over the response data, one line at a time.  When
        stream=True is set on the request, this avoids reading the
        content at once into memory for large responses.

        .. note:: This method is not reentrant safe.
        """

        pending = None

        for chunk in self.iter_content(chunk_size=chunk_size, decode_unicode=decode_unicode):

            if pending is not None:
                chunk = pending + chunk

            if delimiter:
                lines = chunk.split(delimiter)
            else:
                lines = chunk.splitlines()

            if lines and lines[-1] and chunk and lines[-1][-1] == chunk[-1]:
                pending = lines.pop()
            elif lines and lines[-1] == '':
                pending = lines.pop()
            else:
                pending = None

            for line in lines:
                yield line

        if pending is not None:
            yield pending

System Information
$ python -m requests.help

{
  "chardet": {
    "version": "3.0.3"
  },
  "cryptography": {
    "version": ""
  },
  "implementation": {
    "name": "CPython",
    "version": "2.7.13"
  },
  "platform": {
    "release": "16.6.0",
    "system": "Darwin"
  },
  "pyOpenSSL": {
    "openssl_version": "",
    "version": null
  },
  "requests": {
    "version": "2.17.3"
  },
  "system_ssl": {
    "version": "100020bf"
  },
  "urllib3": {
    "version": "1.21.1"
  },
  "using_pyopenssl": false
}

This command is only available on Requests v2.16.4 and greater. Otherwise,
please provide some basic information about your system (Python version,
operating system, &c).

Hey @a-p-f, thanks for putting together such a detailed issue. This is actually a duplicate of #3980 and addressed by #3984. This is a breaking change though, so it won't be available until 3.0.0 is released.
I'm going to close this out as a dupe, but please let us know if you have any further questions.

Sorry about that. I searched the issues for 'iter_lines', but I had the 'is:open' filter on so it didn't pop up.

No worries! 😄


https://try.gitea.io/ return 404

Description
Hi there again
Under "Purpose" of readme.md,
https://try.gitea.io/ is returning http 404 code
...

We don't have monitoring for the instance yet. It's online again.

That link works for me, temporary issue ?


use the copier to make Generic IOCs from this template

i.e. instead of just making a copy of this using github - use https://github.com/copier-org/copier.
This should follow the same pattern that Tingting has used on the successor to python-pip:

the root of the project is the copier CI and documentation
there is a template folder for the templated project (i.e. what this repo currently contains)
there is a sample project which is the result of the expanded template
CI does 3 steps

locally generate expanded template and make sure it renders OK, run some smoke tests inside it
update the example project and then verify that the result looks like the locally generated one
also verify that the example project CI passes

Probably best to look at  Tingting's project for the details.

This is now done


bug:  e2e test will fail randomly

Issue description
Because we test UDP route by using kube-dns as backend, we create route in kube-system namespace. But we run e2e in 2 nodes mode, as a result, when the UDP route case is executing, it will affect the accuracy of other cases, because the ingress controller in other cases will also get this UDP route.
This is why e2e failed this time: https://github.com/apache/apisix-ingress-controller/runs/4173189172?check_suite_focus=true

Good catch

So， I think we should not watch kube-system anywhere.

So， I think we should not watch kube-system anywhere.

Should only be watched in UDP case?

So， I think we should not watch kube-system anywhere.

Should only be watched in UDP case?

Yes, I think so.

I will fix this issue

It seems that the recent e2e is running relatively stable, and related PRs have also been merged, can we close this issue?

@nic-6443


Problem with Yajra Datatables?

I'm getting "[Symfony\Component\Debug\Exception\FatalErrorException]
Class 'yajra\Datatables\DatatablesServiceProvider' not found"
I could make the error go away by specifying 5 instead of 6 in composer:
"yajra/laravel-datatables-oracle": "~6.0"
Also, under /admin/menu/custom it looks like:
quickadmin::qa.menus-createCustom-create_new_custom_controller
This pattern appears throughout... Related? Did I miss a step when I installed?
Thanks!

Hello,
Sorry for this problem, somehow the package was initialized with lowercase letter at the beginning..
As for the second one, it could be due the fact that the installation was not a success and the system didn't copy the files to your installation. Please try to reinstall this package and tell me if the problem persists.
Have a nice day!


C language compiling

Hello,
It is not very clear how to compile C language code in the visual studio platform. Do I just open a C++ project and compile the C code? and how do I make my file with a .c extension when I want to share it?
Thank you!
Ron

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

ID: 0f6c6f6a-188a-7110-962c-89ff8e00eee9
Version Independent ID: ffa45840-7fbb-b9c2-0dd9-43eb95b760cc
Content: Install C and C++ support in Visual Studio
Content Source: docs/build/vscpp-step-0-installation.md
Product: visual-cpp
Technology: cpp-tools
GitHub Login: @corob-msft
Microsoft Alias: corob

Hi, @RonBarakBackal  -
The Microsoft compiler defaults to compiling code as C when a source file has a .c extension. You can force the compiler to compile all source files as C no matter what extension they have by using the /TC compiler option. The linked article includes information on how to set a Visual Studio project to compile code as C. Unfortunately, we don't have any project templates that create C projects automatically. So, the best approach is usually to create a C++ project, then set the Compile As C option in the project properties. You can rename the source files to have .c extensions in Visual Studio by right-clicking on them in Solution Explorer and choosing Rename. Either of these options is enough to compile the code as C, but using both makes it easier to add more files and be sure they'll still be compiled as C, too.

To compile C/C++ code in VSC you have to first download and then install mingw-w64-install.
Then there is C/C++ extension by Microsoft in VSC, The C/C++ extension adds language support for C/C++ to Visual Studio Code, including features such as IntelliSense and debugging. And then whenever you want to code in C/C++ you can use .c for C program file and .cpp for C++ program file.

We are in the process of moving away from GitHub issues for C++ documentation (we still accept pull requests). For details, please see Announcing a new way to give feedback on Microsoft Learn This issue will be closed after it is copied to an internal tracking system.


variables_style_rules.csv could use an update

The table of parameter names in the docs is a bit dusty and doesn't perfectly reflect today's pvlib.  To make it easier to figure out where the gaps are, here's a script that scans the package, finds the parameter names currently in use, and compares with that table:
import pvlib
import pandas as pd
from inspect import getmembers, isfunction, ismodule, signature
from collections import defaultdict

skip_modules = ['version', 'forecast', 'iotools', 'location', 'modelchain', 'tools']

def get_parameter_map():
    """
    Find all parameter names used in public pvlib functions
    """
    parameter_map = defaultdict(set)  # map parameter names to functions that use them

    for module_name, module in getmembers(pvlib, ismodule):
        if module_name in skip_modules or module_name.startswith("_"):
            continue
        for function_name, function in getmembers(module, isfunction):
            if function_name.startswith("_"):
                continue
            full_function_name = module_name + "." + function_name
            parameter_names = signature(function).parameters.keys()
            for parameter_name in parameter_names:
                parameter_map[parameter_name].add(full_function_name)

    return parameter_map

parameter_map = get_parameter_map()

# read the docs variable name table
url = 'https://raw.githubusercontent.com/pvlib/pvlib-python/master/pvlib/data/variables_style_rules.csv'
df = pd.read_csv(url, sep=';')
listed_names = set(df['variable'])
unlisted_names = set(parameter_map.keys()) - listed_names
print(unlisted_names)

unlisted_names has over 300 elements.  I think it makes sense to leave most of them out of the table, for example function-specific names like upper_line_length and u0, but a few of the unlisted ones are common enough to warrant inclusion, e.g. albedo.  It also shows a few inconsistencies like delta_t vs deltaT and poa_irradiance vs poa_global.
An idea, maybe a bad one:  once we've figured out which of the unlisted parameter names we don't want to include in the table, put them in an "ignore list" and create a CI check that performs the above scan to check for new parameter names that aren't in the table but maybe should be.

Add fill_factor to the description list, via #2046.

An idea, maybe a bad one: once we've figured out which of the unlisted parameter names we don't want to include in the table, put them in an "ignore list" and create a CI check that performs the above scan to check for new parameter names that aren't in the table but maybe should be.

I really dig this idea. Ensuring consistent naming is one place we're not doing great in and this would be a good help I think.

I understand this PR is talking about updating the user guide definitions with what is used in pvlib, but after running the script I also found there are multiple duplicate parameter names in slightly different forms, e.g. temp_mod identified by the script when we already have temp_module in the user guide. There are also inconsistencies between functions that refer to the same thing that may (or may not) already be defined in the user guide, e.g. DC power.
Just with a quick scan of the print statement and comparing with what I recall is already in the user guide, I easily count >10 such instances.
Do you guys think it's worth a PR to unify these names? I could review the list in more detail and make a start on this in a PR; I think it would be worth it at least to make the function parameters consistent with what we already have in the user guide. Unifying parameter names that aren't already in the user guide could be a separate piece of work as that may require more discussion to reach a consensus on a name.

It would be great to see a list of parameter name variants you found.
In the past, a deprecation process has been followed when a parameter name has changed. I don't think we want to rename in one large PR. We've done that in small bites.
#894 and probably other issues are relevant.

This is a non-exhaustive list of parameters that do appear in the user guide in one form but also appear in pvlib functions with the same meaning but in a different form. There are also plenty of instances where two parameters have a similar meaning but have no overlap, e.g. saturation_current in the user guide and I_o_ref in ivtools.sdm.pvsyst_temperature_coeff for the saturation current at reference conditions. I think part of being consistent across the library involves synchronising parameters like this to have a consistent stem, where possible, although there may good reasons for exceptions to this.

In user guide
In functions

pac, ac
ac_power

dni_clear
clearsky_dni, dni_clearsky

-
clearsky, clearsky_ghi, ghi_clearsky

temp_module
module_temperature, temp_mod

pdc, dc
dc_power

ghi_extra
extra_radiation

-
kt, clearness_index

photocurrent
current

saturation_current
I_o_ref

saturation_current
I_o_ref

saturation_current
I_o_ref

It's a painstaking process cross checking everything (parameter map, user guide, function docstring) so the table below is incomplete, but it gives a few examples 😅
I'd certainly be happy to spend more time combing through the full list of terms/user guide/functions (and making changes) if we are agreed we want to do something about it haha.
I understand there may be some reasons for some of the differences (I haven't tracked every related issue / definition at this stage) but here is a summary of what I have found from a first review. I hope it helps.
Note this does not include terms that aren't in the user guide that potentially should be, just terms for which there is an overlap either between a function and the user guide, or between functions (with or without a user guide entry)

In user guide
In functions

pac, ac
ac_power

dni_clear
clearsky_dni, dni_clearsky

-
clearsky, clearsky_ghi, ghi_clearsky

temp_module
module_temperature, temp_mod

temp_air
temp, temperature

pdc, dc
dc_power

ghi_extra
extra_radiation

-
kt, clearness_index

photocurrent
current

latitude
lat

longitude
lon

pdc0
nameplate_rating*

-
nameplate_rating*, p_ac_0

poa_global
poa_irradiance

resistance_series
R_s**

resistance_shunt
R_sh

solar_zenith
zenith

wind_speed
wind_speed***

*not sure whether it's ac or dc, not obvious unless you dive into the references/source code, either way there's a still a duplicate somewhere
** series resistance at reference conditions
*** this wind_speed is defined at a height of 10 metres whereas no height is specified in the user guide wind_speed
The starred points are a few examples of where terms require further clarification. Some definitions are even misleading (in my opinion) e.g. voltage in pvsystem.scale_voltage_current_power is not a voltage, it's a factor by which the voltage is scaled...
There are also instances where two parameters have a similar meaning but have no overlap, e.g. saturation_current in the user guide and I_o_ref in ivtools.sdm.pvsyst_temperature_coeff for the saturation current at reference conditions. I think part of being consistent across the library involves synchronising parameters like this to have a consistent stem, where possible, although there may good reasons for exceptions to this. Taking this case just as an example, perhaps saturation_current_ref and saturation_current would be suitable, or I_o and I_o_ref.

In the past, a deprecation process has been followed when a parameter name has changed. I don't think we want to rename in one large PR. We've done that in small bites.

Ah of course, I had not thought about the required deprecation process but that does make sense. Good point, thanks for explaining.

g_poa_effective is another naming convention for poa_global that is used once


feat: implement 0x1C - SHR opcode

fork: Constantinople
group: Comparison & Bitwise Logic Operations
Index 1 is top of the stack. See PUSH.
Notes
Shift the bits towards the least significant one. The bits moved before the first one are discarded, the new bits are set to 0.
Stack input

shift: number of bits to shift to the right.
value: 32 bytes to shift.

Stack output

value >> shift: the shifted value. If shift is bigger than 255, returns 0.

Examples

*
Input
Output
*
*
Input
Output

1
1
1
*
1
4
0xF

2
2

*
2
0xFF

Reproduce in playground.
Error cases
The state changes done by the current context are reverted in those cases:

Not enough values on the stack.

@Eikix Can I implement this?


gyp: fix runtime "NameError"s

In "gyp/gyptest.py", shlex is used, but it is not imported. So it
will throw NameError at runtime.
In "gyp/pylib/gyp/mac_tool.py", the except block expects the type of
exception to be the first item or nothing. As it is, the block will
throw a NameError at runtime.

Oh, does this come from the upstream? I suggested the same there as well. //codereview.chromium.org/2108583005

Correct.  Changes to files under gyp/ should go upstream first.

Oh. Closing this issue then.


chore(main): release bridge-ui 2.11.0

:robot: I have created a release beep boop
2.11.0 (2024-05-27)
Features

bridge-ui: improve token handling (#17216) (3875f45)
bridge-ui: re-add mobile details (#17016) (30aefe1)
bridge-ui: smart contract wallet detection (#17231) (80ff27e)
bridge-ui: update config (#17347) (6bc2e26)

Bug Fixes

bridge-ui: quota check  (#17200) (b883d34)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/taikoxyz/taiko-mono/releases/tag/bridge-ui-v2.11.0 :sunflower:


[HUDI-4197] Async indexer just for FILES partition fails

What is the purpose of the pull request

When async indexer is invoked only with "FILES" partition, it fails. Fixing the same in this patch. Also, if metadata table itself is not initialized, and if someone is looking to build indexes via AsyncIndexer, first they are expected to index "FILES" partition followed by other partitions. In general, we have a limitation of building only one index at a time w/ AsyncIndexer and hence. Have added guards to ensure these conditions are met.

Brief change log

Fixed Async Indexer to support building "FILES" partition. Previously there were some exceptions thrown as linked in the jira.

Verify this pull request

Added tests to TestHoodieIndexer.

Committer checklist

[ ] Has a corresponding JIRA in PR title & commit

[ ] Commit message is descriptive of the change

[ ] CI is green

[ ] Necessary doc changes done or have another open PR

[ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

@hudi-bot run azure


Support multiple cloud connections of the same type in container environments

Is your feature improvement request related to a problem? Please describe.

In a container deployment and using the built-in bridge feature, it should be possible to run two instances of the tedge-mapper to connect to two different Cumulocity IoT instance where both mappers are connected to the same local MQTT broker.
This is stage 1 of a 2 stage process to support connecting multiple instances of the same mapper type (e.g. n x c8y/aws/az) to two different cloud instances. The first stage assumes that two independent tedge-mapper-<cloud> instances can run in different connections to provide an isolated environment for both settings and certificates.
Describe the solution you'd like

The following items needs to be changed in order to support multiple connections to clouds of the same type, however a full running demo should be used to check that there are no other changes required.

Add new config to support configurable topic prefixes for Azure and AWS

az.bridge.topic_prefix
aws.bridge.topic_prefix

te/ commands should use the c8y.bridge.topic_prefix setting when generating the command id which is used to associate a te/ command to a specific mapper instance
For example, the following code shows that the c8y-mapper command id is hardcoded instead of using the c8y.bridge.topic_prefix configuration value.
let topic_name = if cmd_id.starts_with("c8y-mapper") {
After the code change, a command instance in the /cmd/ topic should follow the below pattern:
te/device/main///cmd/config_snapshot/${c8y.bridge.topic_prefix}-mapper-${cloud-operation-id}

Describe alternatives you've considered

Additional context

LGTM
Will create Tests to cover this as soon as the keywords are created (part of other PR)


Update enterprise-bi-synapse-content.md  - include When to use this Arch section.

added intro
Before clicking the "Create pull request" button:
Enter a meaningful title. We suggest using the keywords "New" or "Update" indicating the nature of changes.
Summary, scope, and intent of this PR
Adding When to use this Arch section. More updates may be needed post January when we deprecate PBI Premium. Some authors have left Microsoft, so need to amend that section too.
Introductory paragraph adds enough information to guide customers to alternative, more modern architectures.
Links to any related work item(s) or supporting detail
notice cross link to other documents, please update those if needed. some lead outside of Azure docs, into Microsoft Fabric (which is unfortunately not discoverable that easy on the left navigation bar)
AFTER YOUR PR HAS BEEN CREATED, expand this section for tips and additional instructions.
These are common guidelines for contributions across the repos managed by the Azure patterns & practices (PnP) content team. Some repositories may have additional specific requirements that are not listed here.
Guidance for all contributors

Topic
Guidance

Draft PR
If your PR will be a work-in-progress for more than a day or two, select the Convert to draft link in the upper right of the page (under Reviewers) to change it to a draft. For future reference, you can also do this using the Create pull request button drop-down during PR creation.

ms.date metadata
Don't update an article's "ms.date" metadata property unless you've done a full freshness review of the content. A full freshness review includes changes required to correct or improve the full technical accuracy of the article.Don't update "ms.date" if you're doing targeted changes to improve non-technical aspects of the article, such as editorial quality, art improvements, article template alignment, etc.If you've changed any "ms.date" properties for work that wasn't part of full review for freshness, please reset them to their previous value.

Placement and linking
If you're creating a new article or articles, include updates to the related TOC.yml file to propose where the article(s) should be placed. Also consider other places within the document set where it would be beneficial to cross-reference and link to your new article(s).

PR build
After you open your PR, and for each successive commit that you push to your branch, the publishing platform will run validation on the files in your pull request. A summary of the build results for each file will be inserted inline into your pull request, which includes any build suggestions/warnings/errors. PRs cannot be merged until all build errors and most warnings are resolved.

Publishing
Following a successful merge, most repos publish to the live site about once per (business) day.

Additional resources
learn.microsoft.com contributor guide

Additional guidance for private repos and internal contributors

Topic
Guidance

PR size
If your PR is more than ~5 lines of changes, or you'd like for the changes to go through editorial or larger review, open a contribution request at https://aka.ms/contribution and include a link to the PR in response #8. Once it's processed, you'll be notified of the next steps.

PR title prefix
Select the Edit button to the right of the PR title if you need to revise it. The following prefixes are reserved for specific contribution types:[Quality Check] - maintenance work related to content quality (edit passes, art improvements, template alignment)[LinkFix] - recurring/adhoc PRs to correct link URLs[Pipeline] - new/updated contributor success pipeline content[WIP] - a work-in-progress draft requiring several days/weeks

PR preview
Following successful build of your PR, publishable files will also include Preview URL links to staged previews of your new/updated articles. Be sure to review these for verification of your intended contributions, or to send to other internal contributors for review.

PR sign-off (public repo)
If an article you own is updated in a public repo PR, you are responsible for sign-off. You will be automatically notified via email. The PR will not be merged until you've had a chance to review and sign-off.

PR sign-off (private repo)
After you've completed your proposed changes, addressed build warnings, and completed all review work, you can begin the sign-off process for review and merge:If your PR is in draft mode, remove "[WIP]" from the title and select Ready for review button at the bottom of the PR.Enter "#sign-off" in a new comment. This comment indicates that you're confident the work meets or exceeds Microsoft's standards for publication, and will trigger the review process.Your PR may be selected for initial review by the PnP content team. Following PnP review, you may receive questions or requests for additional changes. You should have initial feedback from PnP review within a few business days. If you have an urgent request or need to contact the team, please mention @MicrosoftDocs/patterns-and-practices-team-pr-reviewers in your PR and someone will get back to you. After the Azure patterns & practices content review is complete, a PnP #sign-off will be added.Final review/merge is done by the PR review team. The PR team may also respond with feedback, categorized as "Blocking" (requires action from you), or "Non-blocking" (to be addressed in a future PR).

Additional resources
learn.microsoft.com internal contributor guideAuthoring templates: architecture-center-pr, well-architected-prTo contact the Azure patterns & practices team use e-mail, or @mention our GitHub team in your PR comments using: @MicrosoftDocs/patterns-and-practices-team-pr-reviewers

This PR was opened in the public repo. To submit updates to Architecture Center content, you need to open a PR in the private repo, architecture-center-pr.
New content proposals must be submitted via this form: http://aka.ms/Contribution. This process ensures your content gets the proper attention and quality checks.
If you don't have access to the private repo yet, follow the instructions under Join GitHub organizations in the Get started contributing with Microsoft Learn Editor article. Then you can use the Learn Editor to edit the article. Double-check that the repo name ends with -pr.
You can open a new PR and close this one, or you can move the commits from this PR into the private repo so you don't have to repeat work.
If you need help moving these commits to the private repo or if you have questions, email the publicprs alias.
I'll close this PR now.


mergeProd like capability

Hello,
I've been trying to accomplish a small program using Conduit, Pipes, Machines, and now Concurrent-Machines. I thought I'd finally found the solution with splitProd, but I now find I really need something more like mergeProd:
ProcessT m a r -> ProcessT m b r -> ProcessT m (a, b) r

I want to be able to split a source in two, perform different processes on each side (possibly in lock-step), and then merge the results, either automatically with a tuple, or manually with another Process argument.
It doesn't even really need concurrency support as far as I can tell, but the closest thing to what I've been looking for seems to be splitProd so I thought it couldn't hurt to ask if it falls under the scope of concurrent-machines here.
Feel free to close the issue if it's misplaced!

So the missing piece for you is that splitProd doesn't merge the result values? It's tricky because one side could produce multiple outputs from a single input, or possibly no outputs. Since that discrepancy needs to be resolved, making the output an Either lets you resolve that however appropriate with a downstream step.
For instance, if we need an output from each side to produce a merged output, we can latch the most recent output from each side to combine with the next output from the other side. If we must only use each output component once, we should clear the latch after using it, or we could keep it latched and re-use it until it can be replaced.
I may not be understanding your needs, but if so I will try to! This is the right place for this Issue.

You're right that the I've left things ambiguous, sorry about that.
I guess the abstract problem I'm trying to resolve is being able to determine downstream if both values were produced at the same time, which existing Either solutions don't seem very good at.
For example,
If I had a source of FileNames and wanted to use a Checksum process and a Length process to create a Checksum and an accumulating Length process, then I'd like to do something like the following:
checksum_and_length = mergeProd checksumP accLengthP
Now as you were saying, since checksumP could theoretically produce multiple, or zero values, what should we do in those cases? I think I'd be okay with latching the most recent output while the other awaited, or discarding until both processes yielded a value at the same time, maybe that could be explicit by having different versions of the function, such as:

mergeProdBothYield
mergeProdLatch

Either way you would probably want to stop as soon as one of the processes stopped.
The main problem with trying to accomplish this with Either is that you can' be sure that the Left and Right values corresponded to the same incoming upstream source item, not without some kind of "ID" mechanics.
I have a feeling like it should be fairly easy to implement this with the Step language, but it's still a bit beyond me at present...
Let me know what you think!
P.S. I meant mergeProd to have a signature more like the following:
mergeProd :: Monad m => ProcessT m a b -> ProcessT m a c -> ProcessT m a (b,c)

Here's my best go so far for non-concurrent machines:

run $ source [1..5] ~> splitProdPair (mapping succ) (mapping (negate . pred)) ~> mapping (uncurry (*))
[0,-3,-8,-15,-24]

mergeProd :: Monad m => MachineT m k a -> ProcessT m a b -> ProcessT m a c -> MachineT m k (b,c)
mergeProd ma pb pc = MachineT $ do
  bv <- runMachineT pb
  cv <- runMachineT pc
  case (bv, cv) of
       (Stop, _) -> return Stop
       (_, Stop) -> return Stop
       (Yield bo bk, Yield co ck) -> return $ Yield (bo,co) (mergeProd ma bk ck)
       (Await bf Refl bff, Await cf Refl cff) -> runMachineT ma >>= \u -> case u of
          Stop          -> runMachineT $ mergeProd stopped bff cff
          Yield o k     -> runMachineT $ mergeProd k (bf o) (cf o)
          Await g kg fg -> return $ Await (\a -> mergeProd (g a) (MachineT (return bv)) (MachineT (return cv)))
                                          kg
                                          (mergeProd fg (MachineT (return bv)) (MachineT (return cv)))
       (Await bf Refl bff, Yield co ck) -> trace "hybrid case 1" (return Stop)
       (Yield bo bk, Await cf Refl cff) -> trace "hybrid case 2" (return Stop)
       _ -> return Stop

Here's an idea: we can restrict the type to Monad m => MachineT m k a -> Mealy a b -> Mealy a c -> MachineT m k (b,c). The Mealy type has the advantage that it produces precisely one output for each input. A disadvantage is that, as currently formulated in machines, it can't have side effects. But if you like that direction, we can get that added to machines. A concurrent-machines version of what you want would then be based on your code here with minimal async decorations added to the run calls on the two downstream parts.
This would be in keeping with the general theme that concurrent-machines provides fan outs, whereas machines is more focused on merging multiple upstream sources; i.e. a variation on push vs pull.

I really like this idea, but my use-case requires that there are side-effects, so Mealy won't be powerful enough. Is there any reason why there isn't a version of Mealy with side-effects?

I don't think there's a reason. I found an Issue on the machines repo. I think a PR would be accepted on machines.

Thanks Anthony,
Would
newtype MealyM m a b = MealyM { runMealyM :: a -> m (b, MealyM m a b) }

be the right type for a MealyM?

Yes, and a function to convert one of those to a ProcessT would probably be good if adding it to machines. It can be a class like AutomatonM, but I don't think there's much advantage to that over just a regular function (e.g. autoMealyM).

Sounds great! I'll try to whip that up today. Thanks a lot for the discussion so far :)

Hi Anthony,
I couldn't figure out how to do the Automaton implementation for MealyM...

It should be AutomatonM as in the Issue linked above.

Oh I completely missed that somehow...

Thanks for that, I've now got a fleshed out implementation, although my high-level test-case is still failing, so I assume there's a bug here or there. I'll get some property tests written to track it down next:
https://github.com/sordina/uniqhash/blob/master/Data/Machine/MealyM.hs


Use redux

Description
In this step you will use Redux store to display books. You will also add some UI elements to your components and make them dispatch actions. NOTE: editing an existing book and updating the progress is not part of this step. Neither is the styling of the application's components.

Made sure my state was immutable
Changed the default state from empty state to a state filled with books
Imported redux Provider and my store in the main component of my react app.
Connected my app to the Redux store
Made sure that the list of books displays books from redux store
Added a functionlity to the Add book button using useDispatch
Added a functionlity to the remove button using useDispatch
Added a functionlity to the check status button using useDispatch

General requirements

[x] There are no linter errors.
[x] Followed the Github flow.
[x] The documentation is professional.

HTML/CSS requirements

[x] Followed best practices for HTML & CSS
[x] Followed best practices for JavaScript

Project requirements

[x] First of all - make sure that you keep state immutable in reducers!
[x] Secondly, change the default state in your books reducer from an empty array to an array with a few books. One of the goals is to display them in your React components.
[x] Import Redux Provider and your store in the main component of your React app.
[x] Connect your app to the Redux store.
[x] Make sure that list of books displays books from Redux store.
[x]  In your React component responsible for adding new books, add funcionality for "Add new" button click.
[x] In your React component responsible for removing books, add a funcionality for "Remove" button click:
[x] In your React component responsible for categories, add a funcionality for "Check status" button click:

Thank you for taking the time to review this pull request.

Hi @daudi13,
Congratulations! tada
Your project is complete! There is nothing else to say other than... it's time to merge it rocket :
Cheers and Happy coding!clapclapclap
Feel free to leave any questions or comments in the PR thread if something is not 100% clear. Please, remember to tag me in your question so I can receive the notification.
As described in the Code reviews limits policy you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.

Thank you for taking the time to review my code


Merge connection pools in vttablet component using taskPool

Background
Currently, the vttablet component has multiple connection pools for various tasks, leading to complexity and potential performance issues. To streamline and optimize this process, it is proposed to consolidate these connection pools into a unified taskPool.
Proposal
The proposal is to merge the existing connection pools in the vttablet component into a single taskPool. This consolidation will simplify the codebase, improve resource management, and enhance overall performance.
Step 1: Identify All Connection Pools
We can locate all connection pools and their active connection counts through vttablet's http://localhost:15100/metrics endpoint.
Connection pool metrics end with _active, so we can filter these metrics using a regular expression:
curl http://localhost:15100/metrics | grep -E "^\w+_active.*"

Step 2: Locate Code by Pool Names
Taking vttablet_health_streamer_active 1 as an example, we can search for "HealthStreamer" in the codebase. (Note: Convert characters after underscores to uppercase)
This will correspond to a connection pool named "HealthStreamer".
Step 3: Migrate Components to taskPool
Replace each component's connection pool with taskPool on a case-by-case basis...

I'd like to merge the connection pool of HealthStreamer as an example, and then handle the other components

I'd like to merge the connection pool of HealthStreamer as an example, and then handle the other components

It seems to be a good start, you can create a sub-issue.


[koaApollo] pass ctx object to options

In GitHunt-API repo the function options used for fetch user from middlewares
function options (req) {
   ...
   return {user:req.user,...}
}
app.use('/graphql', apolloExpress(options));

The koa@2 use  the ctx.state convention  for passing information through middleware and for koajs developer expects:
function options (ctx /*<- this is not koa ctx. */) {
   ...
  // will not work
   return {user:ctx.state.user,...}
}
router.use('/graphql', apolloKoa(options));

But the options function executes with ctx.request argument. So there is no way to fetch ctx.state.user from the options.

Don't have enough time to add tests, changelog, and etc.


Add grpc v1.56.3

Port patches from 1.48.1.bcr.3 in #1190 to v1.56.3.
Upgrade boringssl dependency version to get rid of an unused variable warning/error
Add patch for Python support

The latest grpc release appears to be 1.60.0. Is there any reason you're adding 1.56.3 instead of 1.60.0? (I need 1.60.0 in order to get rid of the upb dependency).

Yes, because this is the version we are currently using in our WORKSPACE and we are currently in the migration process. I think there is no problem in packaging more/all versions to BCR, so I would suggest to go ahead and also package 1.60.0.

It seems that the CI compiler has been upgraded since opening this PR resulting in additional warnings which are treated as errors by the upb dependency. What is the beset way to fix this? Do I need to add a patch to the upb dependency in this PR as well now?

@Wyverald could you please trigger the CI here as well?

The other issue seems to be an upstream one in rules_python. I am in contact with @rickeylev to get a fix. Marking as "Draft" until then.


Add second template with http.HandlerFunc

This should mirror the existing template and give an option like --lang golang-httpfunc
Add examples to the README.md file too.

Derek close: resolved.


GLTF Loading blocks main thread

Last time we tried multithreaded loading in unity-gltf, it caused problems, but it's been a while, so maybe time to try again?

The SDK has been updated to the extent possible to allow threaded loading of glTF data. It's still not great, but now this is on Unity to allow background loading of game data (this is supposedly allowed using Unity ECS and Jobs, but those APIs are still in preview). I'll leave this issue open to remind us to re-evaluate feasibility in the future.


Help: Java 7

Hi,
is there a way to write test cases in Java 7 JDK, i.e. without lamda expressions (JRE would be JAVA 8).
I have an old version of eclipse and I am not able to update due to some organizational reasons.
André

You can only use Citrus up to 2.6.2 version with Java 7. Version 2.7 is compiled with Java 8 so running via Java 7 JDK is not possible.
When using Citrus 2.6.2 you can use nested builder instances instead of Java 8 lambda expressions:
send(new BuilderSupport<SendMessageBuilder>() {
        @Override
        public void configure(SendMessageBuilder builder) {
            builder.endpoint(messageEndpoint)
                    .payload("Foo");
        }
    });

With Lambda the same would be:
send(builder -> builder.endpoint(messageEndpoint)
                    .payload("Foo"));


Log level option is ignored

Actual behaviour:
When I set the log level to warn or to error, it will still log info messages.
Expected behaviour:
It should only log the messages on the defined log level.
Error log:
/
Server configuration

Operating system: Ubuntu 20.04
Node version (if applicable): v16.8.0
NPM version (if applicable): v7.21.0
tmi.js version: 1.8.5

Further information
When I use these option to set up my client:
client = new Client({
    connection: { reconnect: config.general.auto_reconnect },
    channels: config.general.channels,
    identity: {
        username: config.login.username,
        password: config.login.token
    },
    options: {
        debug: false,
        messagesLogLevel: 'warn'
    },
    logger: {
        info: (msg: string): void => logger.info(msg),
        warn: (msg: string): void => logger.warn(msg),
        error: (msg: string): void => logger.error(msg)
    }
});

I have this output (the success messages are done manually, the rest is from the logger):

As you can see, it still logs info messages even though the log level is set to warn.
For now, as a workaround, I just ignore the info logger function so it won't do anything on info log messages, like this:
client = new Client({
    connection: { reconnect: config.general.auto_reconnect },
    channels: config.general.channels,
    identity: {
        username: config.login.username,
        password: config.login.token
    },
    options: {
        debug: false,
        messagesLogLevel: 'error'
    },
    logger: {
        info: (): void => {
            /* ignore */
        },
        warn: (msg: string): void => logger.warn(msg),
        error: (msg: string): void => logger.error(msg)
    }
});

I think it is expected behaviour.
According to guide, messagesLogLevel is

Sets the log level of chat messages. Useful for custom logging of chat messages while keeping more general events.

It only affects chat messages.

Weird option but alright, thank you.
How can I set the actual log level then?

As far as I know, you can't set log level except debug option (that sets 'info' level).
So you need to implement your own logger as you have shown.

You set the level on the logger object.
client.logger.setLevel('warn');

The client has no log field though or they are missing on the type declarations.

The client object looks like this, there is no setLevel() function:
{
  opts: {
    connection: { reconnect: true },
    channels: [ '#########' ],
    identity: {
      username: '########',
      password: '###############'
    },
    logger: {
      info: [Function: info],
      warn: [Function: warn],
      error: [Function: error]
    },
    options: {}
  },
  clientId: null,
  _globalDefaultChannel: '#tmijs',
  _skipMembership: false,
  _skipUpdatingEmotesets: false,
  _updateEmotesetsTimer: null,
  _updateEmotesetsTimerDelay: 60000,
  maxReconnectAttempts: Infinity,
  maxReconnectInterval: 30000,
  reconnect: true,
  reconnectDecay: 1.5,
  reconnectInterval: 1000,
  reconnecting: false,
  reconnections: 0,
  reconnectTimer: 1000,
  secure: true,
  emotes: '',
  emotesets: {},
  channels: [],
  currentLatency: 0,
  globaluserstate: {},
  lastJoined: '',
  latency: 2021-09-10T15:41:34.878Z,
  moderators: {},
  pingLoop: null,
  pingTimeout: null,
  reason: '',
  username: '',
  userstate: {},
  wasCloseCalled: false,
  ws: null,
  log: {
    info: [Function: info],
    warn: [Function: warn],
    error: [Function: error]
  },
  _events: {
    reconnect: [AsyncFunction (anonymous)],
    message: [AsyncFunction (anonymous)],
    connected: [Function: a] { listener: [AsyncFunction (anonymous)] }
  },
  _maxListeners: 0
}

It's not in the types because I didn't write them and also the logger can be user defined. You could use an existing library Winston. The logger object you're passing in doesn't have a setLevel method so of course it won't appear when logging the client instance, but it does show your logger object at the log key. Again, look at the reference implementation linked above. This object is set to client.log and includes a setLevel method.


Backport Plasma 5.8

Motivation for this change
Plasma 5.8 is a LTS release from upstream which will continue to receive bug fixes for the lifetime of NixOS 16.09. This is strictly a backport of patches from master.
Things done

[x] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] Linux

[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

What is the best way to test this PR? I guess it can only be tested for the whole system. Can i tell configuration.nix to use it or change a channel setting?

I guess it can only be tested for the whole system. Can i tell configuration.nix to use it or change a channel setting?

Yes, you need to test your whole system. You can pass the remote tarball as an option to nixos-rebuild like this:
nixos-rebuild -I nixpkgs=https://api.github.com/repos/ttuegel/Nixpkgs/tarball/344723265455f8290fb9e7e7fd65668a1e78970e ...

It build and it works fine. I've used it for about an hour so far. Screen (un)locking works. Logging in and out works. Adding desktop widgets works.
Switching desktops works.
KRunner crashes very easily but already did so in 5.7.
An important note: user should not have installed kwin or any plasma packages in the personal profile.

The network manager widget does not work. I see two different error messages:
Fout bij het laden van QML-bestand: file:///nix/store/xhpanjz21ycxqkj9w7cr85rvmqdgihk2-plasma-nm-5.8.3/share/plasma/plasmoids/org.kde.plasma.networkmanagement/contents/ui/main.qml:37:34: Type PopupDialog unavailable

Fout bij het laden van QML-bestand: file:///nix/store/xhpanjz21ycxqkj9w7cr85rvmqdgihk2-plasma-nm-5.8.3/share/plasma/plasmoids/org.kde.plasma.networkmanagement/contents/ui/main.qml:37:34: Type PopupDialog unavailable
file:///nix/store/xhpanjz21ycxqkj9w7cr85rvmqdgihk2-plasma-nm-5.8.3/share/plasma/plasmoids/org.kde.plasma.networkmanagement/contents/ui/PopupDialog.qml:74:23: Type ConnectionItem unavailable
file:///nix/store/xhpanjz21ycxqkj9w7cr85rvmqdgihk2-plasma-nm-5.8.3/share/plasma/plasmoids/org.kde.plasma.networkmanagement/contents/ui/ConnectionItem.qml:389:17: Cannot assign to non-existent property "revealPasswordButtonShown"

The network manager widget does not work. I see two different error messages:

I can't reproduce this. You have networking.networkmanager.enable = true; in configuration.nix, and plasma-nm is not installed in your user's profile?

You have networking.networkmanager.enable = true; in configuration.nix?
Yes and nmcli works for the normal user so I'm not without network.

plasma-nm is not installed in your user's profile?
Yes, it is not installed for a normal user.

/nix/store/xhpanjz21ycxqkj9w7cr85rvmqdgihk2-plasma-nm-5.8.3/share/plasma/plasmoids/org.kde.plasma.networkmanagement/contents/ui/PopupDialog.qml is present in the system and readable to everyone. For some weird reason main.qml cannot load a file that's in the same directory.
The NM widget does not work on the desktop and not on the panel. I've tried a lot of other widgets. They all work.

PopupDialog.qml:74:23: Type ConnectionItem unavailable
And yet, /nix/store/xhpanjz21ycxqkj9w7cr85rvmqdgihk2-plasma-nm-5.8.3/share/plasma/plasmoids/org.kde.plasma.networkmanagement/contents/ui/ConnectionItem.qml exists.
But a bit further down:
ConnectionItem.qml:389:17: Cannot assign to non-existent property "revealPasswordButtonShown
This is on PlasmaComponents.TextField.
That property was added to src/declarativeimports/plasmacomponents/qml/TextField.qml in 5.26.
Maybe the old qml is somehow in the path due an older kde application being installed, e.g. kate-16.08.

I've deinstalled kate-16.08 and then the NM widget works. When kate-16.08 is reinstalled, the NM widget is broken again.
Somehow installing kate-16.08 exposes a path for 'old' qml files to the environment which is then picked up by plasma.
If kate would also depend on frameworks 5.26, things would be fine.

Somehow installing kate-16.08 exposes a path for 'old' qml files to the environment which is then picked up by plasma.
If kate would also depend on frameworks 5.26, things would be fine.

Kate must depend on Frameworks 5.26 because there is no other version available. Could you point out which QML file is propagated to the user environment? Kate should only be providing binaries and .desktop files (for the menu).

kate-16.08.2/nix-support/propagated-user-env-packages
/nix/store/ixm535i33zddyq7vj8fgfjfcp4szyxl4-kate-16.08.2
/nix/store/nbwh3lhqj9gavhn4r02pa3764ml4rcyr-kcoreaddons-5.24.0
/nix/store/8v71l1pdhp07hvq20v7z6937gd0fbz5r-shared-mime-info-1.7
/nix/store/10kp635h5p628m0lw960b0hv9mb2s3hg-kglobalaccel-5.24.0
/nix/store/p2n4ylxmckhr06vw53yihiazd2g4p9fg-breeze-icons-5.24.0
/nix/store/sk36xjb41jdnk363xhhdijndd29fr36l-kio-5.24.0
/nix/store/rz77l1dc0lfhf9i7x5byjrrkwsxh2h48-kjobwidgets-5.24.0
/nix/store/ma9rnvxcj4z7yxzpd4x32i3sl97dwaw9-knotifications-5.24.0
/nix/store/qw17wagm3y76fimgq7ydr5ss4bdpfwpk-phonon-qt5-4.9.0
/nix/store/gxayzyx6wxzsbfznd0k88qyvwvawfg2z-kwallet-5.24.0
/nix/store/9xq1cpaig0bkqf18lpv2ri361kj33ksq-kinit-5.24.0
/nix/store/f5z7xs2c44nx9nbghbz556ssd63fm80m-konsole-16.08.2
/nix/store/pngfqlg9rsagjmf0a83jzk5ccf4d1pc3-kdelibs4support-5.24.0
/nix/store/xjllfl5cjrldc945riqhrxg4lbjq807g-kded-5.24.0
/nix/store/af61v101hybwjcna3qmn2m973fxyil9s-network-manager-1.2.4

So I guess KF 5.26 or 5.27 would need to be backported first for the plasma backport to work.

KDE Frameworks 5.26 is already backported as part of this PR (b5f4e8e). If you are building your system from this PR, Frameworks 5.24 doesn't exist!

I've run
nixos-rebuild -I nixpkgs=https://api.github.com/repos/ttuegel/Nixpkgs/tarball/34472326545

but that does not put that path as the channel for the normal user apparently.
So if this is merged it'll work fine since then kate will use kf 5.26.
So by all means :shipit:

I merged this along with a new patch from master that should stop user environment packages from causing problems for Plasma in the future.


Change/remove Favicon

I suggest replacing https://github.com/googlefonts/typography/blob/master/assets/img/google_fonts_lodp.ico with something unique to this site, or not having one :)
This is not an official Google product, so it shouldn't use any Google logos, except https://github.com/googlefonts/friends-badge on the footer

New favicon created and badge added to footer


Lock endpoint before getting security id

Endpoint.GetSecurityIdentity is supposed to be protected by endpoint mutex, but this was not the case.

This change is

test-me-please

Coverage decreased (-0.004%) to 42.597% when pulling 9ed0f136b2e4431f44e6771cebabf7a54fe768d0 on nebril:protect-get-security into efaca4dff54666ab435e8bd3637dca103c27c0a6 on cilium:master.

test-me-please

@aanm done

@aanm if we call it within GetSecurityIdentity the code will deadlock. @nebril 's initial change was the correct one. This is because UpdateLocalConsumers, which eventually calls refreshRulesForEndpoint,  is called with the endpoint's lock held.

@aanm if we call it within GetSecurityIdentity the code will deadlock. @nebril 's initial change was the correct one. This is because UpdateLocalConsumers, which eventually calls refreshRulesForEndpoint, is called with the endpoint's lock held.

If that's the case which bug if this PR fixing?

@aanm the case where updateEndpointsCaches uses GetSecurityIdentity

@aanm the case where updateEndpointsCaches uses GetSecurityIdentity

Why do we need to hold the endpoint lock in UpdateLocalConsumers?

@aanm I hit some panics due to SecurityIdentity being nil on endpoint and I think it was because there was a race between setting and getting it.

test-me-please

Perhaps we can have GetSecurityIdentityLocked and GetSecurityIdentity. This would avoid adding all the lock functions to the interface.

test-me-please

test-me-please

test-me-please

test-me-please

test-me-please

Superseded by https://github.com/cilium/cilium/pull/7844


No display on RPI4 monitor (Connected via Ribbon cable)

Hi. Tried using the Beta6 HDMI and Stable versions, I never see anything on my 7" display when powering on.
I was hoping to at least see the OS boot and be able to sign in.,
Also, Not sure what the diffs are between Beta6 and the "Lite" versions...
Thoughts?  Thank you!

BTW - I'm a newbie to this Picobrew project.
Not sure where I might find previous releases and/or if the "List" versions would help me any.


Speed Unit Converting Calculator

Speed converting calculator takes speed of any unit with user and gives the speed value in other required speed unit.
e.g it converts
(i) MPS to KMPH and MPH.
(ii) KMPH to MPS and MPH.
(iii) MPH to MPS and KMPH.

Checklist ✅

[x ] I follow Contributing Guidelines & Code of conduct of this project.
[x ] I have performed a self-review of my own code or work.
[x ] I have commented my code, particularly in hard-to-understand areas.
[x ] My changes generates no new warnings.
[x ] I'm GSSOC'22 contributor
[ ] Have you added a working video of your calculator ?

![scc1](https://user-images.githubusercontent.com/73851357/169669366-e56992e8-fd3a-4d0d-a711-8a2c0f0c5b7a.png)

![scc2](https://user-images.githubusercontent.com/73851357/169669376-d739320c-c61d-4edf-a736-96c0c6dae017.png)

It is working, it changes the inner html which shows result (below the calculate button).
Please recheck it.

Provide the screenshot as it is not working.

Fix this pull description :)

Sorry to inform you that these functionalities are already there in this calculator .
We can't merge this pull !
You can work on other calculator or on enhancements if needed !


shell command git shortlog -sn waits indefinately

Ask the gptme to "who commits in this repo?" when in a git repo directory, and it asks to run command:
git shortlog -sn

It then waits indefinately and never returns a result. It should return something like:
   368  UserA
   278  UserB
   109  UserC

Hello, we tried to solve the issue.
This is what we did:
Update the shell execution functionality in gptme/tools/shell.py to ensure that the output of commands like 'git shortlog -sn' is properly captured and returned. This involves modifying the _run method of the ShellSession class to handle command output more effectively.
You can review changes in this commit: https://github.com/wwqwq2313/ErikBjare-gptme-362/commit/e579ba17bad05c3db33b42e2b82f2284f593f26c.

[!CAUTION]
Disclaimer: The concept of solution was created by AI and you should never copy paste this code before you check the correctness of generated code. Solution might not be complete, you should use this code as an inspiration only.

Latta AI seeks to solve problems in open source projects as part of its mission to support developers around the world. Learn more about our mission at https://latta.ai/ourmission . If you no longer want Latta AI to attempt solving issues on your repository, you can block this account.

Strange that this seems to only happen for git shortlog and not other git commands.
At first I thought it was a PAGER issue, but seems not?

Assistant: To find out who made the last commit in this repository, we can use the `git log` command. Let's execute it to get the information.                  User: ok
Assistant: Let's run the following command to find out the author of the last commit:

```shell
git log -1 --pretty=format:"%an"

Preview
git log -1 --pretty=format:"%an"
Run command? [Y/n/c/e/?]  y
Jeremy PottonSystem:
Ran command: git log -1 --pretty=format:"%an"
UserA


Update reference/config/baremetal.md

Add instruction for setting workerNodeGroupConfigurations to nil
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Have we made a note somewhere that single node is not supported with Kubernetes version 1.21? Additionally, maybe it would be good to add a version check and error message in the CLI for it as well.

Good point. I have added notes for not supporting Kube version <= 1.21 and created a ticket to handle version check.

/lgtm

/approve


SArray forward fill missing values

Hey guys, I'm working on time series data and I want to impute missing values by using last known values,
similiar to pandas.filna(method='ffill'). Is it something I can do with turicreate?
Thanks

This is a pretty good feature request. Thanks!


Fix accessibility of examples buttons

Description
Fix accessibility of 'Try it on StackBlitz' and 'Copy to clipboard' buttons.
Motivation & Context
Svgs inside 'Try it on StackBlitz' and 'Copy to clipboard' buttons are pure decoration so they must be ignored by any assistive technology.
See https://www.w3.org/TR/WCAG21/#non-text-content for more details.
Type of changes

[X] New feature (non-breaking change which adds functionality)

Checklist

[x] I have read the contributing guidelines
[x] My code follows the code style of the project (using npm run lint)
[x] My change introduces changes to the documentation
[x] I have updated the documentation accordingly
[x] I have added tests to cover my changes
[x] All new and existing tests passed

Live previews

https://deploy-preview-37498--twbs-bootstrap.netlify.app/

I am also currently wondering if adding focusable="false" to the <svg> elements could be useful since it may cause an accessibility issue in Internet Explorer?

title technically provides an accessible description, rather than an accessible name.
maybe a slicker way around it is to add aria-label to the <button> - then you can save yourself the aria-hidden="true" on the internal svg as well, since the aria-label on the parent will completely replace/override whatever's inside the button anyway?
<button ... aria-label="Try" title="Try it on StackBlitz">
  <svg class="bi"><use xlink:href="#lightning-charge-fill"/></svg>
</button>

as for focusable="false", not sure if we still need to cater to IE since it's now been officially deprecated by Microsoft, and that was the only browser exhibiting this odd behaviour.

also, note that

Svgs inside 'Try it on StackBlitz' and 'Copy to clipboard' buttons are pure decoration so they must be ignored by any assistive technology.

is perhaps not completely accurate. They're not pure decoration, they represent the content/label of the button... but that's probably splitting hairs

<button ... aria-label="Try" title="Try it on StackBlitz">
  <svg class="bi"><use xlink:href="#lightning-charge-fill"/></svg>
</button>

Ok with your version and for your opinion about focusable="false" since IE is not listed anymore in the list of supported browsers on .browserslistrc file
However I think it will be better to keep the same content in the two attributes:

<button ... aria-label="Try it on StackBlitz" title="Try it on StackBlitz">
  <svg class="bi"><use xlink:href="#lightning-charge-fill"/></svg>
</button>

depending on browser/assistive technology used, both the accessible name and description may be announced, resulting in an overly verbose announcement (though, at least with Chrome/NVDA and Chrome/Jaws, it seems that if both are exactly the same, it's only announced once). Will test some more later just to check...

title technically provides an accessible description, rather than an accessible name.

I've actually just tested it, and it seems that consistently browsers use/expose title as an accessible name if it's the only thing present, rather than using it as a description
Long story short, after more testing (also in Firefox/Win and Safari/macOS), ignore my suggestion. This will be fine as is ;)

also, i'd note that those buttons were accessible even before this, but they did lead to an unnecessarily verbose announcement (along the lines of "image Try it, button, Try it on StackBlitz"). so this PR is more of a nice tweak ("Try it on StackBlitz, button")


Apheleia-npx fails on windows

Firstly, bash needs to be on the path for aphelia to not fail silently, although this is somewhat normal it'd be nice to know it's a requirement.
After adding bash to the path I was hitting an error with the script trying to combine windows and posix style paths:
$ "bash" "c:/Users/jking/.config/emacs/.local/straight/build-30.0.50/apheleia/scripts/formatters/apheleia-npx" "prettier" "--stdin-filepath" "c:/Users/jking/source/XSight/XClient/apps/location/src/app/modules/locations/components/data-providers/data-provider-popup/basic-auth-data-provider/basic-auth-data-provider.component.ts" "--tab-width" "2"

C:\Users\jking\source\XSight\XClient\node_modules\.bin/../node/bin/node: line 1: This: command not found

Command failed with exit code 127.

I fixed it with the following hack for now:
    elif [[ -n ${npm_root} ]]; then
        # trying npm
        node_modules_paths=(\
            $(node -e 'console.log(require.resolve.paths("").map(path => path.replace(/\\/g, "/").join("\n"))'))
        for path in ${node_modules_paths[@]}; do
            echo path
            if [[ -x "${path}/.bin/$1" ]]; then
                exec "${path}/.bin/$1" "${@:2}"
            fi
        done
    fi

I've pushed a commit that documents the dependencies explicitly.


fix: Fresh sync shows blank screen

To test:

Fresh install rm -rf ~/Library{Application Support/{io.parity.ethereum | Electron | fether}
yarn electron

On master, #416 introduced a bug where, on fresh launch, a blank screen was shown (because of these lines).
This PR basically just replaces this null with a RequireHealthOverlay.
Moreover, <Health> and <HealthModal> (both can be rendered before api is defined) use light.js's chainName$ when syncing/synced, but we only allow calling this method when the api is connected.

I've been able to replicate the issue by running rm -rf ~/Library/Application\ Support/fether/ && rm -rf ~/Library/Application\ Support/Electron/. Where is that information stored in Linux and Windows so I can test it there too?

See appData here https://github.com/electron/electron/blob/master/docs/api/app.md#appgetpathname

the "Accept" button doesn't work when I click it

This is an expected behavior when you remove the line  if (isFirstRun) {

Also, why is it storing paritylight::firstRun with a value of false even though I've deleted everything in those directories and cleared local storage? Shouldn't it be recognising that it's my first run? (sorry haven't had time to investigate this myself yet)

hmm, that's weird. Normally, if you run localStorage.clear(), then refresh the page, you should have paritylight::firstRun set to true. Once you click on the Accept button, paritylight::firstRun is set to false.
Side note: a better name for isFirstRun might actually be hasAcceptedT&C

that message to shift over to a new line

Fixed, thanks.


scheduleRepeat with 1i does not match Tone.Transport.ticks

Ticks don't match: https://jsfiddle.net/quzehtkm/3/
Tick doesn't change on next call: https://jsfiddle.net/1fx68rt9/4/

For this, you'll wanna use Tone.Transport.getTicksAtTime(time) with the time passed into the callback. Like in this example. Tone.js timing is done by keeping a short look ahead time and scheduling values in advance. Callbacks like schedule/schedulRepeat are invoked before the time of the event which is why the ticks are still at 0.

For this, you'll wanna use Tone.Transport.getTicksAtTime(time) with the time passed into the callback. Like in this example. Tone.js timing is done by keeping a short look ahead time and scheduling values in advance. Callbacks like schedule/schedulRepeat are invoked before the time of the event which is why the ticks are still at 0.


install! 'cocoapods', :disable_input_output_paths => true

install! 'cocoapods', :disable_input_output_paths => true添加会导致应用图标无法输出，应用图片文件无法输出

见 https://github.com/fluttercandies/flutter_bdface_collect/issues/7

见 #7

改了的
Failed to build iOS app
Error output from Xcode build:
↳
** BUILD FAILED **
Xcode's output:
↳
note: Using new build system
note: Planning
note: Build preparation complete
note: Building targets in dependency order
error: Multiple commands produce '/Users/chentaisu/Desktop/test/testapp/build/ios/Release-iphoneos/Runner.app/Assets.car':
1) Target 'Runner' (project 'Runner') has compile command with input '/Users/chentaisu/Desktop/test/testapp/ios/Runner/Assets.xcassets'
2) That command depends on command in Target 'Runner' (project 'Runner'): script phase “[CP] Copy Pods Resources”
warning: duplicate output file '/Users/chentaisu/Desktop/test/testapp/build/ios/Release-iphoneos/Runner.app/Assets.car' on task:
PhaseScriptExecution [CP] Copy Pods Resources
/Users/chentaisu/Library/Developer/Xcode/DerivedData/Runner-axzfdodthzwcyaaoafagklqtctgo/Build/Intermediates.noindex/Runner.build/Release
-iphoneos/Runner.build/Script-59880E526245ACEE610E2864.sh (in target 'Runner' from project 'Runner')

It appears that your application still contains the default signing identifier.
Try replacing 'com.example' with your signing id in Xcode:
open ios/Runner.xcworkspace
Encountered error while building for device.
chentaisudeMacBook-Pro:ios chentaisu$


Refactorings for enabling parallel compilation (part 2)

This PR contains a bunch of refactorings to remove dependencies on TyCtxt and Session for various functions that will in the future be called on background threads as those types are only available on the main thread. Most of this PR concerns the debuginfo generation code, but there are also a couple of refactorings to other code.
Part of https://github.com/bjorn3/rustc_codegen_cranelift/issues/652
See https://github.com/bjorn3/rustc_codegen_cranelift/pull/1264 for the previous PR in this series.

Before merging this I'm going to benchmark it first as I'm not entirely sure about the perf implications of 6421427.

Doesn't seem to have changed much.


[AWS] Add CloudFormation Stack Drill Down

Description
This adds the ability to list and open the resources of a CloudFormation stack.

add action to drill down to CloudFormation stack resources
centralize resource-to-console-link in a function
unrelated cleanup: replace Action.SubmitForm with Action

Screenshot

You did so much changes here that I think they should make you an author here 😅


have re-initialize function?

Is there a way to re-initialize, and now when I come back from the secondary page, swiper does not work

had swiper render a second time with less children, only the dots are updated.
Components are removed but they are just removed from the end of the array, not the exact component.


Tome of Town Portal converted to Tome of Identify after editing/saving Character

Tome of Town Portal converted to Tome of Identify after editing/saving Character.  Tome is broken in game after that, must be sold and a new tome bought.

duplicate of #3


Create README-ger.md

I translated the Readme.md into german.

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

Thanks. Merged


FYI: A lot of this can be done/automated with Beets as well

https://beets.readthedocs.io/en/stable
;)

Moving from iTunes, I really like MusicBee as a music player and music library manager for Windows. It has some basic MusicBrainz tagging support as well. For the next step forward, I am looking into MusicBrainz Picard to use alongside MusicBee for more advanced tagging. Unfortunately, there is still an open issue with regard to multi-value properties in M4P files (the majority of my audio files are AAC encoded M4As) being handled differently between the two. I hadn't heard of beets, but it seems like a MusicBrainz Picard on steroids. I have to look into it, but it could turn out to be the better MusicBrainz tagger. 👍


Plugin requires named parameter template calls

I just tried JTE for the first time. Great project!
But I'm not sure if I'm overlooking something, but the plugin seems to require named parameters when calling a template with arguments, even though JTE itself compiles fine with just parameter order instead of named parameters.
The JTE documentation does mention in https://github.com/casid/jte/blob/main/DOCUMENTATION.md

If you don't want to depend on the parameter order, you can explicitly name parameters when calling the template (this is what the IntelliJ plugin suggests by default).

But in my situation, it's not just a suggestion of the plugin, it's a requirement of the plugin. So it shows an error if parameter order is used instead.
Example
src/main/jte/component1.jte:
@param String title
@param String componentContent

Component: ${title}

Content: ${componentContent}

src/main/jte/test/jte:

Page

        @template.component1("Hello world", "Content")

This will show the error:

Missing required parameters: title, componentContent

Thank you for the heads up!
Yes, this is indeed a bug, where the plugin doesn't 100% follow the jte documentation.
So far, I didn't have problems with it, since the plugin generates parameter names for template calls anyways by default. In the projects I'm using jte we have the convention to always use paramter names (so for us it's almost a feature, rather than a bug, heh :-))
So far I haven't found time to look into it - the parameter parts are a bit hacky already.


Broken with PhantomJS 2.1.1

The examples don't work on PhantomJS 2.1.1, but they do on 2.0.0. The program just hangs without executing anything.

Same here, the example not working with PhantomJS 2.1


chore: fix chalk to v4 to fix build error

ssia

Current dependencies on/for this PR:

main

PR #170   (this PR)

This comment was auto-generated by Graphite.


canJumpToTab not working on ios

Current behaviour
canJumpToTab is ignored on ios
Expected behaviour
I want to block users from switching tabs freely.
Code sample
return (<TabView canJumpToTab={(a) => {console.log('jumping??'); return false}}
                     navigationState={this.state}
                     swipeEnabled={false}
                     renderTabBar={this.renderTabBar}
                     renderScene={this.renderTabScene}
                     onIndexChange={this.updateIndex}
                     initialLayout={tabLayout} />);

nothing's shown in the console and the tabs change upon clicking.
it seems like the callback is not executed.
{
  "name": "TaxiRapidLlucmajorCliente",
  "version": "0.0.12",
  "private": true,
  "scripts": {
    "start": "node node_modules/react-native/local-cli/cli.js start --reset-cache",

  },
  "dependencies": {
    "@react-native-community/async-storage": "^1.4.2",
    "moment": "^2.22.2",
    "react": "16.8.3",
    "react-native": "0.59.4",
    "react-native-autocomplete-input": "^3.5.0",
    "react-native-elements": "^1.1.0",
    "react-native-fontawesome": "^5.7.0",
    "react-native-fs": "^2.13.3",
    "react-native-geocoding": "^0.3.0",
    "react-native-gesture-handler": "^1.2.0",
    "react-native-google-places-autocomplete": "^1.3.9",
    "react-native-image-crop-picker": "^0.23.1",
    "react-native-maps": "^0.24.0",
    "react-native-modal": "^9.0.0",
    "react-native-modal-datetime-picker": "^6.0.0",
    "react-native-modal-selector": "^1.0.3",
    "react-native-modalbox": "^1.5.0",
    "react-native-phone-input": "^0.2.1",
    "react-native-popup-menu": "^0.14.2",
    "react-native-push-notification": "3.1.3",
    "react-native-reanimated": "^1.0.0",
    "react-native-splash-screen": "^3.2.0",
    "react-native-tab-view": "^2.1.0",
    "react-native-testfairy": "^2.18.0",
    "react-native-vector-icons": "^6.1.0",
    "react-navigation": "^1.5.13",
    "react-redux": "^5.0.7",
    "redux": "^4.0.0",
    "redux-devtools-extension": "^2.13.7",
    "redux-localstorage": "^0.4.1",
    "redux-logger": "^3.0.6",
    "redux-persist": "^5.10.0",
    "redux-thunk": "^2.2.0",
    "tcomb-form-native": "^0.6.20"
  },
  "devDependencies": {
    "@babel/core": "^7.4.3",
    "@babel/runtime": "^7.4.3",
    "babel-jest": "^24.7.1",
    "jest": "^24.7.1",
    "metro-react-native-babel-preset": "^0.53.1",
    "react-test-renderer": "16.8.3"
  },
  "jest": {
    "preset": "react-native"
  }
}

There's no canJumpToTab in 2.x. No, to prevent users from switching tabs, you avoid doing a setState on the onIndexChange callback.

thanks!


[Monitor] Autoscale-settings "autoscale-parameters-template.json" file not included with PIP install

After doing a PIP install, if I run az monitor autoscale-settings get-parameters-template I get the following error:
File C:\Users\trpresco\Documents\github\env3\lib\site-packages\azure\cli\command_modules\monitor\autoscale-parameters-template.json not found.

It seems like the JSON file that is embedded in the command module for a dev_setup does not get included in the final package.

Environment summary
Install Method: How did you install the CLI? (e.g. pip, interactive script, apt-get, Docker, MSI, nightly)
Answer here: pip
CLI Version: What version of the CLI and modules are installed? (Use az --version)
Answer here: azure-cli (2.0.6)
acr (2.0.4)
acs (2.0.6)
appservice (0.1.6)
batch (2.0.4)
cdn (0.0.2)
cloud (2.0.2)
cognitiveservices (0.1.2)
command-modules-nspkg (2.0.0)
component (2.0.4)
configure (2.0.6)
core (2.0.6)
cosmosdb (0.1.6)
dla (0.0.6)
dls (0.0.6)
feedback (2.0.2)
find (0.2.2)
interactive (0.3.1)
iot (0.1.5)
keyvault (2.0.4)
lab (0.0.4)
monitor (0.0.4)
network (2.0.6)
nspkg (3.0.0)
profile (2.0.4)
rdbms (0.0.1)
redis (0.2.3)
resource (2.0.6)
role (2.0.4)
sf (1.0.1)
sql (2.0.3)
storage (2.0.6)
vm (2.0.6)
OS Version: What OS and version are you using?
Answer here: Win10CU
Shell Type: What shell are you using? (e.g. bash, cmd.exe, Bash on Windows)
Answer here: cmd.exe

This is a bug in the setup.py of the module. The file should be included in the setup.py file of the module.
https://docs.python.org/2/distutils/setupscript.html#installing-package-data

Thanks @tjprescott for finding this & @derekbekoe for point to the solution. Let me fix this soon


Please include "RUBYGEMS" as packageKey.system choice

Please include "RUBYGEMS" as packageKey.system choice.
Here is example GHSA url: https://github.com/advisories/GHSA-cvw2-xj8r-mjf7

Question was answered so closing this issue.


Yosys fixes

Hello Baard!
Here are a few minor fixes and a silly Makefile for building you excellent module with Yosys. Please review.
Geir

Flotte greier.
Rart med antall luts, jeg resyntetiserte til 39 luts i morges.
Vedlagt frynsete simuleringsbibliotek. Noe her er skrevet, annet er klippet
og limt.
Baard
On 21 June 2016 at 00:32, Geir Thomassen<EMAIL_ADDRESS>wrote:

Hello Baard!
Here are a few minor fixes and a silly Makefile for building you excellent
module with Yosys. Please review.
Geir
You can view, comment on, or merge this pull request online at:
https://github.com/bnossum/uart_ice40/pull/2
Commit Summary

Explicitly declare top level port direction
Added makefile for building with yosys
Makefile update, generate schematic diagram

File Changes

A Makefile
https://github.com/bnossum/uart_ice40/pull/2/files#diff-0 (29)
M icestick_uart.v
https://github.com/bnossum/uart_ice40/pull/2/files#diff-1 (3)

Patch Links:

https://github.com/bnossum/uart_ice40/pull/2.patch
https://github.com/bnossum/uart_ice40/pull/2.diff

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/bnossum/uart_ice40/pull/2, or mute the thread
https://github.com/notifications/unsubscribe/ARzGLFC_LsvBi2gL-d-cuxrfNQFuEjnrks5qNxTsgaJpZM4I6Mi8
.


Compilation error when passing a callback to onDidDismiss / onWillDismiss methods of overlay based components

Bug Report
Ionic Info
Run ionic info from a terminal/cmd prompt and paste the output below.
Ionic:

   ionic (Ionic CLI)          : 4.1.0 (/Users/max/.nvm/versions/node/v8.9.3/lib/node_modules/ionic)
   Ionic Framework            : @ionic/angular 4.0.0-beta.6
   @angular-devkit/core       : 0.7.3
   @angular-devkit/schematics : 0.7.3
   @angular/cli               : 6.1.3
   @ionic/ng-toolkit          : 1.0.7
   @ionic/schematics-angular  : 1.0.5

Cordova:

   cordova (Cordova CLI) : 8.0.0
   Cordova Platforms     : none
   Cordova Plugins       : no whitelisted plugins (0 plugins total)

System:

   Android SDK Tools : 26.1.1
   ios-deploy        : 1.9.2
   ios-sim           : 5.0.12
   NodeJS            : v8.9.3 (/Users/max/.nvm/versions/node/v8.9.3/bin/node)
   npm               : 6.4.0
   OS                : macOS High Sierra
   Xcode             : Xcode 9.4.1 Build version 9F2000

Environment:

   ANDROID_HOME : /Users/max/Library/Android/sdk

Describe the Bug
After update to 4.0.0-beta.6 code that uses overlay based components such as Modals and Alerts does not compile when a callback is passed to onDidDismiss or onWillDismiss methods.
The following error is displayed:
error TS2554: Expected 0 arguments, but got 1.

I also had this issue, solved it by using:
Change
.onDidDismiss((data) => {
to
.onDidDismiss().then((data) => {
The documentation lacks some information about this, but I can understand because its still in beta ;)

@bashoogzaad, thank you very much. Unfortunately, autocompletion in WebStorm doesn't work for Ion*Elements (https://github.com/ionic-team/ionic/issues/14784).

I understand, I have the same kind of 'struggles' in VSCode 😆

Just got it.


rename portid and port prefix for interchain accounts submodules

Description
I decided to remove the - from the port ID (ica-host) and prefix (ica-controller) and just make it one word (icahost and icacontroller), just in case we decide to do some parsing based on a - delimiter in the future.
closes: #778

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

[ ] Targeted PR against correct branch (see CONTRIBUTING.md)
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Code follows the module structure standards.
[ ] Wrote unit and integration tests
[ ] Updated relevant documentation (docs/) or specification (x/<module>/spec/)
[ ] Added relevant godoc comments.
[ ] Added a relevant changelog entry to the Unreleased section in CHANGELOG.md
[ ] Re-reviewed Files changed in the Github PR explorer
[ ] Review Codecov Report in the comment section below once CI passes

PR also opened in for ICS-27 spec.

Let's cut a beta release? @crodriguezvega @damiannolan @colin-axner

I'd like to see #767 fixed. I don't think we should release a beta if there are known bugs. It's is fine if the beta ends up with bugs, but I find it odd to release one knowingly with it. alpha-3 would be fine by me, but I don't see a rush

Let's cut a beta release? @crodriguezvega @damiannolan @colin-axner

I'd like to see #767 fixed. I don't think we should release a beta if there are known bugs. It's is fine if the beta ends up with bugs, but I find it odd to release one knowingly with it. alpha-3 would be fine by me, but I don't see a rush

Fair point. I am okay with waiting then, as well. alpha-3 sounds good.

Tagging auto-merge. I know the policy is the pr creator merges the pr, but I think this is an exceptional situation given it is a two line diff and @crodriguezvega has more important matters to attend to