Add a safe binding to WSAPoll()

Hi,
I am trying to support Windows, but Windows being Windows, it is difficult. I want to use forbid(unsafe_code), but, well, it is difficult. For this reason, I hope I can hide my unsafe code in another crate. This is where I stumbled upon winapi-util.
Per https://github.com/BurntSushi/winapi-util/blob/master/README.md#notes, I am not sure if you would want something like this in here or not. Feel free to reject this.
Since Rust was complaining about WSAPoll, I went with wsa_poll for the function name. Perhaps poll would be better...?
I do not have access to a Windows development environment and so I used CI for developing this. That's also a pain to do.
I'd like to use this in https://github.com/psychon/x11rb/issues/408.
Thanks :-)

Hm... I just found https://github.com/BurntSushi/winapi-util/pull/2#discussion_r400482415
Do you want me to remove the use of winapi types in the public API?

Also, off topic feedback: you might consider resisting the use of async I/O for x11. My guess is that it is unnecessary.

The need for this came from https://github.com/psychon/x11rb/pull/409. This tries to implement xclock. Basically: This uses poll() with a timeout of one second to wait for new data on the X11 socket. On a timeout, the clock is redrawn. When something new is available... well, I need to non-blockingly read from the socket in case only a part of some big X11 packet is available.
The idea was to have the socket non-blocking all the time, but now that you made me write this: I can just make the socket nonblocking only while needed and have it blocking the rest of the time. This solution is a lot simpler. Thanks a lot for this hint!

Updated to address your comments. Only "should winapi appear in the public API or not" is left.
(Also: Since you got rid of my need for this (and even did so just in passing), I could also live with this PR just sitting around unmerged or being closed.)

All righty. If this is now unnecessary, then I'd prefer to close it. I'd rather not add something unless there is an active need for it by someone, otherwise it's too easy to mess things up without an active driving use case.

On a timeout, the clock is redrawn. When something new is available... well, I need to non-blockingly read from the socket in case only a part of some big X11 packet is available.

Can you use threads and channels for this instead? i.e., One thread reading from the socket in a blocking fashion and sending results on a channel, and another thread reading from that channel.

Once upon a time I made x11rb internally spawn a thread as you outline. Feedback was towards using set_nonblocking() instead: https://github.com/psychon/x11rb/pull/199
The resulting alternative code without dedicated background threads grew into six mutexes and one condition variable.
I agree that this would be so much easier with a dedicated thread, but I also "feel" like it is excessive to start a thread just for this. Goroutines makes this indeed easier (but then makes shutdown more complicated, apparently: https://github.com/BurntSushi/xgb/pull/39)

Interesting.
As for XGB, I didn't really design its core with shutdown in mind, so I'm not sure it actually complicates it. But sure, it's a consideration.

For future reference / people who find this via Google: I moved the code from this PR into its own git repo instead: https://github.com/psychon/winapi-wsapoll


Update logback-classic, logback-core to 1.4.14

About this PR
📦 Updates

ch.qos.logback:logback-classic
ch.qos.logback:logback-core

from 1.4.3 to 1.4.14
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "ch.qos.logback" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "ch.qos.logback" }
}]

labels: test-library-update, early-semver-patch, semver-spec-patch, commit-count:1

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.6%) to 75.74%

Files with Coverage Reduction
New Missed Lines
%

scassandra/src/main/scala/com/evolutiongaming/scassandra/CreateClusterJ.scala
2
54.17%

Totals

Change from base Build<PHONE_NUMBER>:
-0.6%

Covered Lines:
384

Relevant Lines:
507

💛  - Coveralls


Fix ghost respawn bug

This PR should fix the bug where observers can just respawn by disconnecting and reconnecting. I think prior to the mind ECS the spawning/connecting behaviour relied on the fact that a players ghost always exists, even if they are disconnected. The new behaviour is that if a player connects with an existing mind but no entity, they will spawn in as an observer ghost.
Main changes are:

MakeObserve(IPlayerSession) has been split into SpawnObserver(IPlayerSession) and JoinAsObserver(IPlayerSession)
GameTicker's PlayerStatusChanged subscription now uses JoinAsObserver() instead of SpawnPlayer() if connecting with an existing mind that has no entity.

:cl:

fix: Fixed a bug that allowed observers/ghosts to respawn by disconnecting and reconnecting.

@ElectroJr fix tests


Preparation for publication on PyPI

@Araneidae @thomascobb
This change set prepares the package for publication on the Python Package Index (PyPI).
Strictly speaking, the changes are not even necessary. But they follow the usual conventions of adding a link to the Github repository and including the ReStructured text README in the long description (and thus the package's details on PyPI).
With the commands
export MODULEVER=1.4.dev0
python setup.py sdist
python setup.py bdist_wheel --universal

twine upload --repository testpypi dist/*
# ^ here, you will be asked for credentials from test.pypi.org

I uploaded two pre-release files from the dist folder (epicsdbbuilder-1.4.dev0-py2.py3-none-any.whl and epicsdbbuilder-1.4.dev0.tar.gz) to the test version of the Python Package Index (test.pypi.org):
https://test.pypi.org/project/epicsdbbuilder/1.4.dev0/
So that's just to document the steps necessary.
I leave the decision and subsequent uploading to the actual (non-test) PyPI to you (unless you tell me otherwise).

I also had a look at the Makefile. Looks outdated an unnecessary as of today. For the reasoning, see 62d6fe8.

I will discuss with @Araneidae about this.

@thomascobb , is this merge request now obsoleted by #11 ?

@thomascobb , is this merge request now obsoleted by #11 ?

yes

Obsoleted by #11, now merged.


Link component accepts an object.toString as className

This fixes #1220

Why don't you just use cx before on your side?

After digging deep into this issue, I think that this is better to be resolved at upstream level rather than here:

React supports passing an object with toString method for props. It will calll the toString method itself. See test here https://github.com/facebook/react/blob/48616e591fe23c0b89b0823c3ec99bae2d7b6853/packages/react-dom/src/tests/DOMPropertyOperations-test.js#L63-L74

Since React supports is, classnames should support it too

I sent https://github.com/SentiaAnalytics/bs-css/issues/21 but it wasn't resolved.

So my solution (currently) is making my own Link binding (that use Link.js) to resolve it right now.

hum, I don't believe this should be fixed on our side

@bloodyowl yep. I think so too. Will try to fix upstream packages


[Enhancement]: Tables are updated

Fixes #4
If you want to view the changes checkout my fork at branch upd-table
Added the script as well.
Before

After

@arnabsen1729 Thanks a lot! This makes the whole repo so neat and easy to read.


Add CDN based releases

Fixes #64
This PR supersedes #211 and contains just a few extra fixes on top of it to satisfy the outstanding comments from @joshaber

This is the Hero We Deserve™

@joshaber is the Squirrel release process documented somewhere? Maybe I can take a shot at it?

Sorry for the delay! It's not documented, but in theory it's carthage build --platform macos --no-skip-current && carthage archive. Lemme know if you run into any trouble @zeke. I'm keen to enable you all as much as possible 😄

Ok, first question: what's carthage :)

It's a dependency manager for Cocoa: https://github.com/Carthage/Carthage. You should be able to brew install carthage.

It's a bit of a pain to build Squirrel.Mac locally, you need to be running an old XCode version 😄   Here is a build from the latest master 👍
Squirrel.framework.zip


How to use SelectUnique

This is mentioned in the documentation and there's code for it, but no documentation on how to use it.
I'd like a set of fixed options and it seems like this is the answer, but with no documentation there's no way to know how to add options to the dropdown list.

I'm not really following you here.  Select field by default is going to ensure you select a unique (single) value.  Do you mean your options data might not be unique?

Ah, perhaps I've not been clear! I've been using the documentation here:
https://learn.getgrav.org/16/forms/blueprints/fields-available
There's no reference to a Select input type for YAML blueprints to generate admin pages. I saw a reference to the SelectUnique field type, but there's no documentation for it. Perhaps the Select field type would be better - but that's not even mentioned. This page also doesn't document the Toggle field type though, so perhaps both have been omitted?
What I'm after is a dropdown box of fixed inputs - I want the admin user to select from one of three fields (red/green/blue) and then use that value in the theme. Is that possible? Thanks!

Actually it looks like there's no selectUnique field. Maybe we should just remove it from the learn docs?

It seems to exist in the admin plugin: https://github.com/getgrav/grav-plugin-admin/blob/9c7868fd3a254b98bdbe0bde21988cc18338186e/themes/grav/app/forms/fields/selectunique.js but not in Grav itself. Perhaps it was removed? Or maybe it's something unique to the admin plugin.

Generally, the fields attempt to follow HTML specs to make them easier to remember.

@w00fz What is your take on selectUnique field?

They both just need documentation


Add Jumper by Waterflame

Song Name
Jumper
Artist Name
Waterflame
Source
Youtube
Youtube Link
https://youtu.be/Vl3tadg6G1Q?si=L7OiEBTz8TH8k6HX
Direct File Link
No response
Song ID
6
Start Offset [ms]
0
Extra
Created from Auto Nong.

reject
artist and song name must be descriptive (indicate what is different)


Add code actions for onDatagram and onBytes code snippet generations

Purpose
Related issue: https://github.com/ballerina-platform/ballerina-standard-library/issues/2116
https://user-images.githubusercontent.com/11239305/155507288-d7395ed1-e738-4493-a4fa-6a8f51f4d907.mov
Examples
Checklist

[x] Linked to an issue
[ ] Updated the changelog
[x] Added tests

LGTM!


in postgres use optimized where in query

We need to find a good way to run these tests on postgres

re: postgresql testing
The atproto repo (typescript) has some helper scripts for setting up a local postgresql during test invocation. It slows things down a little bit, but in go we could tag the tests which need that, and run them as a separate make command (?), and have CI run that and the regular tests together; shouldn't be too bad.

Merged this since commit c13ab32 is what's actually in prod rn


feat: give exprToSyntax an optional type argument

Currently, exprToSyntax always infers the type of the given expression to find the type to use for the created metavariable. This PR allows the type of the expression to be given directly as an optional second argument if known.
Note: I'm aware this PR doesn't strictly adhere to the contribution guidelines; however, I was encouraged to make it directly (i.e. without making an issue first) since it's small.

Isn't this covered by Term.ensureHasType?

I'm going to close this PR as I do think it's moving in the wrong direction. In general, PRs should come with sufficient motivation and ideally a test case.


setVolume occurs error in iOS

Version of react-native-audio-recorder-player
^3.5.0 and 3.3.4
Version of React Native
0.68.1
Platforms you faced the error (IOS or Android or both?)
iOS
Expected behavior
I tried to record sound using this library but the recorded sound volume was so low.
So I tried to set volume 1.0 manually this way.
const startRecording = async () => {
const audioSet: AudioSet = {
  AVFormatIDKeyIOS: AVEncodingOption.aac,
  AVNumberOfCHannelsKeyIOS: 2,
  AVEncoderAudioQualityKeyIOS: AVEncoderAudioQualityIOSType.max,
  AVModeIOS: AVModeIOSOption.measurement
}
await recordingObj.startRecorder(undefined, audioSet);
await recording.setVolume(1.0); //here

}

Actual behavior
By the way, when trying to run on the real device (iOS 15.4.1), then it occurs error from swift code.
It was only compiled successfully without setVolume function.
fatal error unexpectedly found nil while implicitly unwrapping an optional value

Regards,

Currently, the volume should be set after playing audio. I think this is a good issue though.
I'll think about this.

@hyochan any update on this?

@hyochan  hello,
we have put the rule if audio is not playing, we have disabled setting the volume. however this is not the user experience which audio player users of mobile devices used to use. so is there any way for us to 'fool the system' which would help us to setVolume even if an user is not playing audio.


ENH: linalg: Automatically Regularized Least Squares

Is your feature request related to a problem? Please describe.
An old PR, gh-12755, proposed adding a package for Automatically Regularized Least Squares to SciPy. See https://github.com/scipy/scipy/pull/12755#issuecomment-708029562 for thoughts on inclusion at the time. Over the years some things changed; the package made its way to PyPI as arls, then (in the words of the author @rejones7):

After years of revamping this method I was able to develop a much much shorter version which is theoretically and practically better, but it is only on MATLAB right now

The MATLAB code can be found here and comes with its own BSD-3 license (hence I think it would be possible to include in SciPy). A write up about the package can be found here.
Describe the solution you'd like.
If someone wants to work on adding this functionality, it seems that the easiest route would be to translate the MATLAB source to Python.
Describe alternatives you've considered.
It only makes sense to take on this work if there is interest in the functionality being added to SciPy, so an alternative is to do nothing if the demand is not there.
Additional context (e.g. screenshots, GIFs)
No response

The method looks interesting in principle but regularized linear models belong in my opinion into more dedicated machine learning or statistics packages such as scikit-learn. Given scikit-learn's prominence, I doubt that many users would anyway switch to "yet another hyperparameter tuning algorithm" for L2 regularized least squares.

I want to explain something before you all dismiss ARLS completely.
I took a quick look at scikit-learn, and unless libraries like LAPACK, and routines like LSMR and NNLS are all going away in favor of AI solutions, SCIPY needs ARLS. SCIPY’s users deserve better than LSMR and NNLS, and SCIPY users would benefit from the rich set of solvers in ARLS. Four points:

When I started developing ARLS for Python in 2020 the only auto-regularized solver I could find in Scipy was LSMR. But LSMR has problems: sometimes it produces fabulous solutions; but too often it fails miserably. It is so unreliable that it is unusable unless a human is going to check every solution for suitability. This unreliability makes it impossible to build constrained solvers on top of LSMR. (I’ve tried!)
In contrast, ARLS (the main routine in the ARLS package) virtually never fails to provide a usable regularized solution. This makes it an ideal basis for constrained solvers. So the ARLS package provides ARLSEQ for equality constraints, ARLSGT for general inequality constraints, ARLSALL for both types of constraints, ARLSNN for nonnegativity, and ARLSHAPE to let users require up or down slope, or up or down concavity, or both. All these work great. And I believe they would be a substantial enhancement to Scipy’s current linear algebra facilities. Please correct me if that is wrong.
While developing ARLSNN,  I compared its performance to that of the classic NNLS by Lawson and Hanson. But NNLS has more problems than LSMR has, and those arose in normal testing of ARLS. First, NNLS has no guaranteed iteration limit, and instead simply fails after some number of iterations. NNLS does not provide a partial or default answer in that case. In contrast, ARLSNN guarantees completion, with a max of “column-size minus 1” iterations.
Less well known is the fact that NNLS can zero-out an unreasonable number of variables. In a bio-tech problem that I was consulted about during my development of ARLS, NNLS zeroed almost half the variables in the problem. In other words, it effectively deleted about half of the entire model! Scipy users deserve better performance than that.   In contrast, ARLSNN only had to delete ONE variable to achieve nonnegativity. (I don’t claim that is typical!)  Please bear in mind I am not trying to insult Hanson’s work. Dick Hanson passed away a few years ago, here in Albuquerque. But for many years Dick and his wife Karen were friends and co-workers of mine at Sandia Labs. He was also on my PhD advisory committee. I am sure he would not resent having algorithms by a student of his supplant some of his much earlier work.

Would you please give ARLS another look? You do not need to update the core algorithm to that of MATLAB. You already have a fine version in your contributed library. You can use it immediately. On the other hand, if you choose to accept ARLS I will take a look at converting the core algorithm to the newer algorithm that is in MATLAB. But I am 80 years old and mostly now consider myself retired, so I might need a helpful collaborator -- such as one of you on this email – to accomplish it in a reasonable time.

From: Daniel Schmitz @.>
Sent: Tuesday, January 16, 2024 10:15 AM
To: scipy/scipy @.>
Cc: rejones7 @.>; Mention @.>
Subject: Re: [scipy/scipy] ENH: linalg: Automatically Regularized Least Squares (Issue #19888)
The method looks interesting in principle but regularized linear models belong in my opinion into more dedicated machine learning or statistics packages such as scikit-learn. Given scikit-learn's prominence, I doubt that many users would anyway switch to "yet another hyperparameter tuning algorithm" for L2 regularized least squares.
—
Reply to this email directly, view it on GitHubhttps://github.com/scipy/scipy/issues/19888#issuecomment-1894172684, or unsubscribehttps://github.com/notifications/unsubscribe-auth/APWVH7BF5DWLMYRGDIDWJYDYO2YSBAVCNFSM6AAAAABB5EYLTKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOJUGE3TENRYGQ.
You are receiving this because you were mentioned.Message ID: @.***>

Lucas: I prepared a more full explanation of why ARLS would be good for Python, but I am not sure you were sent it,. I will repeat it below. After thinking about it more I realized that there really is no problem with promoting the existing ARLS in the Python contributed library now.
This explanation applies to the current ARLS available now. I would appreciate knowing your thoughts on this. Sorry for the small font.. I wrote this in Word.
I want to explain something before you all dismiss ARLS completely.
I took a quick look at scikit-learn, and unless libraries like LAPACK, and routines like LSMR and NNLS are all going away in favor of AI solutions, SCIPY needs ARLS. SCIPY’s users deserve better than LSMR and NNLS, and SCIPY users would benefit from the rich set of solvers in ARLS. Four points:

When I started developing ARLS for Python in 2020 the only auto-regularized solver I could find in Scipy was LSMR. But LSMR has problems: sometimes it produces fabulous solutions; but too often it fails miserably. It is so unreliable that it is unusable unless a human is going to check every solution for suitability. This unreliability makes it impossible to build constrained solvers on top of LSMR. (I’ve tried!)
In contrast, ARLS (the main routine in the ARLS package) virtually never fails to provide a usable regularized solution. This makes it an ideal basis for constrained solvers. So the ARLS package provides ARLSEQ for equality constraints, ARLSGT for general inequality constraints, ARLSALL for both types of constraints, ARLSNN for nonnegativity, and ARLSHAPE to let users require up or down slope, or up or down concavity, or both. All these work great. And I believe they would be a substantial enhancement to Scipy’s current linear algebra facilities. Please correct me if that is wrong.
While developing ARLSNN,  I compared its performance to that of the classic NNLS by Lawson and Hanson. But NNLS has more problems than LSMR has, and those arose in normal testing of ARLS. First, NNLS has no guaranteed iteration limit, and instead simply fails after some number of iterations. NNLS does not provide a partial or default answer in that case. In contrast, ARLSNN guarantees completion, with a max of “column-size minus 1” iterations.
Less well known is the fact that NNLS can zero-out an unreasonable number of variables. In a bio-tech problem that I was consulted about during my development of ARLS, NNLS zeroed almost half the variables in the problem. In other words, it effectively deleted about half of the entire model! Scipy users deserve better performance than that.   In contrast, ARLSNN only had to delete ONE variable to achieve nonnegativity. (I don’t claim that is typical!)  Please bear in mind I am not trying to insult Hanson’s work. Dick Hanson passed away a few years ago, here in Albuquerque. But for many years Dick and his wife Karen were friends and co-workers of mine at Sandia Labs. He was also on my PhD advisory committee. I am sure he would not resent having algorithms by a student of his supplant some of his much earlier work.

Would you please give ARLS another look? You do not need to update the core algorithm to that of MATLAB. You already have a fine version in your contributed library. You can use it immediately. On the other hand, if you choose to accept ARLS I will take a look at converting the core algorithm to the newer algorithm that is in MATLAB. But I am 80 years old and mostly now consider myself retired, so I might need a helpful collaborator -- such as one of you on this email – to accomplish it in a reasonable time.

From: Lucas Colley @.>
Sent: Tuesday, January 16, 2024 10:02 AM
To: scipy/scipy @.>
Cc: rejones7 @.>; Mention @.>
Subject: [scipy/scipy] ENH: linalg: Automatically Regularized Least Squares (Issue #19888)
Is your feature request related to a problem? Please describe.
An old PR, gh-12755https://github.com/scipy/scipy/pull/12755, proposed adding a package for Automatically Regularized Least Squares to SciPy. Over the years some things changed; the package made its way to PyPy as arls, then (in the words of the author @rejones7https://github.com/rejones7):
After years of revamping this method I was able to develop a much much shorter version which is theoretically and practically better, but it is only on MATLAB right now
The MATLAB code can be found herehttps://uk.mathworks.com/matlabcentral/fileexchange/130259-arls-automatically-regularized-least-squares and comes with its own BSD-3 license (hence I think it would be possible to include in SciPy). A write up about the package can be found herehttps://blogs.mathworks.com/cleve/2023/06/16/arls-automatically-regularized-least-squares/.
Describe the solution you'd like.
If someone wants to work on adding this functionality, it seems that the easiest route would be to translate the MATLAB source to Python.
Describe alternatives you've considered.
It only makes sense to take on this work if there is interest in the functionality being added to SciPy, so an alternative is to do nothing if the demand is not there.
Additional context (e.g. screenshots, GIFs)
No response
—
Reply to this email directly, view it on GitHubhttps://github.com/scipy/scipy/issues/19888, or unsubscribehttps://github.com/notifications/unsubscribe-auth/APWVH7AUUCFNO7E757GWS63YO2XBJAVCNFSM6AAAAABB5EYLTKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGA4DINBUG4YTKNI.
You are receiving this because you were mentioned.Message ID: @.***>

Hi @rejones7 , unfortunately I don't have the required domain knowledge to give an opinion here. Hopefully someone with the required knowledge can get round to sharing their thoughts at some point, but there are no guarantees about how long it will take (we have over 1500 other open issues right now...). Thanks for providing all of the explanation you have so far, I'm sure it will be helpful when discussion occurs!

ARLS by @rejones7 is all about inverse methods with automatic regularization. And inverse methods are very useful methods in engineering, optimization, deconvolution, tomography and what else. The automatic regularization is the key point of ARLS. I once worked with it, but only on small problems - toy problems if you want - and I found it really useful.
I'm quite sure there will be problems where ARLS is not better or even worse compared to other well known methods (no hammer fits it all) , but for in many cases  it could be very helpful (due to automatic regularization) and may outperform other methods.
But I am by no means an expert on this field, so it would be useful to hear from some else.

Hi. I have recently upgraded ARLS to version 2.0 in the Python contributed library. This includes the latest, more elegant algorithm. If there is any interest in putting an auto-regularized solver (other than LSMR) in scipy this is the version to consider.
(I remember some of you – early in 2024? --were considering what constributed codes might be candidates for inclusions in scipy.)
As a reminder: the point of ARLS vs other auto-regularizers is that ARLS is much more predictable and reliable than other competitors. (At least as far as I can determine.) For example, LSMR bounces back and forth between fabulous solutions and horrible ones. Consequently, it can't be used as the core algorithm to which one can add constraints. But ARLS is very good when used to implement constraints.
Also, the old NNLS algorithm is really unacceptable. It easily fails to converge, and if it does converge it may set an excessive number of variables to zero. ARLS's similar "arlsnn" cannot fail to "converge" and attempts to reduce the number of zeroed variables by invoking the constraint that is most violated at any point.
Thanks for listening.
Ron Jones

From: Lucas Colley @.>
Sent: Tuesday, January 16, 2024 10:02 AM
To: scipy/scipy @.>
Cc: rejones7 @.>; Mention @.>
Subject: [scipy/scipy] ENH: linalg: Automatically Regularized Least Squares (Issue #19888)
Is your feature request related to a problem? Please describe.
An old PR, gh-12755https://github.com/scipy/scipy/pull/12755, proposed adding a package for Automatically Regularized Least Squares to SciPy. Over the years some things changed; the package made its way to PyPy as arls, then (in the words of the author @rejones7https://github.com/rejones7):
After years of revamping this method I was able to develop a much much shorter version which is theoretically and practically better, but it is only on MATLAB right now
The MATLAB code can be found herehttps://uk.mathworks.com/matlabcentral/fileexchange/130259-arls-automatically-regularized-least-squares and comes with its own BSD-3 license (hence I think it would be possible to include in SciPy). A write up about the package can be found herehttps://blogs.mathworks.com/cleve/2023/06/16/arls-automatically-regularized-least-squares/.
Describe the solution you'd like.
If someone wants to work on adding this functionality, it seems that the easiest route would be to translate the MATLAB source to Python.
Describe alternatives you've considered.
It only makes sense to take on this work if there is interest in the functionality being added to SciPy, so an alternative is to do nothing if the demand is not there.
Additional context (e.g. screenshots, GIFs)
No response
—
Reply to this email directly, view it on GitHubhttps://github.com/scipy/scipy/issues/19888, or unsubscribehttps://github.com/notifications/unsubscribe-auth/APWVH7AUUCFNO7E757GWS63YO2XBJAVCNFSM6AAAAABB5EYLTKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGA4DINBUG4YTKNI.
You are receiving this because you were mentioned.


Error while loading the pre-trained checkpoints (RuntimeError: [enforce fail at inline_container.cc:115] . file in archive is not in a subdirectory: embedding_source.weight.npy)

Extracted sockeye_spoken2symbol_factor_0.1.zip to current directory
Used this as spm.model: https://github.com/J22Melody/signwriting-translation/blob/main/data_reverse/spm.model
I could not get sockeye==3.0.13 since it depends on torch==1.10.0 which is removed
So I got sockeye==3.1.9 and numpy==1.23
I ran this code since I only need SPOKEN to SIGN in Google Colab
import subprocess
import mxnet as mx
from sockeye import inference, model

device = mx.cpu()
model_path = "sockeye_spoken2symbol_factor_0.1"

sockeye_models, sockeye_source_vocabs, sockeye_target_vocabs = model.load_model(
    device=device, dtype=None, model_folder=[model_path], inference_only=True
)

def translate(payload):
    language_code = payload.get("language_code", "en")
    country_code = payload.get("country_code", "us")
    translation_type = payload.get("translation_type", "sent")
    text = payload.get("text", "")
    translations = []

    n_best = int(payload.get("n_best", "3"))
    beam_size = n_best

    spm_path = "spm.model"
    tag_str = "<2{}> <4{}> <{}>".format(language_code, country_code, translation_type)
    command = 'echo "{} {}" | spm_encode --model={}'.format(tag_str, text, spm_path)
    input = subprocess.run(command, shell=True, check=True, capture_output=True)
    input = input.stdout.decode("utf-8")

    translator = inference.Translator(
        device=device,
        ensemble_mode="linear",
        scorer=inference.CandidateScorer(),
        output_scores=True,
        batch_size=1,
        beam_size=beam_size,
        beam_search_stop="all",
        nbest_size=n_best,
        models=sockeye_models,
        source_vocabs=sockeye_source_vocabs,
        target_vocabs=sockeye_target_vocabs,
    )

    input = inference.make_input_from_plain_string(0, input)
    output = translator.translate([input])[0]

    symbols_candidates = output.nbest_translations
    factors_candidates = output.nbest_factor_translations
    for symbols, factors in zip(symbols_candidates, factors_candidates):
        symbols = symbols.split(" ")
        xs = factors[0].split(" ")
        ys = factors[1].split(" ")
        fsw = ""

        for i, (symbol, x, y) in enumerate(zip(symbols, xs, ys)):
            if symbol != "P":
                if i != 0:
                    if (
                        not symbol.startswith("S")
                        or symbol.startswith("S387")
                        or symbol.startswith("S388")
                        or symbol.startswith("S389")
                        or symbol.startswith("S38a")
                        or symbol.startswith("S38b")
                    ):
                        fsw += " "
                fsw += symbol
                fsw += x
                fsw += "x"
                fsw += y

        translations.append(fsw)

    return {
        "language_code": language_code,
        "country_code": country_code,
        "translation_type": translation_type,
        "n_best": n_best,
        "text": text,
        "translations": translations,
    }

if __name__ == "__main__":
    payload = {
        "country_code": "ase",
        "language_code": "en",
        "text": "hi",
        "translation_type": "sent",
    }
    print(translate(payload))

I got this error
WARNING:sockeye.utils:Given release version (3.0.4) does not match code version (3.1.9). Models with version 3.0.4 should be compatible though.
---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
[<ipython-input-18-d87565e4120c>](https://localhost:8080/#) in <cell line: 4>()
      2 model_path = "sockeye_spoken2symbol_factor_0.1"
      3
----> 4 sockeye_models, sockeye_source_vocabs, sockeye_target_vocabs = model.load_models(
      5     device=device, dtype=None, model_folders=[model_path], inference_only=True
      6 )

4 frames
[/usr/local/lib/python3.10/dist-packages/sockeye/model.py](https://localhost:8080/#) in load_models(device, model_folders, checkpoints, dtype, inference_only, train_decoder_only, allow_missing, set_grad_req_null, forward_pass_cache_size)
    686         if module.bias is not None:
    687             pt.nn.init.zeros_(module.bias)
--> 688     elif isinstance(module, pt.nn.Embedding):
    689         pt.nn.init.uniform_(module.weight, -0.07, 0.07)
    690     elif isinstance(module, pt.nn.LayerNorm):

[/usr/local/lib/python3.10/dist-packages/sockeye/model.py](https://localhost:8080/#) in load_model(model_folder, device, dtype, checkpoint, inference_only, train_decoder_only, allow_missing, set_grad_req_null, forward_pass_cache_size)
    622     """
    623     Auxiliary module that wraps computation for a single decode step for a SockeyeModel.
--> 624     End-to-end traceable. Return values are put into a flat list to avoid return type constraints
    625     for traced modules.
    626     """

[/usr/local/lib/python3.10/dist-packages/sockeye/model.py](https://localhost:8080/#) in load_parameters(self, filename, device, allow_missing, ignore_extra)
    355     def get_decoder_states(self, source, source_length, target, target_length):
    356         """Same as `forward`, but skip the output layer and return the decoder states."""
--> 357         with pt.no_grad() if self.train_decoder_only or self.forward_pass_cache_size > 0 else utils.no_context():
    358             source_encoded, source_encoded_length, target_embed, states, nvs_prediction = self.embed_and_encode(
    359                 source,

[/usr/local/lib/python3.10/dist-packages/torch/serialization.py](https://localhost:8080/#) in load(f, map_location, pickle_module, **pickle_load_args)
    703             # reset back to the original position.
    704             orig_position = opened_file.tell()
--> 705             with _open_zipfile_reader(opened_file) as opened_zipfile:
    706                 if _is_torchscript_zip(opened_zipfile):
    707                     warnings.warn("'torch.load' received a zip file that looks like a TorchScript archive"

[/usr/local/lib/python3.10/dist-packages/torch/serialization.py](https://localhost:8080/#) in __init__(self, name_or_buffer)
    241 class _open_zipfile_reader(_opener):
    242     def __init__(self, name_or_buffer) -> None:
--> 243         super(_open_zipfile_reader, self).__init__(torch._C.PyTorchFileReader(name_or_buffer))
    244
    245

RuntimeError: [enforce fail at inline_container.cc:115] . file in archive is not in a subdirectory: embedding_source.weight.npy

Could you try installing this specific version of mxnet?
pip install --pre -f https://dist.mxnet.io/python 'mxnet==2.0.0b20220206'

By the way, the country_code you should use is us instead of ase, if you are translating from English to American Sign Language.
@AmitMY has the list of country codes and language codes for SignBank?

Could you try installing this specific version of mxnet?
pip install --pre -f https://dist.mxnet.io/python 'mxnet==2.0.0b20220206'

still same.

By the way, the country_code you should use is us instead of ase, if you are translating from English to American Sign Language.

how come it worked in API
Anyway thanks for your effort, it would be good if it is trained on latest version specifically without mxnet dependency, I guess that's not possible as sockeye is dependes on it.

Sstill same.

I reproduced your issue with a higher version of mxnet, then solved it by fixing it to mxnet==2.0.0b20220206. So I was expecting that this would also solve your problem.
Maybe give it another try by making a new Python environment and installing mxnet==2.0.0b20220206?

mxnet==2.0.0b20220206

Finally, it worked on WSL, when i tried this on PopOS i couldn't able to install torch==1.10.0 even with this
▁<2 en > ▁<4 ase > ▁< sent > ▁he ll o

TranslatorOutput(sentence_id=0, translation='M S30a00 S33e00', tokens=['M', 'S30a00', 'S33e00'], score=0.918461799621582, pass_through_dict=None, beam_histories=[], nbest_translations=['M S30a00 S33e00', 'M S30a00 S33e00 S14711 S22a07 S20500 M S30a00 S33e00 S14711 S20500 M S30a00 S33e00', 'M S30a00'], nbest_tokens=[['M', 'S30a00', 'S33e00'], ['M', 'S30a00', 'S33e00', 'S14711', 'S22a07', 'S20500', 'M', 'S30a00', 'S33e00', 'S14711', 'S20500', 'M', 'S30a00', 'S33e00'], ['M', 'S30a00']], nbest_scores=[0.918461799621582, 1.2153161764144897, 1.2943490743637085], factor_translations=['518 482 482', '518 483 483'], factor_tokens=[['518', '482', '482'], ['518', '483', '483']], nbest_factor_translations=[['518 482 482', '518 483 483'], ['518 482 482 485 506 506 518 482 482 465 487 518 482 482', '518 483 483 484 461 470 525 483 483 497 473 525 483 483'], ['518 482', '518 483']], nbest_factor_tokens=[[['518', '482', '482'], ['518', '483', '483']], [['518', '482', '482', '485', '506', '506', '518', '482', '482', '465', '487', '518', '482', '482'], ['518', '483', '483', '484', '461', '470', '525', '483', '483', '497', '473', '525', '483', '483']], [['518', '482'], ['518', '483']]])

{'language_code': 'en', 'country_code': 'ase', 'translation_type': 'sent', 'n_best': 3, 'text': 'hello', 'translations': ['M518x518S30a00482x483S33e00482x483', 'M518x518S30a00482x483S33e00482x483S14711485x484S22a07506x461S20500506x470 M518x525S30a00482x483S33e00482x483S14711465x497S20500487x473 M518x525S30a00482x483S33e00482x483', 'M518x518S30a00482x483']}

Once again thanks for the help.

I need to point out that this works only for python 3.8


Does KivyMD require python 3.10 now?

In a commit introduced yesterday,
https://github.com/kivymd/KivyMD/blob/6d596bd406284876e2b3df507cb8017bc1eb4df3/kivymd/uix/behaviors/elevation.py#L779
The syntax used to define a union requires python 3.10. Is that intentional? I don't mind either way, just if now python 3.10 is required it should be reflected in setup.py. Alternatively, you can use a syntax compatible with older versions, e.g.:
from typing import Union

    def on_opacity(self, instance, value: Union[int, float]) -> None:

Thanks.

Works now again in python 3.8.

Thanks.

Thank you for pointing out the bugs. This way they are corrected faster :)


Failing test

I am unable to build jaxrs-analyzer due to a failing test:
test(com.sebastian_daschner.jaxrs_analyzer.analysis.ProjectAnalyzerTest)`  Time elapsed: 1.357 sec  <<< FAILURE!
org.junit.ComparisonFailure: expected:<[rest]> but was:<[]>

This is on a fresh clone from master.
My setup should be up to date:
[morten@t430s] 15:21 $ mvn -v
Apache Maven 3.3.9 (NON-CANONICAL_2015-11-23T13:17:27+03:00_root; 2015-11-23T11:17:27+01:00)
Maven home: /opt/maven
Java version: 1.8.0_121, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-8-jdk/jre
Default locale: en_DK, platform encoding: UTF-8
OS name: "linux", version: "4.10.6-1-arch", arch: "amd64", family: "unix"`

The same test fails also on a similar setup on Windows 7.
Please let me know if I should provide more information.

Hi @hindsholm,
I've just tested here (just cloned master) and its all green, both via IDE and maven, here's my setup:
Apache Maven 3.3.9
Maven home: /usr/share/maven
Java version: 1.8.0_121, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-8-oracle/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.4.0-66-generic", arch: "amd64", family: "unix"

Anyone else experiencing this?

I also thought it was strange that nobody else had reported this, so it may be just me :)  But on the other hand, I get the exact same error on both Linux and Windows and I also tried both OpenJDK and Oracle JDK, and I am running out of ideas of what to try...

That specific test is a concurrency error when running the ProjectAnalyzerTest and some other. I've excluded parallel tests to not run via Maven, do you use multiple threads in you mvn command?
Btw, we should also make the tests runnable in parallel (there is some static variable that needs to be modified which I can't remember right away...)

Thank you @sdaschner - your comment led me on the right track. I learned through some googling that since jaxrs-analyzer uses an older version (2.10) of surefire-plugin, you can ensure that tests are run sequentially by setting forMode like in:
mvn -DforkMode=always clean install

and the project builds just fine.
With a newer Surefire you could actually specify this behavior through an annotation as described in the official docs:

Since of Surefire 2.18, you can apply the JCIP annotation @net.jcip.annotations.NotThreadSafe on the Java class of JUnit test (test class, Suite, Parameterized, etc.) in order to execute it in single Thread instance.

I'll close the issue since it has now been solved.

@hindsholm @sdaschner I'd like to reopen this issue since it still occurs without the workaround (specifying -DforkMode=always). Can please one of you do that? (I don't have permission)
One fix would be to change the surefire configuration in the pom.xml to use that option.  Another would be to adopt JCIP annotation. It is unfortunate that Surefire made it so hard to run tests sequentially. Parallel test running is a bad idea, as it introduces random variability (tests should always pass or always fail)...

I confirm, this test is still failing (java8, mvn 3.5.5)
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.052 sec <<< FAILURE!
test(com.sebastian_daschner.jaxrs_analyzer.analysis.ProjectAnalyzerTest)  Time elapsed: 1.051 sec  <<< FAILURE!
org.junit.ComparisonFailure: expected:<[rest]> but was:<[]>
        at org.junit.Assert.assertEquals(Assert.java:115)
        at org.junit.Assert.assertEquals(Assert.java:144)
        at com.sebastian_daschner.jaxrs_analyzer.analysis.ProjectAnalyzerTest.test(ProjectAnalyzerTest.java:80)

@sdaschner : I have created a PR to fix this concurrency issue with running the tests. I would be glad to support the project.


Video Conference Mute: Toolbar at the worst places and other Features

Description of the new feature / enhancement
The first and most important feature request:
The toolbar can be placed at the worst possible places, because everywhere were it can be placed there is already a function for another app. Browser, Discord, Apps, etc. So I would suggest that the toolbar can be freely placeable. There it can be fixed via the settings, so that you do not move it by mistake.
The second feature is
"Hide toolbar when both camera and microphone are muted."  - not when its UNmuted.
The third feature is:
Icons only for the toolbar to give it a smaller look. Maybe also in different sizes.
Scenario when this would be used?
As described: Usability
Supporting information
No response

Duplicate of #6763

Duplicate of #15692

Issue is a duplicate
Thank you for your issue! We've linked your report against another issue to centralize the thread.
Thanks for helping us to make PowerToys a better piece of software.


change the SQL Server Delimiter.

What version of Flyway are you using?
4.1.2
Which client are you using? (Command-line, Java API, Maven plugin, Gradle plugin, SBT plugin, ANT tasks)
Command-line
What database are you using (type & version)?
Sql Server 2005 ~ 2012
What operating system are you using?
Windows Family
What did you do?
(Please include the content causing the issue, any relevant configuration settings, and the command you ran)

Message: The syntax near the keyword "RULE" is invalid.
into inner value go
What did you expect to see?

What did you see instead?

How do I change the delimiter?

Can i use custom delimiter ?
example)
--=CustomDelimiter=--


Nullable nested objects?

I'm unsure how to handle the case of an object that embeds another object via $ref when that other object can legitimately be null such that I can both generate docs using prmd and validate against my schema using the committee gem. As far as I can tell from json-schema docs I would need to do something like this fragment:
...
    "industry": {
      "description": "the business' industry",
      "anyOf": [
        { "$ref": "/schemata/industry" },
        { "type": "null"}
      ]
    }
...

but this fails to validate against prmd's schema for documentation. If I just do
"industry": {
  "$ref": "/schemata/industry"
}

then the docs verify but a JSON response with "industry": null fails to pass against committee with a bunch of nil is not an object. errors.
Am I missing something obvious here?

I was able to hack (at least it feels like a hack to me) around this by modifying the industry.json schemata's type to include "null" in the array. This feels a bit odd to do within the industry schemata/resource itself instead of doing this within the places that reference the industry.

I think that you could also have "$ref" like in your first example, but then also have "type": ["object", "null"] in that same place (rather than embeded inside the ref-ed schema). The behavior in that case is similar to ruby hash merges, so it would start with the ref-ed thing and then merge local attributes on top. I think that would give you what you want (while limiting the scope to which the null might apply). Does that make sense? I'm not certain the tooling will play nice with it, so we may still need to fix things, but it seems like the right thing technically/semantically within json-schema from my understanding. What do you think?

Yep that makes sense. I found another thread asking something similar where you suggested that. I didn't realize ref merged that way from the spec.

@bdmac cool. I'm not sure I could point to where exactly it says that, but that is what I infer/understand from some of the examples and things.

@geemus in my application we declared nullable objects inside /definitions like the way @bdmac showed:
"app": {
  "description": "app of the user",
  "anyOf": [
    { "$ref": "/schemata/app#" },
    { "type": "null" }
  ]
}

It used to work. But after updating prmd to 0.8.0 I get this error:
failed schema #/definitions/resource/dependencies/properties/definitions/additionalProperties: No subschema in "anyOf" matched. Our app with committee kept working as intended, but prmd would not verify and generate our docs.
I tried what you suggested, like this:
"app": {
  "description": "app of the user",
  "type": ["object", "null"],
  "$ref": "/schemata/app#"
}

and it passes through prmd, but doesn't work in committee. It says
{"id":"invalid_response","message":"Invalid response.\n\n#/app: failed schema #/definitions/user/properties/app: For 'properties/app', nil is not an object."}
So it seems that in committee, it hasn't shows the "ruby hash merge" behaviour that you described in your coment. I.e. the app has type "object" but the local declaration of "type": ["object", "null"] should override that.
I have created a basic Rails repo to show this issue:
https://github.com/mcclymont/rails4-routing-example/tree/nullable-ref-issue

@mcclymont sorry for the delay, trying to pin this down. Could you try reversing the elements to ["null", "object"]? It looks like we use it that way successfully, if I'm not mistaken. It seems like it should work both ways, but if we know it only works in the one order it can provide you a workaround in the mean time (and perhaps help point more specifically toward the actual issue as well). Thanks!

@geemus Tried reversing the types, that didn't change the response from committee.
https://github.com/mcclymont/rails4-routing-example/commit/1cc53f5f2c9a7c62e7386ffbfa710565ae9fc7d1

@brandur do you have any insight here? Thanks!

Hey guys! Sorry about the crazy delay in response here.
So just as a introductory question, @geemus are you sure that the merge behavior described above is correct? The JSON reference draft is unfortunately a little vague, but the most relevant lines I can find are these:

Resolution of a JSON Reference object SHOULD yield the referenced
JSON value.  Implementations MAY choose to replace the reference with
the referenced value.

It's not definitive, but the wording around "replace" seems to suggest that the intent was simple replacement rather than any other behavior. Wes, if you want, I notice that one of the authors is still at SFDC. I might be worth dropping him an internal e-mail to see if we can get a less ambiguous answer on the subject.
So yes, it seems that if the merge behavior is correct, then this is a bug in the json_schema gem's reference resolver, which I'm happy to fix, but otherwise we might have to modify prmd a bit to handle the anyOf style which was described above:
"app": {
  "description": "app of the user",
  "anyOf": [
    { "$ref": "/schemata/app#" },
    { "type": "null" }
  ]
}

(Which looks valid to me.)

I am not sure, that had just been my understanding/assumption. Maybe we need prmd tweaks after all.

I probably don't have bandwidth to chase this down at the moment, but happy to support any such efforts if somebody wants to go for it.

This issue still exists. @brandur @bdmac Do you guys have a solution to this?

This issue still exists. @brandur @bdmac Do you guys have a solution to this?


CommentEditor: Use relative imports

In the CommentEditor.vue component webpack's alias imports are used:
import ... from<EMAIL_ADDRESS>// ...

Instead, we should use relative imports. It is easier to refactor later.
Resources

https://til.hashrocket.com/posts/38d2d28b6b-better-module-imports-with-webpack-aliases (it says, it is good but makes refactoring a lot harder...)

Created PR for this issue #220


[<IP_ADDRESS>] Architecture Design

Issue Details
Description
This Sub-Issue is about justifying our chose Architecture and also refine the Architecture Diagram.
Goals
Justify our chosen Architecture using the Software Quality Requirements and also have a refined Architecture Diagram to be in our M3 Report.
Success or Completion Criteria

[x] #174
[x] #152

Allocated Time
5 Days
Start Date: 07/11/23, 0900
End Date: 13/11/23, 2359

Issue Comments
Description
All Components have been completed!
Changes to success or completion criteria? y/n (if y, describe)
No Changes, Criteria Completed!
Start Date: 07/11/23, 0900
End Date: 13/11/23, 2359


WFLY-16573 Convert testsuite/integration/clustering to the jakarta.* namespace

https://issues.redhat.com/browse/WFLY-16573
This follows up on Paul's PR as we had a merge conflict:
https://github.com/wildfly/wildfly/pull/15730

@rhusar if it would be possible to please get a review on this one so we can get it merged that would be great.

@darranl Sure – back from PTO/holidays today – I will target to review today.

@darranl There's a failure in the bootable jar job – Failed to execute goal org.wildfly.plugins:wildfly-jar-maven-plugin:7.0.0.Final:package (bootable-jar-cloud-profile-packaging) on project wildfly-ts-integ-clustering: Provisioning failed. Do you want to fix the PR (or should I)?

@rhusar if you are able to submit a fix that would be great, if you wanted to submit a PR to my topic branch I can add it to this PR?  I am going to be on a couple of other tasks before I come back to this later today.

@darranl Replacing the PR would be easier - lets see how https://github.com/wildfly/wildfly/pull/15754 goes.

Closing as we have a follow up PR from @rhusar


Navigation in mobile does not apply ".mobile" class name in the body

Category

[ ] Question
[ ] Typo
[x] Bug
[ ] Additional article idea

Expected or Desired Behavior
On a mobile device, when clicking any normal navigation, the .mobile class disappears from the body.
Similar to #3554, but we aren't using "spfx-navigation". No public solution was posted to that issue.
Steps to Reproduce
Create a new site. Add a test page and link to it. Navigate on a mobile device or emulator so you can inspect the body - notice how the mobile class disappears from the body when you navigate to any pages within the site.
Thanks!

Thank you for your submission. This GitHub issue list is targeted only for developer issues. As your issue is related on out-of-the-box capabilities or features, we cannot unfortunately process is through this channel. Please submit your finding using the Tenant administrator support channels in your tenant or using Premier support, if that’s available for you. Sorry for the inconvenience.


Return BPackageSymbol instead of ServiceDeclarationSymbol in compiler plugin

Description:
I tried the following during the compiler plugin development with a gRPC negative use case. Here, I want to validate a service annotation.
// SyntaxNodeAnalysisContext syntaxNodeAnalysisContext
ServiceDeclarationNode serviceDeclarationNode = (ServiceDeclarationNode) syntaxNodeAnalysisContext.node();
Optional<Symbol> serviceDeclarationSymbol = syntaxNodeAnalysisContext.semanticModel().symbol(serviceDeclarationNode);

When I have a correct gRPC service with annotations like below, this optional symbol works fine.
@grpc:ServiceDescriptor {
    descriptor: ROOT_DESCRIPTOR,
    descMap: getDescriptorMap()
}
service "HelloWorld" on ep {...}

However, when I removed the annotations like below, this optional symbol returns a BPackageSymbol instead of a ServiceDeclarationSymbol.
service "HelloWorld" on ep {...}

Steps to reproduce:
Run the testCompilerPluginServerStreamingWithoutAnnotations test in this branch:
https://github.com/ballerina-platform/module-ballerina-grpc/tree/annot-issue
Discussion
https://ballerina-platform.slack.com/archives/C9WMA6QDC/p1617808028083300
Affected Versions:

Swan Lake Alpha 4

OS, DB, other environment details and versions:

macOS
Java11

Had a look at this. It seems since the old compiler plugin is also there, the annotation still gets injected to the service. So for the following code,
service "HelloWorld" on ep {...}

this still becomes the following:
@grpc:ServiceDescriptor {
    descriptor: ROOT_DESCRIPTOR,
    descMap: getDescriptorMap()
}
service "HelloWorld" on ep {...}

And the starting position of this injected annotation is also the same as the service keyword. And since this is at the beginning of a module prefix, you are getting the module symbol for the gRPC module instead of the service decl symbol.
Had a chat with Buddhi and Danesh regarding this and decided to remove the old compiler plugin from the gRPC module. Closing this since this is not an issue in the semantic API.


sqlite3_nif: Unspecified error

Using Windows 10, exqite appears to build correctly, but I get sqlite3_nif: Unspecified error when trying to run {:ok, conn} = Exqlite.Sqlite3.open(":memory:")
c:\git\test-elixir\playground>mix deps.get
-> Running mix loadconfig (inside Playground.MixProject)
<- Ran mix loadconfig in 0ms
-> Running mix deps.get (inside Playground.MixProject)
-> Running mix archive.check (inside Playground.MixProject)
<- Ran mix archive.check in 0ms
Resolving Hex dependencies...
Resolution completed in 0.117s
New:
  connection 1.1.0
  db_connection 2.4.3
  elixir_make 0.7.3
  exqlite 0.12.0
  telemetry 1.1.0
* Getting exqlite (Hex package)
  Using locally cached package (c:/Users/Adam/.hex/packages/hexpm/exqlite-0.12.0.tar)
* Getting db_connection (Hex package)
  Using locally cached package (c:/Users/Adam/.hex/packages/hexpm/db_connection-2.4.3.tar)
* Getting elixir_make (Hex package)
  Using locally cached package (c:/Users/Adam/.hex/packages/hexpm/elixir_make-0.7.3.tar)
* Getting connection (Hex package)
  Using locally cached package (c:/Users/Adam/.hex/packages/hexpm/connection-1.1.0.tar)
* Getting telemetry (Hex package)
  Fetched package (https://repo.hex.pm/tarballs/telemetry-1.1.0.tar)
-> Running mix will_recompile (inside Playground.MixProject)
<- Ran mix will_recompile in 1ms
<- Ran mix deps.get in 1044ms

c:\git\test-elixir\playground>iex -S mix
-> Running mix loadconfig (inside Playground.MixProject)
<- Ran mix loadconfig in 0ms
-> Running mix run (inside Playground.MixProject)
-> Running mix app.start (inside Playground.MixProject)
-> Running mix app.config (inside Playground.MixProject)
-> Running mix compile (inside Playground.MixProject)
-> Running mix loadpaths (inside Playground.MixProject)
-> Running mix archive.check (inside Playground.MixProject)
<- Ran mix archive.check in 0ms
-> Running mix deps.loadpaths (inside Playground.MixProject)
-> Running mix deps.precompile (inside Playground.MixProject)
<- Ran mix deps.precompile in 2ms
==> connection
-> Running mix compile --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Connection.Mixfile)
-> Running mix loadpaths --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Connection.Mixfile)
<- Ran mix loadpaths in 0ms
-> Running mix compile.all --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Connection.Mixfile)
-> Running mix compile.yecc --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Connection.Mixfile)
<- Ran mix compile.yecc in 1ms
-> Running mix compile.leex --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Connection.Mixfile)
<- Ran mix compile.leex in 0ms
-> Running mix compile.erlang --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Connection.Mixfile)
<- Ran mix compile.erlang in 0ms
-> Running mix compile.elixir --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Connection.Mixfile)
Compiling 1 file (.ex)
<- Ran mix compile.elixir in 194ms
-> Running mix compile.app --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Connection.Mixfile)
Generated connection app
<- Ran mix compile.app in 3ms
<- Ran mix compile.all in 212ms
<- Ran mix compile in 213ms
===> Expanded command sequence to be run: []
===> Running provider: do
===> Expanded command sequence to be run: [app_discovery,{bare,compile}]
===> Running provider: app_discovery
===> Found top-level apps: [telemetry]
        using config: [{src_dirs,["src"]},{lib_dirs,["apps/*","lib/*","."]}]
===> Running provider: {bare,compile}
===> Compile (untagged)
===> Running hooks for compile in app telemetry (c:/git/test-elixir/playground/deps/telemetry) with configuration:
===>    {pre_hooks, []}.
===> Running hooks for erlc_compile in app telemetry (c:/git/test-elixir/playground/deps/telemetry) with configuration:
===>    {pre_hooks, []}.
===> Analyzing applications...
===> Compiling telemetry
===> compile options: {erl_opts, [debug_info]}.
===> files to analyze ["c:/git/test-elixir/playground/deps/telemetry/src/telemetry_sup.erl",
                       "c:/git/test-elixir/playground/deps/telemetry/src/telemetry_handler_table.erl",
                       "c:/git/test-elixir/playground/deps/telemetry/src/telemetry_app.erl",
                       "c:/git/test-elixir/playground/deps/telemetry/src/telemetry.erl"]
===>      Compiled telemetry_app.erl
===>      Compiled telemetry_sup.erl
===>      Compiled telemetry_handler_table.erl
===>      Compiled telemetry.erl
===> Running hooks for erlc_compile in app telemetry (c:/git/test-elixir/playground/deps/telemetry) with configuration:
===>    {post_hooks, []}.
===> Running hooks for app_compile in app telemetry (c:/git/test-elixir/playground/deps/telemetry) with configuration:
===>    {pre_hooks, []}.
===> Running hooks for app_compile in app telemetry (c:/git/test-elixir/playground/deps/telemetry) with configuration:
===>    {post_hooks, []}.
===> Running hooks for compile in app telemetry (c:/git/test-elixir/playground/deps/telemetry) with configuration:
===>    {post_hooks, []}.
==> db_connection
-> Running mix compile --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside DBConnection.Mixfile)
-> Running mix loadpaths --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside DBConnection.Mixfile)
<- Ran mix loadpaths in 0ms
-> Running mix compile.all --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside DBConnection.Mixfile)
-> Running mix compile.yecc --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside DBConnection.Mixfile)
<- Ran mix compile.yecc in 0ms
-> Running mix compile.leex --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside DBConnection.Mixfile)
<- Ran mix compile.leex in 0ms
-> Running mix compile.erlang --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside DBConnection.Mixfile)
<- Ran mix compile.erlang in 0ms
-> Running mix compile.elixir --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside DBConnection.Mixfile)
Compiling 14 files (.ex)
<- Ran mix compile.elixir in 706ms
-> Running mix compile.app --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside DBConnection.Mixfile)
Generated db_connection app
<- Ran mix compile.app in 1ms
<- Ran mix compile.all in 723ms
<- Ran mix compile in 724ms
==> elixir_make
-> Running mix compile --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside ElixirMake.Mixfile)
-> Running mix loadpaths --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside ElixirMake.Mixfile)
<- Ran mix loadpaths in 0ms
-> Running mix compile.all --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside ElixirMake.Mixfile)
-> Running mix compile.yecc --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside ElixirMake.Mixfile)
<- Ran mix compile.yecc in 0ms
-> Running mix compile.leex --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside ElixirMake.Mixfile)
<- Ran mix compile.leex in 0ms
-> Running mix compile.erlang --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside ElixirMake.Mixfile)
<- Ran mix compile.erlang in 0ms
-> Running mix compile.elixir --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside ElixirMake.Mixfile)
Compiling 6 files (.ex)
<- Ran mix compile.elixir in 199ms
-> Running mix compile.app --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside ElixirMake.Mixfile)
Generated elixir_make app
<- Ran mix compile.app in 0ms
<- Ran mix compile.all in 222ms
<- Ran mix compile in 222ms
==> exqlite
-> Running mix compile --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Exqlite.MixProject)
-> Running mix loadpaths --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Exqlite.MixProject)
<- Ran mix loadpaths in 0ms
-> Running mix compile.all --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Exqlite.MixProject)
-> Running mix compile.elixir_make --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Exqlite.MixProject)

Microsoft (R) Program Maintenance Utility Version 14.34.31937.0
Copyright (C) Microsoft Corporation.  All rights reserved.

        del /f /q priv
Could Not Find c:\git\test-elixir\playground\deps\exqlite\priv
        erl -noshell -s init stop -eval "io:setopts(standard_io, [{encoding, unicode}]), io:format(\"ERTS_INCLUDE_PATH=~ts/erts-~ts/include/\", [code:root_dir(), erlang:system_info(version)])." > Makefile.auto.win
        nmake -                   -F Makefile.win priv\sqlite3_nif.dll

Microsoft (R) Program Maintenance Utility Version 14.34.31937.0
Copyright (C) Microsoft Corporation.  All rights reserved.

        if NOT EXIST "priv" mkdir "priv"
        cl -I"c:/Program Files/Erlang OTP/usr/include" -DNDEBUG=1 -DSQLITE_OMIT_DEPRECATED=1 -DSQLITE_ENABLE_RTREE=1 -DSQLITE_ENABLE_RBU=1 -DSQLITE_ENABLE_MATH_FUNCTIONS=1 -DSQLITE_ENABLE_GEOPOLY=1 -DSQLITE_ENABLE_FTS5=1 -DSQLITE_ENABLE_FTS4=1 -DSQLITE_ENABLE_FTS3=1 -DENABLE_UPDATE_DELETE_LIMIT=1 -DENABLE_STAT4=1 -DENABLE_SOUNDEX=1 -DENABLE_LOAD_EXTENSION=1 -DENABLE_FTS3_PARENTHESIS=1 -DALLOW_COVERING_INDEX_SCAN=1 -DHAVE_USLEEP=1 -DSQLITE_DQS=0 -DSQLITE_LIKE_DOESNT_MATCH_BLOBS=1 -DSQLITE_USE_URI=1 -DSQLITE_THREADSAFE=1 -Ic_src -EHsc -O2  -I"c:/Program Files/Erlang OTP/erts-13.0.4/include/" -LD -MD -Fepriv\sqlite3_nif.dll c_src\sqlite3.c  c_src\sqlite3_nif.c
Microsoft (R) C/C++ Optimizing Compiler Version 19.34.31937 for x86
Copyright (C) Microsoft Corporation.  All rights reserved.

sqlite3.c
sqlite3_nif.c
Generating Code...
Microsoft (R) Incremental Linker Version 14.34.31937.0
Copyright (C) Microsoft Corporation.  All rights reserved.

/dll
/implib:priv\sqlite3_nif.lib
/out:priv\sqlite3_nif.dll
sqlite3.obj
sqlite3_nif.obj
   Creating library priv\sqlite3_nif.lib and object priv\sqlite3_nif.exp
<- Ran mix compile.elixir_make in 7901ms
-> Running mix compile.yecc --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Exqlite.MixProject)
<- Ran mix compile.yecc in 0ms
-> Running mix compile.leex --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Exqlite.MixProject)
<- Ran mix compile.leex in 0ms
-> Running mix compile.erlang --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Exqlite.MixProject)
<- Ran mix compile.erlang in 0ms
-> Running mix compile.elixir --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Exqlite.MixProject)
Compiling 13 files (.ex)
<- Ran mix compile.elixir in 359ms
-> Running mix compile.app --from-mix-deps-compile --no-archives-check --no-warnings-as-errors (inside Exqlite.MixProject)
Generated exqlite app
<- Ran mix compile.app in 1ms
<- Ran mix compile.all in 8311ms
<- Ran mix compile in 8312ms
==> playground
-> Running mix will_recompile (inside Playground.MixProject)
<- Ran mix will_recompile in 0ms
<- Ran mix deps.loadpaths in 11010ms
<- Ran mix loadpaths in 11011ms
-> Running mix compile.all (inside Playground.MixProject)
-> Running mix compile.yecc (inside Playground.MixProject)
<- Ran mix compile.yecc in 0ms
-> Running mix compile.leex (inside Playground.MixProject)
<- Ran mix compile.leex in 0ms
-> Running mix compile.erlang (inside Playground.MixProject)
<- Ran mix compile.erlang in 0ms
-> Running mix compile.elixir (inside Playground.MixProject)
Compiling 1 file (.ex)
<- Ran mix compile.elixir in 22ms
-> Running mix compile.app (inside Playground.MixProject)
Generated playground app
<- Ran mix compile.app in 1ms
<- Ran mix compile.all in 29ms
-> Running mix compile.protocols (inside Playground.MixProject)
<- Ran mix compile.protocols in 226ms
<- Ran mix compile in 11281ms
<- Ran mix app.config in 11282ms
<- Ran mix app.start in 11288ms
<- Ran mix run in 11290ms
Interactive Elixir (1.14.2) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)> {:ok, conn} = Exqlite.Sqlite3.open(":memory:")
** (UndefinedFunctionError) function Exqlite.Sqlite3NIF.open/2 is undefined (module Exqlite.Sqlite3NIF is not available)
    (exqlite 0.12.0) Exqlite.Sqlite3NIF.open(':memory:', 6)
    iex:1: (file)
iex(1)>
16:44:34.039 [warning] The on_load function for module Elixir.Exqlite.Sqlite3NIF returned:
{:error,
 {:load_failed,
  'Failed to load NIF library c:/git/test-elixir/playground/_build/dev/lib/exqlite/priv/sqlite3_nif: \'Unspecified error\''}}

iex(1)>

Does it open for a file instead of just :memory?

Can you specify v0.11.9 as the version and try? Perhaps the latest changed with v0.12.0 caused an issue.

@warmwaffles unfortunately, no change with 0.11.9 and a database filename:
iex(1)> {:ok, conn} = Exqlite.Sqlite3.open(":memory:")
** (UndefinedFunctionError) function Exqlite.Sqlite3NIF.open/2 is undefined (module Exqlite.Sqlite3NIF is not available)
    (exqlite 0.11.9) Exqlite.Sqlite3NIF.open(':memory:', 6)
    iex:1: (file)
iex(1)>
11:15:07.663 [warning] The on_load function for module Elixir.Exqlite.Sqlite3NIF returned:
{:error,
 {:load_failed,
  'Failed to load NIF library c:/git/test-elixir/playground/_build/dev/lib/exqlite/priv/sqlite3_nif: \'Unspecified error\''}}

iex(1)> {:ok, conn} = Exqlite.Sqlite3.open("test.db")
** (UndefinedFunctionError) function Exqlite.Sqlite3NIF.open/2 is undefined (module Exqlite.Sqlite3NIF is not available)
    (exqlite 0.11.9) Exqlite.Sqlite3NIF.open('test.db', 6)
    iex:1: (file)

11:15:14.219 [warning] The on_load function for module Elixir.Exqlite.Sqlite3NIF returned:
{:error,
 {:load_failed,
  'Failed to load NIF library c:/git/test-elixir/playground/_build/dev/lib/exqlite/priv/sqlite3_nif: \'Unspecified error\''}}

iex(1)> {:ok, conn} = Exqlite.Sqlite3.open("test.db")

11:15:41.770 [warning] The on_load function for module Elixir.Exqlite.Sqlite3NIF returned:
{:error,
 {:load_failed,
  'Failed to load NIF library c:/git/test-elixir/playground/_build/dev/lib/exqlite/priv/sqlite3_nif: \'Unspecified error\''}}

** (UndefinedFunctionError) function Exqlite.Sqlite3NIF.open/2 is undefined (module Exqlite.Sqlite3NIF is not available)
    (exqlite 0.11.9) Exqlite.Sqlite3NIF.open('test.db', 6)
    iex:1: (file)
iex(1)>

Found a problem, sqlite3_nif.dll is 32 bit, while erl.exe is 64 bit.

That's strange, even when using the settings for a 64 bit compiler, a 32 bit DLL is generated.

Fixed via the instructions at https://github.com/riverrun/comeonin/issues/75 - a 64 bit NIF was needed.

@voltagex would you mind making a PR to the readme for special setup for windows? I think that would be beneficial to the next person.

@voltagex would you mind making a PR to the readme for special setup for windows? I think that would be beneficial to the next person.

I can, but I'm still confused as to how the Makefile can call x64 host tools and produce an x86 DLL. Do you know anyone who would have more of an insight into the way NIFs work?
To be honest, this is the first time I've touched Erlang / Elixir.
I am also wondering if there's a way to get a better error message (the underlying error should have been something along the lines of "bad image format")

There is a line in your compiler output that is really easy to miss
Microsoft (R) C/C++ Optimizing Compiler Version 19.34.31937 for x86

I wonder what your $CC is set to. I wish I knew how to build stuff more in Windows.

Yea normally when I am compiling stuff in windows, it's usually with CMake and it handles all that hoop jumping for me.


created setMediationService on facebook adapter

Added condition of setMediationService in facebook adapter so FB can identify when is it coming from a mediation service

 (0) setMediationService(String) - iOS ML SDK [0]

👍

Coverage remained the same at 8.382% when pulling c999b781845759561d932c574f04230d9f87f852 on fb_mediationService into 2fb6019ca4be0455aae0a22ad2d24e0ae8dee99a on development.


Duplicate language options in the Editor Language selector

I noticed that the Editor Language selector includes both '中文 (简体)' and '中文 (中国)' as options for Simplified Chinese, but the content displayed for these two options is identical. Since there is already a '中文 (繁體)' option for Traditional Chinese, I suggest removing the '中文 (中国)' option and keeping only '中文 (简体)' to maintain consistency with the '中文 (繁體)' format.

The locale selector is from NDMF and shared with NDMF Plugins.
I think this is because another NDMF Plugin use zh-hans and AAO is using zh-cn.
we may change to zh-hans instead of zh-cn for this difference


User did not grant permission

Using elementary OS 0.4.1 (based on Ubuntu 16.04) over here.
I'm trying to run a bash script via sudo-prompt.exec, and after entering my password the app throws an error saying User did not grant permission.
Script would be launched from an Electron environment, if that is at all important. The GUI application itself is NOT run with administrator privileges.
I know it's not much to go on, but I've no idea what could be wrong and was hoping to get some pointers (again :smile: )

Thanks @DSBalaban would you be able to add a console.log(error) statement to the source in index.js over here: https://github.com/jorangreef/sudo-prompt/blob/master/index.js#L130 and let me know what you get?
Also the the output of stdout and stderr which sudo-prompt returns to your callback.

@jorangreef Thanks for replying.
I'll see if I can reproduce the error, as I'm no longer seeing it (magic, I tell you). Give me a bit of time.

Sure, sorry for the late reply.
I will close in the mean time then if that's fine with you.

Hi @jorangreef I think I've got a similar issue. I'm also running a script from electron environment using sudo-prompt.exec from the app which is run without sudo permissions.
Everything works fine, no errors during development. The app works fine on mac with dmg built by electron-builder. Also no error with unpacked linux build from electron-builder.
I'm only having issues with AppImage (again built by electron-builder) on linux. Sudo-prompt throws this error after entering the password
Error: Command failed: "/usr/bin/pkexec" --disable-internal-agent env ELECTRON_RUN_AS_NODE=1 IPC_SERVER_ID=BB-server-17137 IPC_CLIENT_ID=BB-client-17137 /tmp/.mount_ASpV7H/usr/bin/beagleboot /tmp/.mount_ASpV7H/usr/bin/resources/app.asar/lib/elevate.js /usr/bin/env: ‘/tmp/.mount_ASpV7H/usr/bin/beagleboot’: Permission denied
Seems that the executable isn't accessible. Any suggestions, where it's going wrong?

I found the cause of this issue. AppImages are mounted using FUSE, which only allows execution permissions on the mounted image to the user that actually executed the image. So, su can't execute with it. I'd have to remount the AppImage as root to get it working.

Thanks @ravikp7

I found the cause of this issue. AppImages are mounted using FUSE, which only allows execution permissions on the mounted image to the user that actually executed the image. So, su can't execute with it.

Check what the Etcher AppImage, which requires root, is doing. It's described at https://github.com/AppImage/AppImageKit/issues/268#issuecomment-280027991


simplify  to

Goldmark always converts code block to
...
 style https://github.com/yuin/goldmark/blob/master/renderer/html/html.go ,
but this makes unwanted result in Zendesk page.
This PR implements to remove ,  and  strings  in pre element when simplify_pre_code: true on config yaml.
Original result

this is a test content

this is a test content

Replaced result

this is a test content

this is a test content

But another option is  to change pre > code CSS style.

According to the user, this patch did not work.
It seems that other places also need to be updated.


migrate to Stockfish V2 api

see here https://stockfish.online/docs.php
would need to update Stockfish.java to call the v2 API, methods in the stockfish class should have same behaviour as before just changing the v2 API
Any help would be grateful :))

the following commit fixes this issue


make k3d should be k3d version agnostic

Would you like to work on this feature?
yes
What problem are you trying to solve?
The current makefile command k3d:
k3d cluster create --servers 1 --agents 1 main \
		--k3s-agent-arg '--kubelet-arg=eviction-hard=imagefs.available<1%,nodefs.available<1%' \
		--k3s-agent-arg '--kubelet-arg=eviction-minimum-reclaim=imagefs.available=1%,nodefs.available=1%'

Only works for k3d version 4.4.8;
k3d version 5.0.0 + no longer has the --k3s-agent-arg flag.
Describe the solution you'd like
Would be best to have a doc that details the commands for creating k3d cluster with specific version of k3d. I can help with this if needed.
Describe alternatives you've considered
Alternatively, we can have two sets of k3d* commands e.g. make k3d5 and make k3d4, where the suffices 5 and 4 correspond to the k3d version. k3d4 should be like this:
k3d cluster create --servers 1 --agents 1 main \
		--k3s-arg "--kubelet-arg=eviction-hard=imagefs.available<1%,nodefs.available<1%@agent:*" \
		--k3s-arg "--kubelet-arg=eviction-minimum-reclaim=imagefs.available=1%,nodefs.available=1%@agent:*"

Documentation, Adoption, Migration Strategy
No response
Target crate for feature
No response

Ah, yes, thank you. We definitely should upgrade it to k3d 5. It's probably not necessary for this project to maintain a bunch of k3d 4 vs k3d 5 compat things (our CI is k3d 5).
The function I got to work locally with local testing was:
 k3d cluster create main --servers 1 --agents 1 --registry-create main \
  --k3s-arg "--no-deploy=traefik@server:*" \
  --k3s-arg '--kubelet-arg=eviction-hard=imagefs.available<1%,nodefs.available<1%@agent:*' \
  --k3s-arg '--kubelet-arg=eviction-minimum-reclaim=imagefs.available=1%,nodefs.available=1%@agent:*'
k3d kubeconfig get --all > ~/.kube/k3d

because of a small disk, want it to be fast even on a laptop, and have a bunch of kubeconfigs that i smash together with export KUBECONFIG="$(fd . ~/.kube --max-depth 1 --type f | paste -s -d':')" in my .bash_profile
but it's probably not super useful to expose all of that to the user, so might just take the cluster create part and put that in there.


Android loads from 0 to 100% instantly instead of showing progress

Also happens in Chrome so may be easier to debug there.
Other non-Defold based games on Android show loading progress. Loading progress of Defold based games does work on iOS.

I am not sure that I understand where is the bug.
How it looks like for me on android:
https://youtu.be/xcCja9jQn6c

What Android version are you testing on?
I tested on 7.0 @britzl was able to reproduce it

Android 6.0 Xiaomi redmi note4
Can you try using this link: https://www.facebook.com/instantgames/285409181956230/ ?

That seems to load properly on Chrome and Android so it must be something different you are doing vs the template html included in the fbinstant extension. Could you check the fbinstant extension bundled version and see where the error is compared to your version?

I'm checking this now too.

Could you post your .html template?

You should test the XOXO example on your phone too to see if it loads properly or not like your card game does.

yes, of course.
I made my own template (didn't use xoxo template)
For example in my template I use early FBInstant init.
engine_template.html.zip

Yes, xoxo game loads 0-100% instantly

I tested your template and it seemed to make loading work, so need to find what's wrong with the fbinstant extension built in html to make it not work on Android (it works on iOS)

Maybe the reason is early initialization of SDK ?
FBInstant.initializeAsync().then(function() {...})

I'll test that

Seems like it could be that, doing more testing.

This is one of the Best Practice recommendation :
Load resources in parallel with initializeAsync
https://developers.facebook.com/docs/games/instant-games/best-practices
I save is init variable when loading into Module._instant_inited
FBInstant.initializeAsync().then(function() {
        Module._instant_inited = 1;
})

Then checking is_init in lua:
function M.init(callback)
  if tonumber(html5.run("Module._instant_inited")) == 1 then
    callback()
  else
    fbinstant.initialize(function(self, success)
      callback()
    end)
  end
end

I tested the change and it worked on Chrome and Android for me.
So template html should be changed likewise in some way @britzl

        app_container.style.width = width+"px";
        app_container.style.height = height+"px";

        game_canvas.width = width*dpi;
        game_canvas.height = height*dpi;

        window.console.log("width: " + game_canvas.width + " > "+ game_canvas.style.width)
        window.console.log("height:" + game_canvas.height + " > "+ game_canvas.style.height)
    }

  FBInstant.initializeAsync().then(function() {
	Module._instant_inited = 1;

  });

    resize_game_canvas();

    window.addEventListener('resize', resize_game_canvas, false);
    window.addEventListener('orientationchange', resize_game_canvas, false);

    </script>

@britzl I did some more tests for this, I'll submit a pr soon with changes to the api tester and xoxo example.

Released: https://github.com/defold/extension-fbinstant/releases/tag/3.6.0


Update bot-design-pattern-handoff-human.md

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot


feat: add helm plugin scaffolding new layout

Description of the change:
This PR adds the helm plugin scaffolding the files with the new layout and using the current sdk helm pkg implementation (image)

added e2e tests for helm new layout. See:/test/e2e-helm-new/e2e_suite.go and ./hack/tests/e2e-helm-new.sh
centralize the method ReplaceInFile in the test/internal/utils.go since it is useful for all tests
Impl e2e tests in shell for the new layout. See hack/tests/e2e-helm-new-shell.sh

Motivation
SDK is in a process to be integrated with KB which means that its project layouts will be aligned. More info : Integrating Kubebuilder and Operator SDK.
This PR adds the Helm Plugin which will provide the Helm project in the new layout by the command operator-sdk init --plugins=helm.operator-sdk.io/v1`. For a further understanding see the WIP: https://github.com/operator-framework/operator-sdk/pull/329 and the doc Extensible CLI and Scaffolding Plugins.
Follow-ups

(Blocked by this one) - Fix OLM/CSV gen commands for Helm/Ansible operators - Done in https://github.com/operator-framework/operator-sdk/pull/3341
(Blocked by this one) Update docs to use plugins instead of the operator-sdk new --type and add api commands - Done in: https://github.com/operator-framework/operator-sdk/pull/3326
(Blocked by this one) Remove operator-sdk new --type=-helm https://github.com/operator-framework/operator-sdk/pull/3343
(Blocked by this one) Replace tests done in shell for Golang WIP #3423

Started in; https://github.com/operator-framework/operator-sdk/pull/3295 ( I close to test the CI in my fork and I could not re-open )

/restest


Prototyping fails in filters

Prototype overrides __get() method of a filter, there should be a check if the prototype owner has its own __get() implementation and inject dependency only if it returns nothing

Also, it's not injected


🎯 📅 EVA Roadmap Planning

We follow a Just-In-Time planning approach, meaning that we plan our work at most 2 months in advance. Even within that window, we tend to re-prioritize based on user feedback. Therefore, any features or items that you see on our roadmap more than one version out are subject to change.
💡 Feature Prioritization:
We prioritize features based on several factors, including the number of people asking for them, features/fixes that are small enough to be addressed while we work on other related features, features/fixes that help improve stability and relevance, and features that address interesting use cases that excite us!
🎯 Requesting a Feature:
If you have a feature request that you would like to prioritize, please add a use-case for it. You can either add your comment to an existing issue (along with a thumbs-up 👍)) or create a new issue. The more detailed context you provide about how you would use the feature, the more it will help us to support that feature in EVA.
📅   Release Cadence:
We tend to add features and fixes on a continuous iterative cycle and publish RC (Release Candidate) builds every 1-2 weeks. Once the amount of changes have reached a critical mass, we then go into a feature freeze for the upcoming version, address a final round of last-mile issues if any, run performance benchmarks and regression tests, continuously dog-food the builds and if everything looks good we do a final GA (Generally Available) release.
We do not have a fixed timeline for GA releases since we want final builds to be sufficiently tested and stable. That said, in the past we've done GA releases every 2-3 months.
🗺 View EVA's Roadmap »
🚀 View Previous Releases of EVA »

Shall we close this? I think we should update a page in the documentation for our next 6 months roadmap. Like https://docs.trychroma.com/roadmap


Add documentation

There is a nice tool called NMD
It may help create documentation for your module.
Example:
https://hugosenari.github.io/friendly-modules/nixos-firehol.html

Nice! I wasn't aware of it I'll have a look.

Well I had a quick look it isn't obvious at all for me how to use it, would you be able to point me to the right direction?

I think the best example is author own configs, and he made it to home-manager
Another option would be, add devshell and my modules as your dependency.
Or clone my example repository and update the hash, run nix develop and it generates the /gh-pages/src/nixos-firehol.md
Think it is in order of solution elegance ;-)

Shamelessly stolen your stuff (hope that's ok :) ), hacked it to work for this and put it inside /docs and got the output there https://tinhead.github.io/nixos-firehol/nixos-firehol.html
For some reason jekil does not create an index.html out of it ... I'll look some more into it .

Someone sent-me this right now ;-)

Closing as DONE

Shamelessly stolen your stuff (hope that's ok :) )

To honest, WTFPL is my point of view about this subject at all, also "Every thing is a Remix", but sometimes we have to be formal.
https://en.wikipedia.org/wiki/Wikipedia:Example_requests_for_permission#Bowen_Panoramic_Permission

Dear Sir or Madam: I hereby assert that I am the creator and/or sole owner of the exclusive copyright of WORK “Friendly Modules”
I agree to publish that work under the free license own work, all rights, released (Multi-license MIT, Unlicense, WTFPL all versions).
I acknowledge that I grant anyone the right to use the work in a commercial product and to modify it according to their needs, provided that they abide by the terms of the license and any other applicable laws.
I am aware that I always retain copyright of my work, and retain the right to be attributed in accordance with the license chosen. Modifications others make to the work will not be attributed to me.
I acknowledge that I cannot withdraw this agreement, and that the content may or may not be kept permanently on a distributed  or centralized version control system project.
This work points to other people work, I don't have copyright permisson about other people work, please confirm with them in case you're using code path linked to theirs project. It the reason why the project doesn't have a license.
Hugo Sena Ribeiro
São Paulo, SP, Brasil, 2023/02/16

OMG Hugo 😂 You are totally awesome!


Is there anyway to automatically perform checks in background?

First of all, thank you for such a great tools.
I don't get this extensions need so much because all this operations can be done using simple crontab commands. What makes this addon different?
Is there anyway to perform checks for git changes automatically and whenever it detects that there is something new then it updates whole project automatically.

Is there anyway to perform checks for git changes automatically and whenever it detects that there is something new then it updates whole project automatically.

It does exactly the same. Place 'self-update' to your crontab and it will update project only if there were any changes in the central repo.

and how frequent to do it?
will it composer update also?

and how frequent to do it?

It is up to you: once a day or every 15 minutes - it is your choice.

will it composer update also?

It will on certain conditions. See https://github.com/yii2tech/selfupdate#self-update-workflow


PSAvoidAssignmentToAutomaticVariable

"PSAvoidAssignmentToAutomaticVariable" on $event in line 10 of LogOn and LogOff event parser PS21 scripts. This is by design, but issues may arise with calling multiple scripts in succession or concurrently. Tracking issue.

Renaming the variable from the built in $event to literally anything else fixed this issue for now. Closing.


Event for date selection

Is there a way to detect when user selects a date? Currently I have to rely on the onChange event which will also trigger when value is updated.
I'm basically looking for something like a "onSelect" that only triggers when a new date is selected by the user.

Check out onValueUpdate, which triggers "when the input value is updated with a new date string".

Thanks for the suggestion. ValueUpdate is also triggered when the value is set through code which is what I'm trying to avoid. I only want to know when the user has selected a date.

Hello,
You're right that onChange and onValueUpdate are not always triggered by user input.
However, methods that do trigger these events through code have options to disable event triggering, e.g. setDate() takes a second param  (bool) allowing you to disable firing onChange and others.
Would using those parameters make onSelect redundant in your case?


xhyve: Bump v0.3.1

LGTM :+1:  , let tests finish and do the minor release :)

@praveenkumar I needs homebrew tests, please wait a moment...

@praveenkumar merged. release new version soon.


add UMAP and HDBSCAN params in cluster_ids() method #30

Once you make those changes I think this will be good to go! You can check that it works with a minimal example along the lines of the one below:

from pykanto.utils.paths import pykanto_data
from pykanto.dataset import KantoData
from pykanto.parameters import Parameters

DATASET_ID = "GREAT_TIT"
DIRS = pykanto_data(dataset=DATASET_ID)
# ---------
params = Parameters()
dataset = KantoData(DIRS, parameters=params, overwrite_dataset=True)

# Segment:
dataset.segment_into_units()

# Plot an example:
dataset.plot(dataset.data.index[0], segmented=True)

# Extract units, project and check with the interactive app:
dataset.get_units()
dataset.cluster_ids(min_sample=5, kwargs_umap={"n_neighbors": 5, "n_components":2, "min_dist": 0.2}, kwargs_hdbscan={"min_cluster_size": 10, "min_samples":1})
dataset.prepare_interactive_data()
dataset.open_label_app()

The relevant test that needs to be expanded is https://github.com/waliderrais/pykanto/blob/pr/WalidERRAIS/31/tests/test_dataset.py#L84

Great stuff! Thanks @WalidERRAIS
If you have the time it would be good if you can add unit tests to the PR to make sure this works - if you have never done this/can't I will try to find some time to do it myself once you fix these couple of minor things.

Hi @nilomr Thank you. I learn a lot from you, sorry for previous mistakes I think I missed one commit. I try with a minimal example It works, I never done a unit test but I try to add one I hope it helps you.

Hi @nilomr Thank you. I learn a lot from you, sorry for previous mistakes I think I missed one commit. I try with a minimal example It works, I never done a unit test but I try to add one I hope it helps you.

@WalidERRAIS I'm having a very hectic week but I'll merge your PR this weekend. I'm just learning as I go myself, thanks for your contribution! :smile:


Lookup: section items are also being selected onClick

Filtered items of type section should not be focusable ( ideally ) The functionality is well handled in on key presses and the section type filter items don't get focussed. But with the mouse, it is possible to focus on section type filter items and even select those.

It would be a bit more tricky to completely disable the section type filter elements, so just making those unselectable would be an improvement.
I am working on this issue and will submit a PR soon. I would try to disable the element altogether without violating the browser guidelines, though an initial read up tells me it would be tricky.

@pulkonet Lookup is a deprecated component and is only present in storybook for legacy. As such, no changes will be made to it.
Lookup is not present on the https://react.lightningdesignsystem.com/ . Would there be a better way to tell contributors that it is deprecated?

The Lookup component is the Combobox: Autocomplete variant. SLDS changes its names from time to time unfortunately.

@interactivellama I think it would be great if we can add a banner/alert to deprecated components in the storybook. That will warn the contributors in the first place. Or we can have a red mark next to the components name if it is deprecated.  Anyway, it's always fun to fiddle around with the legacy code as well.

@pulkonet Sounds like a good way to add clarity to the project for contributors. I've created #1921


Use git-submodule instead of manually cloning uritemplate-test repo

To have a more reproducible environment.

done


Nginx should not need Ansible for configuration

Ideally we need to be able to remove Ansible configuration that are used to setup Consul.

Build Nginx with all OpenWhisk specific requirements (wsk, blackbox) pre-built into the Docker image.
Script to helps generate certificates
create a Kube ConfigMap and/or Secrets Resource from those certs and a static Nginx.conf file. Where this nginx.conf file is specific to an environment
Have yaml file(s) for the Kube Deployment and Service which uses the generated ConfigMap

[x] Nginx is configured via a yaml file with documentation
[ ] Nginx Docker image is built via the OpenWhisk CI and is not a custom image

See discussion in https://github.com/apache/incubator-openwhisk/issues/2152 of what can be done upstream.

resolved by #130; can be closed


Add colab Airflow notebook example

Depends on ploomber/ploomber#970 (or replace https://github.com/ploomber/ploomber/raw/master/requirements-colab.lock.txt with https://github.com/94rain/ploomber/raw/update_colab_lock_version/requirements-colab.lock.txt)
To run this example before merging: https://colab.research.google.com/github/94rain/projects/blob/airflow_example/guides/airflow/colab.ipynb

@94rain is there anything that's missing here?

@94rain is there anything that's missing here?

No. I eventually fixed the issue by adding cwd="/content" to the constructor of BashOperator. https://github.com/94rain/projects/blob/ca78abb798f39556fc3780c3d48ceef2df5acc0a/guides/airflow/content.py#L27


Iterable.any docs slightly unclear?

I was reading the docs for Iterable.any and it says this:

Checks every element in iteration order, and returns true if any of them make test return true, otherwise returns false. Returns false if the iterable is empty.

At first I thought that it'd check every (all) element in iteration order, then return true if any of them makes test return true.
But the implementation actually returns immediately:

https://github.com/dart-lang/sdk/blob/107995fcdbe10af87ee02bfd39593e567fa59e77/sdk/lib/core/iterable.dart#L481

I think something like this may be clearer:
"Checks elements in iteration order, and returns true when any of them makes test return true, otherwise returns false."
(This maybe too subtle a change for my level of english, though 😅)

Old docs are often quite terse. Makes sense to write something more here.


Update README.md

Why:
Closes [issue link]

What's being changed:

Check off the following:

[x] I have reviewed my changes in staging (look for "Automatically generated comment" and click Modified to view your latest changes).
[x] For content changes, I have completed the self-review checklist.

Writer impact (This section is for GitHub staff members only):

[ ] This pull request impacts the contribution experience

[ ] I have added the 'writer impact' label
[ ] I have added a description and/or a video demo of the changes below (e.g. a "before and after video")

@Sabarinathan07
This seems to be opened accidentally, I am going to close it now :yellow_heart: Take a look at the contributing.md to learn how to contribute in this repo. You can open a discussion if you have any questions :sparkles:


Don't prompt to save an untitled workspace with a single folder

When closing a window (hitting the x button, not quitting), I find it annoying that I'm asked to save an untitled workspace that only has one folder.
This PR changes this behavior to mirror the behavior in the single-folder mode. It'll skip prompting you if you're closing a window that has an untitled workspace with 1 or fewer folders inside of it.

I cannot accept this change. The workspace file could have settings within that the user defined and those would be lost as well. I also think that a consistent behaviour (always asking) is the better behaviour.


TEST(bangc-ops): add nms_rotated api check cases

Thanks for your contribution and we appreciate it a lot.
1. Motivation
Check nms_rotated param.
2. Modification
Add nms_rotated param check cases
3. Test Report

合r0.5 么？

合r0.5 么？

r0.5单独提交了pr：https://github.com/Cambricon/mlu-ops/pull/531


Remove redundant Sort

It seems added TestRemoveRedundantOrderBy fails on Travis.

We went with a different approach for the issue of skipping redundant ORDER BY clauses in the SQL query (https://github.com/prestosql/presto/pull/818). We may still need a way to consolidate redundant sort operations, which can be the result of transformation rules (e.g. a Sort over another Sort or TopN). However, this should be implemented as a regular Rule instead of a whole-plan visitor.


Simplify grammar

Remove a bunch of conflicts
Generalize and relax module path-based access for many rules
Remove superfluous module_nested_path nesting

Another simplification that can be made:
There are several rules for extension, $._raw_js_extension and $._raw_ggl_extension. They are used to apply injections highlights but we can do without them.
Example for %re():
(extension_expression
  (extension_identifier) @_name
  (#eq? @_name "re")
  (expression_statement (string ((string_fragment) @regex))))

Another simplification that can be made

Oh, thank you! I’m going to move this to a separate issue.


I enabled more of the keyword_spotting_tests yesterday, and all the current failures appear to be upstream of IREE (in the python source or in the TF->MLIR lowering): https://github.com/google/iree/commit/a3cb661e32b52aa0c608b416a5ec29fbe67b977a


Transplanting IPTC data

I noticed that iptc data is not being copied when using transplant
Would be nice if this could be added since there seems to be no library to support both formats.

ههه#١