text:
Background monitoring on Android

Hi!
I’ve tried to enable background monitoring on Android, as suggested on #40 adding that to the example app.
However, as soon as app goes to background, it stops receiving zone changes.
Do I need to add intent or something special to Android app for background beacon detection to work?
Thank you!

Hi @snadal
What Android phone do you use? I use it at my daily office projects, some devices need to add some lines to enable background monitoring directly on Java/Kotlin code within Android project.

Hi Alann,
I am trying with a Pixel 2 and a very old Samsung Galaxy S4, among others.
Could you please share the lines on your Java / Kotlin code?
Thank you!

Hello,
Would you mind to share the lines you used to enable background monitoring on Android?
Thanks!

I'm having the same issue and don't get monitoring events on either Android or iOS when the app has been terminated. I see that the https://pub.dev/packages/beacons package has support for background monitoring but it looks like it's been abandoned and no longer works properly...

Hi, sorry for delaying response..
In Android, I'm implementing BootstrapNotifier on my custom Application class. I set the region without UUID, major or minor. So when it detect beacon it will trigger the app to start again. Don't forget to make your MainActivity's android:launchMode to singleInstance.
In iOS, from Estimote community :

Even if the app is not running, location events (related to the beacons in this case) are handled the same way as any other app launching events. Every time a phone enters or exits a region while the app is terminated, it will be automatically launched.
application:didFinishLaunchingWithOptions: method (of AppDelegate class) is called with UIApplicationLaunchOptionsLocationKey key existing in launchOptions parameter.

Please read the full article here. You can put your iOS code at application:didFinishLaunchingWithOptions: to waking your app.
For both iOS and Android, you can silently send a push notification that trigger app to start scanning, if it is terminated.
Sometimes I use all of them, sometimes only one or two of it. Find what best suite for your case.
I hope this can helps.
Regards.

@alann-maulana Thanks for your response. Do you have any plans to provide some more concrete code examples for both platforms? I'm unfortunately pretty new to native app development, and while I have a decent grasp of Flutter, my knowledge doesn't extend much beyond that. I do appreciate the pointers in the right direction.

@alann-maulana  I am also stuck in beacon-scanning for Android and IOS while app is in background.
Can you please make one example like this https://pub.dev/packages/beacons package.

Hi, sorry for delaying response..
In Android, I'm implementing BootstrapNotifier on my custom Application class. I set the region without UUID, major or minor. So when it detect beacon it will trigger the app to start again. Don't forget to make your MainActivity's android:launchMode to singleInstance.
In iOS, from Estimote community :

Even if the app is not running, location events (related to the beacons in this case) are handled the same way as any other app launching events. Every time a phone enters or exits a region while the app is terminated, it will be automatically launched.
application:didFinishLaunchingWithOptions: method (of AppDelegate class) is called with UIApplicationLaunchOptionsLocationKey key existing in launchOptions parameter.

Please read the full article here. You can put your iOS code at application:didFinishLaunchingWithOptions: to waking your app.
For both iOS and Android, you can silently send a push notification that trigger app to start scanning, if it is terminated.
Sometimes I use all of them, sometimes only one or two of it. Find what best suite for your case.
I hope this can helps.
Regards.

Hi,
I have no issue in ios when app terminated and its work great.
But, in android ,app can not scan beacon when terminated.
any solution?

maybe by migrating it to v2? #67

Hi, sorry for delaying response..
In Android, I'm implementing BootstrapNotifier on my custom Application class. I set the region without UUID, major or minor. So when it detect beacon it will trigger the app to start again. Don't forget to make your MainActivity's android:launchMode to singleInstance.
In iOS, from Estimote community :

Even if the app is not running, location events (related to the beacons in this case) are handled the same way as any other app launching events. Every time a phone enters or exits a region while the app is terminated, it will be automatically launched.
application:didFinishLaunchingWithOptions: method (of AppDelegate class) is called with UIApplicationLaunchOptionsLocationKey key existing in launchOptions parameter.

Please read the full article here. You can put your iOS code at application:didFinishLaunchingWithOptions: to waking your app.
For both iOS and Android, you can silently send a push notification that trigger app to start scanning, if it is terminated.
Sometimes I use all of them, sometimes only one or two of it. Find what best suite for your case.
I hope this can helps.
Regards.

Hi,
I have no issue in ios when app terminated and its work great.
But, in android ,app can not scan beacon when terminated.
any solution?

+1
@alann-maulana I'll glad to help you to migrate but my android native knowledge is pretty basic. :(

Hello @alann-maulana, could you take some doubt on how is implemented the bootstrap notifier?
I'm not sure how to use my custom application class. Should I use the FlutterApplication that comes set on android:name? or  should I create another class and then set this new class on android:Name? I appreciate your numerous help with the community. Your package and explanations have saved me several times. Thank you

Hi,  after a few attempts I managed to implement the Custom Application class with bootstrap notifier. I'll try to make an explanation to help those who are having difficulty in this part. As soon as there's a time left, I'll post an example on github to make it easier to understand.
1. In the AndroidManifest file, you must modify the "android:name" parameter.
By default it is set to FlutterApplication. That would be something like "io.flutter.app.FlutterApplication".
You should remove this value and replace it with the name of your CustomClass, for example ".CustomApplication".  So press option + enter to create this new class ( On android studio ), after that you should make some modifications to the class created to implement Bootstrap notifier. After implementing bootstrap notifier, your new class will look like this:
`
public class CustomClass extends FlutterApplication implements BootstrapNotifier, BeaconConsumer, PluginRegistry.PluginRegistrantCallback {
private RegionBootstrap regionBootstrap;
BeaconManager beaconManager;

@Override
public void registerWith(PluginRegistry registry) {
    // GeneratedPluginRegistrant.registerWith(registry);
    FlutterBeaconPlugin.registerWith(registry.registrarFor("io.flutter.plugins.flutterbeacon.FlutterBeaconPlugin"));
}

@Override
public void onCreate() {
    super.onCreate();
    FlutterMain.startInitialization(this);

    beaconManager = org.altbeacon.beacon.BeaconManager.getInstanceForApplication(this);

    beaconManager.bind((BeaconConsumer) this);

    Region region = new Region("region", null, null, null);
    regionBootstrap = new RegionBootstrap(this, region);

    try {
        beaconManager.startMonitoringBeaconsInRegion(new Region("region", null, null, null));
    } catch (RemoteException e) {
        e.printStackTrace();
    }
}

@Override
public void didEnterRegion(Region region) { }

@Override
public void didExitRegion(Region region) { }

@Override
public void didDetermineStateForRegion(int i, Region region) { }

@Override
public void onBeaconServiceConnect() { }

private Activity mCurrentActivity = null;

public Activity getCurrentActivity() {
    return mCurrentActivity;
}

public void setCurrentActivity(Activity mCurrentActivity) {
    this.mCurrentActivity = mCurrentActivity;
}

}
`

@Marcoslima016 I am facing the same issue, any update on whether you have posted that example somewhere?

@Marcoslima016 I am facing the same issue, any update on whether you have posted that example somewhere?

hi @evanblasband, soon I put a complete example of an Android application working in the background. I'm busy, but I'm going to have some time to do it soon.

hi @evanblasband, soon I put a complete example of an Android application working in the background. I'm busy, but I'm going to have some time to do it soon.

Hi @Marcoslima016, I encountered the same issue as you. Could you please put a complete example as you mentioned?

Yes Please

hi @evanblasband, soon I put a complete example of an Android application working in the background. I'm busy, but I'm going to have some time to do it soon.

Hi @Marcoslima016, I encountered the same issue as you. Could you please put a complete example as you mentioned?

hi @evanblasband, soon I put a complete example of an Android application working in the background. I'm busy, but I'm going to have some time to do it soon.

Hi @Marcoslima016,
I encountered the same issue as you. Could you please put a complete example as you mentioned?

Hi @Marcoslima016,
I encountered the same issue as you. Could you please put a complete example as you mentioned?

authors: AlirezaDaryani ElKood-Sol Marcoslima016 alan2030 alann-maulana darshithedpara devberkay evanblasband official-ravi omerchen snadal wescarr


text:
Add method that replace old roles by new roles

Take the example when we have a form where admin assign roles to specific user by group of check box.
the method Roles.addUsersToRoles can't handle this situation because it add new assigned roles and didn't delete unassigned roles.
thxs

You should use setUserRoles.

typo: i mean Roles.setUserRoles can't handle this situation

@HatemJerbi: Why you closed this ticket now? Was the issue resolved for you?

sorry mitar it was my fault, there is no problem with your setUserRoles method.
Best regards

I am glad it has been resolved.

source: gharchive/issue

authors: HatemJerbi mitar

repo: alanning/meteor-roles

license: mit

license_type: permissive

license_source: bigquery


text:
Provide text in strings.xml instead of images

It will help to translate the app and to experiment with text appearance. I can provide files for English and Russian languages.

That would be great! I am a little puzzled on how to do strings with libGDX, since it does not use the strings.xml file.

I will have to test this after I get back. Probably sometime next week. Looks great, but I am still going to have to learn up a bit on how to put it into the game...
Thanks!

I've found some mistakes in the code written by me so I have to fix it. The good news is that I've added support of string arrays and finished file with English text.

Okay, I had to change everything for the text. Per:
https://github.com/libgdx/libgdx/wiki/Internationalization-and-Localization#creating-properties-files
The proper way to do internationalizaion (i18n)/localization (i10n) is with bundles. So, I made this commit:
https://github.com/alaskalinuxuser/app_critical_velocity/commit/3a490344b91c5019594a92f46a5548061692efd7
To add more languages, make a new MyStrings__.properties file. Example is the MyStrings_en_us.properties file in the assets folder.
I will make one more commit to remove the call to set the local to "en_us" which I was using for testing.
I don't like the way it looks, but it works. Maybe someone could clean it up a bit, or I could do that sometime in the future.
Hope that helps!

authors: HenriDellal alaskalinuxuser

license_source: github-api


text:
Knative serving version hpa to autoscaling/v2 as autoscaling/v2beta2 was deprecated in k8s 1.23

Hey I installed this chart but I found on my kubernetes 1.27.1 cluster that:

I checked what versions were installed in my cluster, and found that autoscaling/v2beta2 is not present.
# kubectl api-versions
...
autoscaling/v1
autoscaling/v2
...

I think the easiest fix is to change the chart version of knative as newer versions fix this since it comes from knative. Also allowing for knative to be disabled to use one that is already in the cluster like the other resources would be excellent as its the only one that doesn't:
https://github.com/alauda/kubeflow-chart/blob/7c7b6e9ee44b8cd258b58bac2d9cca8cd28c75e7/charts/kubeflow/Chart.yaml#L42-L43
I am going to fix these in my fork but I thought I would open an issue to let you know! Otherwise tho I hope you have a lovely weekend, and thanks for the helm chart, this is sorely needed for kubeflow!

For a quick fix, you can install knative-serving from knative official repo to fit the Kubernetes version > 1.25, then turn off auto installing knative-serving in values.yaml before installing this chart.
https://github.com/alauda/kubeflow-chart/blob/84ed10058e085b18eb8dfa96e640184a388ca690/charts/kubeflow/values.yaml#L81-L82

Hey thanks for the response, the only issue is that flag doesn't actually have any affect! It will always try to install the knative-serving chart as there is no condition for it like the others in the chart dependencies:
https://github.com/alauda/kubeflow-chart/blob/84ed10058e085b18eb8dfa96e640184a388ca690/charts/kubeflow/Chart.yaml#L31-L46
We would probably need to add that in something like:
    dependencies:
    - name: cert-manager
      version: "1.5.0"
      alias: cert-manager
      condition: cert-manager.enabled
    - name: dex
      version: "2.31.2"
      condition: dex.enabled
    - name: istio
      version: "1.14.1"
      condition: istio.enabled
    - name: knative-serving
      version: "1.2.5"
      condition: knative-serving.enabled # <----
    - name: minio
      version: "1.0"
      condition: minio.enabled

Also as another note, I use rook-ceph in my cluster to provision object storage. I note everything is build with minio as the object storage provider, is there a way to override this?

authors: DreamingRaven typhoonzero

repo: alauda/kubeflow-chart


text:
Unable to include as a dependency

rebar.config:
{deps,
 [
  {piqi, "", {git, "https://github.com/alavrik/piqi-erlang.git", {branch, "master"}}}
 ]}.

~/dev/piqi-test ./rebar3 --version
rebar 3.5.0 on Erlang/OTP 20 Erts 9.0

~/dev/piqi-test ./rebar3 compile
===> Verifying dependencies...
===> Dependency option list [raw] in piqi_binary is not supported and will be ignored
===> Fetching piqi_binary ({git,
                                      "git://github.com/alavrik/piqi-binary.git",
                                      {tag,"v0.6.13"}})
===> Dependency failure: Application piqi_binary not found at the top level of directory /home/xeno/dev/piqi-test/_build/default/lib/piqi_binary

Same problem here, same rebar.config.
[andrea@workstation src]$ rebar3 --version
rebar 3.5.0 on Erlang/OTP 19 Erts 8.3.5.4

[andrea@workstation app]$ rebar3 compile
===> Verifying dependencies...
===> Dependency option list [raw] in piqi_binary is not supported and will be ignored
===> Fetching piqi_binary ({git,
                                      "git://github.com/alavrik/piqi-binary.git",
                                      {tag,"v0.6.13"}})
===> Dependency failure: Application piqi_binary not found at the top level of directory /home/andrea/projects/repo/tagging-server/_build/default/lib/piqi_binary

I forked and got it working for what I needed: https://github.com/AeroNotix/piqi-erlang

@AeroNotix thanks for looking at it! I should definitely add support for rebar3. Hopefully soon.

authors: AeroNotix alavrik andrea-zanetti

repo: alavrik/piqi-erlang


text:
Add head1

Add head 1

Vwjsjsk

Open

source: gharchive/pull-request

repo: albin-s-a/intro-html

license: MIT


text:
Project Status

File Location:
https://github.com/aldefouw/redcap_cypress/blob/v11.1.5/cypress/features/core/project/project_status.feature
Task:
Write the test specs in Gherkin DSL following manual test script as guide
Contact Adam De Fouw (aldefouw@medicine.wisc.edu) with any questions.

Check to see if the button force click is to blame for why we have 2 failures.
https://cloud.cypress.io/projects/pvu79o/runs/706/specs/96f1132e-547e-485b-b8aa-cce67fb6f52d/screenshots


text:
Error [ERR_MODULE_NOT_FOUND] in slightly modified demo when using tsconfig path alias

To be able to run the demo I had to modify a couple of things. The "link" import in package.json has to be updated. While installing it required me to install rimraf tsup-node and yarn globally. I don't want to do that, so I change the dependency to an npm dependency. Then I had to change the module resolution method for the modules to be resolved. Eventually I managed to write a test function in a "$lib" folder. I set up an alias and imported it in vite.config.ts. However, the module is not resolved.
Here is my reproduction https://github.com/wvhulle/vite-tsconfig-paths-bug

it required me to install rimraf tsup-node and yarn globally

The rimraf and tsup-node commands are provided by running pnpm install in the root directory of this repository, so those don't need global dependencies.
But yes, the yarn global dependency is problematic and should be fixed. 👍

Then I had to change the module resolution method for the modules to be resolved.

Hmmm, the moduleResolution should already be node as it's inherited from the root tsconfig.json. (Oh I see your reproduction doesn't have the extends property for some reason...)

However, the module is not resolved.

Modules imported in vite.config.ts do not have Vite's path resolution applied (as of Vite v4), so this plugin won't help you there.

authors: aleclarson wvhulle

repo: aleclarson/vite-tsconfig-paths


text:
Refactor VMPool class

Fix: Refactor VMPool class to decouple it from orchestrator path

Closed in favor: https://github.com/aleph-im/aleph-vm/pull/444

repo: aleph-im/aleph-vm


text:
trouble with yaml

Which version are you using?
v0.12.1
Which operating system are you using?
Linux
Question
I have problems configuring rtsp-simple-server as a proxy for an ethernet cam with rtsp capabilities
I have linked through ddns "SomeSite" to the dynamic ip of my router.
On this router, I do port forwarding 8554 to the 554 port of my ip cam with rtsp
I can acess the video stream through vlc, with
rtsp:// 192.168.1.168:554/ipc
rtsp://SomeSite:8554/ipc
yet, when I do
paths:
proxied:
source: rtsp://SomeSite:8554/ipc
sourceOnDemand: yes
it fails miserably when I try to access the video stream in the vps with the stream sever through
rtsp://MyVps:8554/proxied
I get those errors :
rtsp source ERR: server ports not provided
I also tried
paths:
proxied:
source: rtsp://user:pass@SomeSite:8554/ipc
sourceOnDemand: yes
And I get the same error
Can you please give me some pointers ?

I have tested some more
when I open rtsp://someSite:8554/somePath/trackID=0 in vlc,
the stream server complains that the controlpath  trackid=0 is invalid (it is not prefixed by trackID because there are no caps)
Also, I don't know what trackID is (I have an ipcam with a main and a secondary stream, maybee this is it ?)

Hello, in my opinion you can fix this problem immediately by using the sourceProtocol: tcp parameter:
paths:
  proxied:
    source: rtsp://user:pass@SomeSite:8554/ipc
    sourceOnDemand: yes
    sourceProtocol: tcp

Regarding the case in which sourceProtocol is udp (the default value), it's a communication bug between the server and the camera, please to the following:
The most helpful content you can provide to fix a communication issue between rtsp-simple-server and an external hardware or software, is a dump of the data exchanged between the server and the target (network dump), that can be generated in this way:

Download wireshark (https://www.wireshark.org/)
Start capturing on the interface used for exchanging RTSP (if the server and the target software are both installed on your pc, the interface is probably "loopback", otherwise it's the one of your network card)
Start the server and replicate the issue
Stop capturing, save the result in .pcap format
Attach

I'll try both things. Thanks for the help

in vlc, if I open with rtsp://site:8554/proxied   it complains that there is no control attribute
if I open with rtsp://site:8554/proxied?/trackID=0  it complains that the control attribute is invalid
Maybe it fails before it uses the source configuration
I was using
protocols: [tcp]
so udp is not an issue, probably (I'm a beginer in tcp.udp/network thingies so...I might be wrong)
what is a control attribute ?
I'll try with wireshark next, I remember using that in the past like 10+ years ago

let's try to find where the bug is, ok?
From what i understood, this is your setup:
camera --> router -> dns (dyndns or similar) -> rtsp-simple-server -> vlc

can you post the log of rtsp-simple-server, so we can understand if the stream arrives or not?
If the log contains something like
rtsp source is ready

it means that the stream arrives to the server - afterwards, you can test VLC (do not add trackID=0 to the path, it's useless).

Indeed, I have

camera -> local routeur (behind a dynamic ip)

vps with rtsp-simple-server (acting like a rtsp proxy)

I open on my local comp connected to the local routeur in vlc with rtsp://vps:8554/proxied

when doing rtsp://vps:8554/proxied
I get (in standard out, 83.154.205.190 is my dynamic ip today)
020/11/25 23:03:13 [0/0/0] rtsp-simple-server v0.12.1
2020/11/25 23:03:13 [0/0/0] [TCP server] opened on :8554
2020/11/25 23:03:28 [1/0/0] [client 83.154.205.190:33520] connected
2020/11/25 23:03:28 [1/0/0] [client 83.154.205.190:33520] OPTIONS
2020/11/25 23:03:28 [1/0/0] [client 83.154.205.190:33520] DESCRIBE
2020/11/25 23:03:28 [1/0/0] [path proxied] rtsp source started
2020/11/25 23:03:28 [1/0/0] [path proxied] connecting to rtsp source
2020/11/25 23:03:33 [2/0/0] [client 83.154.205.190:33522] connected
2020/11/25 23:03:33 [2/0/0] [client 83.154.205.190:33522] SETUP
2020/11/25 23:03:33 [2/0/0] [client 83.154.205.190:33522] ERR: unable to find control attribute (rtsp://vps:8554/proxied)
2020/11/25 23:03:33 [1/0/0] [client 83.154.205.190:33522] disconnected
2020/11/25 23:03:38 [1/0/0] [path proxied] rtsp source ERR: dial tcp 83.154.205.190:554: i/o timeout
2020/11/25 23:03:38 [1/0/0] [client 83.154.205.190:33520] ERR: publisher of path 'proxied' has timed out
2020/11/25 23:03:38 [0/0/0] [client 83.154.205.190:33520] disconnected
2020/11/25 23:03:43 [0/0/0] [path proxied] connecting to rtsp source
2020/11/25 23:03:48 [0/0/0] [path proxied] rtsp source stopped

2020/11/25 23:03:28 [1/0/0] [path proxied] rtsp source started
2020/11/25 23:03:28 [1/0/0] [path proxied] connecting to rtsp source
2020/11/25 23:03:38 [1/0/0] [path proxied] rtsp source ERR: dial tcp 83.154.205.190:554: i/o timeout

this means that the server is unable to contact your camera - check routers / nat / firewalls in between.
2020/11/25 23:03:28 [1/0/0] [client 83.154.205.190:33520] connected
2020/11/25 23:03:28 [1/0/0] [client 83.154.205.190:33520] OPTIONS
2020/11/25 23:03:28 [1/0/0] [client 83.154.205.190:33520] DESCRIBE
2020/11/25 23:03:33 [2/0/0] [client 83.154.205.190:33522] connected
2020/11/25 23:03:33 [2/0/0] [client 83.154.205.190:33522] SETUP
2020/11/25 23:03:33 [2/0/0] [client 83.154.205.190:33522] ERR: unable to find control attribute (rtsp://vps:8554/proxied)
2020/11/25 23:03:33 [1/0/0] [client 83.154.205.190:33522] disconnected

This is VLC, that connects to the server, and waits for the stream without receiving any answer (since the server is unable to contact the camera). When VLC doesn't receive any answer, after a timeout it supposes that server has an old RTSP implementation, and tries to communicate with it by stripping important parts of the protocol (like the control attribute).
Therefore: these issues should be both solved when i'll be able to contact your camera from the server.

PS: try removing the sourceOnDemand: yes parameter, so the server connects to the camera before VLC connects to the server - maybe it helps.

I see. This helps a lot.
I'll look also in the port forwarding things of my router.
Best regards and have a good night. and many many thanks for the enlightement.

Oh. With your kick ass explanations, It juste took me like 2 minutes to get the rstp proxy up and running.
Awesome (I love you).
My students are going to really like your software (and maybe a whole bunch of french teachers too ^^)

Oh. With your kick ass explanations, It juste took me like 2 minutes to get the rstp proxy up and running.
Awesome (I love you).
My students are going to really like your software (and maybe a whole bunch of french teachers too ^^)

How did you resolve this issue if I may ask? Thanks !

authors: Lakedaemon aler9 austineDboss


text:
Provide default data in fields if api is not accessible

This needs to be tested as it is built

This has been handled

repo: alex-gagnon/Portfolio-Web


text:
TuneIn

Some radios on TuneIn return the following error -

**  No css library available. See             **
**  /usr/share/doc/libdvdread4/README.css     **
**  for more information.                     **

libdvdread: Couldn't find device name.
libdvdread:DVDOpenFilePath:findDVDFile /VIDEO_TS/VIDEO_TS.IFO failed
libdvdread:DVDOpenFilePath:findDVDFile /VIDEO_TS/VIDEO_TS.BUP failed
libdvdread: Can't open file VIDEO_TS.IFO.
libdvdnav: vm: failed to read VIDEO_TS.IFO
[69801fb8] core demux error: option sub-original-fps does not exist
[69802120] core input error: no suitable demux module for `file/subtitle:///opt/AlexaPi/src//requirements.txt'

Please paste the whole output.
Stop AlexaPi service systemctl stop AlexaPi.service and run it interactively in debug mode /opt/AlexaPi/src/main.py -d

@nathankent22 Any feedback on this? We can't help otherwise I'm afraid.

Closing due to incompleteness.

repo: alexa-pi/AlexaPi


text:
Not able to build MRM Modules in AVS SDK V1.12

Hi, Is there anyone who can help?

When I try to build AVS with MRM modules, but I get some errors:
CMake Error at CapabilityAgents/MRM/CMakeLists.txt:10 (add_subdirectory):
add_subdirectory given source "MRMHandler" which is not an existing
directory.

Open options:
-DMRM=ON
-DMRM_LIB_PATH=xxx
-DMRM_INCLUDE_DIR=xxxx

I can see about "MRMHandler" in CMakeLists.txt :
cmake_minimum_required(VERSION 3.0 FATAL_ERROR)
project(MRM LANGUAGES CXX)
include(../../build/BuildDefaults.cmake)
add_subdirectory("src")
add_subdirectory("test")
if (MRM)
add_subdirectory("MRMHandler")
endif()
??? But there is no such folder "MRMHandler" in the directory.

Hi @xurenjun, thanks for this question.
The MRM Capability Agent is a specialized plugin for handling Multi-Room-Music, and requires a code patch from Amazon to complete the implementation.  Acquiring the patch requires some pre-validation with Amazon partner managers, since there are strict hardware requirements that must be met (since the given partner device must be capable of playing in sync with other AVS or Amazon Alexa devices).
If you would like to be in touch our business partner managers, please fill out the form can you please fill out the contact form here and someone will be in touch with you.

@dhpp Thanks!  I have got it.

authors: dhpp xurenjun

repo: alexa/avs-device-sdk


text:
TuneIn Radio

When I ask for a radio station such as "KEXP on TuneIn", it repeats error phrase twice "KEXP on TuneIn radio is not available right now".  Pretty sure it wants to re-direct based on the link returned from TuneIn.  Using VLC as a client doesn't have this problem, as it manages the re-direct.
2017-09-12 22:54:29.060 [  2] E MediaPlayer:handleBusMessageError:source=decoder,error=Your GStreamer installation is missing a plug-in.,debug=gsturidecodebin.c(1006)\: no_more_pads_full ()\: /GstPipeline\:audio-pipeline/GstURIDecodeBin\:decoder\:
no suitable plugins found\:
gstdecodebin2.c(4565)\: gst_decode_bin_expose ()\: /GstPipeline\:audio-pipeline/GstURIDecodeBin\:decoder/GstDecodeBin\:decodebin10\:
no suitable plugins found\:
Missing decoder\: text/uri-list (text/uri-list)

2017-09-12 22:54:29.060 [  2] 0 MediaPlayer:callingOnPlaybackError:error=Your GStreamer installation is missing a plug-in.
2017-09-12 22:54:29.060 [  2] E MediaPlayer:handleBusMessageError:source=queue2-10,error=Internal data flow error.,debug=gstqueue2.c(3010)\: gst_queue2_loop ()\: /GstPipeline\:audio-pipeline/GstURIDecodeBin\:decoder/GstQueue2\:queue2-10\:
streaming task paused\, reason not-linked (-1)
2017-09-12 22:54:29.060 [  2] 0 MediaPlayer:callingOnPlaybackError:error=Internal data flow error.

Hi @INRIX-joel-winarske,
It seems to be an issue with parsing the URL (containing a playlist) returned from TuneIn. In the latest release (1.0.2), we don't support TuneIn yet, only iHeartRadio. The reason for this is that we integrated with a 3rd party library, Totem Playlist Parser, to extract URLs, and this library doesn't doesn't work on all platforms and has been a bit shaky for us. That being said, we do have support for using this library. See PlaylistParser/CMakeLists.txt for more info. You'll need to define the TOTEM_PLPARSER variable in your cmake command and link it in.
In our upcoming release, we plan on replacing this with our own PlaylistParser with capabilities of parsing remote URLs containing multiple URLs. I've testing the behavior you just described above and I've been able to play the station as expected. Hope that clarifies things.
Thanks,
Sanjay

Hi @sanjayrd
Building with -DTOTEM_PLPARSER=ON addressed the problem.
What's the timeline for the updated PlaylistParser?  Also what are the other planned fixes/features?
Thanks,
Joel

@INRIX-joel-winarske,
The timeline is approximately 4 weeks. The major feature will be the PlaylistParser, which should help out with a lot of the music provider issues we've been seeing. Other features will be bug fixes and minor improvements.
Thanks,
Sanjay

authors: INRIX-joel-winarske sanjayrd


text:
meme generator does not work with capital letters

Issue Label:

[x] Bug
[ ] New feature
[ ] Enhancement
[ ] New component

Description:
If we use capital letters in text, we get a html document containing a redirection notice instead of png image. We can turn all capital letters into small letters before calling api to fix this issue.
If its a bug make sure to include this section.
OS and OS version:

[ ] Mac
[ ] Linux 32 Bit
[x] Linux 64 Bit
[ ] Windows 32 Bit
[ ] Windows 64 Bit

OS Version: Arch Linux

#168 Fixes This

Closed #169

authors: alexanderepstein navanchauhan prmsrswt

repo: alexanderepstein/Bash-Snippets


text:
PostgreSQL SQL include

Include PostgreSQL with the box.
Add possibility for external DB management.

Probably also include pgadmin


text:
You havent filled out your license

just fyi, you have to fill out your LICENSE: Heres a snippet of this one
Copyright [yyyy] [name of copyright owner]

Cheers

You are talking about this line? This is actually the appendix of the license, not the license itself.
But I guess I should add a COPYRIGHT file like the rust repo has.

That's a possibility, but when using the LICENSE file you have to fill out the actual year(s) and name to properly enform the license afaik

authors: alexanderlinne lquenti

repo: alexanderlinne/kled


text:
Error loading on Zabbix Problems

Describe the bug
On Zabbix Problems Panel, I get an error "Error loading: alexanderzobnin-zabbix-triggers-panel"
Expected behavior
I expect to see all problems from my Zabbix server.
Screenshots

Network data
When I check the response in Query Inspector, I can see I correctly retrieve my 2 Zabbix problems:

Software versions

Grafana
Zabbix
Grafana-Zabbix Plugin

6.4.2
4.4.1
3.12.2

Latest plugin version is not compatible with grafana 6.x.

authors: alexanderzobnin paydaycay

repo: alexanderzobnin/grafana-zabbix


text:
Defeito 16 - H3 - Ambiguidade

O termo "índice" pode ser interpretado de várias maneiras, seria útil especificar se isso significa uma lista hierárquica, árvore de navegação, etc.

Correção realizada.

repo: alexandreggoncalves/appControleEstoque


text:
Unzip option?

Can you add unzip option to this file manager?

Already done. Go to archive's info page (press on filename) and press "Unpack" or "Unpack to folder".

Thanks. I saw at few mins after posting message.
Any plans for adding file editing options (php, html etc) like other member proposed?
Overall, well done with this script.

Yes. See #4

authors: Zebam alexantr

repo: alexantr/filemanager


text:
🐛 [Paperless NGX] Addon doesn't start

Which addon?

Addon name : Paperless NGX
Addon version : 1.9.2-8

Describe the bug
Doesn't work after installing and starting
To Reproduce

Go to Addons
Click on Paperless NGX
Click Start
See error

Full addon log
Starting...
/etc/cont-init.d/00-banner.sh: executing
-----------------------------------------------------------
 Add-on: Paperless NGX
 scan, index and archive all your physical documents
-----------------------------------------------------------
 Add-on version: 1.9.2-8
 You are running the latest version of this add-on.
 System: Home Assistant OS 9.3  (aarch64 / odroid-n2)
 Home Assistant Core: 2022.11.2
 Home Assistant Supervisor: 2022.10.2
-----------------------------------------------------------
 Please, share the above information when looking for help
 or support in, e.g., GitHub, forums
 https://github.com/alexbelgium/hassio-addons
-----------------------------------------------------------
/etc/cont-init.d/20-folders.sh: executing
/etc/cont-init.d/90-config_yaml.sh: executing
Using config file found in /config/addons_config/paperless_ng/config.yaml
Config file is a valid yaml
[22:59:40] INFO: Starting the app with the variables in /config/addons_config/paperless_ng/config.yaml
TZ=Europe/Berlin
PAPERLESS_OCR_LANGUAGE=deu
PAPERLESS_OCR_MODE=skip
/etc/cont-init.d/92-local_mounts.sh: executing
/etc/cont-init.d/92-smb_mounts.sh: executing
Mounting smb share(s)...
Using PUID 0 and PGID 0
[22:59:42] INFO: ... //10.10.10.128/share/Paperless successfully mounted to /mnt/Paperless with options
/etc/cont-init.d/99-run.sh: executing
[22:59:42] INFO: Starting redis
[22:59:42] INFO: Initial username and password are admin. Please change in the administration panel of the webUI after login.
[22:59:42] INFO: Defining variables
270:C 13 Nov 2022 22:59:42.537 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
270:C 13 Nov 2022 22:59:42.537 # Redis version=6.0.16, bits=64, commit=00000000, modified=0, pid=270, just started
270:C 13 Nov 2022 22:59:42.537 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
270:M 13 Nov 2022 22:59:42.541 * Running mode=standalone, port=6379.
270:M 13 Nov 2022 22:59:42.541 # Server initialized
270:M 13 Nov 2022 22:59:42.541 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
270:M 13 Nov 2022 22:59:42.541 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo madvise > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled (set to 'madvise' or 'never').
270:M 13 Nov 2022 22:59:42.550 * Ready to accept connections
/usr/lib/bashio/bashio: line 18: __BASHIO_LIB_DIR: readonly variable

Full addon config
CONFIG_LOCATION: /config/addons_config/paperless_ng/config.yaml
OCRLANG: ENG FRA GER
PAPERLESS_OCR_MODE: skip
PGID: 0
PUID: 0
networkdisks: //10.10.10.128/share/Paperless
cifspassword: xxxxx
cifsusername: media
TZ: Europe/Berlin

System
Home Assistant 2022.11.2
Supervisor 2022.10.2
Operating System 9.3
Frontend 20221108.0 - latest

Hi, should work now

Thank you, it works now.
But I can’t login with admin:admin.

Thank you, it works now.
But I can’t login with admin:admin.

Don't you have such a line "Did not create superuser, a user admin already exists" ? Normally it is created automatically. It is at least on my system. Otherwise you can try deleted the sqlite database and restarting to try to recreate it. Make sure also you don't have put an env variable in the config.yaml that would push another password than admin
Default is :

Name : admin
Password : admin

Solved now

Don't you have such a line "Did not create superuser, a user admin already exists" ? Normally it is created automatically. It is at least on my system. Otherwise you can try deleted the sqlite database and restarting to try to recreate it. Make sure also you don't have put an env variable in the config.yaml that would push another password than admin
Default is :

Name : admin
Password : admin

Doesn't work for me.
[22:04:30] INFO: Initial username and password are admin. Please change in the administration panel of the webUI after login.

Could you please delete the sqlite file, restart and paste the full log? I don't see why it wouldn't work on your system. Thanks

Thank you it works.

Great, thanks! It seems all is working now I'll close this if OK with you

authors: alexbelgium osxdoc

repo: alexbelgium/hassio-addons


text:
Help me docker compose

root@DeaD:~/mtprotoproxy# docker-compose up --build -d
Traceback (most recent call last):
File "/usr/bin/docker-compose", line 9, in
load_entry_point('docker-compose==1.8.0', 'console_scripts', 'docker-compose')()
File "/usr/lib/python2.7/dist-packages/pkg_resources/init.py", line 542, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "/usr/lib/python2.7/dist-packages/pkg_resources/init.py", line 2569, in load_entry_point
return ep.load()
File "/usr/lib/python2.7/dist-packages/pkg_resources/init.py", line 2229, in load
return self.resolve()
File "/usr/lib/python2.7/dist-packages/pkg_resources/init.py", line 2235, in resolve
module = import(self.module_name, fromlist=['name'], level=0)
File "/usr/lib/python2.7/dist-packages/compose/cli/main.py", line 14, in
from . import errors
File "/usr/lib/python2.7/dist-packages/compose/cli/errors.py", line 9, in
from docker.errors import APIError
File "/usr/lib/python2.7/dist-packages/docker/init.py", line 20, in
from .client import Client, AutoVersionClient, from_env # flake8: noqa
File "/usr/lib/python2.7/dist-packages/docker/client.py", line 18, in
import requests
File "/usr/lib/python2.7/dist-packages/requests/init.py", line 53, in
from .packages.urllib3.contrib import pyopenssl
File "/usr/lib/python2.7/dist-packages/urllib3/contrib/pyopenssl.py", line 54, in
import OpenSSL.SSL
File "/usr/lib/python2.7/dist-packages/OpenSSL/init.py", line 8, in
from OpenSSL import rand, crypto, SSL
File "/usr/lib/python2.7/dist-packages/OpenSSL/SSL.py", line 118, in
SSL_ST_INIT = _lib.SSL_ST_INIT
AttributeError: 'module' object has no attribute 'SSL_ST_INIT'

Hello, you can try to install pyopenssl using package manager of your OS or with pip (pip install pyopenssl). Also, you can use proxy without docker, just with python3.6 mtprotoproxy.py

@alexbers
Fatal read error on socket transport
protocol: <asyncio.streams.StreamReaderProtocol object at 0x7fb966987c88>
transport: <_SelectorSocketTransport fd=27 read=polling write=<idle, bufsize=0»
Traceback (most recent call last):
File "/usr/lib/python3.6/asyncio/selector_events.py", line 723, in _read_ready
data = self._sock.recv(self.max_size)
ConnectionRefusedError: [Errno 111] Connection refused
Fatal read error on socket transport
protocol: <asyncio.streams.StreamReaderProtocol object at 0x7fb9668c4e80>
transport: <_SelectorSocketTransport fd=86 read=polling write=<idle, bufsize=0»
Traceback (most recent call last):
File "/usr/lib/python3.6/asyncio/selector_events.py", line 723, in _read_ready
data = self._sock.recv(self.max_size)
ConnectionRefusedError: [Errno 111] Connection refused
This error occurs after the project is executed, and some users can not connect to the proxy
@alexbers

authors: MrMstafa alexbers

repo: alexbers/mtprotoproxy


text:
[lnurl]: support for pay to lnurl

Open to feedback.
Created a new command called lnurl.
Added support for lnurl pay.
Decodes a bech32 string which reveals a url, fetching this url returns a callback url.
Fetching the call back url with an amount returns a bolt 11 payreq.
New directory: lnurl
New files:
lnurl/index.js
lnurl/pay.js
Files changed:
bos
commands/constants.json

how to test this? I don't know about a testnet service that supports lnurl

Can you try this website?
https://lnurl-toolbox.degreesofzero.com/
You can use this for mainnet
https://lnurl.fiatjaf.com/

I think both sites are mainnet only

I think both sites are mainnet only

The first one does not transact any funds. I guess it generates fake invoices or something.

weird ok I guess I can test it not doing anything lol

it was merged but I had to rebase

repo: alexbosworth/balanceofsatoshis


text:
'The token supplied to the function is invalid' in ClientContext Update()

The ClientContext Update() method accepts some 'token'. I presume it should be the one that's returned from NewClientContext() method as 'outputToken'.
However, when I do pass the 'outputToken' to the Update() method it throws the 'The token supplied to the function is invalid' error.
What would be the correct input 'token' for the Update() method, how should the user prepare such a correct 'token'?

The ClientContext Update() method accepts some 'token'. I presume it should be the one that's returned from NewClientContext() method as 'outputToken'.
However, when I do pass the 'outputToken' to the Update() method it throws the 'The token supplied to the function is invalid' error.
What would be the correct input 'token' for the Update() method,

Your description matches how this code was supposed to be used.

how should the user prepare such a correct 'token'?

I would use this https://github.com/alexbrainman/sspi/blob/1a75b4708caa219fd8d8261cd37c923ff6710a32/negotiate/negotiate_test.go as an example. Make sure you check for errors in your code, and match the semantics of SSPI API.
Alex

authors: Gamment alexbrainman

repo: alexbrainman/sspi


text:
🛑 Secret Website 1 is down

In 3324c14, Secret Website 1 ($SECRET_WEBSITE_1) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Secret Website 1 is back up in 2cf3fe7.

repo: alexchapar/status-page


text:
Fixes osx demangling

Adds double __ prefix check, along with some tests for osx (didn't seem to be demangling)

👍

@alexcrichton is it possible to publish a new version on crates in the near future?
Thanks

Certainly! I'll do so now

Thanks :D

repo: alexcrichton/rustc-demangle


text:
Update libssh2 submodule to track back from https://github.com/libssh2/libssh2

This is the first time I do this, so I may be missing something..

Switched the gitmodule to https://github.com/libssh2/libssh2
Update libssh2-sys Cargo.toml version to 0.2.20
Update ssh2-rs Cargo.toml dep on sys crate to 0.2.20

Am I missing anything? The integration testing are running fine, so it "should" be good.

Once this is merged, I'll release 0.9.0 and 0.2.20

LGTM

Thanks a lot. Quick question about releasing 0.9.0: should I do cargo publish first in the sys crate and then in the main one?

Yep, publish the sys crate first!  I think it is safe to try to do it in the wrong order, so don't worry: cargo publish should error out if you try that because it depends on an unreleased sys version and will refuse to let you do it.

authors: crisidev wez


text:
Build multi-arch images

Description
I've added make commands for building multi-arch docker image.
Removed artifacts/operator-<arch>.yaml because now you only need one deployment file for all archs.
I've update inlets image version and also bumped inlets-operator version so I guess multi-arch 0.2.7 image should be tagged before this gets merged? Or should I split this in two PRs?
How Has This Been Tested?

setup k3s cluster on arm64 server
deployed inlets-operator with docker imagematevzmihalic/inlets-operator:0.2.7
exposed deployment using DigitalOcean for the exit node

How are existing users impacted? What migration steps/scripts do we need?
There is a new unified deployment file so instead of running kubectl apply -f ./artifacts/operator-<arch>.yaml users will use kubectl apply -f ./artifacts/operator.yaml to deploy operator to cluster.
Checklist:
I have:

[x] updated the documentation and/or roadmap (if required)
[x] read the CONTRIBUTION guide
[x] signed-off my commits with git commit -s
[ ] added unit tests

This is a great PR, and thank you for doing the testing e2e. Let me know if you'd like to help me more with OpenFaaS and related projects. We have some areas that could benefit from this pattern.

I've created the build and the images on my laptop and pushed them up. I raised #14 to add CI

Yes, I would like to work on OpenFaaS. I just joined the slack :)
I can look at #14 and add travis.

authors: alexellis matevzmihalic

repo: alexellis/inlets-operator


text:
Typescript Paths still unresolved for sub-folders config

Hello,
I'm trying to use React, Eslint, Typescript, Airbnb Config.
I want to use typescript paths, here @components.
The problem is that it works at the root of the project, but not using sub-folders.
The examples uses the structure of a monorepo using packages folder.
Packages are :
    "@typescript-eslint/eslint-plugin": "^2.7.0",
    "@typescript-eslint/parser": "^2.7.0",
    "eslint": "^6.6.0",
    "eslint-config-airbnb": "^18.0.1",
    "eslint-import-resolver-typescript": "^2.0.0",
    "eslint-plugin-import": "^2.18.2",
    "eslint-plugin-jsx-a11y": "^6.2.3",
    "eslint-plugin-react": "^7.16.0"

Here is a reproduction : https://github.com/n44ps/eslint-import-resolver-typescript-repro/
Thank you for your help !
n44ps

What's the error message outputs?
Can you run eslint . --debug and paste the output message here?

And I think you don't need to provide https://github.com/n44ps/eslint-import-resolver-typescript-repro/blob/master/packages/web/.eslintrc.js which is redundant.

And you've not set "directory": "packages/*/tsconfig.json" like the example in README.
So, seems an invalid usage, feel free to point out me if I'm wrong.
Closing for now.

This is what I get for eslint . --debug result.txt.
I removed packages/web/.eslintrc.js but still not working, and I tried to update the ./eslintrc.js with :
            "typescript": {
                "directory": "./packages/*/tsconfig.json"
            }

But still not working :(

I just updated the https://github.com/n44ps/eslint-import-resolver-typescript-repro/ with your advice, still the same.

@n44ps Can you try eslint . --ext ts,tsx?

Yes, did that :
yarn lint . --ext ts,tsx
yarn run v1.19.1
$ eslint . --ext ts,tsx
/Users/florianmichaut/Projects/eslint/src/index.tsx
  2:32  error  Unable to resolve path to module '@components'  import/no-unresolved

✖ 1 problem (1 error, 0 warnings)

error Command failed with exit code 1.

OK, Let me have a look, wait for a while.

@n44ps It should be "directory": ["tsconfig.json", "packages/*/tsconfig.json"]

Well, I forgot the tsconfig.json in the root, so I updated .eslintrc.js with :
            "typescript": {
                "directory": ["packages/*/tsconfig.json", "tsconfig.json"]
            }

And now it works :
yarn lint . --ext ts,tsx
yarn run v1.19.1
$ eslint . --ext ts,tsx
✨  Done in 2.76s.

What I don't understand is why VSCode is still complaining :

Would you have an idea why ? I only have Eslint Plugin in VSCode.
Thank you !

May you should reload VScode. Somethings, vscode-eslint is stupid event configurations changed.

Next time, you can provide reproduction with something like gitpod.

Indeed tried new configuration usingeslint.workingDirectories but after many reload it started to work.
I lost at least a whole day on this issue :( Thank you again for your patience and your answers, and thanks for the discovery of Gitpod :)
Have a nice day / night !

Good night from me. :)

vscode-eslint is stupid even configurations changed.

That comment made my day hahaha

authors: JounQin dardanos n44ps

license: ISC


text:
Add native serialization support

Addressing #45. Very useful for large models like LLMs where even doing forward passes over training data (for fit()) is expensive.
The API basically follows PyTorch.
la = Laplace(model, 'regression', subset_of_weights='all', hessian_structure='full')
la.fit(train_loader)
la.optimize_prior_precision()  # Or via marglik optimizing sigma_noise also

# Serialization for fitted quantities
state_dict = la.state_dict()
torch.save(state_dict, 'state_dict.bin')

la2 = Laplace(model, 'regression', subset_of_weights='all', hessian_structure='full')
# Load serialized, fitted quantities
la2.load_state_dict(torch.load('state_dict.bin'))

By the way, I didn't really implement nor test SubnetLaplace. Not sure if it's really popular nowadays; the same effect can be done by setting requires_grad = False on select parameters anyway (from #144).
Nevertheless, @edaxberger feel free to implement serialization on SubnetLaplace. It should be very straightforward for you.

By the way, I didn't really implement nor test SubnetLaplace. Not sure if it's really popular nowadays; the same effect can be done by setting requires_grad = False on select parameters anyway (from #144).
Nevertheless, @edaxberger feel free to implement serialization on SubnetLaplace. It should be very straightforward for you.

Though I must say that a quick test on SubnetLaplace works no problem. But I don't know about edge cases like different subnetwork_indices but the same len(subnetwork_indices), etc.

@runame updated. Please check and merge if everything's good.
I decided to not include backend and backend_kwargs since Laplace doesn't care about them once H is obtained. I.e. H is just a tensor or Kron and you can use whatever backend you want for glm_predictive.

I also ignore model.state_dict since the user would already have it anyway. Even marglik training also outputted the resulting torch model. Including it in the serialized Laplace is redundant.

Added a test to check fit(override=False)!

repo: aleximmer/Laplace


text:
Unable to load the requested file

file: helpers/emailkirim_helper.php

same then

repo: alexistdev/manthabill


text:
getAll return false

when I insert table success, I getAll data immediately, but getAll return false.
db.insertTableContent(obj).then(res => {
db.getAll('tables') // return false
})

Hi there. You should call db.getAll in a separate statement to reflect the actual result. To shed more light, can you please post the actual or similar code u used with sample data for it to be confirmed? Thanks

Thanks. It work for me.
Reference this question: #10 . Handle an async task before getAll.

authors: alexiusacademia ducaiwei

repo: alexiusacademia/electron-db


text:
proxychains-ng issue

Ubuntu 20.04 LTS
DRipper doesn't want to start before proxychains checks every proxy in the config? For example, whenever I check my IP with curl, I'm getting similar results. This is the first time I'm getting such a thing; other programs I have run work as usual with it.

UPD: Also, only running commands with python3 seems to work for me, for some reason.

DRipper requires python 3.9 or better. Pls update python and check

@SomalianCoolhacker is it still actual? Did you try the latest version with proxy support?

authors: AlexNDRmac SomalianCoolhacker


text:
Update broken Figma community link

Update broken Figma community link for UI2: Figma Design System
Was just checking out this project and it looks like the Figma community link in the readme was broken. Just quickly updating!

Good catch! Thank you for the PR.

Cheers! Cool project :)

authors: alexwidua iamnbutler

repo: alexwidua/figma-plugin-ds-vue


text:
Cross-compilation for arm64 and x64 (macOS)

I am able to cross-compile the native module for both x64 and arm64. I haven't tested the full compiled output, but at least I am able to compile for x64 on Apple Silicon.
By using
rustup target install x86_64-apple-darwin

and then updating the scripts in package.json (say in fs-mod):
 "build-x64": "napi build --platform --release --target 'x86_64-apple-darwin'",
 "build-arm64": "napi build --platform --release --target 'aarch64-apple-darwin'",

node_modules will need to reinstalled before finalizing the compilation to a .dmg. Also, the native module directory should only contain a single compiled file (either x64 or arm64) before reinstalling node_modules because it can only detect one at a time. This requires manually deleting until a better process is found.
I want to supply both x64 and arm64 builds, so taking the extra steps are absolutely necessary.

I am able to cross-compile the native module for both x64 and arm64. I haven't tested the full compiled output, but at least I am able to compile for x64 on Apple Silicon.
By using
rustup target install x86_64-apple-darwin

and then updating the scripts in package.json (say in fs-mod):
 "build-x64": "napi build --platform --release --target 'x86_64-apple-darwin'",
 "build-arm64": "napi build --platform --release --target 'aarch64-apple-darwin'",

node_modules will need to reinstalled before finalizing the compilation to a .dmg. Also, the native module directory should only contain a single compiled file (either x64 or arm64) before reinstalling node_modules because it can only detect one at a time. This requires manually deleting until a better process is found.
I want to supply both x64 and arm64 builds, so taking the extra steps are absolutely necessary.

The Makefile should be updated to have these targets. The commands are just placeholders for now, but closely resemble the chain of commands for a full compilation and build.
.PHONY: build-x64
build-x64:
	rmdir -rf node_modules
	npm install
	cd fs-mod
	rm fs-mod.darwin-arm64.node
	npm run build
	cd -
	npm run build:mac

.PHONY: build-arm64
build-arm64:
	rmdir -rf node_modules
	npm install
	cd fs-mod
	rm fs-mod.darwin-x64.node
	npm run build
	cd -
	npm run build:mac

Command references:
To check target list:
rustc --print target-list

Install target:
rustup target install <target>

Some dependencies require LLVM:
brew install llvm

Command references:
To check target list:
rustc --print target-list

Install target:
rustup target install <target>

Some dependencies require LLVM:
brew install llvm

Command references will be added to the README in v0.2.0-dev-4.3 as part of the development steps.

Ensure that both native modules are built for x64 and arm64
Set --x64 or --arm64 as the argument for electron builder

"build:mac-arm64": "npm run build && electron-builder --mac --arm64 --config",
"build:mac-x64": "npm run build && electron-builder --mac --x64 --config",

From limited testing, both arm64 and x64 do work. For x64, I only tested it under Rosetta because my host is Apple Silicon.

repo: alexwkleung/Iris


text:
Nouveau moteur de reconnaissance de Hotword: Sopare

Bon j'ai pas teste non plus vu que c'est inutilisable pour moi le code est en python.
https://github.com/bishoph/sopare

Pas encore testé, mais principaux avantages que je vois:

Hors ligne (comme PocketSphinx et Snowboy)
Concu pour Raspberry Pi (comme Snowboy)
Besoin de trainer les mots clés à détecter (comme Snowboy, mais hors ligne 😄 )

Je ne vais pas implémenter tous les STT et TTS qui existent mais je me concentrerai sur ceux qui sont les plus simple à utiliser et qui donnent les meilleurs résultats afin d'offrir un choix de qualité aux utilisateurs de Jarvis.
Donc à tester avant de décider si j'implémente ou pas 😉

Par contre d'apres ce que j'ai compris c'est plus un Hotword detector qu'un STT engine.
Tu peux y programmer quelques mots, mais il ne lira jamais une phrase complete.

Pas d'avancée sur le sujet pour le moment.
@alexylem Je clôture cette issue, mais l'ai intégré au projet Jarvis Core histoire que tu en garde une trace.

authors: Smanar alexylem wikijm

repo: alexylem/jarvis


text:
Update to Swift 5

Fixed fetching cryptocurrencies list for WatchOS as well

Codecov Report

Merging #36 into master will increase coverage by 0.03%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #36      +/-   ##
==========================================
+ Coverage   79.33%   79.37%   +0.03%
==========================================
  Files          65       65
  Lines        1747     1750       +3
==========================================
+ Hits         1386     1389       +3
  Misses        361      361

Impacted Files
Coverage Δ

YARCH/Helpers/APIClient.swift
84.84% <100%> (+1.51%)
:arrow_up:

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 6f2045d...5c2966d. Read the comment docs.

authors: aeternas codecov-io

repo: alfa-laboratory/YARCH


text:
export 'default' was not found in 'vue-tailwind'

I must be doing something wrong :(
Plain out-of-the-box everything Vue works perfectly 🥳
The minute I try to add somethingVue Tailwind (2.1.3) - I get this
hermes_1    |
hermes_1    | ERROR in ./app/javascript/packs/hermes_vue.js 33:15-21
hermes_1    | "export 'TInput' was not found in 'vue-tailwind/dist/components/'
hermes_1    |
hermes_1    | ERROR in ./app/javascript/packs/hermes_vue.js 39:8-19
hermes_1    | "export 'default' (imported as 'VueTailwind') was not found in 'vue-tailwind'
hermes_1    |

My app.vue has one added element
<template>

    <t-input />

{{ message }}

</template>

and my javascript-pack mentions this

import Vue from 'vue'
import VueTailwind from 'vue-tailwind'
import App from '../components/app.vue'

import {
  TInput,
} from 'vue-tailwind/dist/components/'

const components = {
  't-input': {
    component: TInput,
    props: {
      classes: 'border-2 block w-full rounded text-gray-800'
    }
  }
}

Vue.use(VueTailwind, components)

document.addEventListener('DOMContentLoaded', () => {
  const app = new Vue({
    render: h => h(App)
  }).$mount()
  document.body.appendChild(app.$el)

  console.log(app)
})

For what it's worth, I'm having the exact same issue. I've even tried to "v1 syntax" approach and I'm just getting:
export 'VueTailwind' (imported as 'VueTailwind') was not found in 'vue-tailwind' (module has no exports)

@wdiechmann did you ever find a resolution to this issue?

@robtesch nah - @alfonsobries gave me directions (that I was not able to follow) so ...
But our current package.json looks like
    "dependencies": {
        "@hotwired/turbo-rails": "^7.0.0-beta.5",
        "@johmun/vue-tags-input": "^2.1.0",
        "@rails/actioncable": "^6.0.0",
        "@rails/actiontext": "^6.1.3",
        "@rails/activestorage": "^6.0.0",
        "@rails/ujs": "^6.0.0",
        "@rails/webpacker": "5.2.1",
        "@tailwindcss/aspect-ratio": "^0.2.0",
        "@tailwindcss/forms": "^0.2.1",
        "@tailwindcss/typography": "^0.4.0",
        "alpine-magic-helpers": "^1.0.0",
        "alpine-turbo-drive-adapter": "^1.0.1",
        "alpinejs": "^2.8.1",
        "apollo-boost": "^0.4.9",
        "autoprefixer": "^9",
        "coffee-loader": "0.9.0",
        "coffeescript": "1.12.7",
        "dayjs": "^1.10.4",
        "dayjs-dynamic-locale": "^0.0.7",
        "graphql": "^15.5.0",
        "luxon": "^1.26.0",
        "postcss": "^7",
        "stimulus": "^2.0.0",
        "tailwindcss": "npm:@tailwindcss/postcss7-compat",
        "trix": "^1.2.0",
        "vue": "^2.6.12",
        "vue-advanced-search": "^0.1.43",
        "vue-apollo": "^3.0.7",
        "vue-datetime": "^1.0.0-beta.14",
        "vue-loader": "^15.9.6",
        "vue-tailwind": "^2.2.1",
        "vue-tailwind-datetime-picker": "^1.1.1",
        "vue-tailwind-picker": "^2.0.0",
        "vue-template-compiler": "^2.6.12",
        "vue2-datepicker": "^3.9.0",
        "weekstart": "^1.1.0"
    },

and (one of) my "packs" - appointment.js looks like this
import Vue from 'vue'
import Datepicker from '../components/datepicker.vue'
import Autocomplete from '../components/autocomplete.vue'

so I guess we went with the "railsy" way of doing stuff - using Stimulus - which I am saddened by because I really like the Alpine thinking but hey, you know, when things don't move you gotta make decisions right? 😃

Thanks for the input. I've managed to get things moving myself just now by changing my webpack config so that it doesn't use babel-loader anymore. I have no idea what I'm doing when it comes to webpack so I just tried stuff until suddenly things worked.

@robtesch and that is boiled to the bone exactly my sentiment with regards to webpacker (and friends)
there is simply too many moving cogs and pins in that stack!
TailwindCSS is perfect - the JIT though already is forcing me to cargo-cult with 27 deps and another 17 devdeps
AlpineJS is fine too - but even that has 16 devdeps and my guess is that by June 16th it will have another 5-10 deps and this all leads straight to DLL-hell (like why I switched to mac in 2006 when I was on 8 daily reboot's due to dll's colliding on M$ windozes 😉

authors: robtesch wdiechmann

repo: alfonsobries/vue-tailwind


text:
Waiting for status to be CONNECTED

Is there a way to wait for the driver status to be CONNECTED possibly with a timeout ?

async def wait_until_connect(driver):
        async for evt in driver.stream.monitor_field('stream'):
            if evt['value'] == Stream.Stream.CONNECTED:
                return

Thanks!

I am trying to do this
await driver.stop()
await driver.start()

Its throwing me selenium.common.exceptions.InvalidSessionIdException: Message: Tried to run command without establishing a connection . Why is that ?

Are you trying to stop before start?

No I am not . I started the driver using await driver.start() .

When it fails? When you stop it or when you try to start again?

When I try to stop it . Here is the initialization code

@middleware
async def run_before_every_request(request, handler):
    client_id = request.headers["client-id"]
    api_key = request.headers["api-key"]
    if api_key != API_KEY:
        return web.json_response({"message": "Please provide correct API key", "status": False}, status=401)
    if client_id not in drivers.keys():
        async_loop = asyncio.get_event_loop()
        profile_path = os.path.join(FIREFOX_PROFILES_PATH, client_id)
        if not os.path.exists(profile_path):
            os.makedirs(profile_path)
        driver = whalesong.Whalesong(
            profile=profile_path,
            loadstyles=True,
            loop=async_loop
        )
        await driver.start()
        request["driver"] = driver
        drivers[client_id] = driver
    else:
        request["driver"] = drivers[client_id]
    return await handler(request)

That error is because connection with Selenium is lost. You initialitation looks ok. I can not see more.

What can I do to resolve it ? Bug within whalesong ?

I don't know. It could be a problem with your code. Can you test an script which start and stop whalesong? If it fails it is a bug in Whalesong, otherwise it is your code.

Here is my test code

import asyncio
import os

import whalesong

BASE_DIR = os.path.dirname(os.path.abspath(__file__))
PROFILE_PATH = os.path.join(BASE_DIR, 'test-profile')
async_loop = asyncio.get_event_loop()
driver: whalesong.Whalesong = whalesong.Whalesong(
    profile=PROFILE_PATH,
    loadstyles=True,
    loop=async_loop
)

async def start():
    await driver.start()
    await driver.stop()

if __name__ == '__main__':
    driver.loop.run_until_complete(start())

Same exception.

Ok, create a bug


text:
opus and zrtp

added opus and zrtp modules (optional)

many thanks :)
make opus does not work for me:
alfredh@debian:~/git/baresip-android$ make opus
cd opus && \
	rm -rf include_opus && \
	CC="arm-linux-androideabi-gcc --sysroot /home/alfredh/android/android-ndk-r13/platforms/android-17/arch-arm" \
	RANLIB=/home/alfredh/android/android-ndk-r13/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-ranlib AR=/home/alfredh/android/android-ndk-r13/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-ar \
	./configure --host=arm-linux-androideabi --disable-shared CFLAGS="-march=armv7-a" && \
	make && \
	mkdir include_opus && \
	mkdir include_opus/opus && \
	cp include/* include_opus/opus
checking whether make supports nested variables... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for arm-linux-androideabi-strip... no
checking for strip... strip
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... arm-unknown-linux-androideabi
checking how to print strings... printf
checking for style of include used by make... GNU
checking for arm-linux-androideabi-gcc... arm-linux-androideabi-gcc --sysroot /home/alfredh/android/android-ndk-r13/platforms/android-17/arch-arm
checking whether the C compiler works... no
configure: error: in `/home/alfredh/git/baresip-android/opus':
configure: error: C compiler cannot create executables
See `config.log' for more details
Makefile:143: recipe for target 'opus' failed
make: *** [opus] Error 77

the compiler arm-linux-androideabi-gcc is installed but is not in $PATH

while making more tests, i noticed also this:
CC       src/opus_decoder.lo
src/opus_decoder.c:37:10: note: #pragma message: You appear to be compiling without optimization, if so opus will be very slow.
pragma message "You appear to be compiling without optimization, if so opus will be very slow."
      ^

should more options be added on CC= line?
-- juha

Alfred E. Heggestad writes:

make opus does not work for me:

sorry, too many copy/pastes.  path was missing:
RANLIB=$(RANLIB) AR=$(AR) PATH=$(BIN):$(PATH) \
i'll make more tests and then new PR.
-- juha

Alfred E. Heggestad writes:

make opus does not work for me:

i added PATH to configure and replaced the pull request.
-- juha

authors: alfredh juha-h

repo: alfredh/baresip-android


text:
Fix panic on STUN binding failure while multiplexing

An unrelated bug I had in my application was causing STUN to fail, and a Class::Failure message to come back. Because like in the chat example, I'm still using a single multiplexed UDP socket, this message first went to the Rtc::accepts() of a separate client that had not negotiated, which caused it to panic with "Remote ICE Credentials".
This is the same underlying panic as in https://github.com/algesten/str0m/pull/461, but this time the logic was allowed to fall through to the stun_credentials() call because we were only doing the preceding candidate-pair test for Class::Success responses, not Class::Failure.
I wanted to add a test for this, but with the current field visibility on StunMessage, I couldn't create a failure message in a test. I wasn't sure if adding a helper to impl StunMessage was appropriate.

Which panic are you hitting?

I think the correct fix would be:
--- a/src/ice/agent.rs
+++ b/src/ice/agent.rs
@@ -799,6 +799,9 @@ impl IceAgent {
                 trace!("Message rejected, transaction ID does not belong to any of our candidate pairs");
                 return false;
             }
+        } else {
+            trace!("Message reject, it is not a succesful binding response");
+            return false;
         }

         let (_, password) = self.stun_credentials(!message.is_response());

That patch would end up rejecting everything that's not a successful binding response, since all other message types, including things like binding requests, would fall through to that else case as well.
I believe the effect you intended was to just reject all non-success binding responses? That would also fix the panic, although arguably IceAgent should be accepting all traffic intended for it, even if it doesn't react to failed responses in any special way.
(Aside: Class::Indication and Class::Unknown wouldn't trigger panics with either of our solutions).

Taking a step back.
accept should, as you say, accept all traffic targeted at this Rtc instance.

I think we have our bases covered here then - STUN requests get handled as before, and now both STUN success and failure gets accepted if it corresponds to a STUN request from us (or rejected before the credentials check if not).

I still don't like this change.
What kind of responses are we talking about that we suddenly accept? What about middleboxes? We should be very specific with what we accept. Enumerate the cases.

I believe this enumeration is exhaustive:

Method::Binding, Class::Request: Unchanged, rejects on a local/remote ufrag mismatch and then checks integrity. Cannot panic because it does not require remote credentials to integrity-check.
Method::Binding, Class::Success: Unchanged, rejects if the transaction ID matches no binding request from us, then checks integrity. If the transaction ID matches, the integrity-check would panic without remote credentials, but we do not generate binding requests without remote credentials, so panic is effectively impossible.
Any method, Class::Failure: Changed, previous behavior would only check integrity, panicking if remote credentials have not been set. New behavior matches the Class::Success case.
Method::Unknown, Class::Success: Changed, both previous and new behavior match the Class::Failure case.
Method::Unknown, Class::Request: Unchanged, only checks integrity. Cannot panic because it does not require remote credentials to integrity-check.
Any method, Class::Indication or Class::Unknown: Unchanged, only checks integrity. Cannot panic because it does not require remote credentials to integrity-check.

This PR was aimed at fixing the (Method::Binding, Class::Failure) case specifically, but it seems both (Method::Unknown, Class::Success) and (Method::Unknown, Class::Failure) had the same panic bug. This PR ~unintentionally~ incidentally prevents these two from panicking as well, by subjecting them to the same transaction-ID-match test as a binding success would be. It's hard to have a good answer for what to do with Method::Unknown, but this seems like a reasonable-enough way to handle them.
Considering the confusion that seems to exist around the exact behavior of accepts() (and I made several mistakes in the process of putting the above enumeration together!), perhaps we should consider rewriting this method to use an exhaustive match, even if it means we can't use is_response() and similar utilities.

Considering the confusion that seems to exist around the exact behavior of accepts() (and I made several mistakes in the process of putting the above enumeration together!), perhaps we should consider rewriting this method to use an exhaustive match, even if it means we can't use is_response() and similar utilities.

Agree. I also think this function should default to false at the end and explicitly enumerate the cases where we do accept the message. So it's the opposite of today really.

Okay, I'll take a stab at doing that tomorrow.

authors: OxleyS algesten


text:
Does not work after having filtered on a language

When on a repository search page, if we filter by language, the search is reloaded asynchronously which breaks the bindings.
Maybe we could delegate the binding to a higher level in the dom tree?

Hmmm, good catch :/
But what should we do since we don't have the data to provide a faceted search based on the language :/ Breaking the binding is now good, but I'm wondering if we want to show the dropdown menu to the user once he selected a language :/

You are right. I think breaking the binding makes sense actually as we do not have language as facet. Feel free to close.

authors: rayrutjes redox

repo: algolia/github-awesome-autocomplete


text:
Implement getting last n rounds or last n transactions.

Summary
Currently the Indexer doesn't expose any REST endpoint to enable most recent transactions / rounds.
Scope/Requirements
As a user, I may want to get data from the last n rows (transactions/rounds) and aggregate them. Currently the only way to do is get the latest round and sequentially call latest round - n to find the last n rows to query data from. There should be an easier way to do this.
Current workaround is just directly querying the DB.
Urgency/Relative Priority
Medium

Agreed, this is a surprising oversight.  All you can do is define ranges of rounds to walk back in time, but you have no idea of how far back to go, so you could be iteratively walking 'backwards' hundreds of blocks at a time for millions of rounds to find the last transaction for an account, asset, etc.
This is pretty foundational for applications needing to determine if there's new activity for an account since their last check or to display the last X transactions.  These operations should basically be near-instant yet the existing implementation seems to be based more for extraction from the beginning, which doesn't reflect the majority of use-cases.  An ordering clause would handle this.

Sure, but regardless of whether a someone is using Indexer/Algod, there is no REST endpoint exposed for getting the last n transactions or the last n rounds. As a developer, if I want to get the last n rounds, I'd have to do the following:

Call /v2/status to get the current round.
Call /v2/blocks/{round} sequentially for current round - 1 => current_round - n to get get info about the last n rounds.

Then because any round can have any amount of transactions, I have to go do:

Iterate through some n rounds to aggregate m transactions.

This is an extremely common use case. There should already be a REST api that I can simply call like this:

/getLatestRounds/{numOfRounds}
/getLatestTransactions/{numOfTransactions}

Whether this is done in algod / indexer / something else I have no real preferense for.

This is a duplicate of #389

I've got an application that monitors numerous wallets and I want to pull the latest transaction for each wallet with a single call - getting things like a note on the transaction for eg.
This should be almost instantaneous with the indexer, and a simple call for it to handle.
/v2/accounts/xxx/transactions?limit=1 should give me the most recent transaction.  It's kind of stunning to me it doesn't work this way to be honest.

@pbennett there seems to be a miscommunication somewhere, your expectation is exactly how /v2/accounts/xxx/transactions?limit=1 works.

Interesting.  The last time I looked, ordering was ascending, not descending.  You have to literally 'walk' backwards by changing round ranges.  Perhaps this is with other search criteria, but that behavior still shouldn't change.  Ordering shouldn't change based on what you do or don't search on.  If different ordering is desired, it should be its own parameter.

Sorry, we've designed it so that ordering is different depending on what the search parameters are. Search with an accout address and you get descending order by time (the most recent txn for an account going back into the past); other searches are ascending in time. This was a guess at reasonable defaults based on usage for these two major categories of queries. And we don't allow other sort orders because these sorts align with SQL indexes, these queries should be fast and efficient. The API tries to the most common things in a good way. There's always the SQL backend for arbitrary queries.

Search with an accout [sic] address and you get descending order by time (the most recent txn for an account going back into the past)

What was the use-case reasoning behind this?  Blockchain is a digital ledger system where the verified audit/settling of any account starts from Tx 0 -> Tx N (latest).  Having to process a digital ledger backwards is exceptionally challenging for all sorts of reasons, many of which are due to the inherent complexities of figuring out true state + the fact that the Indexer's "next-token" pagination system splits block transactions across pages.
In the case of polling actively for latest Txs, the "newest first" approach means rather than simply store a "last processed" TxId or blockId (as in an "oldest first" approach), the pagination system means you now have to figure out if the recent page you just retrieved from the Indexer actually covers whatever you've processed up to a given point.  Throw in the need for resume/restart on an application and now you've got a challenging state management problem.
Oldest first solves all of that and is the natural order of how ledger systems work.  You don't balance a checking account from what the total currently displays (which could be wrong) and then work backward, you start at zero and accumulate in an ascending order.

The primary application envisioned when querying the transactions on an account is the wallet behavior, "what are my recent transactions?"

Related to #389

closing in favor of #389.

authors: Blackglade algoanne brianolson kirse pbennett winder

repo: algorand/indexer


text:
Documents

Pull Request Template
Title
[Provide a succinct and descriptive title for the pull request, e.g., "Improve caching mechanism for API calls"]
Type of Change

[ ] New feature
[ ] Bug fix
[x] Documentation update
[ ] Refactoring
[ ] Hotfix
[ ] Security patch
[ ] UI/UX improvement

Description
[Provide a detailed explanation of the changes you have made. Include the reasons behind these changes and any relevant context. Link any related issues.]
Testing
[Detail the testing you have performed to ensure that these changes function as intended. Include information about any added tests.]
Impact
[Discuss the impact of your changes on the project. This might include effects on performance, new dependencies, or changes in behaviour.]
Additional Information
[Any additional information that reviewers should be aware of.]
Checklist

[ ] My code adheres to the coding and style guidelines of the project.
[ ] I have performed a self-review of my own code.
[ ] I have commented my code, particularly in hard-to-understand areas.
[ ] I have made corresponding changes to the documentation.
[ ] My changes generate no new warnings

Conflicts that must be resolved

Pull Request Template
Title
Merging Technical Specification
Type of Change

[ ] New feature
[ ] Bug fix
[x] Documentation update
[ ] Refactoring
[ ] Hotfix
[ ] Security patch
[ ] UI/UX improvement

Description
Document about all the technical aspect of this project.
Testing
Reviewed by the Q&A.
Impact
Explaining how the project work and how is it build to guide the team project.
Additional Information
Nothing to add.
Checklist

[x] My code adheres to the coding and style guidelines of the project.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have made corresponding changes to the documentation.
[x] My changes generate no new warnings

authors: CamilleGayat MichelRiff


text:
实测效果没有paper中展示的好

1、实测效果没有paper中展示的好，人脸一致性很差，请问是sd1.5的问题吗？
2、看算法架构，reference net和sd是分离的，给的模型权重只有一个接近10G的flashface.ckpt，这是集成两个model了嘛？

1、实测效果没有paper中展示的好，人脸一致性很差，请问是sd1.5的问题吗？ 2、看算法架构，reference net和sd是分离的，给的模型权重只有一个接近10G的flashface.ckpt，这是集成两个model了嘛？

paper中展示的结果是给定了 face position的，效果会更稳定一些，并且都是四张ref图生成的（我们在论文提到了），可以提供下您的具体例子？
是的，集成了两个model

1、实测效果没有paper中展示的好，人脸一致性很差，请问是sd1.5的问题吗？ 2、看算法架构，reference net和sd是分离的，给的模型权重只有一个接近10G的flashface.ckpt，这是集成两个model了嘛？

可以把您的 ref 图 与 prompt放在这里，我来测试一下

1、实测效果没有paper中展示的好，人脸一致性很差，请问是sd1.5的问题吗？ 2、看算法架构，reference net和sd是分离的，给的模型权重只有一个接近10G的flashface.ckpt，这是集成两个model了嘛？

paper 中展示的结果使用的 ckpt 与我们 release 的训练 setting 不太一样，但是效果应该是差不多的（不过 release 版本训练时间更久，变为艺术品的能力应该变差了），另一方面是 paper 的生成图给定了 face position的，效果会更稳定一些，因为随机生成有时可能会产生很小的脸，受sd1.5分辨率所限，相似度就会出问题，另一方面，paper中真人图像基本是四张ref图生成的（我们在论文提到了，并在补充材料展示了使用的四张 ref 图），

可以提供下您的具体例子，我来帮忙找找原因，我测试下来复杂prompt整体图片受限于sd1.5有时候会崩，但是人脸相似度不应该有问题, readme 与 gif 中的例子都是这次 release 的模型跑的

是的，集成了两个model

请问可以只提供reference net权重吗，这样可以测试其他sd1.5模型的效果

仅仅 a man 对于 flashface 来说指引太过模糊了，这个情况下instantid有ref图关键点指引，所以它依旧能稳定出图，公平条件下可以对flashface 提供一个face_bbox =[0.3, 0.1, 0.6, 0.4] 作为指引，可以使用我的ipynotebook复现以下结果
face_imgs = [Image.open(f"ref.png").convert("RGB")]
need_detect = True
pos_prompt = "A young  man "
neg_prompt = "beard"
# No face position
face_bbox =[0.3, 0.1, 0.6, 0.4]
#face_bbox =[0., 0., 0., 0.]
# bigger these three parameters leads to more fidelity but less diversity
lamda_feat = 1.1
face_guidence = 2.5
step_to_launch_face_guidence = 600

steps = 35
default_text_control_scale = 7.5

default_seed = 0

imgs = generate(pos_prompt=pos_prompt,
                    neg_prompt=neg_prompt,
                    steps=steps,
                    face_bbox=face_bbox,
                    lamda_feat=lamda_feat,
                    face_guidence=face_guidence,
                    num_sample=4,
                    text_control_scale=default_text_control_scale,
                    seed=default_seed,
                    step_to_launch_face_guidence=step_to_launch_face_guidence,
                    reference_faces=face_imgs,
                    need_detect=need_detect
                    )

# show the generated images
img_size = imgs[0].size

num_imgs = len(imgs)
save_img = Image.new('RGB', (img_size[0] * (num_imgs + 1), img_size[1]))
for i, img in enumerate(imgs):
    save_img.paste(img, ((i + 1) * img_size[0], 0))

# paste all four reference face imgs to the first

resize_w = img_size[0] // 2
resize_h = img_size[1] // 2

for id, ref_img in enumerate(face_imgs):
    # resize the ref_img keep the ratio to fit the size of (resize_w, resize_h)
    w_ratio = resize_w / ref_img.size[0]
    h_ratio = resize_h / ref_img.size[1]
    ratio = min(w_ratio, h_ratio)
    ref_img = ref_img.resize(
        (int(ref_img.size[0] * ratio), int(ref_img.size[1] * ratio)))

    if id < 2:
        save_img.paste(ref_img, (id * resize_w, 0))
    else:
        save_img.paste(ref_img, ((id - 2) * resize_w, resize_h))

display(save_img)

当你的prompt 更具体一些，不给 face bbox 也可以出更多样的图
face_imgs = [Image.open(f"ref.png").convert("RGB")]
need_detect = True
pos_prompt = "A young  man in suit"
neg_prompt = "beard"
# No face position
#face_bbox =[0.2, 0.1, 0.5, 0.4]
face_bbox =[0., 0., 0., 0.]
# bigger these three parameters leads to more fidelity but less diversity
lamda_feat = 1.1
face_guidence = 2.5
step_to_launch_face_guidence = 600

steps = 35
default_text_control_scale = 7.5

default_seed = 0

imgs = generate(pos_prompt=pos_prompt,
                    neg_prompt=neg_prompt,
                    steps=steps,
                    face_bbox=face_bbox,
                    lamda_feat=lamda_feat,
                    face_guidence=face_guidence,
                    num_sample=4,
                    text_control_scale=default_text_control_scale,
                    seed=default_seed,
                    step_to_launch_face_guidence=step_to_launch_face_guidence,
                    reference_faces=face_imgs,
                    need_detect=need_detect
                    )

# show the generated images
img_size = imgs[0].size
num_imgs = len(imgs)
save_img = Image.new('RGB', (img_size[0] * (num_imgs + 1), img_size[1]))
for i, img in enumerate(imgs):
    save_img.paste(img, ((i + 1) * img_size[0], 0))

# paste all four reference face imgs to the first

resize_w = img_size[0] // 2
resize_h = img_size[1] // 2

for id, ref_img in enumerate(face_imgs):
    # resize the ref_img keep the ratio to fit the size of (resize_w, resize_h)
    w_ratio = resize_w / ref_img.size[0]
    h_ratio = resize_h / ref_img.size[1]
    ratio = min(w_ratio, h_ratio)
    ref_img = ref_img.resize(
        (int(ref_img.size[0] * ratio), int(ref_img.size[1] * ratio)))

    if id < 2:
        save_img.paste(ref_img, (id * resize_w, 0))
    else:
        save_img.paste(ref_img, ((id - 2) * resize_w, resize_h))

display(save_img)

相比于instantid，因为instantid使用了关键点，虽然这保证了它在任意情况下的出图稳定性，但是也导致语言对脸部的控制能力变弱，它生成图跟 ref 图的位置 pose 表情几乎一样
Flashface 灵活性更高一些，即我们 paper 所说的受语言控制能力更强,即使只有一张ref图我们生成图也可以与 ref 图有较大的variance， 可以看到我们生成图与ref图在pose，表情方面是有varience的，不是照抄的ref图
另一方面，提供四张图更能体现我们算法的优势，生成图 varience 更大

1、实测效果没有paper中展示的好，人脸一致性很差，请问是sd1.5的问题吗？ 2、看算法架构，reference net和sd是分离的，给的模型权重只有一个接近10G的flashface.ckpt，这是集成两个model了嘛？

paper 中展示的结果使用的 ckpt 与我们 release 的训练 setting 不太一样，但是效果应该是差不多的（不过 release 版本训练时间更久，变为艺术品的能力应该变差了），另一方面是 paper 的生成图给定了 face position的，效果会更稳定一些，因为随机生成有时可能会产生很小的脸，受sd1.5分辨率所限，相似度就会出问题，另一方面，paper中真人图像基本是四张ref图生成的（我们在论文提到了，并在补充材料展示了使用的四张 ref 图），

可以提供下您的具体例子，我来帮忙找找原因，我测试下来复杂prompt整体图片受限于sd1.5有时候会崩，但是人脸相似度不应该有问题, readme 与 gif 中的例子都是这次 release 的模型跑的

是的，集成了两个model

请问可以只提供reference net权重吗，这样可以测试其他sd1.5模型的效果

我们这次 release的版本是全微调的，可能不能支持这样的操作

好的，我明白了，非常感谢您的回复，从一开始就关注到这篇paper了，基本每隔几天就来看看是否开源，

好的，我明白了，非常感谢您的回复，从一开始就关注到这篇paper了，基本每隔几天就来看看是否开源，

哈哈，感谢您的关注，我跑了三个例子，您看看现在效果令人满意吗

好的，我明白了，非常感谢您的回复，从一开始就关注到这篇paper了，基本每隔几天就来看看是否开源，

您还有其他问题吗，如果没有，我今天就先把这个issue close了，有问题随时 issue提问讨论

authors: jshilong rwywenyi

repo: ali-vilab/FlashFace


text:
想问下 init扫描文件的时候 为什么要扫描zip结尾的文件 原生的不就是apk文件么 还希望解答下

Look at here

→ Did you read the doc carefully
→ Did you add annotation above target activity
→ Did you add annotation processor dependence
→ Receive only bugs and suggestions

这个要区分不同版本的，建议你了解一下

MultiDex 原理
InstantRun 原理
SplitApk 原理

repo: alibaba/ARouter


text:
BugID:29304869:Fix for linkkit buffer overflow issue

Is your feature request related to a problem? Please describe.
Describe the solution you'd like
Additional context

 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.You have signed the CLA already but the status is still pending? Let us recheck it.

authors: CLAassistant lluwang

repo: alibaba/AliOS-Things


text:
BizGoblin  设置渐变色 颜色不明显 透明度 太低 了 ，能自定义最好。

红色 被透明度 影响  太多了。

style={{fillOpacity:1}}

repo: alibaba/BizGoblin


text:
feat(build_tools): add build version print in shared lib

Signed-off-by: pingkai pingkai010@gmail.com

Codecov Report

Merging #157 into develop will increase coverage by 0.34%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           develop     #157      +/-   ##
===========================================
+ Coverage    71.75%   72.10%   +0.34%
===========================================
  Files          204      204
  Lines        10951    10951
===========================================
+ Hits          7858     7896      +38
+ Misses        3093     3055      -38

Impacted Files
Coverage Δ

framework/demuxer/AVBSF.cpp
65.93% <0.00%> (-2.20%)
:arrow_down:

framework/demuxer/avFormatDemuxer.cpp
76.56% <0.00%> (-1.88%)
:arrow_down:

framework/data_source/curl/CURLConnection.cpp
75.44% <0.00%> (-1.19%)
:arrow_down:

framework/render/audio/filterAudioRender.cpp
87.01% <0.00%> (-0.65%)
:arrow_down:

mediaPlayer/player_notifier.cpp
81.86% <0.00%> (-0.55%)
:arrow_down:

mediaPlayer/SuperMediaPlayer.cpp
76.21% <0.00%> (-0.10%)
:arrow_down:

framework/demuxer/play_list/HLSStream.cpp
68.40% <0.00%> (+0.13%)
:arrow_up:

mediaPlayer/media_packet_queue.cpp
80.00% <0.00%> (+0.79%)
:arrow_up:

mediaPlayer/player_msg_control.cpp
81.45% <0.00%> (+0.80%)
:arrow_up:

framework/demuxer/play_list/HLSManager.cpp
75.09% <0.00%> (+1.18%)
:arrow_up:

... and 5 more

Continue to review full report at Codecov.

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

authors: codecov-io pingkai

repo: alibaba/CicadaPlayer


text:
duke on 1 GTX 2080ti,the mAP can not reach 72.8%

I run the duke dataset  on 1 GTX2080ti, then  I set the parameters as below:
batch_size=64
num_instances=4
iters=200
pooling-type=gem
momentum=0.1
use-hard
lr=0.00035
the other parameters are same as before, finally I got mAP 70.3%, (< mAP 72.8% in paper).
Is it any chance to reach 72.8% when I only use 1 GTX 2080ti?

I didn't try one card. The paper result is achieved by batch size 256, so may be increase batch size would be helpful.

authors: Git-Yxt daizuozhuo

repo: alibaba/cluster-contrast-reid


text:
oracle数据库不支持对union关键字的解析

statFilter在进行SQL合并时报以下错误，似乎是Druid没有添加对于union关键字的解析。请问这是出于什么原因？后续会不会修复？谢谢~

com.alibaba.druid.filter.stat.StatFilter [pool-23-thread-1] ERROR com.alibaba.druid.filter.stat.StatFilter  com.alibaba.druid.filter.stat.StatFilter.mergeSql(StatFilter.java:147) - merge sql error, dbType oracle, sql :

insert into TB_DUOBAO_PARTICIPATE_NUMBER ( PARTICIPATE_NUMBER, PERIOD_ID,
      PRODUCT_ID,number_index)

 >          (SELECT ?,?,?,?  FROM DUAL)
       union all
           (SELECT ?,?,?,?  FROM DUAL)
       union all
           (SELECT ?,?,?,?  FROM DUAL)
       union all
           (SELECT ?,?,?,?  FROM DUAL)
       union all
           (SELECT ?,?,?,?  FROM DUAL)
       union all
           (SELECT ?,?,?,?  FROM DUAL)

com.alibaba.druid.sql.parser.ParserException: TODO : UNION union
at com.alibaba.druid.sql.dialect.oracle.parser.OracleStatementParser.parseStatementList(OracleStatementParser.java:489)
at com.alibaba.druid.sql.parser.SQLStatementParser.parseStatementList(SQLStatementParser.java:145)
at com.alibaba.druid.sql.parser.SQLStatementParser.parseStatementList(SQLStatementParser.java:140)
at com.alibaba.druid.sql.visitor.ParameterizedOutputVisitorUtils.parameterize(ParameterizedOutputVisitorUtils.java:53)
at com.alibaba.druid.filter.stat.StatFilter.mergeSql(StatFilter.java:145)
at com.alibaba.druid.filter.stat.StatFilter.createSqlStat(StatFilter.java:630)
at com.alibaba.druid.filter.stat.StatFilter.statementPrepareAfter(StatFilter.java:305)
at com.alibaba.druid.filter.FilterEventAdapter.connection_prepareStatement(FilterEventAdapter.java:124)
at com.alibaba.druid.filter.FilterChainImpl.connection_prepareStatement(FilterChainImpl.java:448)
at com.alibaba.druid.filter.FilterAdapter.connection_prepareStatement(FilterAdapter.java:928)
at com.alibaba.druid.filter.FilterEventAdapter.connection_prepareStatement(FilterEventAdapter.java:122)
at com.alibaba.druid.filter.FilterChainImpl.connection_prepareStatement(FilterChainImpl.java:448)
at com.alibaba.druid.proxy.jdbc.ConnectionProxyImpl.prepareStatement(ConnectionProxyImpl.java:342)
at com.alibaba.druid.pool.DruidPooledConnection.prepareStatement(DruidPooledConnection.java:331)
at org.apache.ibatis.executor.statement.PreparedStatementHandler.instantiateStatement(PreparedStatementHandler.java:79)
at org.apache.ibatis.executor.statement.BaseStatementHandler.prepare(BaseStatementHandler.java:88)
at org.apache.ibatis.executor.statement.RoutingStatementHandler.prepare(RoutingStatementHandler.java:58)
at sun.reflect.GeneratedMethodAccessor89.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.apache.ibatis.plugin.Invocation.proceed(Invocation.java:49)
...

问题已解决，1.0.22版本将会解决此问题

authors: kajelas wenshao

repo: alibaba/druid


text:
连接数总是超出，不管设置多大的。

org.springframework.transaction.CannotCreateTransactionException: Could not open JDBC Connection for transaction; nested exception is com.alibaba.druid.pool.DataSourceClosedException: dataSource already closed at Tue Mar 15 07:59:06 CST 2022

2022-03-20 08:19:09.941 ERROR 1824 --- [cTaskExecutor-1] .p.m.HotelSingerProducerConsumerListerer : Could not open JDBC Connection for transaction; nested exception is com.alibaba.druid.pool.DataSourceClosedException: dataSource already closed at Sun Mar 20 08:19:09 CST 2022

应该是shrink不应该采用System.arrayCopy前移方式清理connections数组的问题，可以看看 #4692

authors: zrlw zyu


text:
执行setAutoCommit操作，当出现Error异常时，可能connection与server端的autocommit参数不一致，导致丢数据

问题代码：

触发场景：

上层调用 conn.setAutoCommit(false);
当执行到上图代码段的 conn.setAutoCommit(autoCommit) 代码， set autoCommit=false 命令在Server端执行成功，然后回包时，业务客户端出现 OOM 等 Error 异常；
异常抛出后，holder.setUnderlyingAutoCommit(autoCommit) 代码没有执行，并且异常不是SQLException导致没有catch住；
spring上层捕获异常后，执行DruidPooledConnection.rollback()操作后执行DruidPooledConnection.close()操作将连接放回了连接池；
DruidPooledConnection.close()函数判断 holder.getUnderlyingAutoCommit = true，从而没有触发对连接状态的reset；—— 该 Connection 的 Server 端保持 autoCommit = false 不变
随后业务层非事务请求可能拿到该连接，执行 SQL 后在 Server 端变成事务 SQL，但是却永远不会执行 commit 操作，从而变成未提交事务，被 Server 强制 kill 后出现丢数据问题

复现方式：
try {
    conn.setAutoCommit(autoCommit);
    // 这里注入任意非 SQLException 故障，比如 OOMError
    holder.setUnderlyingAutoCommit(autoCommit);
    holder.setLastExecTimeMillis(System.currentTimeMillis());
} catch (SQLException ex) {
    handleException(ex, null);
}

执行上述代码，然后从服务端看对应连接的SQL是否开启事务。
修复方式：
交换conn.setAutoCommit(autoCommit);和holder.setUnderlyingAutoCommit(autoCommit);执行顺序，比如：
try {
    holder.setUnderlyingAutoCommit(autoCommit);
    conn.setAutoCommit(autoCommit);
    holder.setLastExecTimeMillis(System.currentTimeMillis());
} catch (SQLException ex) {
    handleException(ex, null);
}

这样在close的时候会强制把 autoCommit 设置为 true。
JDBC Driver层也是按照上述代码实现的。

这个是存在风险，先前mysql jdbc驱动也是存在手工执行 set autommit=1 语句导致连接的autoCommit状态不一致的bug。
这个有点类似，代码很好改，但是要配套单测验证比较麻烦，我试一下加好单测了再来优化这个逻辑。

来信已收到，谢谢~~

authors: Jackckr lizongbo