Manual sync (#40, #42)

Manual sync:

open-cluster-management-io/governance-policy-framework-addon#40
open-cluster-management-io/governance-policy-framework-addon#42

(Sync of open-cluster-management-io/governance-policy-framework-addon#41 was handled in https://github.com/stolostron/governance-policy-framework-addon/pull/66)
Closes #64

/override "SonarCloud Code Analysis"
/override "Pipelines as Code CI / governance-policy-framework-addon-dfsa-on-pull-request"

/override "Pipelines as Code CI / governance-policy-framework-addon-dfsa-on-pull-request"
/override "SonarCloud Code Analysis"


how can we provide product updated version to client

Hello there,
First we uploaded product 1.0 version,
Now we have upgraded / updated our product to 1.1 version but how can we provide updated product to our client, when client have already purchased product product.
After our update product configuration , when client is downloading product he is getting error 404
Thanks for reply

No idea for this


Support for react-leaflet v2.0

Support for react-leaflet v2.0.
This PR breaks support of react-leaflet v1.0.

Hi Vadzim, I will review this as soon as possible.

@jeremiahrhall: I just pulled this and it seems to be working for me in a new project.

fixes #33

Any update on reviewing this? We would like to pull it into a project we started that is using react-leaflet v2.0

@jeremiahrhall
I've rebased the branch and have broken the only commit into two ones.
The first is just renaming context->prop and lets the code work without crashes with RL 2.0.
The second is a try to get rid off changing of colors of a heatmap while zooming. This problem appears only with react-leaflet 2.0. However I'm not sure what is the reason why RL 1.0 works well and RL 2.0 does not and so if that commit is the right way to fix the problem.


MovingZero

This algorithm moves all the zeroes of an array to the end of it.

Hi @shreyagupta30 @SabhyaGrover , It would definitely mean a lot if you could add 'hacktoberfest-accepted’ label on this PR after reviewing. It would only be counted valid for hacktober2020 in this way.

Hi @shubhank-saxena @shreyagupta30 @SabhyaGrover . It would mean a lot if you would add 'hacktoberfest-accepted’ label on this PR  OR 'hacktoberfest' label on this repo. This PR would only be counted for hacktober2020 in this way.

Hi @shubhank-saxena @shreyagupta30 @SabhyaGrover . It would mean a lot if you would add 'hacktoberfest-accepted’ label on this PR OR 'hacktoberfest' label on this repo. This PR would only be counted for hacktober2020 in this way.
@Raksha25 Thanks for opening a PR in this repo. Unfortunately, this repository is currently not participating in HacktoberFest 2020. It has been shifted to this repo.


Use same layout container as supplier + buyer apps

https://www.pivotaltracker.com/story/show/110394970

The admin app is the only one which uses a different layout system to generate its pages.
For example, each page on the supplier and buyer apps wrap their content in a <div> with id of wrapper'. The admin app instead uses a <div> with class of page-container.
This reduces the amount of shared CSS we can use on the admin app and will cause problems, the more modules we use from the toolkit.

This commit fixes this.

Sorry for the                                                               whitespace changes

:+1:


[Refactor][Doc] Add data backup,data restore and data delete recovery

Problem Summary:
1.Add data backup doc,
2.add data restore doc,
3.add data delete revovery doc
Checklist(Required)

Does it affect the original behavior: (Yes/No/I Don't know)
Has unit tests been added: (Yes/No/No Need)
Has document been added or modified: (Yes/No/No Need)
Does it need to update dependencies: (Yes/No)
Are there any changes that cannot be rolled back: (Yes/No)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

add backup and restore example


Without spring.xml

Could you document how to use the class completely without any XML configuration?
At least with SpringBoot, everything should be doable with @Configuration like below.
It seems to work at least. Using this approach would mean that one could simply add a jar and be good.
package de.lathspell.test;

import java.util.HashMap;
import java.util.Map;

import com.github.javaplugs.jsf.ViewScope;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.config.CustomScopeConfigurer;
import org.springframework.context.annotation.Configuration;

@Configuration
@Slf4j
public class InitViewScope extends CustomScopeConfigurer {

    public InitViewScope() {
        log.info("Init ViewScope");
        Map<String, Object> map = new HashMap<>();
        map.put("view", new ViewScope());
        super.setScopes(map);
    }

}

Done


typing enhancement for BroadcastService

Indicate which "event" can we subscribe on the BroadcastService and what to expect to received as result message.

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


feat(blueprints): get audience from tfc environment variable

Subject
This PR is about using Workload Identity Federation with Terraform Cloud.
Description
I propose this change because the audience in Terraform Cloud / Enterprise is already defined by the user in the TFC_WORKLOAD_IDENTITY_AUDIENCE environment variable for the workspace. So you can avoid to define it in the Terraform code as variable.
I take this opportunity to also correct a typo error in the documentation.
Thank you for the sample code, it helped me a lot to understand how to use Workload Identity Federation with Terraform Cloud.
Have a nice day ! 👋

Thank you @Thomgrus for the contribution, you are right, the var is already defined, that way provider configuration is even simpler.


Add transparency carving to splatfacto

WHY
This PR is similar in spirit to https://github.com/nerfstudio-project/nerfstudio/pull/2165 and https://github.com/nerfstudio-project/nerfstudio/pull/2025 for Nerfacto.
It implements the transparency trick which allows to carve a gaussian splatting scene when the masks are known.
SOLUTION
The process is well described by the aforementioned PR:

1. Make everything except for the foreground object transparent in each image.
2. While rendering, pick a random color in each iteration, then use this random color as background during alpha compositing.
3. When computing the RGB loss, make the color of transparent pixels match the randomly chosen color of the current iteration used for rendering.

Here is a comparison before/after on the lego scene from the Nerf Blender dataset:
https://github.com/nerfstudio-project/nerfstudio/assets/156442943/4381fe77-690a-4f6a-ab8b-67121e875227
Because white gaussians are visible from the evaluation views when this trick is not implemented, the original PSNR is 12dB. After implementing this trick, the PSNR becomes 33dB.
P.S for this trick to work, alpha_color needs to be set to None so that the dataloader keeps the alpha channel. On the blender dataparser, this parameter defaults to white. I can write a separate PR for that if needed. Training is then launched with ns-train splatfacto --pipeline.model.background_color random blender-data --data /path/to/lego

Note that this is using scale 2.6 for the random pointcloud initialization, not the default value of 10 (see https://github.com/nerfstudio-project/nerfstudio/pull/2902#issuecomment-1939154216)

It might be simpler to just supervise the output accumulation from splatfacto with the alpha channel of the PNG directly if available, which would get rid of all the background color logic and just force transparent regions to have 0 opacity when rendered. Is there any reason this would be less desirable than compositing+supervising RGB like here?

Interesting! That makes sense, although it does feel a little clunky to output the background color from the outputs, is there any clean way to avoid this? It looks like the version in nerfacto generates a random color during the train step before compositing, but this would also be a bit confusing to have 2 versions of backgrounds floating around...

Hm I think returning is clearer than having a mutable variable, I'll approve for now but might be nice to refactor at some point. Thanks!


Workflow outputs

When running local Bunny executor on workflow (let's say workflow has many tools and outputs) how can I collect all output files?

When execution is completed outputs are printed on stdout, if that was the question?

@sivkovic But outputs are scattered across multiple directories. We should probably make it easier to collect it in one place.


Export and use CROSS_TOOLCHAIN_PREFIX.

This will block #1112, #1118, #1123, and #1125 since it touches so many files, but simplifies a lot of the CMake files, as well as the linker files in #1125.
bors try

Windows and executable permissions strikes again :/
bors try --target *freebsd

bors try


[events] could not broadcast crud event: nil   AND  insert(): could not propagate CRUD operation: nil

SUMMARY
Hi! In our test, when we  use  SOAPUI  to make a pressure test on the kong to get token, the error occurs!
Steps To Reproduce
1.add an api
2.add oauth2 plugins to this api
3.start a pressure test on the uris "/{uris}/oauth2/token" to get the token or refresh token
Additional Details & Logs

Kong version (0.11.0)
Operating System(Centos6.5)
Kong error logs:

2017/09/06 16:30:31 [error] 2753#0: *8555 [lua] handler.lua:128: [events] could not broadcast crud event: nil, client: <IP_ADDRESS>, server: kong, request: "POST /uris/oauth2/token HTTP/1.1", host: "<IP_ADDRESS>:8443"
2017/09/06 16:30:31 [error] 2753#0: *8555 [lua] dao.lua:155: insert(): could not propagate CRUD operation: nil, client: <IP_ADDRESS>, server: kong, request: "POST /uris/oauth2/token HTTP/1.1", host: "<IP_ADDRESS>:8443"

Hi,
After some investigation, I can tell you that those logs are harmless, and due to a slight oversight in API design. The fact that the error message is nil shows that there is, indeed, no error. I'll be proposing a PR soon which will not print such error messages without a good reason.
Thanks for the report!

#3002 took care of this and will be part of our next release. Thank you for reporting this!


wasi: recommended usage for module re-use

Hi 👋 ,
The wazero public interface has been going through major improvements recently, and before it gets finalized, I was wondering if you could shed some light on how how to re-use a "wasi module ".
Note: if this use-case is not something you'd want to support, I fully understand, I'm just trying to make sure I'm not missing anything obvious.
r := wazero.NewRuntimeWithConfig(cfg)
decoded,  := r.CompileModule(source) // source parsed only once

// this configuration is unique to each invocation based on message content
wasiConfig := &wazero.WASIConfig{
		Stdin:  stdinBuf,
		Stdout: stdoutBuf,
		Stderr: stderrBuf,
		Args:   []string{"rotate", "angle=90", "dir=cw"}, // <-- this comes from the body of the message received.
	}

if _, err := r.InstantiateModule(wazero.WASISnapshotPreview1WithConfig(wasiConfig)); err != nil {
		log.Fatal(err) // 👈🏼 this fails for the second r. r.InstantiateModule  call with `module wasi_snapshot_preview1 has already been instantiated`
	}
if _, err := wazero.StartWASICommand(r, decoded); err != nil {
		log.Fatal(err)
}

I can't really change the module name since it's required for wasi support.
(import "wasi_snapshot_preview1" "args_get" (func $fimport$1.linked.1052 (param i32 i32) (result i32)))

I understand how to achieve this with a regular (non wasi) wasm module, but I was hoping to not have to marshal strings via wasm memory.
One viable avenue is to wrap WASIConfig into a message/context aware struct and replacing the static args/env values.
Is that what you'd recommend?
Thanks!

Agree and this is the right time to fix this. The config for env/arg isn't at the right scope indeed. It should be a function of the importing module (possibly its memory), as global only makes sense with one module

this outta do it https://github.com/tetratelabs/wazero/pull/367


feat: Add the apisix-ingress-controller plugin for kubernetes.

Please answer these questions before submitting a pull request

Why submit this pull request?

[ ] Bugfix

[x] New feature provided

[ ] Improve performance

[ ] Backport patches

Related issues
#73

New feature or improvement

Describe the details and related test reports.

You can used the plugin quickly show the apisix routes and upstreams in a kubernetes cluster.

Thanks! Good job!
Can you please rebase your PR from master?

beacuse . I used sh executable the install-plugin.sh file. so I don't need executable permission.

I mean, add the shebang line, let users run the scripts like ./scripts.sh.

Can you resolve the conflicts? Thanks!

Codecov Report

Merging #666 (a7f938c) into master (a01888b) will decrease coverage by 0.01%.
The diff coverage is n/a.

:exclamation: Current head a7f938c differs from pull request most recent head 7f7e5fd. Consider uploading reports for the commit 7f7e5fd to get more accurate results

@@            Coverage Diff             @@
##           master     #666      +/-   ##
==========================================
- Coverage   32.36%   32.35%   -0.02%
==========================================
  Files          65       64       -1
  Lines        6488     6487       -1
==========================================
- Hits         2100     2099       -1
  Misses       4137     4137
  Partials      251      251

Impacted Files
Coverage Δ

test/e2e/e2e.go

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 a290f12...7f7e5fd. Read the comment docs.

I can't fix the conflicts. so I will close the PR next resubmit.

I can't fix the conflicts. so I will close the PR next resubmit.

Looking forward to your PR! Thanks!


Update _index.md

Release notes for Marketplace release - 27 th Aug 2022

This will be merged on Monday


Fix warnings

....makes it easier to take warnings seriously.

@ecomodeller can we merge this before now?

@ecomodeller can we merge this before now?

Looks good. I will merge :-)


No readline.pc in readline 6.2 and 7

Unfortunately, there is no readline.pc file for pkg-config in readline 6.2 and 7.0 (it doesn't seem to be a Fedora/RHEL-specific packaging problem, because Debian Stretch and Buster have exactly the same issue). Given the before mentioned readline versions are part of RHEL 7 and 8, lxi-tools 2.x (the command-line variant) can't be build anymore.

Right. Fixed in d55f9393388aff4b0c63b20f668c451e6c998465

Hopefully one day most/all libraries will carry a pkg-config.

Confirming, commit d55f9393388aff4b0c63b20f668c451e6c998465 builds on all active Fedora and RHEL releases on all architectures.


should -GH have a youtubeid column?

Currently CB-GH logic for youtube display is based on "format" = video, and youtubeid is added as the "filename".
CB-CDM the logic is based on youtubeid instead, if it is present or not. This makes sense, since there is a cdmid column, so each is basically designating a different API to use.
Would having a separate youtubeid column make things more clear in CB-GH? (less confusing to have filename sometimes be an actual file, and sometimes an id) or more confusing?
Having a youtubeid would make transferring things between the two easier.
@dcnb @owikle

I think youtubeid.
I found it kind of confusing when I was just editing the files for mukurtu. And would separate out the logic a bit more if anyone wanted to mess with it later.
Also, what if there's a case where you want a youtubeid and a filename ... 💥

okay-- soon to be done

done 97d86e59164c297bd1a96efcd67445a5833c8f81


strip app core, play with task player mobile layout

DO NOT APPROVE THIS PULL REQUEST

superceded with work migrated to other branch, PR


DockerHub

Add an example of pushing to and pulling from Docker Hub at the end of the Docker lecture

Added in 7e7d9c8


Build failed: handler is not a function

I tried to compile clear copy of development branch, but I've got an error:

λ npm run build

<EMAIL_ADDRESS>build D:\www\angular2\ng2-bootstrap
ngm build -p src --clean

[02:55:56] Clean dist folders [started]
[02:55:56] Cleaning dist [started]
[02:55:56] Cleaning dist [completed]
[02:55:56] Clean dist folders [completed]
[02:55:56] Copy md files and license [started]
[02:55:56] Copy md files and license [completed]
[02:55:56] Build package.json files [started]
[02:55:56] Build package.json files [completed]
[02:55:56] Build projects [started]
[02:55:56] Building ng2-bootstrap (src) [started]
[02:56:15] Building ng2-bootstrap (src) [completed]
[02:56:15] Build projects [completed]
[02:56:15] Bundling umd version [started]
[02:56:15] Bundling ng2-bootstrap [started]
[02:56:16] Bundling ng2-bootstrap [failed]
[02:56:16] Bundling umd version [failed]
handler is not a function

Windows 10, node v6.9.4. What's the problem?

Oh, please move this issue to npm-submodules repo. To be honest I have no idea because I don't use windows, I try to investigate on Monday

The same on Ubuntu...

root@c671d0baaf6d:/mnt/www/angular2/ng2-bootstrap# node -v
v6.9.4
root@c671d0baaf6d:/mnt/www/angular2/ng2-bootstrap# npm run build

<EMAIL_ADDRESS>build /mnt/www/angular2/ng2-bootstrap
ngm build -p src --clean

[21:59:55] Clean dist folders [started]
[21:59:55] Cleaning dist [started]
[21:59:59] Cleaning dist [completed]
[21:59:59] Clean dist folders [completed]
[21:59:59] Copy md files and license [started]
[21:59:59] Copy md files and license [completed]
[21:59:59] Build package.json files [started]
[21:59:59] Build package.json files [completed]
[21:59:59] Build projects [started]
[21:59:59] Building ng2-bootstrap (src) [started]
[22:00:29] Building ng2-bootstrap (src) [completed]
[22:00:29] Build projects [completed]
[22:00:29] Bundling umd version [started]
[22:00:29] Bundling ng2-bootstrap [started]
[22:00:31] Bundling ng2-bootstrap [failed]
[22:00:31] Bundling umd version [failed]
handler is not a function


fix 1051: reset backup target to default

IMPORTANT: Please do not create a Pull Request without creating an issue first.
Problem:

After PR of #1447, the "Use the default value" of "backup target" will be refused by webhook, the error message is:
admission webhook "validator.harvesterhci.io" denied the request: Destination URL hasn't been specified
It is not possible to reset backup target to the default value in the web UI.
Solution:

In webhook, check the backup target, if it is the default value then allow it pass.
Related Issue:
#1051
Test plan:

Setup a harvester cluster (one node is also OK)
Set the backup target
2.1 When backup target has error (endpoint is not reachable/bucket name is wrong/bad credentials...), "save" will be refused with an error message, and after refreshing the web page, the backup target is still the last setting
2.2 When backup target is correct, it is saved. "Edit" again, click "Use the default value" button and "save", it will be success, and backup target is reset to default value.

We may also need to update pkg/controller/master/backup/backup_metadata.go to skip syncing remote VM Backup with default backup target setting.


Document the RTCIceCandidate() constructor

Acceptance criteria:

[x] Create the page and document the parameters and return value, as well as any exceptions.
[x] Include information about how information from the specified candidate SDP is stored into the candidate object.
[x] Document RTCIceCandidateInit
[x] Add BCD for RTCIceCandidateInit

Docs added:
https://developer.mozilla.org/en-US/docs/Web/API/RTCIceCandidateInit
https://developer.mozilla.org/en-US/docs/Web/API/RTCIceCandidateInit/candidate
https://developer.mozilla.org/en-US/docs/Web/API/RTCIceCandidateInit/sdpMid
https://developer.mozilla.org/en-US/docs/Web/API/RTCIceCandidateInit/sdpMLineIndex
https://developer.mozilla.org/en-US/docs/Web/API/RTCIceCandidateInit/usernameFragment
Docs updated:
https://developer.mozilla.org/en-US/docs/Web/API/RTCIceCandidate/RTCIceCandidate


ScrollView: Support horizontal scrolling with mouse

Not sure if this applies on Unix or not.
I love what @BDisp has done in terms of getting the vertical mouse wheel working. It makes me want to be able to use my horizontal scroll wheel to scroll Scrollviews horizontally as well.

I think neither Windows nor Curses supports this natively.

This is already working with the Shift + wheel down and up in the WindowsDriver and Unix.
In the NerDriver is working with the Ctrl + wheel down and up.

This is already working with the Shift + wheel down and up in the WindowsDriver and Unix.
In the NerDriver is working with the Ctrl + wheel down and up.

WindowsDriver def shows horz wheel events in the Mouse scenario, so this is possible on Windows for sure.
However, given shift + wheel works, I'm closing this as wont-fix.


Blueprints can include username and password for catalog libraries

For example:
brooklyn.catalog:
  id: simple-example
  version: "1.0"
  itemType: template
  libraries:
  - url: https://nexus.example.com/mybundle.jar
    auth:
      username: $brooklyn:external("myprovider", "username")
      password: $brooklyn:external("myprovider", "password")
  item:
    ...

See https://issues.apache.org/jira/browse/BROOKLYN-421 for the motivation.
Changes:

Moves Credentials and UsernamePassword from org.apache.brooklyn.util.http.executor to org.apache.brooklyn.util.http.auth. Deprecated placeholders are left in place in case either has ended up in persisted state.
Adds ResourceUtils#getResourceFromUrl(String, Credentials) to supply credentials when retrieving HTTP resources. The second argument has no effect when the URL's scheme is neither HTTP nor HTTPS.
Adds @Nullable Credentials getUrlCredential() to OsgiBundleWithUrl.
CatalogItemDtoAbstract#parseLibraries tests for a map named auth containing username and password keys.

Thanks @sjcorbett - LGTM.
For the record, I tested this in karaf with a toy catalog.bom:
brooklyn.catalog:
  id: pr918
  bundle: pr918
  version: 1.0.0-SNAPSHOT
  itemType: entity
  brooklyn.libraries:
    - url: .../brooklyn-etcd-2.7.0-20171219.1516.jar
      auth:
        username: $brooklyn:external("myexternals", "username")
        password: $brooklyn:external("myexternals", "password")
  item:
    type: io.brooklyn.entity.nosql.etcd.EtcdNode

I break-pointed in Brooklyn to check what it was doing. By the time we get into CatalogItemDtoAbstract.parseLibraries, looking up the auth map, the DSL has already been resolved into the strings pointed at by the username/password. This was earlier than I expected but it's fine.
I checked that the credentials are not persisted (BasicManagedBundleMemento doesn't mention credentials, so they won't be).
I check the debug log, searching for my password - it was never logged.

Agree with @tbouron that supporting auth for ftp would be a nice thing to have in the future, but I don't think it's required for this PR.
By the way @sjcorbett, a pleasure to review - nice clear code, and well tested. Merging now.


allow passing post_logout_redirect_uri to signoutRedirect

Closes/fixes #435
Checklist

[ ] This PR makes changes to the public API
[x] I have included links for closing relevant issue numbers

@kherock good to go?


init.py: from util import *

It feels a little strange and unpythonic that as a client I have to import from a submodule - e.g.: import dpath.util; dpath.util.get(d, path).
It seems nicer to be able to import and use the top-level package - e.g.: import dpath; dpath.get(d, path)

Released in 1.3.2, thanks for the patch!


Noticeable lag, fps drop, long response time in 3.24 in debug mode

Steps to reproduce
Ever since our app has upgraded to 3.24.0, it is very laggy like fps drop when ran in debug mode compared when we are in 3.13.8. It is annoying while developing.
This happens on both Android and iOS, whether physical device, emulator, or simulator (high-end devices too)
This does not happen when ran in Impeller mode
Our suspects are; Flutter 3.24.0, the packages which are upgraded up to date
Code sample
Code sample
[Paste your code here]

Performance profiling on master channel

[X] The issue still persists on the master channel

Timeline Traces
dart_devtools_2024-11-14_15_22_01.989.json.zip
Timeline Traces JSON

Video demonstration

Video demonstration
[Upload media here]

What target platforms are you seeing this bug on?
Android, iOS
OS/Browser name and version | Device information
This happens on both Android and iOS, whether physical device, emulator, or simulator (high-end devices too)
Does the problem occur on emulator/simulator as well as on physical devices?
Yes
Is the problem only reproducible with Impeller?
No
Logs
Logs
You are applying Flutter's app_plugin_loader Gradle plugin imperatively using the apply script method, which is deprecated and will be removed in a future release. Migrate to applying Gradle plugins with the declarative plugins block: https://flutter.dev/to/flutter-gradle-plugin-apply

You are applying Flutter's main Gradle plugin imperatively using the apply script method, which is deprecated and will be removed in a future release. Migrate to applying Gradle plugins with the declarative plugins block: https://flutter.dev/to/flutter-gradle-plugin-apply

Flutter Doctor output
Doctor output
[✓] Flutter (Channel stable, 3.24.0, on macOS 14.4.1 23E224
    darwin-arm64, locale en-PH)
    • Flutter version 3.24.0 on channel stable at
      /Users/kurtdariel/.asdf/installs/flutter/3.24.0-stable
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 80c2e84975 (4 months ago), 2024-07-30
      23:06:49 +0700
    • Engine revision b8800d88be
    • Dart version 3.5.0
    • DevTools version 2.37.2

[✓] Android toolchain - develop for Android devices (Android SDK
    version 34.0.0)
    • Android SDK at /Users/kurtdariel/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • Java binary at: /Applications/Android
      Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      17.0.6+0-17.0.6b829.9-10027231)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15E204a
    • CocoaPods version 1.16.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google
      Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • 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
      17.0.6+0-17.0.6b829.9-10027231)

[✓] VS Code (version 1.94.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.44.0

[✓] Connected device (4 available)
    • SM A715F (mobile)               • R58N94EZYZW           •
      android-arm64  • Android 13 (API 33)
    • macOS (desktop)                 • macos                 •
      darwin-arm64   • macOS 14.4.1 23E224 darwin-arm64
    • Mac Designed for iPad (desktop) • mac-designed-for-ipad •
      darwin         • macOS 14.4.1 23E224 darwin-arm64
    • Chrome (web)                    • chrome                •
      web-javascript • Google Chrome 131.0.6778.69

[✓] Network resources
    • All expected network resources are available.

• No issues found!

Hello @darielkurt,
Application performance can be janky in debug mode. You should measure performance in profile mode on an actual device (see https://docs.flutter.dev/testing/build-modes).
In case the issue persists in profile mode, please try to narrow your code down into a completed and minimal reproducible code sample that doesn’t include 3rd party plugins or complex production code so we can look into it. And please also share the device info (OS version and model name).

Hi @huycozy, I indicated above that there are no problems when it is in profile mode (or release mode). It only occurs on debug mode. I understand that it can be janky in debug mode but it is more noticeably janky in Flutter 3.24.0 compared to our previous Flutter version 3.13.8.
However, I find that it is performing fine when running the Flutter 3.24.0 version on Impeller mode, which I just learned from the issue template when submitting this issue.

Impeller is enabled by default on iOS (on all Flutter channels) and Android (on Flutter beta and master channels currently, not on stable 3.24.5 yet: https://github.com/flutter/engine/pull/54156), see more at https://docs.flutter.dev/perf/impeller.
If you still see performance issue without Impeller enabled in Profile mode and think it should be solved, please provide a sample code as mentioned above for further investigation.


Import fails on cpu

Describe the bug
The GPU version of curator fails during import when running on cpu only nodes.
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/dist-packages/cupy/__init__.py", line 17, in <module>
    from cupy import _core  # NOQA
  File "/usr/local/lib/python3.10/dist-packages/cupy/_core/__init__.py", line 3, in <module>
    from cupy._core import core  # NOQA
ImportError: libcuda.so.1: cannot open shared object file: No such file or directory

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/opt/NeMo-Curator/nemo_curator/__init__.py", line 29, in <module>
    from .modules import *
  File "/opt/NeMo-Curator/nemo_curator/modules/__init__.py", line 24, in <module>
    from .add_id import AddId
  File "/opt/NeMo-Curator/nemo_curator/modules/add_id.py", line 21, in <module>
    from nemo_curator.datasets import DocumentDataset
  File "/opt/NeMo-Curator/nemo_curator/datasets/__init__.py", line 15, in <module>
    from .doc_dataset import DocumentDataset
  File "/opt/NeMo-Curator/nemo_curator/datasets/doc_dataset.py", line 19, in <module>
    from nemo_curator.utils.distributed_utils import read_data, write_to_disk
  File "/opt/NeMo-Curator/nemo_curator/utils/distributed_utils.py", line 32, in <module>
    cudf = gpu_only_import("cudf")
  File "/opt/NeMo-Curator/nemo_curator/utils/import_utils.py", line 347, in gpu_only_import
    return safe_import(
  File "/opt/NeMo-Curator/nemo_curator/utils/import_utils.py", line 261, in safe_import
    return importlib.import_module(module)
  File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "/usr/local/lib/python3.10/dist-packages/cudf/__init__.py", line 12, in <module>
    import cupy
  File "/usr/local/lib/python3.10/dist-packages/cupy/__init__.py", line 19, in <module>
    raise ImportError(f'''
ImportError:
================================================================
Failed to import CuPy.

If you installed CuPy via wheels (cupy-cudaXXX or cupy-rocm-X-X), make sure that the package matches with the version of CUDA or ROCm installed.

On Linux, you may need to set LD_LIBRARY_PATH environment variable depending on how you installed CUDA/ROCm.
On Windows, try setting CUDA_PATH environment variable.

Check the Installation Guide for details:
  https://docs.cupy.dev/en/latest/install.html

Original error:
  ImportError: libcuda.so.1: cannot open shared object file: No such file or directory
================================================================

Steps/Code to reproduce bug

Install GPU version of curator or use nemo framework container

Run import nemo_curator on cpu-only node/machine

Expected behavior
The GPU version should still work on cpu-only node for steps that does not require GPU (e.g., add id).

Faced similar issue, upvoting this.

I read this out - Fix nemo_curator import in CPU only environment when GPU packages are installed. #123 which was used to close this particular issue.
But pip install --extra-index-url https://pypi.nvidia.com nemo-curator[cuda12x] did not work. It'd be helpful if someone can point to what's the correct solution or if I'm missing something here.

I read this out - Fix nemo_curator import in CPU only environment when GPU packages are installed. #123 which was used to close this particular issue.
But pip install --extra-index-url https://pypi.nvidia.com nemo-curator[cuda12x] did not resolve the ImportError: libcudart.so.12: cannot open shared object file: No such file or directory issue during the run of domain_example.py under examples for classifiers. It'd be helpful if someone could point to what's the correct solution or if I'm missing something here.


ignoreFiles does not work as documented

I cannot get the example from the documentation of ignoreFiles to work in a brand new project.
Using Hugo 0.41 on macOS 10.11.6, I created a new site using hugo new site testing and added the following to config.toml as per the documentation of ignoreFiles:
ignoreFiles = [ "\\.foo$", "\\.boo$" ]

The documentation says that this should

cause Hugo to ignore files ending with .foo and .boo when rendering

but when I create a file at the path static/example.foo and run hugo, it is copied to public/example.foo, i.e. not ignored at all.
It seems that either there is a bug in Hugo or the documentation must be updated.

This is still valid and it seems there a PR available #5312

This isn’t stale, and I have sent a PR to fix the issue.

Ugh, this is exactly the problem I'm having!  Thanks for the fix, I've built hugo from your fork.

This is still a valid issue and has a PR

This is still a valid issue and has a PR

Stale bots are great, aren't they?  This is still a valid issue and has a PR.

Still a bug with an open pr! Maybe someone could look at this or disable the stake bot?

The PR has answers with requests and suggestions by @bep that were ignored. Listening to the maintainer of the project might be a better idea than just arbitrarily removing stale labels. Stale means no progress was made on this issue and no progress has been made. The poster of the PR should add the suggestions by bep and then things might happen.
https://github.com/gohugoio/hugo/pull/5649#issuecomment-553296120
If you understand, that developer resources are sparse on this project then you hopefully understand, that other issues (like bug) are more pressing than this.
And no, the stale bot does not need to be disabled, he brings exactly that: clarity on stale issues. @stapelberg should amend or discuss the PR OVER THERE, and everyone not able to contribute (me included, I am not good at GoLang) should let issues leave stale. And maybe we should all lean GoLang :)

I'm sorry, the stale bot says if we still have the issue on the master branch, to say so. I have done that. Not sure why this needs to be a larger issue.

Wouldn't in that case be something like "@stapelberg, did you see @beps responses on your PR" be better than "Stale bots are great, aren't they"? He already said over at the PR that he has no time to implement the changes.
It seems to be a larger project to implement that and it's a feature, not a bug. The documentation got updated in the meantime to explicitly put ignoreFiles on the content directory only, and the static directory is always copied on file changes.
If you want a file in static to be ignored, why would that be? I think there might be a conceptual flaw behind this feature request. If files are needed so they can be somehow converted to something else, then a better place might be in assets or even outside of the whole folder system as Hugo knows it (src, stuff). If your editor or IDE places temporary files right next to the file it edits, then it surely has an option to place this file in a filecache somewhere else. Not only hugo bug also other "blind" commands like "git add -A" might add those unwanted files. In the case of git a git clean will remove ignored files (git clean -n will do a dryrun before).
See, we are talking and thinking.

Still not sure why you're making my comment, which clearly followed the instructions from the stale bot, into a larger issue.  I will apologize for my snark though - I'm not a fan of stale bots, and I let that show.
I'll agree (in reading back to @bep's comment in the PR) that this bug as written could be closed as "fixed" if the ignoreFiles feature is now documented, and if we would prefer to discuss the feature request elsewhere.

Over at discourse.gohugo.io is a good place :)
I am not making your comment an issue, I am making the strategy of "bumping" stale-labelled issues on Github an, ehm, issue. Sorry about that. If you look through the issues that were marked as stale today you will see that many just get un-staled by adding nothing to progress them. And if you look through changes that are added in each version you will see, that there are really not many resources to work through these issues. Many of these issues tend to be very specific use cases with very unspecific descriptions and most time can be solved by diving deeper. That's all. As long as the PR is open someone with GoLang coding knowledge might have a look. Let's get this issue go stale.

If that's a policy for this repo, it's perfectly fine by me, but again, I was just following instructions provided by the stale bot, assuming this was the desired practice.

This was addressed with a documentation change, https://github.com/gohugoio/hugoDocs/commit/7427a1fc52594320a2abff857de665dacd1cd7e9.


src/lxml/includes/etree_defs.h:14:31: fatal error: libxml/xmlversion.h: No such file or directory

I'm trying to install mitmproxy by issuing sudo pip install mitmproxy command, however I'm getting following error:
    gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -Isrc/lxml/includes -I/usr/include/python2.7 -c src/lxml/lxml.etree.c -o build/temp.linux-x86_64-2.7/src/lxml/lxml.etree.o -w
    In file included from src/lxml/lxml.etree.c:323:0:
    src/lxml/includes/etree_defs.h:14:31: fatal error: libxml/xmlversion.h: No such file or directory
     #include "libxml/xmlversion.h"
                                   ^
    compilation terminated.
    Compile failed: command 'gcc' failed with exit status 1
    creating tmp
    cc -I/usr/include/libxml2 -c /tmp/xmlXPathInitZi3b5a.c -o tmp/xmlXPathInitZi3b5a.o
    cc tmp/xmlXPathInitZi3b5a.o -lxml2 -o a.out
    error: command 'gcc' failed with exit status 1

    ----------------------------------------
  Rolling back uninstall of lxml
Command "/usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip-build-5F_Rd6/lxml/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-NR4uAf-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-5F_Rd6/lxml
$ cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
$ rpm -q libxml2
libxml2-2.9.1-6.el7_2.2.x86_64
libxml2-2.9.1-6.el7_2.2.i686
$ rpm -q libxml2-devel
libxml2-devel-2.9.1-6.el7_2.2.x86_64
$

I tried to install libxml and libxml-devel, but that did not help ...

Please take a look at the requirements section of lxml: http://lxml.de/installation.html#Requirements

... per @Kriechi recommendations, I visit Installing lxml site and I found libxslt-devel was missing. I than ran into another similar issue and found that libffi-devel was missing as well and now it seems like something else is still prevents my install:
    running build_ext
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-build-JIpgeA/Pillow/setup.py", line 767, in <module>
        zip_safe=not debug_build(),
      File "/usr/lib64/python2.7/distutils/core.py", line 152, in setup
        dist.run_commands()
      File "/usr/lib64/python2.7/distutils/dist.py", line 953, in run_commands
        self.run_command(cmd)
      File "/usr/lib64/python2.7/distutils/dist.py", line 972, in run_command
        cmd_obj.run()
      File "/usr/lib/python2.7/site-packages/setuptools/command/install.py", line 61, in run
        return orig.install.run(self)
      File "/usr/lib64/python2.7/distutils/command/install.py", line 563, in run
        self.run_command('build')
      File "/usr/lib64/python2.7/distutils/cmd.py", line 326, in run_command
        self.distribution.run_command(command)
      File "/usr/lib64/python2.7/distutils/dist.py", line 972, in run_command
        cmd_obj.run()
      File "/usr/lib64/python2.7/distutils/command/build.py", line 127, in run
        self.run_command(cmd_name)
      File "/usr/lib64/python2.7/distutils/cmd.py", line 326, in run_command
        self.distribution.run_command(command)
      File "/usr/lib64/python2.7/distutils/dist.py", line 972, in run_command
        cmd_obj.run()
      File "/usr/lib64/python2.7/distutils/command/build_ext.py", line 339, in run
        self.build_extensions()
      File "/tmp/pip-build-JIpgeA/Pillow/setup.py", line 516, in build_extensions
        (f, f))
    ValueError: jpeg is required unless explicitly disabled using --disable-jpeg, aborting

    ----------------------------------------
  Rolling back uninstall of Pillow
Command "/usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-JIpgeA/Pillow/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-epq273-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-JIpgeA/Pillow
$

This is no longer libxml, Please advise.

@a1exus http://stackoverflow.com/a/20945731
https://pillow.readthedocs.org/en/3.0.0/installation.html

Ok, python - Can't install Pillow on centos - Stack Overflow helped me, thanks!
Summary:
$ sudo tail -4 /var/log/yum.log
Feb 22 12:17:23 Installed: libxml2-devel-2.9.1-6.el7_2.2.x86_64
Feb 22 15:15:20 Installed: libxslt-devel-1.1.28-5.el7.x86_64
Feb 22 15:18:47 Installed: libffi-devel-3.0.13-16.el7.x86_64
Feb 22 15:45:28 Installed: libjpeg-turbo-devel-1.2.90-5.el7.x86_64
$

FWIW, dependencies are documented at http://docs.mitmproxy.org/en/stable/install.html.
Cheers,
Max


Contributing to: br-pe-recife.json

Adding/Updating br-pe-recife.json

The format of the address field is explained in https://github.com/openaddresses/openaddresses/issues/925

@geobrando There is no way to split the street and number in this dataset, is there?  (The address field in the shapefile is in the format street name, comma, blank, house number.)


Arrow function ambiguity + require global keyword for declarations

I read documentation about arrow functions  and noticed that there seems to be no way to return table from single-expression arrow function. Below is slightly modified example from documentation:
-- Return single value
local getRandomNumber = () -> { value = math.random() }

What would happen in this case?

Will erde treat it as arrow function with body creating global variable value? (some suggestion: maybe global keyword should be required to create global variables - it is recommended anyway)
Will erde treat it as arrow function returning table with value as key?

Are there any rules for above case?
BTW, this project looks very interesting and promising!

I've just looked at specs and played a bit in playground and noticed that you need to wrap table in parens. So above example becomes
-- Return single value
local getRandomNumber = () -> ({ value = math.random() })

Without parens calling function will create global variable. I find it a little bit error-prone: one can easily forget to wrap table in parens and get unexpected behavior polluting global namespace. Hence my suggestion to require `global` keyword. Making functions local by default is already different than in lua. Approach with functions local and other variables global by default is confusing, which making `global` required would solve as well.

BTW, this project looks very interesting and promising!

Thanks for your interest! I'm glad someone else has taken the time to try it out!

I've just looked at specs and played a bit in playground and noticed that you need to wrap table in parens.

That's right, otherwise the syntax is ambiguous and its impossible to tell whether the user wants an assignment or to return a table. This is admittedly not so obvious, so I'll add a note in the documentation.

some suggestion: maybe global keyword should be required to create global variables - it is recommended anyway

I actually originally wanted to make the global keyword required, but it's not so straightforward to implement and requires some extra effort from the user. For example, global variables will need to be forward declared before usage:
-- at the top of the file
global my_global_var

-- use later on
print(my_global_var)

This is because each file is compiled separately without any knowledge from other files (and I think this is an important behavior to keep). However, seeing as global variables are usually mistakes, I think this is fine.
Since the majority of the compiler is done and has been relatively stable, I'm also okay with taking a stab at enforcing the global keyword. It may not be done soon, but I agree that it would probably be a better feature to have than not have :eyes:.

Returning table inside parens is IMHO ok to make it non-ambiguous. For example, Python requires comma in single-item tuple (item,). Adding this case to documentation would definitely make things clear.
Regarding global, I agree that globals would have to be forward declared. But maybe it should be like in Fennel - make global access explicit using _G.global_var and use something like --allowedglobals compiler flag for globals that are builtin or provided by host environment.
Explicit global declaration is just an idea. Personally, I'm ok with global being default just as it is in Lua - it has never been a problem for me. But it doesn't work nice with changed default scope for functions. One coming from Lua would expect that function f () end is the same as f = function() end and it's not the case - former declares local and latter global function (if I understand correctly).

made an update to the docs regarding arrow function ambiguity here:
https://github.com/erde-lang/erde-lang.github.io/commit/748bf596313cd2ece68cc4fc26defb10c17eddaf

But maybe it should be like in Fennel - make global access explicit using _G.global_var and use something like --allowedglobals compiler flag for globals that are builtin or provided by host environment.

Personally im not a huge fan of this approach. I still want globals to feel like globals in Lua, but I definitely do also feel the awkward inconsistency here.
I would also consider removing the behavior of making functions local by default, since it may be going against the expected behavior for the majority of users. It was originally added since I thought it was very common for people to forget to declare functions in Lua as local, but it may be more important to simply be consistent with Lua here.

I think it's fine to have functions local by default - this is minor inconsistency that is well documented. I forgot local before top-level function more often than forgetting local before variable declaration.
My biggest concern was that assigning variable to anonymous function would be different than in Lua, but it was before I realized that anonymous functions in Erde are already different than in Lua.
In summary, I'm fine with current approach to globals and locals. In future we can come back to requiring global in declarations if it causes issues for users.

Sure, I'm totally fine with revisiting this one after some more opinions are gathered. In that case, I'll keep this issue open for others as well

I've thought about this one a lot and decided that I want to remove having local functions by default, as it simply differs from Lua's behavior too much and goes against the "Close mapping to Lua" principle of Erde. I have implemented this change in e006df3ba164fb8f6e8875b6a46fe14175a47ef0 so I think we can close this one now :partying_face:


How to export Whisper small.En quantization model ？

How to export Whisper small.En quantization model?
For example, the int8 quantified version .

Hi @Carl-2008, we don't have a quantized version of Whisper on AI Hub Models currently. We have this on our backlog. We are also working on generic quantization recipes to share with our developer community. Stay tuned!

Thanks, looking forward to it.


Add array_append and Arr::append helpers

Regarding https://github.com/laravel/framework/issues/15161.

Just call $array[] = $value manually. We don't need to wrap that operation.


fix(progressbar): put progress bar, ETA and speed on second line

As per the title.
r?

@MurphyMarkW ok, didn't realize that. Fixed
r?

+1


Testing strategies

Hi there, thank you so much for the great library! Having a great time so far!
I am trying to write a unit test for a module which inserts jobs in a queue with Honeydew.asyc but my test case is asserting synchronously before the jobs are inserted.
Do you have any pointers on how one can assert jobs have been inserted?

Hey hey, thanks :)
So the Queue process itself doesn't emit any events when it receives a job, so I believe you're really left with two options:

Sleep and then ask the queue for a list of jobs.

test "queue receives a job" do
  Honeydew.suspend(:my_queue)

  task = {:run, [1, 2, 3]}
  task |> Honeydew.async(:my_queue)
  Process.sleep(100) # could be tweaked
  Honeydew.filter(:my_queue, &match?(%Honeydew.Job{task: ^task}, &1))
end

Enqueue a job that sends your test process a message, and assert_receive

test "queue receives a job" do
  me = self()
  fn -> send (me, :hi) end |> Honeydew.async(:my_queue)
  assert_receive :hi
end

I imagine the former is what you're looking for, as the latter is more of a test of Honeydew itself.
Hope that helps!

Thank you so much for taking the time to answer!
Your answer helped me discover another pattern I could use.
I might have wrote this in a way which is hard do unit test...
I rewrote my app logic as a weather app just for illustration.
I have a Weather.Server which is the public interface to the system and a Weather.Worker.
I want to test that when I call the following, a first job will be inserted, then a few more jobs will be inserted by afterwards.
Weather.Server.get_weather(city: "Tokyo")

The server:
defmodule Weather.Server do
  use GenServer

  @queue :weather_queue
  @name :weather_server

  ## Client API
  def start_link(opts \\ []) do
    GenServer.start_link(__MODULE__, :ok, [name: @name])
  end

  def get_weather(city: city) do
    GenServer.call(@name, {:get_weather, city: city}, @timeout)
  end

  ## Server API
  def init(:ok) do
    {:ok, nil}
  end

  def handle_call({:get_weather, city: city}, _from, _state) do
    {:get_weather, [[city: city]]} |> Honeydew.async(@queue) # this enqueues the 1st job.
    {:reply, :ok, _state}
  end
end

The worker:
defmodule Weather.Worker do
  @api_client Application.get_env(:weather, :api_client)
  @queue :weather_queue
  @behaviour Honeydew.Worker

  # Client
  def get_weather(city: city) do
    case @api_client.get_weather(city: city) do
      {:ok, weather: weather} ->
        weather.time_ranges
          |> Enum.each(&enqueue_job(city: city, time_range: &1)) # this will add n more jobs

        {:reply, :ok, :ok}
    end
  end

  def get_weather(city: city, time_range: time_range) do
    # ... more code here
  end

  # Private
  defp enqueue_job(args) do
    {:get_weather, [args]} |> Honeydew.async(@queue)
  end
end

The way I started fixing this, was to change the enqueue_job method in the worker, to send a message back to the server, and do the actual enqueuing there.
defp enqueue_job(args) do
  Weather.Server.get_weather(args)
end

then add the code to handle that in the server:
def get_weather(city: city, time_range: time_range) do
  GenServer.call(@name, {:get_weather, city: city, time_range: time_range}, @timeout)
end

def handle_call({:get_weather, city: city, time_range: time_range}, _from, _state) do
  {:get_weather, [[city: city, time_range: time_range]]} |> Honeydew.async(@queue)
  {:reply, :ok, _state}
end

Then I could somehow keep track of the which jobs have been queued in the server
by keing the hash with the task itself for example.
def handle_call({:get_weather, city: city, time_range: time_range}, _from, state) do
  job = {:get_weather, [[city: city, time_range: time_range]]} |> Honeydew.async(@queue)

  new_state = Map.put(state, job.task, job)
  {:reply, :ok, new_state}
end

Then I could assert that the server's state includes the tasks in my tests...
Do you see a better way of doing things?

Personally, I'm not a fan of making code and runtime processes more complex just to satisfy tests.
So instead of making those modifications, maybe consider making your queue names configurable in the application environment, just like how you're doing with the api client. In production and development, they'd have the same value. But in test, they'd be different.
Then, in your tests, you could start two queues, one for your initial get_weather calls, and the second for the calls that have a time range. The second queue would be suspended, or not have any workers running. You'd let the first job run (after checking that it'd been enqueued properly), then you'd check the second queue and assert that the time range jobs are present.
Alternatively, you could scrap all of the micro-manage-y tests and just run the whole thing as a big integration test, and have your @api_client send back messages to the testing process when it's told to get_weather/1. :)

@koudelka Thank you so much for the advice! It helps tremendously. I will take your advice and come up with something!


Add strict playback mode

Changes:

added playback modes ANY, ALL, and ALL_IN_ORDER
the playback modes will only make sense when used with the mode ONCE

@rpalladino Can you take a look?

@rpalladino Fixed all issues. Will need tests but for the moment that should be enough.

Need to check one more thing.


File drop component

Summary

FileDrop component that handle browser and drag and drop mode

Change List (commits, features, bugs, etc)

new component

Related Issues

Closes IBM/carbon-addons-iot-react#38

Acceptance Test (how to verify the PR)

Browser mode receive the files
Drag and drop mode receive the files from the drag and drop or browse
Duplicated files names should not be included in the UI or callback array

:tada: This PR is included in version 1.17.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.17.0 :tada:
The release is available on npm package (@release-1.x dist-tag)
Your semantic-release bot :package::rocket:


Add cardtype to org/user level project on creation, edit and view

Part of #23318
The way to fix the missing cardtype for user/org level projects in this PR is to port the cardtype related part from #22112 to org/user level projects' template and router functions.
Before:

After:
Create

Edit

View

Codecov Report

Merging #24043 (18b3973) into main (f521e88) will decrease coverage by 0.17%.
The diff coverage is 32.59%.

@@            Coverage Diff             @@
##             main   #24043      +/-   ##
==========================================
- Coverage   47.14%   46.98%   -0.17%
==========================================
  Files        1149     1163      +14
  Lines      151446   153673    +2227
==========================================
+ Hits        71397    72196     +799
- Misses      71611    72978    +1367
- Partials     8438     8499      +61

Impacted Files
Coverage Δ

cmd/dump.go
0.64% <0.00%> (-0.03%)
:arrow_down:

cmd/mailer.go
0.00% <0.00%> (ø)

cmd/manager.go
0.00% <0.00%> (ø)

cmd/manager_logging.go
0.00% <0.00%> (ø)

cmd/migrate_storage.go
5.76% <0.00%> (-0.12%)
:arrow_down:

cmd/restore_repo.go
0.00% <0.00%> (ø)

cmd/web.go
0.00% <0.00%> (ø)

models/actions/run.go
1.63% <0.00%> (-0.10%)
:arrow_down:

models/actions/runner.go
1.44% <ø> (ø)

models/organization/org_user.go
80.51% <0.00%> (-12.02%)
:arrow_down:

... and 62 more

... and 127 files with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

I was unable to create a backport for 1.19. @HesterG, please send one manually. :tea:

We lock pull requests 3 months after they were closed. If there's any need for further discussion, please open a new issue. :tea:


Support c8y's remote access feature (ssh)

Is your feature request related to a problem? Please describe.
We have devices that are not accessible from public and are connected to c8y as children of thin-edge (so, thin-edge is responsible for fog computing in this scenario).
Sometimes we may want to SSH into the child device for debugging etc.
Describe the solution you'd like
One way to acheive above is to make tedge work as a SSH bastion host. I guess the change consists of two parts:

Manage ssh server using SystemServiceManager
Add module to handle Cloud Remote Access Connect (530) messages

If you do not mind, I can work on this.

Thank you for your proposal to contribute.
We already started the implementation of [remote control access](https://cumulocity.com/guides/device-sdk/mqtt/#cloud-remote-access-connect-5300 with a first prototype that should be made public before the end of October in thin-edge.io_examples.
We would be pleased to share this prototype sooner (before the end of September) and have you contributing. Notably on the configuration of the device as an SSH bastion host for the child devices. You seems to have a specific use case in mind and it would be good to discuss it.

nice, I am looking forward to it.

Thank you, the example looks nice. I could SSH into a child device by specifying its local IP address.
By the way, do you think it makes sense to allow remote access without opening children devices' port 22 to thin-edge, like a normal device using c8ydp?
I am thinking of the architecture as following:

MQTT agent in the child device connects to C8Y via thin-edge. This is done by publishing 101,<serial>  to c8y/s/us and subscribing to c8y/s/ds etc.
When a user initiates remote access to the child device, either via Web UI or c8ylp, C8Y sends 530,<serial>,<local ip address for the child device>,<SSH port>,<WS connection key to c8y> to the child device through thin-edge.
MQTT agent initiates a device proxy. The proxy then starts WS connection through WS proxy in thin-edge.


[TEST][FLAKY] test_top_level4.greater

http://ci.tvm.ai:8080/blue/rest/organizations/jenkins/pipelines/tvm/branches/PR-2756/runs/2/nodes/236/log/?start=0

@srkreddy1238 can you look into it?

close for now, reopen if it reoccurs


Add metadata doc to Azure Blob binding

Description
Add metadata documentation to Azure Blob Storage Binding.
Issue reference
We strive to have all PR being opened based on an issue, where the problem or feature have been discussed prior to implementation.
Please reference the issue this PR will close: dapr/components-contrib#280
Checklist
Please make sure you've completed the relevant tasks for this PR, out of the following list:

[ ] Code compiles correctly
[ ] Created/updated tests
[X] Extended the documentation

@yaron2 can you review this?


fix: 修复 slider max 数值过大性能问题

fix #570

Codecov Report

:exclamation: No coverage uploaded for pull request base (develop@2dddf32). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             develop     #624   +/-   ##
==========================================
  Coverage           ?   64.35%
==========================================
  Files              ?      725
  Lines              ?    12623
  Branches           ?     3022
==========================================
  Hits               ?     8123
  Misses             ?     4500
  Partials           ?        0

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 2dddf32...1f64057. Read the comment docs.


Use pull request title for squash and merge commit message

Fixes #276

@sindresorhus What do you think about this?

Can you add it to the feature highlight? No screenshot needed.

@sindresorhus @paulmolluzzo Updated.

Great! This is going to be sooo useful for me. I do this manually many times every day.


BUGFIX ::: avoiding null error when rlibs is not defined

Title
BUGFIX ::: avoiding null error when rlibs is not defined

PR Type
Bug fix

Description

Fixed a bug where rLibs being null caused errors by defaulting it to a directory within rHome.
Ensured all paths are consistently converted to Unix-based format to avoid path-related issues.
Introduced a new variable rExe to represent the R executable path, improving clarity and maintainability.
Updated ProcessBuilder to use rExe for process execution, ensuring correct paths are used.
Enhanced logging to include R_EXE information for better debugging and traceability.

Changes walkthrough 📝
Relevant filesBug fix

RSingleton.javaFixed null handling for `rLibs` and improved path consistency

src/prerna/engine/impl/r/RSingleton.java
Added a check to handle cases where rLibs is null, defaulting it to a directory within rHome.  Ensured paths are consistently converted to Unix-based format.  Introduced a new variable rExe to represent the R executable path.  Updated ProcessBuilder to use rExe instead of rHome for process execution.  Improved logging to include R_EXE information.

+11/-5

💡 PR-Agent usage: Comment /help "your question" on any pull request to receive relevant information

PR Reviewer Guide 🔍
Here are some key observations to aid the review process:

⏱ Estimated effort to review: 3 🔵🔵🔵⚪⚪
🧪 No relevant tests
🔒 No security concerns identified
⚡ Recommended focus areas for review
Possible BugThe new code assumes that rLibs is always a valid path after being set to rHome + "/library" or processed with replace("\\", "/"). This assumption should be validated to ensure no runtime errors occur if the path is invalid or inaccessible.
Code SmellThe logic for determining pb in the if-else block for SystemUtils.IS_OS_WINDOWS is duplicated except for a minor difference in the command. Consider refactoring to reduce redundancy and improve maintainability.

PR Code Suggestions ✨

CategorySuggestion                                                                                ScorePossible issue

Validate the existence of the R executable file to prevent runtime errors

Ensure that the rExe path is validated to confirm the existence of the executable file before using it in the ProcessBuilder to avoid runtime errors.
src/prerna/engine/impl/r/RSingleton.java [83]
 String rExe = rHome + "/bin/R";
+if (!Files.exists(Paths.get(rExe))) {
+    throw new IllegalArgumentException("R executable does not exist at the specified path: " + rExe);
+}

Suggestion importance[1-10]: 9
Why: This suggestion ensures that the R executable file exists before attempting to use it, which is critical to prevent runtime errors. It directly addresses a potential issue in the PR and improves the robustness of the code.
9

Add a null or empty check for rHome to prevent potential null pointer exceptions

Add a null or empty check for rHome before attempting to replace backslashes to avoid potential NullPointerException.
src/prerna/engine/impl/r/RSingleton.java [77]
+if (rHome == null || rHome.isEmpty()) {
+    throw new IllegalArgumentException("rHome is null or empty");
+}
 rHome = rHome.replace("\\", "/");

Suggestion importance[1-10]: 8
Why: Adding a null or empty check for rHome is a valid improvement to prevent potential NullPointerException. This enhances the code's safety and ensures proper error handling.
8

Validate rLibs before replacing backslashes to avoid null pointer exceptions

Ensure that rLibs is validated for null or empty before replacing backslashes to avoid potential NullPointerException.
src/prerna/engine/impl/r/RSingleton.java [89]
-rLibs = rLibs.replace("\\", "/");
+if (rLibs != null && !rLibs.isEmpty()) {
+    rLibs = rLibs.replace("\\", "/");
+}

Suggestion importance[1-10]: 8
Why: The suggestion to validate rLibs before replacing backslashes is relevant and prevents potential null pointer exceptions. It aligns with good coding practices and improves the code's reliability.
8

Validate RSERVE_LOC and ensure ProcessBuilder arguments are correct to prevent runtime issues

Verify that the ProcessBuilder command arguments are valid and ensure RSERVE_LOC is properly defined to avoid runtime issues.
src/prerna/engine/impl/r/RSingleton.java [97]
-pb = new ProcessBuilder(rExe, "CMD", rLibs+RSERVE_LOC, "--vanilla", "--RS-port", port + "");
+if (RSERVE_LOC == null || RSERVE_LOC.isEmpty()) {
+    throw new IllegalArgumentException("RSERVE_LOC is not defined or empty");
+}
+pb = new ProcessBuilder(rExe, "CMD", rLibs + RSERVE_LOC, "--vanilla", "--RS-port", port + "");

Suggestion importance[1-10]: 7
Why: While this suggestion is valid and ensures that RSERVE_LOC is properly defined, its impact is slightly less critical compared to other suggestions. It still improves the code by preventing potential runtime issues.
7


Check box in script section are not responsive.

Ensure checkbox doesn't add non responsive behaviour on cortex UI.


Reverse Proxy Nginx

Hi all,
I have a meteor application on that you can build a website in a website editor. The result would then be a website on the url:
http://my-meteor-app.com/websites/12345567
Of course you now want to have your own url like http://my-url.com and show the application behind the app-url.
As a proxy I use nginx and the config looks kinda like this:
server {
    listen 80;
    server_name my-url.com;

    location / {
        proxy_pass http://my-meteor-app.com/websites/12345567;
        proxy_redirect off;
        ...
    }
}

This kinda works but the problem, I guess is, that the iron router would always render the route for "/" and not the route for "/websites/12345567" if you are on the site "http://my-url.com".
I thought about a dynamic action for the route for path "/" but it does not really seem like a nice solution ;)
Does anyone have an idea how to work around this?

I have this problem as well. There's some discussion about solutions and future designs over on these other issues: https://github.com/iron-meteor/iron-router/issues/848, https://github.com/iron-meteor/iron-router/issues/154


Can't install and try tranquil: wrong or missing informations

Hi, so I simply tried to compile the project using
git clone https://github.com/ScytheApp/tranquil.git
cd tranquil
./setup.sh
cmake CMakeLists.txt
cmake --build build

But:

There is no sh file at the root
Using the cmake --build build for the first time: Error: /media/olyno/Doc/projects/tranquil/build is not a directory
Using the last command again after creating the directory: Error: could not load cache

Using
  Operating System: Deepin 20.1
            Kernel: Linux 5.4.70-amd64-desktop
      Architecture: x86-64

Thanks you for your work

Hey, sorry for not replying earlier. You really should be adding the library as a CMake dependency and linking it together but if you just want the binary. I wrote the instructions wrong so I will make a commit right now to fix them
git clone https://github.com/ScytheApp/tranquil.git
cd tranquil
mkdir build && cd build
cmake ..
cmake --build build --target tranquil

You can specify no target to build all targets like sandbox. Although in the future there will be more targets for more examples so this is not a good idea.

Hi, thanks you for your answer :p
I'm really a noob in C++, sorry about that. So it successfully compiled the project with new instructions (nice!), but where is the binary to run any of my js file please? 😅
Another question which is not related to the setup of the project: will your runtime run Typescript files in the future as Deno does?
ps: you missed a cd .. in your instructions after the cmake ..

Ah those instructions are to build it. The actual library would be in build/lib/libtranquil.a. This binary cannot run code by itself, its a file that's meant to link as a library. If you just want to test the basic functionality of the runtime don't specify the --target tranquil while building.  If you want to use the library for yourself I suggest checking out the sandbox folder as it shows how you were to link the library and use it properly. Make sure you also do add_subdirectory in your CMakeFile for your project to add the dependency before you link it.

Sorry accidentally closed it

Lmk if you need any more help or face more problems

Sure, thanks a lot for your time and your help!


Map visualization

WiP on top of #1529.
Includes update to rxjs 7, needed for ngx-maplibre-gl.
I couldn't get ngx-maplibre-gl to work without setting allowSyntheticDefaultImports, although it seems like this shouldn't be needed.
TODO:

[ ] Use different style / source tiles for the base layer
[ ] Labels? (link to record?)
[ ] Clustering?

Map visualization was instead added using vega in #1629.


route 53 domain transferred to another aws account

Before opening, please confirm:

[X] I have checked the custom domains troubleshooting guide.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

App Id
No response
Region
No response
Step
domain activation
Status
error
Issue or question
I get this error, while setting up my route 53 domain in amplify.
"In order to verify domain ownership, configure the following CNAME record associated with your domain and verify that the CNAME record exists in your Domain Name Server (DNS) file."
this is the domain I am trying to activate. www.seapointe-rental4beach.com
Error message
"In order to verify domain ownership, configure the following CNAME record associated with your domain and verify that the CNAME record exists in your Domain Name Server (DNS) file."
SSL creation is green, but the error comes at SSL configuration process...and the final is domain activation
Additional information
this is the long string I m given under the error
xxxxxxxxxxxxxxx.seapointe-rental4beach.com. CNAME _yyyyyyyyyyyyyyy.dnzkjbsjxj.acm-validations.aws.
I created a record on the hosted domain with cname and copied the entire string displayed, but it gives an error.
I am stuck at

Hi @lnepis 👋🏽 thanks for raising this issue.
If your DNS provider is Route53, then DNS verification should be done automatically without you having to manually create the CNAME record. I just tested this and was able to add my custom domain in just a few minutes.
Can you provide the Amplify app ID and also a screenshot of the record in Route53? Feel free to redact parts of the record as you've done in the issue.

Thank you. Now I am getting this error.
something went wrong. Please refer to our troubleshooting guide below to diagnose the issue. After fixing the issue, choose retry below.
Error message: One or more of the CNAMEs you provided are already associated with a different resource.’
I deleted everything, created a new hosted zone for the AWS domain and updated the name servers.
It automatically created 5 records, 2 CNAME, SOA, NS and one A
What else needs to be done? I am still unable to connect. In the Amplify ‘Domain management’, I added the domain and one it tried to configure, it creates SSL, passes configuration, but then stops at domain activation with the above error.
AWS Support does not respond consistently, sometimes 24 sometimes48 hrs. I am kind of sick of this AWS complexities and bad support unless you  pay for the support. I am unable to productionalize my domain that I purchased 1 month ago.

On May 30, 2023, at 2:05 PM, hloriii @.***> wrote:
Hi @lnepis https://github.com/lnepis 👋🏽 thanks for raising this issue.
If your DNS provider is Route53, then DNS verification should be done automatically without you having to manually create the CNAME record. I just tested this and was able to add my custom domain in just a few minutes.
Can you provide the Amplify app ID and also a screenshot of the record in Route53? Feel free to redact parts of the record as you've done in the issue.
—
Reply to this email directly, view it on GitHub https://github.com/aws-amplify/amplify-hosting/issues/3502#issuecomment-1568856032, or unsubscribe https://github.com/notifications/unsubscribe-auth/A3O5IDCHPZNIFMCM75TGJJLXIYZIPANCNFSM6AAAAAAYSB5C3U.
You are receiving this because you were mentioned.

@lnepis Can you provide your app ID so we can look into this further?

Hi - thanks. Here it is
dyuid38m2ttyo

On May 30, 2023, at 6:53 PM, hloriii @.***> wrote:
@lnepis https://github.com/lnepis Can you provide your app ID so we can look into this further?
—
Reply to this email directly, view it on GitHub https://github.com/aws-amplify/amplify-hosting/issues/3502#issuecomment-1569237277, or unsubscribe https://github.com/notifications/unsubscribe-auth/A3O5IDBGRJ2XO7F7772YDY3XIZ25FANCNFSM6AAAAAAYSB5C3U.
You are receiving this because you were mentioned.

@lnepis 👋 , I observed that the Amplify app dyuid38m2ttyo has been deleted. If the issue persists or resurfaces, I'll recommend reviewing the custom domain troubleshooting guide: https://docs.aws.amazon.com/amplify/latest/userguide/custom-domain-troubleshoot-guide.html.


Add resolver interface and base resolver [stacked on top of #312]

This PR is stacked on top of #312.
Summary
A Resolver is responsible for providing the abstraction that multiple watchers are one: it decides how to merge the list of backends from each one. This PRs adds:

the interface for the Resolver
a base implementation
documentation on how to create new Resolvers

Testing

[x] Unit tests

Reviewers
@bsherrod @austin-zhu

Closed because it is incorporated into #314 .


Proper conversion to/from JS when issuing queries to Cassandra

Until now, values were only sporadically converted between rb-cassandra and Cassandra types. This PR resolves this, and systematically converts values from JS to Cassandra when issuing queries, and back to JS after fetching the result rows. It also introduces conversion schemes for set values whose underlying types need conversion (such as set, set, etc.).
This PR aims at resolving T84900

Hey guys, can we merge this?


BUG: Install rtkConfiguration.h

@SimonRit This should fix issue #240.
The global architecture for the installation of RTK within ITK is OK.
The only thing I noticed is that lpsolve gets installed in its own RTK directory.
In the meantime I am trying to setup a clean way to install RTK when building outside of ITK but I am not sure we can support this.

Ok, it seems to work for me. I'll merge and close the issue until the next installation proble.... Thanks a lot @LucasGandel !


get_current_median_history_price reports incorrect price for STEEM

Version of Python you are running
3.5
Version of steem-python you are running
1.1
Expected Behavior
Normal Steem Price
Actual Behavior
get_current_median_history_price()["base"] produces incorrect value as seen by the abnormally large values in Steemit wallets over Thanksgiving weekend.
Steps to reproduce
from steem import Steem
s = Steem()
s.get_current_median_history_price()
result:
{'quote': '285941570.493 STEEM', 'base': '116876226.762 SBD'}
Stack Trace

Glad I'm not the only one. This is a pretty huge bug and detracts greatly from functionality.


run sish without domain or just public ip static

i want run sish on my vps without domain.
is it possible? give me example config

It is possible to use without a domain, or just use a domain like you.ip.goes.here.sslip.io. You can find out more at https://sslip.io/.


TypeError: Illegal invocation when running app tests with jest

● Test suite failed to run

    TypeError: Illegal invocation

      at Node.get [as childNodes] (node_modules/jsdom/lib/jsdom/living/generated/Node.js:423:13)
      at Node.get (node_modules/smooth-dnd/dist/index.js:1:15997)
      at node_modules/smooth-dnd/dist/index.js:1:15891
      at Object.<anonymous> (node_modules/smooth-dnd/dist/index.js:1:16064)
      at Object.<anonymous> (node_modules/smooth-dnd/dist/index.js:1:16414)
      at n (node_modules/smooth-dnd/dist/index.js:1:358)
      at Object.<anonymous> (node_modules/smooth-dnd/dist/index.js:1:16522)
      at Object.<anonymous> (node_modules/smooth-dnd/dist/index.js:1:23545)
      at n (node_modules/smooth-dnd/dist/index.js:1:358)
      at Object.<anonymous> (node_modules/smooth-dnd/dist/index.js:1:23661)

When you include directly the lib in your project, you have this error:
● Test suite failed to run
TypeError: Illegal invocation

  28 |       get: function() {
  29 |         var node,
> 30 |           nodes = this.childNodes,
  31 |           i = 0;
  32 |         while ((node = nodes[i++])) {
  33 |           if (node.nodeType === 1) {

  at Node.get [as childNodes] (node_modules/jsdom/lib/jsdom/living/generated/Node.js:332:13)
  at Node.get (src/tu/smooth-dnd/src/polyfills.js:30:72)
  at src/tu/smooth-dnd/src/polyfills.js:25:25
  at Object.<anonymous> (src/tu/smooth-dnd/src/polyfills.js:41:3)
  at Object.<anonymous> (src/tu/smooth-dnd/src/mediator.js:1:47063)

I added this to the setup.js and it works:
Object.defineProperty(global, 'Node', {
  value: {firstElementChild: 'firstElementChild'}
})

@alexandreDavid, thank you, it solved my problem!

@alexandreDavid what setup.js?

In your project, you have a file for your jest configuration. Most of the time, it's jest.config.js. One of the properties in the exported object is setupFiles. It loads some files you want before your tests. If you don't have any setup file, create one and add it to the setupFiles array property. Just add the code above.

Hello,
Thanks for this fix, but are you sure there aren't none side effect changing this value for all tests ?
I'm really afraid of creating other bugs doing that.
(I try to add this fix directly in my beforeEach() or beforeAll() functions, but he warning still occur randomly.)
Thanks :)
Adeline

I had a similar error
TypeError: Illegal invocation

      at removeEventListener (node_modules/jsdom/lib/jsdom/living/generated/EventTarget.js:157:15)

And I solved it changing the jest environment (node instead of jsdom) for that specific test at the top of it as the docs says https://jestjs.io/docs/en/configuration#testenvironment-string
/**
 * @jest-environment node
 */

I don't know if this is could be applicable to this case.

Mocking the library is a solution if that's ok to you.
https://jestjs.io/docs/manual-mocks#mocking-node-modules
//  smooth-dnd.js or vue-smooth-dnd.js inside __mocks__ folder

module.exports = {
  // some mock implementation
}

Solves the problem and as a plus we don't mess with the environment.

@leotabosa that was exactly what I was looking for! thank you 🚀

For those (like me) that #36 didn't work, and also #52, I had to spend a few hours on it just to figure it out.
Inside the smooth-dnd lib, there's a polyfill.ts that does, baiscally:
// Overwrites native 'firstElementChild' prototype.
// Adds Document & DocumentFragment support for IE9 & Safari.
// Returns array instead of HTMLCollection.
(function(constructor) {
    if (constructor &&
        constructor.prototype &&
        constructor.prototype.firstElementChild == null) {
        Object.defineProperty(constructor.prototype, 'firstElementChild', {
            get: function() {
                var node, nodes = this.childNodes, i = 0;
                while (node = nodes[i++]) {
                    if (node.nodeType === 1) {
                        return node;
                    }
                }
                return null;
            }
        });
    }
})(Node || Element);

And that polyfill just aplly up to IE9 and Safari 8, also Chrome versions up to 29. Since we're on v.289 of chrome and others, that's not even usefull. In my (updated) package, I just removed this function and every Jest test works fine.
I took the time to wrap everything up to my own way, removing the smooth-dnd dependency and making everything to .js.
If you're still struggling with that issue, come take a look at my solution at vue-dndrop.
If that, somehow helps you, let me know. 🐈


New-AzSqlDatabaseRestorePoint  does not work for Azure SQL Data Warehouse

[Enter feedback here]
When following the steps in this documentation to create a restore point, it does not work.
When attempting to execute this with server name as the synapse workspace name and the database as the sql pool name, we see error saying
New-AzSqlDatabaseRestorePoint -ResourceGroupName $ResourceGroupName - …
|  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| One or more errors occurred. (The Resource
| 'Microsoft.Sql/servers/mysynapseworkspace/databases/mysqlpooldb' under resource group
| 'MyRG' was not found. For more details please go to
| https://aka.ms/ARMResourceNotFoundFix)
It seems like the command is looking the database in Microsoft.sql/servers over /subscriptions/e2691b7e-8c09-48f0-a9db-0b55fb638d4a/resourceGroups/MyRg/providers/Microsoft.Synapse/workspaces/mysynapseworkspace/sqlPools/mysqlpooldb

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

ID: 253e343c-36d8-0e86-bd43-c76ef9128131
Version Independent ID: fb79232e-639a-0c08-e8ae-7316a3626484
Content: User-defined restore points - Azure Synapse Analytics
Content Source: articles/synapse-analytics/sql-data-warehouse/sql-data-warehouse-restore-points.md
Service: synapse-analytics
Sub-service: sql-dw
GitHub Login: @anumjs
Microsoft Alias: anjangsh

@samiarahman
Thank you for reaching out. At this time we are reviewing the ask and will provide an update as appropriate

The doc is only for dedicated pools not connected to a Synapse workspace. Those do use an Azure SQL server as a parent resource. You should be able to create a restore point using the Synapse version of this command New-AzSynapseSqlPoolRestorePoint (doc).
You may have ended up here from the main Synapse docs (doc), and I will put in a PR to update that link to the Synapse command instead of the old Azure DW one.


fix(drools-lsp): fall-back to shell_exec_wrapper if user doesn't configure anything

fix(drools-lsp): fall-back to shell_exec_wrapper if user doesn't configure anything
Signed-off-by: David Ward<EMAIL_ADDRESS>

Closing this PR in favor of another forthcoming.

@williamboman Before I submit a new PR, I'm wondering what you think about a new approach I'd like to take. The implementation in williamboman/mason-lspconfig.nvim would be simple (here), however it would be dependent on a change to neovim/lspconfig.nvim (here). It addresses the settings issue you brought up (regarding how it gets sent to the server), and it also keeps the code in mason short and sweet when we need to be able to default to mason's installation diretory. However, I think the biggest challenge will be to get them to accept the change. Last time I submitted a PR there, they were extremely picky about anything that isn't dead-simple. Which, tbh, is frustrating because there's a lot of server configs there that are way more complicated. Anyways, I need to do more testing first, but WDYT at this point?


read_excel drops blank rows

System information

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Windows 10
Modin version (modin.__version__): 0.12.1
Python version: 3.10.1
Code we can use to reproduce:

import pandas as pd
import modin.pandas as md

pd_df = pd.read_excel("testing.xlsx)
md_df = md.read_excel("testing.xlsx")
print(pd_df.shape[0]-md_df.shape[0])

Describe the problem

When reading an excel file, modin drops blank rows, while pandas does not. I don't know how to prevent modin from skipping blank rows.
Source code / logs

File to reproduce the issue:
testing.xlsx

@ElLorans Thanks for filing the Github issue, I was able to reproduce and will be fixing it as part of this release


No logs after updating host.json

I followed this doc and updated host.json as follows:
{
    "version": "2.0",
    "functionTimeout": "00:10:00",
    "logging": {
        "logLevel": {
            "Host.Triggers.DurableTask": "Information"
        }
    }
}

On running the following query, I don't see any results:
let start = datetime(2022-01-13T00:00:00);
traces
| where timestamp > start
| where customDimensions.Category == "Host.Triggers.DurableTask"

On checking Application Insights, I see the functions:

What am I missing in the query?
This is what I see as Traces in Application Insights:

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

ID: c5bf5562-1289-29da-ebfe-60704ca8cb6c
Version Independent ID: 9ab410a9-6fe7-c4dd-af3b-2bd1031e94db
Content: Diagnostics in Durable Functions - Azure
Content Source: articles/azure-functions/durable/durable-functions-diagnostics.md
Service: azure-functions
GitHub Login: @cgillum
Microsoft Alias: azfuncdf

Updated the screenshot. I see request telemetry not trace logs.

@cgillum Does request include the duration (execution time) of each function?

It's very odd that parts of Application Insights shows the traces but parts don't. Are you able to see DurableTask-related traces if you remove the customDimensions.Category filter? I fortunately don't have an explanation for this, but the expectation is that they traces query you're doing should work just fine. If you want to have the product team dig into this further, I recommend opening a support request.

Does request include the duration (execution time) of each function?

Yes, I believe the default Functions request traces should include the execution time. Be careful about Orchestrator function traces though - there will be a distinct request for each replay of your orchestration. Potentially a new request for every await or yield (depending on the language you're using) statement in your orchestrator code.

@cgillum Thank you! Just to confirm the Response time (highlighted below) indicates the execution time of each function correct?

Also, duration (highlighted below) indicates the execution time of each function correct?

@cgillum To answer your question, I can see traces after removing the filter, I do see traces (Please see below):

The only update I made is in host.json. Is there any update that needs to be done in the code to see the traces with customDimensions.Category filter?

@lipalath-ms This is also odd. The logs shown in your screenshot are verbose Durable Task Framework logs, which I wouldn't expect to see coming through without some additional host.json configuration. Do you have any additional logging configuration in your host.json which might be enabling this?  I'm not able to reproduce it on my own app.
If you summarize by customDimentions.Category, what are all the categories you see?
let start = datetime(2022-01-13T00:00:00);
traces
| where timestamp > start
| summarize count(), severityLevels = make_set(severityLevel, 5) by tostring(customDimensions.Category)

Also, duration (highlighted below) indicates the execution time of each function correct?

I'm not especially familiar with request tracing, but do those latencies seem accurate based on what you expect? 3,899,675 milliseconds translates to about 65 minutes, which seems pretty high.

This doesn't look right. From your screenshot, are you not seeing any values for customDimansions_Category? I think something may be wrong with the tracing pipeline in your app. What version and language of the Functions runtime are you using? Are you using .NET and injecting any dependencies? I hear often of cases where tracing can get messed up due to certain conflicting dependencies getting injected.  If looking at these isn't helpful, I think you'll need to open a support ticket to get this investigated in more depth.


add support for more is25 mtd devices

Summary
Add support for more IS25LP MTD chips with larger capacity. This requires a mode with 4-byte addresses.
Impact
Might blow up the entire universe.
Testing
checkpatch + built on riscv (esp32-c3), no hardware to run it yet, will be done as soon as available, is25lp512 are on pending mouser order.

@slorquet please confirm that it at least will not break existing driver, otherwise could you please change it to Draft?

Hi
It does not break the driver. it just adds more configs.
(I am always careful not to push breaking changes, at least I would discuss breaking changes before publishing a request)
For the existing chips with 3 byte address my addition changes nothing.
Only the new chip models require 4 byte addresses.
Test chips will be there tomorrow, after that I have to determine how to activate SPI on the esp32c3 and connect it.


Endless loop when an exception is thrown using cf::when_all

Hi,
I found this bug while testing my error management code ;)
#include <iostream>
#include <cf/cfuture.h>
#include <exception>
#include <cf/async_thread_pool_executor.h>

int main(int argc, const char * argv[]) {
    std::vector<cf::future<cf::unit>> listFutures;
    listFutures.reserve(10);
    for (int i = 0; i < 10; i++) {
        listFutures.push_back(cf::async([i]() {
            if (i == 7)
                throw std::runtime_error("Error");
            return cf::unit();
        }));
    }
    try {
        cf::when_all(listFutures.begin(), listFutures.end()).get();
    } catch(std::runtime_error& e) {
        std::cout << "error= " << e.what() << std::endl;
    }

    return 0;
}

Thank you! That was valuable. Fixed

I think there is a problem with your latest commit.
With the snippet below the exception is not rethrow when calling get as expected and the then statement is executed
    try {
        cf::async([]() {
            throw std::runtime_error("Error");
            return cf::unit();
        }).then([](auto res) {
            std::cout << "then" << std::endl;
            return cf::unit();
        }).get();
    } catch (std::runtime_error& e) {
        std::cout << "error= " << e.what() << std::endl;
    }

BTW cf::when_all doesn't wait endlessly anymore but the exception is not escalated high enough to be rethrown when I call method: get.
I'm sorry for bringing the bad news

Ok, I think this needs some explanation. The original problem was the inconsistent behavior of the continuation when exception'd been thrown in continuation callback and when it hadn't. In the first case continuation handler wasn't called at all, so you were not able to know that exception had been thrown when you were inside your then callback. I consider this bad.
Now to fix your code you should add res.get() (or wait) to your then callback. In this case exception will be propagated as expected.

My bad I didn't explain my problem clearly.
My original problem is that the program wasn't able to finish because when the exception was thrown instead of being rethrow by the get it was stuck on wait instruction endlessly.
I was expecting to be able to catch the exception and close the program.
Like in your readme example where you expect the continuation of future to stop at the fist exception thrown and handle the error globally with one simple try/catch.
Did I misunderstand how future should work?

Let's take a look at your example before and after last commit. Before last commit:
try {
    cf::async([]() {
        throw std::runtime_error("Error");
        return cf::unit();
    }).then([](auto res) {
        std::cout << "then" << std::endl;   // This Code is not executed at all,
        return cf::unit();                  // only exception is propagated.
    }).get();
} catch (std::runtime_error& e) {
    std::cout << "error= " << e.what() << std::endl;
}

After:
try {
    cf::async([]() {
        throw std::runtime_error("Error");
        return cf::unit();
    }).then([](auto res) {
        std::cout << "then" << std::endl;  // Now this code is called regardless exception
        res.get();                         // <-- And you need this line to let the exception, stored in
        return cf::unit();                 // res out. After this it will be called in your catch clause.
    }).get();
} catch (std::runtime_error& e) {
    std::cout << "error= " << e.what() << std::endl;
}

Actually there is a choice here between first scenario and second. But most of the code that uses then() (for example implementations of when_all() and when_any()) rely on the fact that continuation will be called in any case whether the exception's been thrown or not. Does it make sense?
I've updated readme btw.

I understand but the 2nd option you chose mean that we have to write a lot of extra boilerplate code making the usage of future much less attractive.
Interrupting a sequence with an exception seems more reasonable because it's explicit and easy to read and understand.
Moreover with your previous design we already had the choice of returning any error codes and handling it in the continuation.
For when_all case I expect to receive the 1st exception caught to be rethrown when I call get on cf::future<std::vector<cf::future>> (at the end of the execution of all the future of course) and if I want to have the detail per future I can always iterate over the vector.
I have the feeling that a try/catch in when_all would work??
  template<typename InputIt>
  auto when_all(InputIt first, InputIt last)
  -> future<std::vector<typename std::iterator_traits<InputIt>::value_type>> {

...

    for (; first != last; ++first, ++index) {
      shared_context->result.push_back(std::move(*first));
=>      try { // Proposition Handle Exception in when_all
          shared_context->result[index].then(
          [shared_context, index]
          (typename std::iterator_traits<InputIt>::value_type f) mutable {
            {
              std::lock_guard<std::mutex> lock(shared_context->mutex);
              shared_context->result[index] = std::move(f);
              ++shared_context->ready_futures;
              if (shared_context->ready_futures == shared_context->total_futures)
                shared_context->p.set_value(std::move(shared_context->result));
            }
            return unit();
          });
=>      } catch(...) {
=>        // Handle shared_context->result + shared_context->p.set_exception
=>      }
    }

I have the feeling that a try/catch in when_all would work??

Unfortunately it is not that simple )
But your point about redundant boilerplate code makes sense. I'll see what I can do.

I had similar problem so I implemented on_failure() callback. I think that failure callback is possible solution for this problem.

I had a better look at the code and indeed it's much more complicated than try/catch 😊
I don't know if the committee in charge of future for C++20 has a response to how to handle exception but Facebook with Folly chose to implement .onError like @daniellll3266 suggested

I think i've fixed the issue. Check exceptions_in_cb branch please.
Following is fixed:

this will throw as expected

    try {
        cf::async([]() {
            throw std::runtime_error("Error");
            return cf::unit();
        }).then([](auto res) {
            std::cout << "then" << std::endl;
            return cf::unit();
        }).get();
    } catch (std::runtime_error& e) {
        std::cout << "error= " << e.what() << std::endl;
    }

this won't hang

    try {
        cf::when_all(listFutures.begin(), listFutures.end()).get();
    } catch(std::runtime_error& e) {
        std::cout << "error= " << e.what() << std::endl;
    }

Hi,
Thanks for the update.
However when I tested the case below I experienced something different that what I was expecting. The continuation was executed but from my naive understanding I was expecting the exception to stop the execution.
    try {
        cf::async([]() {
            throw std::runtime_error("no then");
            return cf::unit();
        }).then([](auto) {
            std::cout << "then" << std::endl;
            return cf::unit();
        }).get();
    } catch(std::exception& e) {
        std::cout << "Error=" << e.what() << std::endl;
    }

output
then
Error=no then

for when_all it's ok I just used a continuation to throw the exception
        .then([](auto responses) {
            for (auto& res : responses.get())
                res.get();
            return cf::unit();
        });

Logic is the following:

If you try to get value from future (argument of continuation), it will throw and be propagated as usual
If future left untouched, than continuation will be executed till the end and exception will be propagated after it finishes.

So you will notified about the error either way (whether you get() value from continuation arg or not). And in the same time it enables you to do what you want with the arg future when you are inside continuation - that is what when_* functions and similar cases are based on.


ENH: Fixing "import yaml" failure

Also,
Bug: removing build on Microsoft Windows
WIP: adding python/python2/python3 -m pip install PyYAML in "Build Pytorch" section.

Reducing scope of this pull request to fix the "import yaml" failing issue during the pytorch / Caffe2 build.


Create an audio device in Linux (running on the RPi) that outputs sound via Paula

I'm not sure how hard this would be, but if possible it could be nice to make a sound device for Linux, running on the RPi, that writes the sound samples to A314 memory and then sets it up on the Amiga side so that the sound is played by Paula. I'm guessing this would allocate two of the four Amiga audio channels.

This would be really cool. Kind of a channel-mixer outputting 14-bit sound!? :)

It seems like it may be possible to use the ALSA file (or shm) plugin (https://www.alsa-project.org/alsa-doc/alsa-lib/pcm_plugins.html) to obtain samples in a format suitable to write to Amiga chip memory.
This is what I've got so far for .asoundrc:
pcm.tofile {
type file
format raw
file /tmp/out.raw
slave.pcm null
}
pcm.amiga {
type plug
slave {
pcm tofile
format S8
channels 2
rate 16000
}
hint {
description "Changes format to match Amiga"
}
}