Rate-limiting not working on batch download

First, thank you for making this tool! It works really well even for downloading large individual DM histories (e.g. multi-megabyte JSON outputs). I've written a small bash script to periodically download archives of DMs from multiple teammates:
#!/bin/bash
dms=( alice bob charlie )
for user in ${dms[@]}; do
    slack-history-export -t $SLACK_TOKEN -T dm -u $user -f $user.json
done

But after the first few work flawlessly, I start getting rate-limiting errors:
Error: Too Many Requests
    at Request.callback (/usr/local/lib/node_modules/slack-history-export/node_modules/superagent/lib/node/index.js:698:17)
    at IncomingMessage.<anonymous> (/usr/local/lib/node_modules/slack-history-export/node_modules/superagent/lib/node/index.js:922:12)
    at emitNone (events.js:85:20)
    at IncomingMessage.emit (events.js:179:7)
    at endReadableNT (_stream_readable.js:913:12)
    at _combinedTickCallback (internal/process/next_tick.js:74:11)
    at process._tickCallback (internal/process/next_tick.js:98:9)
working/usr/local/lib/node_modules/slack-history-export/node_modules/slack-api-client/lib/api/common/base_class.js:40
            throw err;

Without knowing much Node I suspect that maybe the first few requests (auth, find user-id, etc.) don't check the rate-limiting? Once it starts downloading messages it seems to work fine.
$ slack-history-export -V
0.4.1

Thanks for reporting, I will look into this...

I also got:
Error: Too Many Requests     at Request.callback (/usr/local/lib/node_modules/slack-history-export/node_modules/superagent/lib/node/index.js:698:17)     at IncomingMessage.<anonymous> (/usr/local/lib/node_modules/slack-history-export/node_modules/superagent/lib/node/index.js:922:12)     at emitNone (events.js:91:20)     at IncomingMessage.emit (events.js:188:7)     at endReadableNT (_stream_readable.js:974:12)     at _combinedTickCallback (internal/process/next_tick.js:80:11)     at process._tickCallback (internal/process/next_tick.js:104:9)
after running
slack-history-export --token "token" --channel "#all"

I might have to build in rate limiting into my own script since I use yours too.

You just need to tone down to one request per second, then it will be perfectly fine.
https://api.slack.com/docs/rate-limits#outgoing_webhooks

I created a pull request to address this issue: https://github.com/hisabimbola/slack-history-export/pull/47/files

I just tested this and I do not seem to be getting rate limiting issue. This is because the slack sdk module being used implemented some retry mechanism as seen here.
Closing this issue

@hisabimbola  Unfortunately, I don't think this is actually working.  I've been getting Error Too Many Requests (HTTP 429) when using slack-backup to back up my entire workspace at once.
Looking at the package.json for slack-history-export, I see you are set to use slack 8.1.2.  The closest tag I could find one GitHub is 8.4.2, and this is _exec.js at v8.4.2.  That version doesn't show any rate limiting code except for a commented-out variable.
(Aside: in your last comment you linked to master rather than a specific commit/tag, so it's possible that the code changed in the meantime.  If you want to avoid that, in the GitHub UI you can click the dropdown at top-left to select a specific tag, or click the commit link at top right.  You can also just replace master in the URL with the tag or commit SHA that you want to use.)
Additionally, this is the rate-limiting code in the current version of the file you linked to:
if (err && err.message === 'POST failed with: 429') {
  // workaround Slacks lack of symmetry not ours…
  var e = Error('ratelimited')
  e.retry = err.raw.headers['retry-after']
  callback(e)
}

so it looks like it only builds an error to tell you that you've been rate-limited, it doesn't do any automatic retrying.
In order to fix this, I think you'd need to update to the latest version of the slack package and then add some retry code for each call made.  (E.g. here for the users list.)
I'd offer to write a PR myself, but I can't guarantee I'll be able to commit the time anytime soon, and I can work around this for now by manually re-downloading any failed files.


Laravel 5

farsi or persian translation files.
fa.zip

Thanks for contributing - however it looks like you based your changes in the laravel-5 branch, which is for version 2.0. If that's what you intended to do, can you open a new PR pointing to the laravel-5 branch, or base your changes in the 3.0 branch and open a PR to that instead. Thanks :)


Skypack Deno build failing on v3.7.3

Describe the bug
latest version 3.7.3 updated the lru-cache dependancy to v8.0.0 which broke the skypack build. it's not usable in Deno
Your Example Website or App
https://deno.land
Steps to Reproduce the Bug or Issue
import graphql-yoga as a dependancy from "https://cdn.skypack.dev/graphql-yoga@3.7.3?dts"
Expected behavior
As a user, I expected to be able to run graphql-yoga on Deno but instead its broken
Screenshots or Videos
[Package Error]<EMAIL_ADDRESS>could not be built. (Imported by "graphql-yoga").
[1/5] Verifying package is valid…
[2/5] Installing dependencies from npm…
[3/5] Building package using esinstall…
Running esinstall...
Failed to load node_modules/lru-cache/dist/mjs/index.js
Unexpected token (356:4) in lru-cache/dist/mjs/index.js
Install failed.
Install failed.
error: Uncaught Error: [Package Error]<EMAIL_ADDRESS>could not be built. (Imported by "graphql-yoga").
throw new Error("[Package Error]<EMAIL_ADDRESS>could not be built. (Imported by "graphql-yoga").");
^
at https://cdn.skypack.dev/error/build:lru-cache@v8.0.0-CbzWaRTgC9zXCItABmat?from=graphql-yoga:20:7
Platform

OS: Linux
Deno: v.1.31.3
@graphql-yoga/* version(s): 3.7.3

Additional context
No response

Hey @hazelnutcloud, we upgraded the instructions for using yoga with deno in https://github.com/dotansimha/graphql-yoga/pull/2602
See https://github.com/dotansimha/graphql-yoga/pull/2602/files#diff-3f5a054e73ed391bb655a5b14c8b59fe2537efb7cab19601e165fb8dd331911e

Hey @n1ru4l, I've tried the new example and it seems that using graphql-yoga with deno's npm resolver is broken. when I go to the endpoint using the browser, I get an ERR_EMPTY_RESPONSE. I haven't tested the endpoint to see if it's responding to graphql requests though.

I've found a fix to this issue and made a PR here: #2604


Fix(eos_designs): Incorrect type for ospf.area in network services keys

Change Summary
Incorrect type for ospf.area in network services keys, should be of type string instead of an integer.
Related Issue(s)
Fixes #2996
Component(s) name
arista.avd.eos_designs
Proposed changes

updated schema to type str
updated structured config output default to "0"

How to test

Molecule passes, and not expected changes.

we should default to "<IP_ADDRESS>" since that is how EOS translates "0"


[FEATURE] Mark bounced requests in access.log

Is your feature request related to a problem? Please describe. 🐛
Currently, when a request is bounced, the only way to see that in access.log is by looking for "403" codes, but as you can imagine, this could also mean that the underlying app returned 403.
Describe the solution you'd like ✨
Add a request header clearly stating if the request was blocked by crowdsec.

Hey, it's an excellent idea, let's do it.
What do want to expose ? The request decision (Header CS-Decision: ban (or captcha)) or just the fact that the bouncer has block this request (Header CS-Decision: 1)

Yeah, like max said, we could add it in the plugin, but I think by default it should be disabled.
Adding information in the response can give an attacker information that the product Crowdsec has blocked the request. So it should be activated by the admin knowingly.
We're open to PR if you wan't try to add it, otherwise we will try to do it when we get some free time to work on it


Is it possible to add some additional options from config.json to docker-compose?

The site describes various variables that can be configured in config.json, but how do you use them in docker? I've looked all over but couldn't find anything about this. Thank you.

I saw it, but there is not much there, for example, all the parameters from this page are missing
https://owncloud.dev/clients/web/getting-started/

I saw it, but there is not much there, for example, all the parameters from this page are missing https://owncloud.dev/clients/web/getting-started/

I think that's mixing it up a bit (or maybe I'm wrong here also), but web project gets configured using a config file (the link you provided) and then gets delivered from the oCIS web service (https://owncloud.dev/services/web/configuration/) where you can e.g. use an env var to link to your config.json

config.json

That is, I can add my own config.json to .yml file (and how to spell it correctly?), but can I add only those parameters that I need in the config.json file itself, without having to manually do the entire config?

config.json

That is, I can add my own config.json to .yml file (and how to spell it correctly?), but can I add only those parameters that I need in the config.json file itself, without having to manually do the entire config?

Let me add @kulmann here because he has the best insights into how this is going to evolve in the near future I suppose :)

Hey @rtest12 there is a list of env variables for the web service here:
https://doc.owncloud.com/ocis/next/deployment/services/s-list/web.html
It shows some env vars which can be used to modify values inside the default config.json that's shipped by oCIS. More specifically:

WEB_UI_CONFIG_SERVER for setting the server URL (also set by OCIS_URL)
... and the OIDC config values:

WEB_OIDC_METADATA_URL for the well known endpoint
OCIS_OIDC_ISSUER for the oidc issuer
WEB_OIDC_CLIENT_ID for the web client id
WEB_OIDC_RESPONSE_TYPE for the oidc response type
WEB_OIDC_SCOPE for the scopes that you want to request from the idp

More env vars could be added here as needed: https://github.com/owncloud/ocis/blob/master/services/web/pkg/config/config.go#L34
Are there any specific value(s) you're looking for?


Resource request - Take Offline / Bring Online

Details of the scenario you tried and the problem that is occurring
Would you consider creating a dsc resource for taking a database offline, as well as bringing it online?
I'd like to use a pure DSC approach for taking a copy of a database (its files) on one server, and copying them and attaching them on another.

Take database offline

Copy its files to some location (I can use standard file dsc resources for this)

Bring database back online

Drop any existing database on the other server (can use database resource for this)

Create a new database on this other server, by attaching the files copied from step 2. (think I can use database resource for this too)

There has been a resource proposal in issue #532 for backup and restore of a database. But I see this resource proposal is different as you want to have a resource that moves the files to a shared folder. From that shared folder another target server (and another DSC configuration) copies the database files to itself and add it to the (other) SQL Server.
I'm seeing 1-3 is one resource, and 4-5 is another resource. Or, at least 1-3 and 4-5 are two different configurations.
Label this as a resource proposal and help wanted so that anyone can pick this up and run with it.


Fix lint

Signed-off-by: Eugene Lee<EMAIL_ADDRESS>Description
Fix lint
Issues Resolved
[List any issues this PR will resolve]
Check List

[ ] New functionality includes testing.

[ ] All tests pass, including unit test, integration test and doctest

[ ] New functionality has been documented.

[ ] New functionality has javadoc added
[ ] New functionality has user manual doc added

[ ] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #424 (3fba933) into application-analytics (13b1b23) will increase coverage by 13.24%.
The diff coverage is n/a.

@@                     Coverage Diff                      @@
##             application-analytics     #424       +/-   ##
============================================================
+ Coverage                    59.80%   73.05%   +13.24%
  Complexity                     273      273
============================================================
  Files                          203       38      -165
  Lines                         6931     2119     -4812
  Branches                      1332      235     -1097
============================================================
- Hits                          4145     1548     -2597
+ Misses                        2585      408     -2177
+ Partials                       201      163       -38

Flag
Coverage Δ

dashboards-observability
?

opensearch-observability
73.05% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...lytics/components/config_components/log_config.tsx

...cs/components/config_components/service_config.tsx

...tics/components/config_components/trace_config.tsx

...onents/application_analytics/components/create.tsx

...application_analytics/helpers/modal_containers.tsx

...ervability/public/components/explorer/explorer.tsx

...ace_analytics/components/services/service_view.tsx

..._analytics/components/traces/span_detail_panel.tsx

..._analytics/components/traces/span_detail_table.tsx

...s/trace_analytics/components/traces/trace_view.tsx

... and 155 more

Continue to review full report at Codecov.

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


Web UI frontend-backend sync

I have read how you sync all JS/CSS/Images in an app to match the specific version currently used.
How do you sync the frontend with backend in web apps?
for example, a new version is rolled out to the servers, in that version an existing endpoint is expecting an additional parameter to be sent by the UI. As long as the client didn't refresh his browser, we will still get request from the old frontend code, missing the additional parameter needed.
Same goes for renamed/changed/deleted endpoints - we have a mismatch between the frontend version currently used by the browser and the backend version deployed in the server.
Would love to get your input on this issue.

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

ID: 2a2ce105-dd81-28b5-4e5b-9205fd7a6708
Version Independent ID: 3b95b0ff-25de-86e4-107e-46c93b0a727e
Content: Achieving No Downtime Through Versioned Service Updates - Azure DevOps
Content Source: https://mseng.visualstudio.com/DefaultCollection/TechnicalContent/_git/devops-learn-pr?path=%2fdocs%2fdevops-at-microsoft%2fachieving-no-downtime-versioned-service-updates.md&version=GBlive&_a=contents
Product: devops
Git Login: samgu
Microsoft Alias: buckh

Please accept our apology for the significant delay in addressing this issue.
It looks like you're working through an issue with the product itself, rather than an issue with the documentation. Here are a few options where you might consider asking your question:

Azure DevOps on Stack Overflow
Azure DevOps Support Bot


Support NSLinkAttributeName

It would be cool if for example I have:
"You accept the Terms Of Service"
with 'Terms Of Service' clickable and calling some handler/action for opening links, segue, or doing something.

I believe the link tapping would have to be handled by a UITextView or perhaps TTTAttributedLabel. But BonMot could certainly support adding NSLinkAttributeName to a string. Would you be interested in adding a pull request to that effect, @angelmixu?

Yup, I was looking for an overpowered UILabel in Swift and just got to TTTAttributedLabel and BonMot, I liked a lot BonMot but lacked touch sections.
@ZevEisenberg right now I'm quite busy, but in some time I'll be glad to try to implement it :)

I've renamed this issue, because I think adding NSLinkAttributeName is a great idea and I'd like it to be a part of BonMot. I'll try to get to it soon, but if someone else wants to add it, I'm happy to help if you get stuck.

To clarify: I probably won't add link-tapping detection to BonMot. It should be easy to use BonMot to generate the link (once this issue is closed), and then pass the attributed string on to TTTAttributedLabel or UITextView.


Add missing input/output JSON schemas

Purpose

Add input/output JSON schemas for operations.
fixes wso2/micro-integrator#3221

Since we are prioritizing connector usage with VSCode extension, this PR might be outdated. We can revisit this when needed.


[web] [google_maps_flutter_web] Polygon click issue

Hi Flutter team
the GoogleMap onTap(latLng) callback is not fired in the google_maps_flutter_web when the polygon is drawn on the map and the user taps(clicks) on the polygon area.
minimum example to reproduce:
class MapsBug extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: GoogleMap(
        initialCameraPosition: const CameraPosition(target: LatLng(50.10, 14.25), zoom: 10),
        polygons: {
          const Polygon(
            polygonId: PolygonId("polygon"),
            points: [
              LatLng(50.40, 14.10),
              LatLng(50.10, 14.10),
              LatLng(50.10, 14.50),
              LatLng(50.40, 14.50),
            ],
          )
        },
        onTap: (latLng) {
          print("NOT fired when clicked on Polygon");
        },
      ),
    );
  }
}

google_maps_flutter: 2.2.0
google_maps_flutter_web: 0.4.0+2

flutter doctor -v
[✓] Flutter (Channel stable, 3.3.2, on macOS 12.6 21G115 darwin-arm, locale en-CZ)
    • Flutter version 3.3.2 on channel stable at /Users/stenlee/Developer/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision e3c29ec00c (6 days ago), 2022-09-14 08:46:55 -0500
    • Engine revision a4ff2c53d8
    • Dart version 2.18.1
    • DevTools version 2.15.0

Hello @stenlee. Thank you for filing this issue. Can you please provide the following information?

A complete and minimal, reproducible example.
The output of flutter doctor -v
The output of flutter run-v

google_maps_flutter_web: 0.4.0+2

flutter doctor -v
[✓] Flutter (Channel stable, 3.3.2, on macOS 12.6 21G115 darwin-arm, locale en-CZ)
    • Flutter version 3.3.2 on channel stable at /Users/stenlee/Developer/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision e3c29ec00c (6 days ago), 2022-09-14 08:46:55 -0500
    • Engine revision a4ff2c53d8
    • Dart version 2.18.1
    • DevTools version 2.15.0

You need to set consumeTapEvents to true. Please read the documentation here which states:

If this is false, onTap callback will not be triggered.

Closing this issue as it is working as expected.

hi @exaby73 ,
Thank you for your reply.
The problem is the GoogleMap.onTap(latLng) callback is NEVER triggered when clicking on Polygon area. Regardless of the cosumeTapEvents is set to true or false.
Reopening as #112037 with better description and example.

@exaby73
Thank you for re-opening the issue.
I just updated the original report with a better example of the issue 👍

@stenlee Can you confirm that it works as expected on Android and iOS?

@exaby73 - Yes, I can confirm it works as expected on Android and iOS.
We are using the GoogleMaps (Flutter iOS+Android) intensively for VFR Navigation for pilots - https://www.flylog.io
Currently, we are in the process of migrating the web client from Angular to Flutter to get the best from the technology and this is one of the issues we are facing.

From the google_maps_flutter_web README on pub.dev:

Google Maps for web uses HtmlElementView to render maps. When a GoogleMap is stacked below other widgets, package:pointer_interceptor must be used to capture mouse events on the Flutter overlays. See issue #73830.

Could you please try the steps highlighted there?

@exaby73 - No it is not.
The part of the documentation you are mentioning is connected to using overlays on TOP of the maps.
As I described in the provided example (no overlays are used in the example)

the GoogleMap.onTap(latLng) callback is NOT working when the polygon is drawn on the map and you click on the polygon area.
when you click somewhere else on the map(where the polygon is not drawn) the onTap callback is working as expected.

Hello @stenlee. Could you share sample code in the form of a repo with reproducible steps. For some reason, I am getting a blank screen on web when trying to run the code.

@exaby73
to prevent a blank screen remember to put the following line to your index.hml file
(remember to replace "your-key" with your GoogleMaps API key)
<script src="https://maps.googleapis.com/maps/api/js?key=<your-key>"></script>

If you don't have API key, you can use it without - warning will be visible on the page, but the bug is still reproducible
<script src="https://maps.googleapis.com/maps/api/js"></script>

click on big black Polygon = no onTap() callback
click somewhere else - onTap() callback is working

Triage report
The click event did not register when clicking on the polygon. Looks like the blank screen was an API key problem. Resetting the billing account and re-generating the API key on my account solved it.
Versions reproducible on

Stable (3.3.2)

Info

Code Sample
import 'package:flutter/material.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const MapsBug(),
    );
  }
}

class MapsBug extends StatelessWidget {
  const MapsBug({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: GoogleMap(
        initialCameraPosition:
            const CameraPosition(target: LatLng(50.10, 14.25), zoom: 10),
        polygons: {
          const Polygon(
            polygonId: PolygonId("polygon"),
            points: [
              LatLng(50.40, 14.10),
              LatLng(50.10, 14.10),
              LatLng(50.10, 14.50),
              LatLng(50.40, 14.50),
            ],
          )
        },
        onTap: (latLng) {
          debugPrint("NOT fired when clicked on Polygon");
        },
      ),
    );
  }
}

Flutter Doctor
flutter doctor -v (Stable)
[✓] Flutter (Channel stable, 3.3.2, on Microsoft Windows [Version 10.0.22000.978], locale en-US)
    • Flutter version 3.3.2 on channel stable at C:\Users\Nabeel\fvm\versions\stable
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision e3c29ec00c (8 days ago), 2022-09-14 08:46:55 -0500
    • Engine revision a4ff2c53d8
    • Dart version 2.18.1
    • DevTools version 2.15.0

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at C:\android-sdk
    • Platform android-33, build-tools 33.0.0
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.12+7-b1504.28-7817840)
    • All Android licenses accepted.

[✓] Chrome - develop for the web
    • CHROME_EXECUTABLE = C:\Program Files\BraveSoftware\Brave-Browser\Application\brave.exe

[✓] Visual Studio - develop for Windows (Visual Studio Community 2022 17.3.2)
    • Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Community
    • Visual Studio Community 2022 version 17.3.32819.101
    • Windows 10 SDK version 10.0.19041.0

[✓] Android Studio (version 2021.2)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.12+7-b1504.28-7817840)

[✓] VS Code (version 1.71.2)
    • VS Code at C:\Users\Nabeel\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.46.0

[✓] Connected device (4 available)
    • sdk gphone64 x86 64 (mobile) • emulator-5554 • android-x64    • Android 13 (API 33) (emulator)
    • Windows (desktop)            • windows       • windows-x64    • Microsoft Windows [Version 10.0.22000.978]
    • Chrome (web)                 • chrome        • web-javascript • unknown
    • Edge (web)                   • edge          • web-javascript • Microsoft Edge 105.0.1343.42

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

Hi @stenlee,
I have developed a workaround to bypass the issue.
The idea is to use the onTap callback from Polygon and redirect it to the one used in GoogleMap.
The only problem is that the signature is different, the latter needs a LatLng parameter.
So the onTap Polygon callback has to find the LatLng position converting the Screen Coordinates.
I'll explain my steps:

create a variable
 var screenCoordinate = const ScreenCoordinate(x: 0, y: 0);
wrap your googlemap in a MouseRegion with onHover callback:
MouseRegion(onHover: updateLocation, child: googleMap),
define the callback to update the screen coordinates

Future<void> updateLocation(PointerEvent details) async {
  screenCoordinate = ScreenCoordinate(
      x: details.localPosition.dx.round(),
      y: details.localPosition.dy.round());
}

define a callback for GoogleMap

    GoogleMap googleMap = GoogleMap(
...
      polygons: createPolygons(),
...
      onTap: (position) {
        onMapTap(position);
      },
    );

    void onMapTap(LatLng latLng) {
     print("clicked at ${`latLng}");
    }

define a callback for Polygon

Set<Polygon> createPolygons() {
      _polygons = {};
        _polygons.add(
          Polygon(
            polygonId: const PolygonId('yourID'),
            points: yourPoints,
            onTap: onTapFeature,
          ),
        );
  return _polygons;
}
  void onTapFeature() {
    Future.delayed(Duration.zero, () async {
      LatLng latLngPosition =
          await _gmController!.getLatLng(screenCoordinate);
      onMapTap(latLngPosition);
    });
  }

Same issue with version 0.5.8.

This issue is still not fixed in the google_maps_flutter: ^2.9.0 version

Thanks for the workaround @MaurizioSodano it's still helpful almost 2 years later

Happy to help, though I had hoped this issue would have been resolved by now.


fix: Sheet.scroller from within and Shadow DOM

Fixes an issue that causes the Sheet.Scroller to not scroll when the Sheet has a mount point that is within a ShadowDOM
https://github.com/user-attachments/assets/1f4e8783-443c-4d5e-b396-0ac9fab576aa

@alexkates Thank you for this PR! 👏🏻
I ended up pushing these fixes separately due to having quite limited time to fix merge conflicts 😅
You can test the v3.5.0 release to verify that things work as expected 😊

[!NOTE]
Once this another PR has been merged there will be v4 release with support for React 19 and migration to the new motion package that has replaced framer-motion.


[Feature Request] Parse data in response headers

CoinAPI provides data on request limits, exchanges used in aggregation of OHLCV data, and possibly more that I'm not aware of in the response headers. As far as I can see, the response header is currently neither parsed nor stored. I think it would be good to capture that information, either by parsing it for the relevant request or by just giving the CoinAPIv1 class an attribute response_header and leaving it to the user to parse it. I have only looked at the Python SDK, but I imagine the other languages are similar.
Do you think this makes sense generally and one of the implementations above specifically? If so, I'm happy to make a PR for the Python SDK.

This suggestion is valid as we are tracking it, however can't provide a timeline for that at this moment.

CT

CT

?

@iuvbio Will you be making PR for this?

I hope to get some time to take a look in the next weeks, this has been completely off my radar for a while.


[FEAT] Flashcards Review Schedule (Queue) Sidebar

Problem: I've been setting up and testing the plugin for language learning over the last week or so. It's a cool plugin and I'm able to achieve what I wanted. As a new user, I tripped over a few things that were mostly UI related. I wasn't using Note Review, only Flashcards. One thing that I struggled with was to see & understand much about what was going on with Flashcard scheduling. There is the stats page, but there's not much visible that's up front in the UI, rather than behind a command. I played around with Note Review a bit, enough to see how it affects the Note Review Queue. I think I was expecting to be able to find for Flashcards was something similar to the Note Review Queue, to display upcoming Flashcards.
I'd quite like a "Flashcard Review Schedule (/Queue) as a sidebar. This would help me see what's scheduled & when, to build a mental picture of what the scheduling system is doing. It could also be a way to launch a review (more useable in iOS where the command launcher is a bit fiddly). A rough guess at how it might look would be a collapsible section-dropdowns by date, where any date with a scheduled flashcard is populated. Under each date section is the list of cards. If there is interactivity built into that panel, then there could be a few things like:

Clicking somewhere at the top of the Flashcard Review Schedule panel would launch today's review.
Clicking on the date-section could launch a review of those notes (as if they were due to be reviewed).
Clicking on a line under a date section would open the note that flashcard is in.

Not 100% sure if all that makes sense with respect to how the plugin works (again, new user, learning). But hopefully it's a semi-useful feature suggestion. I did have a quick scan of the roadmap but I don't think I saw anything similar.

Hi @guycalledxan, nice idea
A new issue has recently been raised with similar ideas #813
One difference is that you are proposing that the UI would have one entry per flashcard, whilst #813 proposes one entry per note.
What do you think about that suggestion?
Cheers
Ronny

I'd still need it per flashcard. You make the point "each note can have multiple flashcards". You also mention "I presume that the same note would be listed multiple times if the cards within it have multiple review dates?" - that could work, but I'd need the item heading to include some text about the flashcard, so I didn't just see the note over and over.
I've been using Spaced Repetition since that first request, for language learning. I wanted to use it to replace Memrise, with my own vocab list. I've managed to make the switch and keep using SR. And I've better settled into how I use it now. I pretty much only use the inline reversed flashcards.
At first, I was creating a note per word. Inside that I had a inline reverse flashcard for the word. Occasionally I'll have more than one, e.g. the word and perhaps phrases where it's use translates differently. That got a bit too laborious to maintain. Now I tend to have a note per class with a Vocab heading. There I'll have a list of inline reversed flashcards. It's not uncommon that the list will be 10-20 words long per note. I'll also have some in other sections, usually for phrases.
So In the example you give I'd see:
Tomorrow
Lesson 23_10_11 (5)
Lesson 23_10_18 (20)
I was hoping to see a list by flashcard:
Tomorrow
Word1 (Lesson 23_10_11)
Word2 (Lesson 23_10_11)
...
Word6 (Lesson 23_10_18)
etc.
It'd be a much longer list that way... perhaps there'd be ways to collapse sections. Another option might be:
Tomorrow
Lesson 23_10_11
Word1
Word2
Lesson 23_10_18
Word 6
Tuesday
Lesson 23_10_11
Word3
Lesson 23_10_18
Word 7
Word 8
etc.


New Tags Numeric show options with that ID

Hi
I have a problem
I have made a multiple tag manager for selecting colors
Red, Green, Blue, Black, etc..
so, the user can select multiple of them. But i want to the user ADD new colors too.. so I used the tags=true option
but now i have a problem.
my default color are coming from DB with their IDs

Red
Green
Blue
Black

and if the user wants to add a color called 3 the Select2 add me to the select the option Blue automatically .
That is a bug or a problem.
Thanks

Same thing here. Have you found any solution for the issue?

This is definitely a bug: https://github.com/select2/select2/issues/3681

yes. dont use numbers for id, elsewhere use the whole name, like Red, Green, Blue...

Closing this as a duplicate of #3681.


Pass variable (You should use the *= operator for each variable) appears wrong when correct (doesnt effect passing)

Challenge Assignment with Times Equals has an issue.
User Agent is: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:
var a = 5;
var b = 12;
var c = 4.6;

// Only modify code below this line

a *= 5;
b *= 3;
c *= 10;

@livinglegendparagon Your code passes for me.
Can you please be more specific? Can you post some screen shots here?
Please visit our Help Chat if you are stuck.
Thanks.

it is very specific, let me decode it for you.
When you do a challenge you have variables you need to pass, (passVariable)
this particular passVariable with the string value of "You should use the *= operator for each variable".
displays a red 'X' compared to a green check mark.
But I am still able to pass.
Solution: check the if/else statements for the passVariable that displays the string "You should use the *= operator for each variable" to have it correspond.
Note: if you stay on page and ctrl+enter again, it resets. something about the first time you run the code.
plan human terms, when i passed my quiz the side bar said i failed one objective on the quiz.

@livinglegendparagon
Thanks I believe this is down to your browser, I tested this use case and can't seem to reproduce.
Can you please test if you are getting this on any other browser and if possible on any other device as well?
Since you are the only person so far getting this I guess we need some help in analyzing from you.
Also it would be really helpful if you could post some screenshots as I mentioned earlier.
Thanks again.

Yeah, give me a chance. Seems like is has to do with the javascript
updating. I'll be home in a couple of hours
On Mar 16, 2016 10:18 PM, "Mrugesh Mohapatra"<EMAIL_ADDRESS>wrote:

@livinglegendparagon https://github.com/livinglegendparagon
Thanks I believe this is down to your browser, I tested this use case and
can't seem to reproduce.
Can you please test if you are getting this on any other browser and if
possible on any other device as well?
Since you are the only person so far getting this I guess we need some
help in analyzing from you.
Also it would be really helpful if you could post some screenshots as I
mentioned earlier.
Thanks again.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/FreeCodeCamp/FreeCodeCamp/issues/7572#issuecomment-197706094

I do not own a MacMac. I do not have Windows windowswindows nor do I use browser listed

@Dman89 Any updates on this? If this is resolved or not reproducible, would you mind closing?

Closing as stale. Please comment if you are facing still facing this.


docs: update Internal Packages to mention transpilePackages in Next.js 13

Thanks! This has been updated via another PR to be the primary recommendation


There should not be any UI issue when the user is trying to write a review for the product in mobile view.

Bagisto Version: Master
Steps To reproduce--
1. Visit shop in mobile view.
2. Click on any product.
3. Try to write a review for the product.
Expected result: There should not be any UI issue when the user is trying to write a review for the product in mobile view.
Actual result: There is a UI issue on the Bills theme when the user is trying to write a review for any item. Please find the screenshot Here

@jitendra-webkul
Thanks, now this issue is fixed, so I am closing this issue.
And I have attached a screenshot Here. for future reference.


Show tutorial step by step during first game levels

As in Angry Birds

https://www.behance.net/gallery/25353405/Righteous-gestures-free-gestures-set


mocking timezone

We have used this tool in order to support mocking system clock in our Jest tests. The problem is that our test files run in containers around the world with different timezones.
So, it would be great if we could set the timezone in order to make our tests independent from location. This approach makes writing and understanding our test scenarios straightforward.

FWIW, I believe you can control this via env var. In the past, I've added TZ=UTC in my test script to ensure timezone consistency (which was a minor issue when I was writing tests with my Sydney-based colleagues).

This has been discussed in #48 before and the most reliable solution is to set the TZ environment variable, as @mAAdhaTTah mentioned. It's not possible to adjust the timezone from within JavaScript.


[QUESTION] What is the latest software version for P110 that is compatible with PyP100?

Hi, I am currently using P110 plug with software version 1.3.0 with the new protocol.
I get the error Failed to initialize protocol AuthProtocol.
I've seen in readme that the new authentication method is currently compatible with the P100 version 1.2.1 and I am wondering if that is the latest version that is tested to be compatible?
Before the software update, the connection with my plug worked fine.
Do you have any suggestions to make it compatible with the 1.3.0 version? or maybe reason for my issue could be different?

I can confirm the current code base will read the P110 device. I ran through the basic functions, e.g. get device info, power stats and toggle on/off for firmware version 1.3.0 Build 230905 REL.152200

With a device on 1.3.1 Build 240621 Rel. 162048, I am not able to establish a connection. Also getting Failed to initialize protocol AuthProtocol, but the root cause seems to be that the failing connection itself:
requests.exceptions.ConnectionError: HTTPConnectionPool(host='<ip>', port=80): Max retries exceeded with url: /app (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f893b909b80>: Failed to establish a new connection: [Errno 113] No route to host'))
An error occurred during handshake: Failed to initialize protocol

It used to work in January. My network didn't really change since then, so I suspect it's at software level.
Could the firmware version be the cause for the device rejecting connections (compatibility issue or so...)?

As the Android app works fine, I wanted to test what accesses it makes (to compare it to what I try to do from the PC with python).
Short research results:

according to PCAPdroid, Tapo app makes no local requests at all to the P110 plug - it connects to TP-Link's internet servers
a cross-check confirms: when disabling internet access for Tapo app, the switch does not work and the energy infos are not shown in the app!

Can it be that since some version the local requests are not accepted anymore? Can anyone confirm that?

I have 3 devices, all with 1.3.1 Build 240621 Rel. 162048. And they still work fine.


Update the splash screen redirect navigator to accept named routes

I am using Material named routes in my application, which means that using this plugin breaks the flow a little. I have added a small conditional statement that allows me to pass a named route, and then have the navigator push that.
Tested using my local application development environment.
Signed-off-by: Andrew Lowther<EMAIL_ADDRESS>

Will add it .


How to import js and create html element for web?

I very like flutter,Especially web;
but there is too little complete information;
I dont know how to import js ;
how to create div-element pass to the third party JS;
I want a excemple;
I like one project finish it; It's easy to learn;

Hi @yizems
You can use js to access js in your dart code
This platform is not meant for assistance on personal code. Please see https://flutter.dev/community for resources and asking questions like this, you may also get some help if you post it on Stack Overflow. Closing, as this isn't an issue with Flutter itself,
if you disagree please write in the comments and I will reopen it
Thank you


Refactor fieldFilter to remove constants.

Instead allow things like:
fieldFilter('event', '=', '100')

Could we even make this:
fieldFilter('event =', '100')

The full set of operations would include ^ (prefix), $ (suffix), ~ (contains), !~ (not contains).

Fixed in https://github.com/sajari/sajari-sdk-js/commit/5aa884412bca81cd3e80752d09dbf25ac4c4dfa1


Implement a Daisy Host that provides signals for knobs, buttons, CV, and audio input/output

Currently there is some ad-hoc support for binding libdaisy's API to Signaletic signals within the two Bluemchen examples. This code should be generalized into a Daisy "Host" API that provides signals for:

Knobs
Encoders
Buttons
CV inputs and outputs
Audio inputs
Audio outputs

Further to this, we'll need board-specific Host types (or subtypes) for the different Daisy-based modules we support—Bluemchen (and Nechmeulb), DPT, and (eventually) Versio.


Feat/init web app

Codecov Report

Merging #12 (b1544b9) into main (61074de) will decrease coverage by 0.20%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main      #12      +/-   ##
==========================================
- Coverage   86.30%   86.11%   -0.20%
==========================================
  Files           9        9
  Lines         219      216       -3
  Branches        8        4       -4
==========================================
- Hits          189      186       -3
  Misses         30       30

Impacted Files
Coverage Δ

.../client/components/SelectCluster/SelectCluster.tsx
100.00% <100.00%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Create grid system classes repeated code

I am trying to make grid system classes like boostrap has, but the problem is i have repeated code in every class like this:
@for $i from 1 through $col-nums {
  .col-#{$i} {
     @include span($i of 12);
  }
}

.col-1 {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 8.33333%;
  float: left;
  padding-left: 0.83333%;
  padding-right: 0.83333%;
}

.col-2 {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 16.66667%;
  float: left;
  padding-left: 0.83333%;
  padding-right: 0.83333%;
}
.....

There is a way to get around this problem?

You might be able to use the extends functionality of sass. See
http://sass-lang.com/documentation/file.SASS_REFERENCE.html#extend.
In that case your code would look like:
.col-1 {
-moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 8.33333%;
  float: left;
  padding-left: 0.83333%;
  padding-right: 0.83333%;
}

.col-2 {
@extends .col-1;
}

.col-3 {
@extends .col-1;
}

The output should look like:
.col-1,
.col-2,
.col3 {
-moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 8.33333%;
  float: left;
  padding-left: 0.83333%;
  padding-right: 0.83333%;
}

But you does not change the width.

No problem, this:
.col-1 {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
width: 8.33333%;
float: left;
padding-left: 0.83333%;
padding-right: 0.83333%;
}
.col-2 {
@extend .col-1;
width: 16.7%;
}
will output this:
.col-1,
.col-2 {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
width: 8.33333%;
float: left;
padding-left: 0.83333%;
padding-right: 0.83333%;
}
.col-2 {
width: 16.7%;
}

I does not want to generate the width, for this i use susy mixin span. you solution is not good. look at my example in the issue.

This could be fixed if Susy had an $output parameter attached to it's mixin that generates column code. Basically you have 3 options: normal (which outputs all code), init (which just outputs initialization code like the box-sizing stuff), and bare (which just outputs the width).
I tried to do this with my grid system but where it's pretty dependent on nth-child stuff I failed. Seems like it'd be an easy addition here though.

How you output only the width?

I don't think Susy offers this ability, but I'm saying it would be a fairly easy fix for them.
Consider this really dumbed down code:
@mixin grid-column($fraction) {
  float: left;
  margin-left: 15px;
  margin-right: 15px;
  width: 100% * $fraction;
}

If there were an $output param it might look like this:
@mixin grid-column($fraction, $output: normal) {
  @if ($output == normal) or ($output == init) {
    float: left;
    margin-left: 15px;
    margin-right: 15px;
  }
  @if ($output == normal) or ($output == bare) {
    width: 100% * $fraction;
  }
}

Then someone could say:
[class*="col-"] {
  @include grid-column($output: init);
}

@for $i from 1 through 12 {
  .col-#{$i} {
    @include grid-column($i/12, $output: bare);
  }
}

And the code outputted would be:
[class*="col-"] {
  float: left;
  margin-left: 15px;
  margin-right: 15px;
}

.col-1 {
  width: 8.333333333%;
}

.col-2 {
  width: 16.666666667%;
}

etc...

Look good, so maybe you are gonna do a pull request?

This is a duplicate of #143. Susy takes a different approach to the repetition issue. Rather than adding new parameters for every use case, we provide all the functions you need to customize your own system. If you want just the width output from span, use the function instead of the mixin: width: span(3 of 7); — the syntax for it is the same. With the Susy functions, you can build any grid system you want. We also provide a way to set global box-sizing, so that doesn't have to be repeated in every instance.
@include border-box-sizing;

[class*="col-"] {
  @include gutters;
  float: left;
}

@for $i from 1 through 12 {
  .col-#{$i} {
    width: span($i of 12);
  }
}

:+1: I think I like your solution better @ericam

Thanks this is what i want :)


MECH - Create level for character and asset development and testing.

Definition of Done:
Development level for asset and mechanic testing exist
Implementation:

[ ] Level contains basic objects and 3D shapes with grid textures
[ ] Existing assets needed to be added are spaced to prevent crowding of objects
[ ] A single elevated platforms exist

Completed in:
The ticket will be completed in ticket MECH-10 #10


fix for rotation transformation's fill option error when image is PIL's L mode

Current implementation errors when the image is in 'L' mode (ie. two dimensional) because the argument fill of dtype int is always converted to a list of length 3. This expansion should not happen when image is in 'L' mode.

I think you operated on an outdated version of the master branch. Most of your changes revert recently merged changes such as #1388.


the connection always down in the worker before global initialize.

Hi ! Bro! Thanks for your great job! I try to turn your code into the tensorflow distributed mode , but the connection from worker always down before the global variable initialize.


Local meta state in widgets

https://github.com/appsmithorg/appsmith/projects/17#card-46744103

@all-contributors Please add @hetunandu for their contributions to code, tests and ideas.


How to get the physical location of the selected image

I am using realm database in my iOS app and I need the selected Image location that user chose and want to transfer that url to my database for my other view controllers to access it from.
Thanks for your help.

Inside of the YPMediaPhoto class there is a variable asset: PHAsset? This is the what you need in order to get the url. Below are extensions to the PHAsset class that will allow you to get the URL like this
var imageURL: URL?
YPMediaAsset.getURL(completionHandler{ (url) in
if url != nil {
imageURL = url!
}
extension PHAsset {
var originalFilename: String? {
return PHAssetResource.assetResources(for: self).first?.originalFilename
}
func getURL(completionHandler : @escaping ((_ responseURL : URL?) -> Void)){
    if self.mediaType == .image {
        let options: PHContentEditingInputRequestOptions = PHContentEditingInputRequestOptions()
        options.canHandleAdjustmentData = {(adjustmeta: PHAdjustmentData) -> Bool in
            return true
        }
        self.requestContentEditingInput(with: options, completionHandler: {(contentEditingInput: PHContentEditingInput?, info: [AnyHashable : Any]) -> Void in
            completionHandler(contentEditingInput!.fullSizeImageURL as URL?)
        })
    } else if self.mediaType == .video {
        let options: PHVideoRequestOptions = PHVideoRequestOptions()
        options.version = .original
        PHImageManager.default().requestAVAsset(forVideo: self, options: options, resultHandler: {(asset: AVAsset?, audioMix: AVAudioMix?, info: [AnyHashable : Any]?) -> Void in
            if let urlAsset = asset as? AVURLAsset {
                let localVideoUrl: URL = urlAsset.url as URL
                completionHandler(localVideoUrl)
            } else {
                completionHandler(nil)
            }
        })
    }
}

}

That formatted strangely. everything from extension PHAsset down should be in one block

@neodave Thanks a ton for chiming in, I just edited the formatting for clarity :)
@jksjaz Did that help?

Hi Friends,
public class YPMediaPhoto {
public var image: UIImage { return modifiedImage ?? originalImage }
public let originalImage: UIImage
public var modifiedImage: UIImage?
public let fromCamera: Bool
public let exifMeta: [String: Any]?
public var asset: PHAsset?
public var url: URL?
public var imageURL: URL?
public init(image: UIImage, exifMeta: [String: Any]? = nil, fromCamera: Bool = false, asset: PHAsset? = nil, url: URL? = nil) {
    self.originalImage = image
    self.modifiedImage = nil
    self.fromCamera = fromCamera
    self.exifMeta = exifMeta
    self.asset = asset
    self.asset?.getURL(completionHandler: { url in
        if url != nil {
            print("Image url ----------------", url)
            self.imageURL = url!
        }
    })
    self.url = url
}

}
But while I am calling
picker.didFinishPicking { [unowned picker] items, cancelled in
if let firstItem = items.first {
switch firstItem {
case .photo(let photo):
photo.assest --- > not getting imageURL keyword
}
}
}
Can you please help me


Show an unmatched icon during creating a database for one Cosmos DB account

Storage Explorer Version: 1.10.0
Build: 20190911.4
Branch: master
Platform/OS: Windows 10/ Linux Ubuntu 19.04/macOS High Sierra
Architecture: ia32/x64
Regression From: Not a regression
Steps to reproduce:

Right one CosmosDB account with Graph API.
Select 'Create Database' -> Observe the database icon before it has been created.

Expect Experience:
Display one database's icon.
Actual Experience:
Disply the same icon with Cosmos DB account.

More Info:
This issue also reproduces for one Cosmos DB account with MongoDB/DocumentDB API.

It's pretty minor. I would suggest won't fix.

Agreed. Let's close as won't fix. I don't appear to have permissions to do that on this repo


Improving the Intent Classification Algorithm

Description of Problem:
Currently, the pre-trained word embeddings from Spacy are implemented such that RASA takes average of all the word vectors in a sentence and matches that with the average of word vectors in labelled Intents.  This may add some distortion/noise to the important words, specially if sentences are long and important word vectors may get washed away by unimportant ones, and this can reduce the intent classification accuracy.
Overview of the Solution:
It will thus be beneficial to somehow pre-process the training data containing the labelled intents, such that it automatically shortlist only the "important" words in the training sentences, and then we take the average of vectors for these shortlisted words only.
To do this, we can first group together all training sentences for a specific intent as one document, and then for each word in the document we calculate an anomaly score of its vector using Isolation Forest from sklearn.  We then just exclude the top 50 anomolous words whose vectors are very different from the rest of the words in the document.  We are then left with words whose vectors are more or less similar or the words whose vectors more precisely define the intent.  We then just take average of these vectors after eliminating noise from the document.
To match this with the sentence entered by a user, we however shouldn't shortlist words based on anomaly score as there may be few words in that sentence and it may be the anomolous words in that sentence that may be more predictive of the intent.  This is one of the reason I suggested anomaly score instead of TF-IDF for the labelled intents documents as well.
Definition of Done:
Optional parameters added to the processing pipeline that lets users eliminate top 50% anomolous words from the document containing list of sentences for a specific intent.
Users can then test accuracies with and without this feature in their data.
(p.s Can somebody try this approach and show their results in comments below?)

Thanks for submitting this feature request 🚀@ArjaanBuijk will get back to you about it soon!✨

@AdnanKhalid1 You are absolutely right that averaging word vectors in the spacy pipeline is detrimental. We are working on a new model architecture for NLU currently which does not average out the vectors but essentially uses a sequential model to preserve information across words.
We plan to release it sometime in January.

Any updates on this? I though release was in jan


Able to drag Leva window under text

It can't be dragged back again as the text eats the click event. Is it possible to disable dragging on Leva entirely?
https://user-images.githubusercontent.com/25351731/118467883-1d07db00-b6fc-11eb-9ed4-eadf71a1c1e1.mov

Hey!
Thank you so much for catching that! Just removed the ability to drag here https://github.com/pmndrs/market/commit/df2c3fb17fc65507cb832c33dcb7861026395f35
Anything else feel free to make issues :)

Awesome 🚀


VM in pause state doesn't have any icon with tooltip

also in detail is only 'paused' with no icon

can we also display the pause reason in a tooltip? IO/user/no space

@michalskrivanek , within https://github.com/oVirt/ovirt-web-ui/pull/250 the status_detail is added, see screenshot there.


chore: update size limit for g2.min.js to 285kb

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 86.371%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
10293

Relevant Lines:
11544

💛  - Coveralls


[typescript-graphql-request] add ability to pass custom wrapper to generated sdk functions, eg. retryWrapper (#3574)

Summary
this extends graphql-typescript-request template to allow users to pass a custom wrapper for generated sdk actions.
the intention is to allow things like adding retry policies or request logging/profiling to the generated sdk calls.
the intention is to make a small, non-breaking change that can implement something like middleware.
related #3574
Usage
default usage
by default, no extra config is needed and no breaking changes to generated code will be made.
getSdk(client) can still be called as before, and the wrapper will default to the identity function. in other words, the wrapper will just be a passthrough to the original graphql client request (NO-OP).
passing a custom wrapper
if the consumer wishes to customize request handing behavior, they can pass a SdkFunctionWrapper-typed function as the second parameter of getSdk:
  // example of adding a client timing wrapper
  const client = new GraphQLClient('');
  const clientTimingWrapper: SdkFunctionWrapper = async <T>(action: () => Promise<T>): Promise<T> => {
    const startTime = new Date();
    const result = await action();
    console.log('request duration (ms)', new Date() - startTime)
    return result;
  }

  const sdk = getSdk(client, clientTimingWrapper);

passing a retry wrapper
This example uses polly-js to define a failure retry wrapper. (this is the use case for which i originally intended to add this capability)
const withRetries: RetryWrapper = <T>(action: () => Promise<T>) =>
  polly()
    .handle((err: Error) => {
      warn('GraphqlClient:NetworkError', err);
      return err.message.includes('connect ETIMEDOUT');
    })
    .waitAndRetry(3)
    .executeForPromise(info => {
      if (info.count === 3) {
        error('GraphqlClient:MaxRetries', null, {
          ...info,
          action: action.toString(),
        });
      } else if (info.count > 0) {
        warn('GraphqlClient:RetryingCall', null, {
          ...info,
          action: action.toString(),
        });
      }

      return action();
    });

const sdk = getSdk(client, withRetries);

TODO

[x] Documentation updates. No no configuration has been added but would probably be a good idea to add examples to the docs. Agree?
[x] Additional tests if possible to execute wrappers. @dotansimha is there a way I can actually EXECUTE generated code in the context of a unit test?

@andycmaj this is awesome, thank you so much!
I think we really need to add documentation for this plugin, is there a chance you can do it as part of this PR?
Regarding execution, I think you should be able to take the output of plugins during a test, and run eval to run it, I think it might work :D

I think we really need to add documentation for this plugin, is there a chance you can do it as part of this PR?

on it

Regarding execution, I think you should be able to take the output of plugins during a test, and run eval to run it, I think it might work 🗡

will give it a try thanks for the ptr!

ok @dotansimha
i was able to execute the generated results using ts.transpileModule(output, { compilerOptions: { module: ts.ModuleKind.CommonJS } });
i had to add nock as a devDependency in order to mock the underlying graphql-request calls when testing middleware.
the caveat here is that i also had to increase test timeout for the 2 added tests... the typescript transpilation was pushing it a bit above the 5 second limit.
lemme know what you think.
PS. docs are also updated with examples.

hmmm not sure why the CI tests take so long, but i saw a timeout on node 13.
  ● graphql-request › sdk › Should execute middleware passed to getSdk

    : Timeout - Async callback was not invoked within the 10000ms timeout specified by jest.setTimeout.Timeout - Async callback was not invoked within the 10000ms timeout specified by jest.setTimeout.Error:

      189 |     });
      190 |
    > 191 |     it('Should execute middleware passed to getSdk', async () => {
          |     ^
      192 |       let duration = 0;
      193 |       const middleware: SdkFunctionWrapper = async (action: () => Promise<any>): Promise<any> => {
      194 |         const start = new Date();

      at new Spec (../../../../node_modules/@jest/core/node_modules/jest-jasmine2/build/jasmine/Spec.js:116:22)
      at Suite.<anonymous> (tests/graphql-request.spec.ts:191:5)

Test Suites: 1 failed, 1 total
Tests:       2 failed, 3 passed, 5 total
Snapshots:   4 passed, 4 total
Time:        79.586s
Ran all test suites.
error Command failed with exit code 1.

this test suite only took 30s locally...
i wonder if all tests are being run in parallel?

ok should be ready to go now.

This is awesome ❤ Thank you so much @andycmaj !

thanks for being responsive and awesome... this is one of the best OSS experiences i've had @dotansimha


CUDA Error

RuntimeError: CUDA error: no kernel image is available for execution on the device
CUDA kernel errors might be asynchronously reported at some other API call, so the stacktrace below might be incorrect.
For debugging consider passing CUDA_LAUNCH_BLOCKING=1.
Compile with TORCH_USE_CUDA_DSA to enable device-side assertions.

i fixed it

i fixed it

Hi, how did you fixed it?


New release on npm ?

Hey, could you do a new release on npm of the lastest version ?
Normally I wouldn't really ask this because the git syntax is supported by npm, but seems that it's not good if the repo has a submodule, npm then tries to do weird things like this ...
npm ERR! git submodule -q update --init --recursive: No submodule mapping found in .gitmodules for path 'demo/mangopay2-php-sdk'
Don't hesitate to take advantage of the prepublish step to push everything boring inside for a oneliner publish.

Hey @Sinewyk, sorry for the delay getting back to you. I'm not an npm expert, but from reading around, I get the impression that one should really use git to manage the submodules (eg) and there exist various plugins to do the job for npm if necessary. And also, this depenancy is only if you want to use the example provided, but there is no obligation at all to use the PHP SDK with this kit (and therefore I find it a shame to classify it as a "depenancy" which might give people the wrong impression).
What do you think?

Yeah you are absolutely right. I was just saying that IF you do a npm release, there's no .git packaged into it, so there's no possibility for submodules shenanigans. Only someone cloning this repo (to work on it) can do some submodule stuff.
npm i on Windows 10 + npm 3 with
"mangopay-cardregistration-js-kit": "git://github.com/mangopay/cardregistration-js-kit.git#918275588d44bd5de0cbc0a5ac1fb04682accddc",

in the package.json triggers this weird submodule error.
I wanted you to release a new version to just bypass that submodule bug entirely.

Oh, yeah, the error is pretty easy:
I don't know how github is doing it but, the .gitmodules file is missing with its content that should be
[submodule "demo/mangopay2-php-sdk"]
       path = demo/mangopay2-php-sdk
       url = git@github.com:MangoPay/mangopay2-php-sdk.git

Yep, I came to that conclusion this morning but didn't get any further :-/ I'll do a new npm release shortly and you can let me know if that's any better for you :-)

@Sinewyk just released the patch - let me know how your install goes this time :-)

Did the trick, thanks =)

Great, thanks for the update!


Make processors.Resize memory-efficient

Fixes #44. I'll post a brief explanation there shortly.

Thank you very much for your contribution

Thank you very much for your contribution

Thank you very much! Is there any expected time of arrival for this patch on pip?

Thank you very much! Is there any expected time of arrival for this patch on pip?


Add official support for speakers

With the release of the SW:Speakers wiki page, Asahi Linux now officially supports the Macbook Air M1 13" speakers (J313). This issue tracks the addition of this into nixos-apple-silicon.
Progress:

[x] Asahi Linux 6.5-25 or later
[x] alsa-ucm-conf-asahi
[x] asahi-audio
[x] speakersafetyd
[x] bankstown
[x] LSP plugins LV2 (how?)
[x] Pipewire v0.3.84 (only in staging Nixpkgs atm)
[x] Pipewire module-filter-chain-lv2
[x] Wireplumber v0.4.15
[x] Wireplumber w/ policy-dsp patch

Blocking Items:

[x] https://github.com/chadmed/bankstown/pull/3
[ ] Wait for upstream AsahiLinux/PKGBUILDs to bump kernel version to 6.5-25 or later, or track the Asahi Linux Fedora COPR instead
[x] Wait for Pipewire v0.3.84 or newer to be merged into NixOS Unstable
[ ] Add the needed modules into this repository (hardware.asahi.enableSpeakers = true)

Relevant issue: https://github.com/tpwrules/nixos-apple-silicon/issues/100
My current implementation: https://github.com/diamondburned/dotfiles/tree/hackadoll3/Scripts/nix/machines/lilyhoshii/cfg/speakers

alarm is doomed :(

Thanks for inventorying this and providing a direction.
We will probably have to wait for Pipewire to progress through staging, but I'll do some experiments and see if we can just move it forward for a bit.
I'm also doing some studying on how to best account for the upstream migration away from Arch Linux but I don't have an answer right now.

Pipewire v0.3.84 is merged into unstable and master as of today, though the v0.3.85 PR was opened almost a week ago and it's in unstable right now. I'm gonna see if I can reproduce getting speaker support in my setup today.

https://github.com/NixOS/nixpkgs/pull/274504

Also my own take on this in #122

@vector1dev So I did get it added in but I found out that my device isn't supported yet. Mine uses j314 but only j313 is supported which is the MBA and I have a MBP.

NixOS/nixpkgs#274504

Good to see that there's a release for my machine now so that I can properly test.
Should we just have this fix in our overlay for now, until the release comes out?

Mine uses j314 but only j313 is supported which is the MBA and I have a MBP.

MacBook Pro J314 is also supported, but all of them need to be opted into by the distro/user by telling the kernel to enable audio.

but all of them need to be opted into by the distro/user by telling the kernel to enable audio.

How exactly is that done?

@RossComputerGuy please read the following chat log carefully: https://oftc.irclog.whitequark.org/asahi-dev/2023-10-28

We are working on this and hope to have a solution soon. Thanks for the patience.

Done in the latest release.


Fixed some warnings

Fixed a series of deprecation warnings in Julia 0.5

This is going to need more detailed attention in order to keep compatibility with 0.4

It's a bit of a mess - the last 2 commits were about switching back to bytestring() as unsafe_string() would make the tests to fail (it's not a straightforward replacement).
420272a and 2c4ac45 are all right.
I can tweak them a bit, to keep them working in v0.4. I'm thinking by adding version detection and type / function aliases?
Or if you have other ideas, let me know, happy to help.

Version detection with aliases sounds like the right way forward to me :)

All right, I'll give it a go 👍


Add option to hide index in pandas.Series.to_string

In the Dataframes.to_string function there is a option to not print the index:
index : bool, optional
whether to print index (row) labels, default True

Can this be added to the Series function to_string?
http://pandas.pydata.org/pandas-docs/version/0.17.0/generated/pandas.Series.to_string.html

sure that could be made consistent, pull-requests accepted.
Though in general this routine is mostly used internally.


textContent doesn't descend past immediate children

If you have as structure like:
test
, calling textContent on the host gives you an empty string. It should give you test.

Doesn't seem to be an issue anymore.


WIP: Update the data flow sections to be ledger agnostic

Signed-off-by: Stephen Curran<EMAIL_ADDRESS>

The start of the work to make the data flow sections of the specification to be ledger agnostic.

I've gone through the rest of the data flow sections and I don't see any updates needed to make the spec "VDR-agnostic".  While there are references to the Object identifiers (e.g. schemaID and credDefID), none reference the format -- just that the IDs are needed.  That's appropriate. It is only during creation/publishing are the IDs created.
This is now good to go for reviewers -- @TelegramSam @ArPhil @hkny @victormartinez-work


how to make ch/raw/ph files?

.ch - it's file which contains one serialized object (ObjectOutputStream). It can be ArrayList (in folder Content) or class which is inherit from Description class (Descriptions folder).
.raw - it's files form Blender. Format description of .raw file in comment.
.ph file format same as .raw but one polygon consists from four packs instead of three in .raw. And pack not contain normal and texture coord.
You can visit source/source  folder in project and view all sources of classes which do load resources.

thanks and I will check the related source. Sorry for my late reply.


fix: pin pyyaml, avoid package hashes

Apparently there is some inconsistencies with python juju that is making failing the integration tests, here. We should fix this within the scope of the PR I believe


Firefox is unable to install tldr as a search engine

I tried to install https://tldr.inbrowser.app/ as a search engine, using Firefox context menu.
But unfortunately this did not work and failed with following message:

Invalid Format
Firefox could not install the search engine from: https://tldr.inbrowser.app/opensearch.xml

I am running Firefox 102.9.0esr on Gentoo GNU/Linux.
Perhaps related to https://github.com/InBrowserApp/tldr.inbrowser.app/issues/12

Bump :-)

The Firefox error message shows Invalid Format. Maybe this is related to #12, I will try to  open a branch that does not have service worker and try out.
https://github.com/InBrowserApp/tldr.inbrowser.app/blob/833dd7d6142ceaff298cdb486e34b971df4a6068/public/opensearch.xml


Error Code 1

Error  CODE 1 :
[2024-09-18 00:12:07] [INFO] 2024-09-18 00:12:07 WARNING  cache_latents_to_disk is        train_util.py:3936
[2024-09-18 00:12:07] [INFO] enabled, so cache_latents is
[2024-09-18 00:12:07] [INFO] also enabled /
[2024-09-18 00:12:07] [INFO] cache_latents_to_diskが有効なた
[2024-09-18 00:12:07] [INFO] め、cache_latentsを有効にします
[2024-09-18 00:12:07] [INFO] 2024-09-18 00:12:07 INFO     t5xxl_max_token_length:  flux_train_network.py:155
[2024-09-18 00:12:07] [INFO] 512
[2024-09-18 00:12:07] [INFO] H:\fluxgym\env\lib\site-packages\transformers\tokenization_utils_base.py:1601: FutureWarning: clean_up_tokenization_spaces was not set. It will be set to True by default. This behavior will be depracted in transformers v4.45, and will be then set to False by default. For more details check this issue: https://github.com/huggingface/transformers/issues/31884
[2024-09-18 00:12:07] [INFO] warnings.warn(
[2024-09-18 00:12:08] [INFO] You are using the default legacy behaviour of the <class 'transformers.models.t5.tokenization_t5.T5Tokenizer'>. This is expected, and simply means that the legacy (previous) behavior will be used so nothing changes for you. If you want to use the new behaviour, set legacy=False. This should only be set if you understand what it means, and thoroughly read the reason why this was added as explained in https://github.com/huggingface/transformers/pull/24565
[2024-09-18 00:12:08] [INFO] 2024-09-18 00:12:08 INFO     Loading dataset config from   train_network.py:280
[2024-09-18 00:12:08] [INFO] H:\fluxgym\outputs\curvylover
[2024-09-18 00:12:08] [INFO] \dataset.toml
[2024-09-18 00:12:08] [INFO] INFO     prepare images.                 train_util.py:1807
[2024-09-18 00:12:08] [INFO] INFO     get image size from name of     train_util.py:1745
[2024-09-18 00:12:08] [INFO] cache files
[2024-09-18 00:12:08] [INFO] 0%|          | 0/80 [00:00<?, ?it/s]
100%|██████████| 80/80 [00:00<00:00, 5123.05it/s]
[2024-09-18 00:12:08] [INFO] INFO     set image size from cache       train_util.py:1752
[2024-09-18 00:12:08] [INFO] files: 0/80
[2024-09-18 00:12:08] [INFO] INFO     found directory                 train_util.py:1754
[2024-09-18 00:12:08] [INFO] H:\fluxgym\datasets\curvylover
[2024-09-18 00:12:08] [INFO] contains 80 image files
[2024-09-18 00:12:08] [INFO] ERROR    illegal char in file (not       train_util.py:1702
[2024-09-18 00:12:08] [INFO] UTF-8) /
[2024-09-18 00:12:08] [INFO] ファイルにUTF-8以外の文字があり
[2024-09-18 00:12:08] [INFO] ます:
[2024-09-18 00:12:08] [INFO] H:\fluxgym\datasets\curvylover\
[2024-09-18 00:12:08] [INFO] CurvyLover_30.txt
[2024-09-18 00:12:08] [INFO] Traceback (most recent call last):
[2024-09-18 00:12:08] [INFO] File "H:\fluxgym\sd-scripts\flux_train_network.py", line 519, in <module>
[2024-09-18 00:12:08] [INFO] trainer.train(args)
[2024-09-18 00:12:08] [INFO] File "H:\fluxgym\sd-scripts\train_network.py", line 317, in train
[2024-09-18 00:12:08] [INFO] train_dataset_group = config_util.generate_dataset_group_by_blueprint(blueprint.dataset_group)
[2024-09-18 00:12:08] [INFO] File "H:\fluxgym\sd-scripts\library\config_util.py", line 485, in generate_dataset_group_by_blueprint
[2024-09-18 00:12:08] [INFO] dataset = dataset_klass(subsets=subsets, **asdict(dataset_blueprint.params))
[2024-09-18 00:12:08] [INFO] File "H:\fluxgym\sd-scripts\library\train_util.py", line 1824, in __init__
[2024-09-18 00:12:08] [INFO] img_paths, captions, sizes = load_dreambooth_dir(subset)
[2024-09-18 00:12:08] [INFO] File "H:\fluxgym\sd-scripts\library\train_util.py", line 1764, in load_dreambooth_dir
[2024-09-18 00:12:08] [INFO] cap_for_img = read_caption(img_path, subset.caption_extension, subset.enable_wildcard)
[2024-09-18 00:12:08] [INFO] File "H:\fluxgym\sd-scripts\library\train_util.py", line 1703, in read_caption
[2024-09-18 00:12:08] [INFO] raise e
[2024-09-18 00:12:08] [INFO] File "H:\fluxgym\sd-scripts\library\train_util.py", line 1700, in read_caption
[2024-09-18 00:12:08] [INFO] lines = f.readlines()
[2024-09-18 00:12:08] [INFO] File "C:\Users\XT404\AppData\Local\Programs\Python\Python310\lib\codecs.py", line 322, in decode
[2024-09-18 00:12:08] [INFO] (result, consumed) = self._buffer_decode(data, self.errors, final)
[2024-09-18 00:12:08] [INFO] UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa0 in position 186: invalid start byte
[2024-09-18 00:12:08] [INFO] Traceback (most recent call last):
[2024-09-18 00:12:08] [INFO] File "C:\Users\XT404\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main
[2024-09-18 00:12:08] [INFO] return _run_code(code, main_globals, None,
[2024-09-18 00:12:08] [INFO] File "C:\Users\XT404\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in _run_code
[2024-09-18 00:12:08] [INFO] exec(code, run_globals)
[2024-09-18 00:12:08] [INFO] File "H:\fluxgym\env\Scripts\accelerate.exe\__main__.py", line 7, in <module>
[2024-09-18 00:12:08] [INFO] File "H:\fluxgym\env\lib\site-packages\accelerate\commands\accelerate_cli.py", line 48, in main
[2024-09-18 00:12:08] [INFO] args.func(args)
[2024-09-18 00:12:08] [INFO] File "H:\fluxgym\env\lib\site-packages\accelerate\commands\launch.py", line 1106, in launch_command
[2024-09-18 00:12:08] [INFO] simple_launcher(args)
[2024-09-18 00:12:08] [INFO] File "H:\fluxgym\env\lib\site-packages\accelerate\commands\launch.py", line 704, in simple_launcher
[2024-09-18 00:12:08] [INFO] raise subprocess.CalledProcessError(returncode=process.returncode, cmd=cmd)
[2024-09-18 00:12:08] [INFO] subprocess.CalledProcessError: Command '['H:\\fluxgym\\env\\Scripts\\python.exe', 'sd-scripts/flux_train_network.py', '--pretrained_model_name_or_path', 'H:\\fluxgym\\models\\unet\\flux1-dev.sft', '--clip_l', 'H:\\fluxgym\\models\\clip\\clip_l.safetensors', '--t5xxl', 'H:\\fluxgym\\models\\clip\\t5xxl_fp16.safetensors', '--ae', 'H:\\fluxgym\\models\\vae\\ae.sft', '--cache_latents_to_disk', '--save_model_as', 'safetensors', '--sdpa', '--persistent_data_loader_workers', '--max_data_loader_n_workers', '2', '--seed', '42', '--gradient_checkpointing', '--mixed_precision', 'bf16', '--save_precision', 'bf16', '--network_module', 'networks.lora_flux', '--network_dim', '4', '--optimizer_type', 'adamw8bit', '--sample_prompts=H:\\fluxgym\\outputs\\curvylover\\sample_prompts.txt', '--sample_every_n_steps=150', '--learning_rate', '8e-4', '--cache_text_encoder_outputs', '--cache_text_encoder_outputs_to_disk', '--fp8_base', '--highvram', '--max_train_epochs', '10', '--save_every_n_epochs', '1', '--dataset_config', 'H:\\fluxgym\\outputs\\curvylover\\dataset.toml', '--output_dir', 'H:\\fluxgym\\outputs\\curvylover', '--output_name', 'curvylover', '--timestep_sampling', 'shift', '--discrete_flow_shift', '3.1582', '--model_prediction_type', 'raw', '--guidance_scale', '1', '--loss_type', 'l2']' returned non-zero exit status 1.
[2024-09-18 00:12:09] [ERROR] Command exited with code 1
[2024-09-18 00:12:09] [INFO] Runner: <LogsViewRunner nb_logs=64 exit_code=1>

The main error here is related to a file encoding issue. Specifically, you have a UnicodeDecodeError, which indicates that the file CurvyLover_30.txt contains characters that are not encoded in UTF-8, causing a failure when reading the file.
Here are the details and possible solutions:
Text file encoding issue: The following error appears in the log:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa0 in position 186: invalid start byte
This means that a character at position 186 of the file CurvyLover_30.txt is not encoded in UTF-8. The problematic character seems to be the byte 0xa0, which could be a non-breaking space or another special character that is not compatible with the expected encoding.
Open the file CurvyLover_30.txt in a text editor that supports different encodings (such as VSCode or Notepad++).
Ensure that the file is encoded in UTF-8. If it is not, convert the file to UTF-8 (without BOM).
If the editor highlights special or invisible characters, remove them or replace them with compatible characters.
Using a different encoding in the script: If you want to avoid this issue without manually modifying the files, you can specify a different encoding in your Python code when reading the file, such as ISO-8859-1 or latin1, which accepts a wider range of characters:
with open('path/to/CurvyLover_30.txt', 'r', encoding='ISO-8859-1') as f:
    lines = f.readlines()

Dataset file verification: The log also indicates the processing of files from the dataset in the directory H:\fluxgym\datasets\curvylover, which contains 80 image and text files. It is recommended to check if other files in this folder may also have similar issues.
By correcting the text file’s encoding or adapting the encoding used in the Python code, this should resolve the UnicodeDecodeError.

One mistake at a time. This one's just one day at a time.

Found a Solution!
For anyone still having this issue, if you have tried training a lora with your dataset and had this issue "cannot write mode RGBA as JPEG" and you then addresed the file types by updating/changing them you should've encountered the issue above after trying to train again. To fix it simply go to your datasets folder and delete the folder that's there of the lora you're trying to create and then simply try training again and you shouldn't receive any errors. This worked for me and had to make sure to share.
Datasets Folder Directory Location
Pinokio> Api> fluxgym.git> datasets> x-lora folder.

Found a Solution!
For anyone still having this issue, if you have tried training a lora with your dataset and had this issue "cannot write mode RGBA as JPEG" and you then addresed the file types by updating/changing them you should've encountered the issue above after trying to train again. To fix it simply go to your datasets folder and delete the folder that's there of the lora you're trying to create and then simply try training again and you shouldn't receive any errors. This worked for me and had to make sure to share.
Datasets Folder Directory Location Pinokio> Api> fluxgym.git> datasets> x-lora folder.

Thanks work for me!


Using a more permanent database

Is there any documentation about how to configure OpenTAXII to use a database rather than SQLite.
I'm looking to 'productionise' OpenTAXII.
Thanks.

Hello,
Sure you can!  We use Postgresql internally when working with OpenTAXII, all you need is to properly configure the opentaxii.yml, by setting the db_connection parameter:
domain: "test.taxiistand.com"

persistence_api:
  class: opentaxii.persistence.sqldb.SQLDatabaseAPI
  parameters:
    db_connection: postgresql://username:P@ssword@db.example.com:5432/databasename
    create_tables: yes

auth_api:
  class: opentaxii.auth.sqldb.SQLDatabaseAPI
  parameters:
    db_connection: postgresql://username:P@ssword@db.example.com:5432/databasename
    create_tables: yes
    secret: SomeNiceSecret

logging:
  opentaxii: info
  root: info

Thanks for that. I'm only just getting started with OpenTAXII and I think I'm going to use it quite extensively.


works corresponding to outline nodes of ric instances are not ric

(and they should)

for instance WA0XL6B3FA91F0070


Add the ability to view and modify Linux running processes from Windows Task Manager

NOTE: Filed on behalf of a community member.

Is your feature request related to a problem? Please describe.
To manage and view Linux tasks running inside WSL, I need to go into each distro and run htop or similar commands separately. It would be nice to more easily view and manage these.
Describe the solution you'd like
Adding a 'Linux' section in Windows Task Manager will easily allow me to view all my Linux processes and modify them just like I would my Windows ones.
Describe alternatives you've considered
Alternatively, we could surface Linux processes to task Manager just like Windows tasks are (like how they are shown in WSL1).

Adding a 'Linux' section in Windows Task Manager will easily allow me to view all my Linux processes and modify them just like I would my Windows ones.

I would love to see this happen for both WSL1 and WSL2. The Linux section should only appear if WSL is enabled though. That might require some trickery from the Task Manager team. Once plumbed though, maybe they could add an API for cygwin and msys (potentially even normal hyper-v linux VMs)


Relax go.mod go version constraint

tilinna/clock is a dep of another package we are using. In go.mod tilinna/clock requires Go 1.12.
Go 1.12 is not officially released yet. I checked go versions 1.11, 1.10, 1.9, 1.8 and this package just works fine with all the listed versions.
This PR relaxes the Go version constraint in go.mod and also adds a travis.yml file to run CI tests.

Thanks for merging. Can you release a new version v1.0.2 to allow "go mod" to pick up the latest version?


introduce new Interfaces layer for EnttyCallbacks

Thanks for putting work in Spring Data JDBC.
As discussed on #1048 we are not going forward with this change.


build: add supporting files for conventional commits

add semantic.yml and Contributing.md files; update PULL_REQUEST_TEMPLATE.md; all files to support conventional commits for all PRs to this repository
fixes: #2759
Signed-off-by: Jim White<EMAIL_ADDRESS>PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit subject follows the Conventional Commits spec
[x] The commit message follows the EdgeX Contributor Guide
[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)
[x] make test has completed successfully

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[x] Build related changes
[x] CI related changes
[ ] Documentation content changes
[ ] Other... Please describe:

What is the current behavior?
repo does not support conventional commits spec
Issue Number: #2759
What is the new behavior?
repo supports conventional commits
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Are there any new imports or modules? If so, what are they used for and why?
none
Are there any specific instructions or things that should be known prior to reviewing?
none
Other information

recheck

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@b3e2acd). Click here to learn what that means.
The diff coverage is 64.07%.

@@            Coverage Diff            @@
##             master    #2760   +/-   ##
=========================================
  Coverage          ?   38.52%
=========================================
  Files             ?      159
  Lines             ?    12348
  Branches          ?        0
=========================================
  Hits              ?     4757
  Misses            ?     7311
  Partials          ?      280

Impacted Files
Coverage Δ

internal/pkg/v2/infrastructure/redis/client.go
0.00% <0.00%> (ø)

...rnal/pkg/v2/infrastructure/redis/device_service.go
0.00% <0.00%> (ø)

.../core/metadata/v2/controller/http/deviceprofile.go
100.00% <100.00%> (ø)

.../core/metadata/v2/controller/http/deviceservice.go
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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

recheck


Search all intra modes in lookahead

Instead of just DC, try all of them and use the minimal intra-cost.
AWCY on --speed 2 shows good PSNR improvement.
Since this seems to significantly shift the importance, the segment ID heuristic needs to be updated. This is what I got so far: AWCY on default speed with the updated heuristic, however, as can be seen by the AWCY on default speed of the updated heuristic vs. segment ID RDO it can be considerably improved. I guess I'll try to do this throughout my remaining time.
cc #1643

Coverage increased (+0.02%) to 71.152% when pulling 1da81b1182dc40274c759bee5156287173a2ab6c on YaLTeR:all-intra-modes-importance into f79a2f34a04ed4dd0846fb6f5e689bf29b47babb on xiph:master.

Can you try rerunning this on master, which now uses satd for intra pruning?

Instead of just DC, try all of them and use the minimal intra-cost.
AWCY on --speed 2 shows good PSNR improvement.

Since its impact on enc time is very small but giving significant gain > 2%, we can consider enabling this PR at speed 2 (or <= 2)?

It's become worse, actually (unless I rebased something wrong): https://beta.arewecompressedyet.com/?job=speed2-2019-10-04_114925-45585ee&job=all-intra-modes-importance-speed2-2019-10-04_115057-fe648e4


Add gce pricing scraper and optimize price addition in _to_node_size

GCE pricing scraper
Description
This will add a pricing scraper for gce, that will need an API key unfortunately, also optimized a bit in the gce node driver the way prices get added to a NodeSize.
Status

done, ready for review

Checklist (tick everything that applies)

[x] Code linting (required, can be done after the PR checks)
[] Documentation
[ ] Tests
[x] ICLA (required for bigger changes)

Ran the script and updated pricing.json after all for the tests to pass.

Thanks for the contribution.
Going forward, we should also figure out how to run those "scrape prices" jobs on daily basis and publish pricing.json to some common location which can be easily fetched by the users (libcloud.pricing.download_pricing function should already support that).


cgo fortran compilation: Fatal Error: Cannot open module file .mod0 for writing at (1): Permission denied

What version of Go are you using (go version)?

$ go version
go version go1.17.1 darwin/amd64

Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users//Library/Caches/go-build"
GOENV="/Users//Library/Application Support/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users//go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users//go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GOVCS=""
GOVERSION="go1.17.1"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users//tmp/mygotests/calltest/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/5b/15pp65tn35gb5h3d9jqhf1c00000gp/T/go-build805641474=/tmp/go-build -gno-record-gcc-switches -fno-common"

What did you do?
I am trying to use a module which incorporates some fortran code via cgo. If this fortran code uses fortran modules the compilation fails.
Reproducible example
$ CC=gcc-11 go run -x github.com/idavydov/go_fortran_test_run2@latest
<...>
cd<EMAIL_ADDRESS>TERM='dumb' gfortran -I . -fPIC -arch x86_64 -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK/b002=/tmp/go-build -gno-record-gcc-switches -fno-common -I $WORK/b002/ -g -O2 -o $WORK/b002/_x003.o -c mylib.f90
# github.com/idavydov/go_fortran_test2
mylib.f90:8:13:

    8 | end module hi
      |             1
Fatal Error: Cannot open module file 'hi.mod0' for writing at (1): Permission denied
compilation terminated.

As far as I understand, the cause of the problem is that<EMAIL_ADDRESS>is a read-only directory (555). And gfortran is trying to create a hi.mod0.
It is possible to overcome this issue by making a local directory with go_fortran_test2 and providing a replace directive in go.mod. In this case gfortran is creating hi.mod0 in a local directory which is writable.

the module
the executable

Fortran library
mylib.f90
Note: This only fails if using fortran module.
module hi

contains
    subroutine hello() bind(C)
        print *, "Hello from Fortran"
    end subroutine

end module hi

mymod.go
package go_fortran_test2

// based on https://stackoverflow.com/a/53360659/1292467

// #cgo LDFLAGS: -lgfortran
// void hello();
import "C"

func Hello() {
	C.hello()
}

executable
package main

import "github.com/idavydov/go_fortran_test2"

func main() {
	go_fortran_test2.Hello()
}

What did you expect to see?
Successful compilation.
What did you see instead?
mylib.f90:8:13:

    8 | end module hi
      |             1
Fatal Error: Cannot open module file 'hi.mod0' for writing at (1): Permission denied
compilation terminated.

Another work-around is to call:
CGO_FFLAGS="-J $TMPDIR -I $TMPDIR" CC=gcc-11 go run -x github.com/idavydov/go_fortran_test_run2@latest
But I think the proper fix is for cgo to pass -J $WORK/b002/ automatically.


YankyGPutBefore and YankyGPutAfter swapped?

I found out that to achieve the same behavior as in native nvim, I have to set up like this
local map = vim.keymap.set
map({"n", "x"}, "p", "<Plug>(YankyPutAfter)")
map({"n", "x"}, "P", "<Plug>(YankyPutBefore)")
map({"n", "x"}, "gp", "<Plug>(YankyGPutBefore)")
map({"n", "x"}, "gP", "<Plug>(YankyGPutAfter)")

effectively switching the meanings of gp and gP. Then pasting works like in nvim -u NONE.
Is this a bug or feature?

It was a bug, it has been fixed here.
I think you should update.


update dependencies / lockfile

updating proc-macro2 v1.0.26 -> v1.0.27
updating raw-cpuid v9.0.0 -> v9.1.1
updating syn v1.0.72 -> v1.0.73

proc-macro2 and syn should be painless, because these are only patch version updates.
raw-cpuid should be no hassle, too, if it follows semver - and its readme says it does. :)

bors r+


Install via pip

Since brownie does it, opview really should too....

Closed in favor of HyperLink-Technology/brownie#76

Closed in favor of HyperLink-Technology/brownie#76


Core: Research how to Chaos test Keptn

Action Item
With KEP48, we are making Keptn high-available. The goal of this research is to investigate how we could perform chaos testing for our components in an automated fashion.
Some suggestions:

[ ] https://netflix.github.io/chaosmonkey/
[ ] https://litmuschaos.io/

FYI, consider that we already have some experience with litmus-chaos in Keptn :)
See https://www.youtube.com/watch?v=Ac0DcT1SF3g and https://www.youtube.com/watch?v=aa5SzQmv4EQ
Especially considering Keptn-on-Keptn, this would allow to perform certain tests with Keptn directly.

Research Outcomes:
We coud run chaos tests on a dev cluster while load tests and end-to-end tests are running. We could have some random pod being killed or some change in networks and cpu resources, to see whether they are successful anyway. To judge our current implementation of graceful shutdown and liveness/readiness we could test scale up and down scenarios.
First iteration on chaos framework requirements

We should select a solution that is well configurable and that in the future we may automatize even as a sequence on keptn on keptn.
The solution chosen should also have the possibility to experiment with pod lifecycle, networking, CPU and memory resources, container lifecycle, and also I/O.
To facilitate the initial usage the solution should include the possibility to schedule chaos workloads and to visualize what is the result of the experiment.

Possible tools
After discarding pod killing solutions such as:  jnewland/kubernetes-pod-chaos-monkey,
https://github.com/asobti/kube-monkey and https://github.com/linki/chaoskube
The two most promising options for us are: Litmus  and Chaos Mesh
These are both CNCF sandbox projects and are based on Cloud Native concepts. They present out-of-the-box experiments for all categories mentioned in the requirement list. They both are based on K8s CDRs.
Litmus chaos:
The tutorial we have for keptn integration is a bit old and needs some fixing, nevertheless it is promising that this was previously used already.
The namespace operator installation directly on cluster via helm works good, I installed it in the keptn namespace following this tutorial
I portforwarded the frontend dashboard and from there started a workflow from chaoshub templates: I added a generic pod delete experiment and ran the workflow immediately. I had to modify the pod delete to kill in keptn namespace and change the nginx app name label to specific app name or, in the example below, I used the label keptn-keptn to randomly select all pods of our installation.
overall impressions:
The dashboard could be potentially helpful in creating the experiments templates once so that after we can just reschedule them from there. It is easy enough to explore the experiment results in it.

Problem is that it's full of bugs: sometimes the chaos templates do not appear or you add an experiment and that is not saved… some workflow does not show you the templates at all even tho they are downloaded and present on your machine. If something crashed/went wrong during the experiments the chaos agent may die and the whole dashboard becomes useless for an undetermined timeframe. Using LoadBalancer seems to solve this issues  but the whole solution is still in beta and not 100% stable. As mentioned in their GitHub another alternative to the buggy frontend could be setting up an ingress.
Litmus is the most complete and flexible option since it allows us to define:
• Chaosexperiment: The definition of the experiment with default parameters.
• Chaosengine: Binds the experiment definition with the chaos target workload. If successful, the experiment is initiated by the Litmus operator, overriding any variables specified in the manifest file.
•Chaosresult: Displays basic information about the progress and eventually the result of the experiment.
Chaos Mesh
As a typical operator, a controller manager pod runs in a regular deployment and is responsible to watch for its own CRDs (NetworkChaos, IoChaos, StressChaos, PodChaos, KernelChaos and TimeChaos), which users can use to create new objects to specify and start chaos experiments.
overall impressions:
Installation and first experiment were extremely easy and intuitive. I followed this tutorial on my gke instance and started a workflow killing random keptn pods.  The dashboard is extremely intuitive for configuring experiments and allows to create workflos and schedule them repetitively.

The outcome of the experiment is not as evident and easy to interpret as Litmus: basically, the logs of the jobs are reported but I was not able to understand who was killed and if it was back up without checking on the cluster itself.
Again all templates are there for the required tests, but it does not give possibilities to configure your own.
summary
Both litmus and chaosmash seems valid tools, the former requires more effort both for installation and build of the experiments but comes with a full set of examples and can be extended with custom experiments and results. The latter is ready to use and immediate, with less ability to customize.


Deactivate NALA table tooltip tests

This disables the NALA table tooltip tests for the moment, since their failure is blocking the Milo release pipeline. These should get re-activated as soon as a long-term solution is found by @skumar09 and his team.
Test URLs:

Before: https://main--milo--overmyheadandbody.aem.page/?martech=off
After: https://deactivate-table-tooltip-test--milo--overmyheadandbody.aem.page/?martech=off

Closing, as this is also not passing NALA tests due to other failures. @skumar09's help would be greatly appreciated to get these addressed.


Remove external transaction processors from docker-compose

These docker compose files pulls in nightly sawtooth-validator.
The validator now compiles in the transaction processors and
runs them via Transact.
Signed-off-by: Andrea Gunderson<EMAIL_ADDRESS>

We decided to pin the liveness test to 1-3 instead


Renaming Wepback config objects and using const/let

Description

Moves the webpack config file into ES6, renaming some objects to be more consistent with Britecharts-React config.
Motivation and Context

First step on https://github.com/eventbrite/britecharts/issues/461
How Has This Been Tested?

Ran tests and documentation
Types of changes

[x] Refactor (changes the way we code something without changing its functionality)
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

LGTM


fibonacci.cpp

A program to find fibonacci series.

:memo: TAOS-CI Version: 1.4.20191203. Thank you for submitting PR #688. Please a submit 1commit/1PR (one commit per one PR) policy to get comments quickly from reviewers. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://nnsuite.mooo.com/.

:octocat: cibot: @Gaminee, **** does not include doxygen tags such as @file @brief. You must include the doxygen tags in the source code at least.

:octocat: cibot: @Gaminee, You wrote code with incorrect doxygen statements. Please check a doxygen rule at http://github.com/nnsuite/TAOS-CI/blob/master/ci/doc/doxygen-documentation.md

To contributor, We have used 'Signed-off-by:' notation by default to handle the license issues, that result from contributors. Note that 'Is there a Signed-off-by line?' is important because lawyers tell us we must have to it to cleanly maintain the open-source license issues even though it has nothing to do with the code itself.

:octocat: cibot: @Gaminee, One of the module of prebuild group is failed. If you want to get a hint to fix this issue, please go to https://github.com/nnstreamer/nntrainer/wiki/.

YOU SHOULDN'T DO THIS.