Add Async Iterable support

Hiya :wave:
I'm not quite sure why this was opened without a description, and for now, while I'm open to reopening this of course if things change, I'll close this PR for now.
This basically has two reasons.
The first is, that I skipped support of adding a toAsyncIterable primitive on purpose. It's just not something I see as useful right now, and I haven't seen a lot of cases where it'd be useful, in my opinion, just yet. I don't exclude there being a possibility of this in the future. However, any implementation would have to be better at backpressure, meaning, it'd have to pull only when a value has resolved, and not eagerly. Currently, your implementation for instance does not handle the case of only pulling when a next value is requested.
However, again, I don't think this is something I'd want to add to the library right now.
As per fromAsyncIterable, Wonka already contains this, together with support for non-async-iterables: https://github.com/0no-co/wonka/blob/34ee8d777f035abacff15b5f7dc2af45ddf284b9/src/sources.ts#L9-L88
As you see, it also has a bit of a different call signature and doesn't rely on catch(console.error), instead escalating this to be an uncaught error instead. Details like these are a little more important to prevent us handling errors where they shouldn't happen, where catch actually tells the runtime that the error is in fact being handled.
Another small detail, which for-await-of actually doesn't quite handle that well is the behaviour of iterator.return and iterator.throw, which is in there because it can be used in case of cancellation, and in case of skipping and swallowing errors down the chain.

Hi, sorry for not providing a description, will do better next time. I didn't notice that there was already a fromAsyncIterable, we will start using that instead of our own version. It seem to be missing from the documentation though.
I can shed some light on our use case. We are using this together with graphql.js for subscriptions which are built around AsyncIterable - so hence our need for something like this for turning wonka streams into something that can be consumed by graphql.js. Since we are already using urql and wonka it seemed like a good fit to use it there as well.
We recently upgraded to version 6 as well which was a nice change with the typescript codebase - at least for me. Thank you!


Store imported metadata in a sane order [fix #86]

This resolves #86.

Thanks for the quick review!


Remove shared Configurators

What is this PR trying to achieve?
As ScallOp didn't like them.
Who is this change for?
🚯

Closing with much nope.


notepad++ requires specific arguments to work nicely with actions like rebase

This was raised in https://github.com/git-for-windows/git/issues/278

Notepad++ is triggered 1st time and file opens and Im midway into editing file e.g which commits to squash/reword and before I get a chance to finish in cmd terminal it skips the operation to end. whatever the file I was editing is left as a uncommitted change and has to be discarded or deleted.

The recommended workaround was also identified:

Try setting your editor to "notepad++ -multiInst". Plain notepad++ will only tell the already running instance to open the file before exiting, which looks as if you finished editing the file in record time.

This is because Notepad++ can be used with a tabbed interface, and this can lead to a scenario where a file is opened in a new tab, and then the process closes immediately - getting into a state that's weird and confusing.
I had a quick look at what might be involved with passing arguments to the associated file editor, and I couldn't spot an easy solution. This also requires us to detect you've configured notepad++ as the default editor for text files, which we don't do right now - so that's more work.
I've got a lot on my plate right now, but happy to provide guidance where possible if someone is keen in getting involved.

Im unsure if its special argument it requires, but without setting notepadd++ as a core.editor it doesn't work at all. GitPad or no and most definitively notepad++ as a default editor for txt files in windows doesn't do cut it, one may even ask what is GitPad doing if at all.
You can add more arguments to disable specific options you dont need you can disable tabs, plugins, etc but you definetly need to add it to core.editor else things get terminated prematurely.
Looking at https://github.com/github/GitPad I can see that it mentions.

How to uninstall
Remove HKEY_CURRENT_USER\Environment\EDITOR from the registry and reboot your system

however I can assure that no such key exists in my system at all and that Github Desktop where this issue is being tracked from doesnt add this at all or never actually executes GitPad no idea since Github Desktop doenst install like regular software in Windows.
Ive also trying to add https://github.com/progit/progit2/issues/365 but it seems its kind of useless when tickets like this suggest GitPad is to blame what the point of documenting how tos with GitPad? idk.

So github Desktop which uses GitPad in windows doesn't do cut it, one may even ask what is GitPad doing if at all and why you need it.

This is the first editor-specific issue that's come to my attention with us shelling out to Notepad++. I'd love to understand whether this is a recent issue, or whether this has always been present (and I've just not heard it or encountered it). Do you have any more information on when you first encountered this? Was there a version of Notepad++ that didn't have this issue?

However I can assure that no such key exists in my system at all and that Github Desktop where this issue is being tracked from doesnt add this at all or never actually executes GitPad no idea since Github Desktop doenst install like regular software in Windows.

As per the README, we use the environment variable in GitHub Desktop to assign GitPad to be the default editor:

if your default editor is not set, GitPad.exe will set itself to EDITOR via setting an Environment Variable on your user profile.

Those uninstall instructions sounds like they are out of sync. I've opened https://github.com/github/GitPad/issues/25 to investigate this separately.

I use windows for 5 minutes and spend 8 hours of my life trying to improve and contribute what Im able back to community with his issue...

I'm sorry if you feel frustrated by the lack of progress on this issue. Because GitHub Desktop installs per-user (and has a sandboxed Git environment) we're still going to use GitPad for the moment while I wrap my head around how we can address the original issue (needing to specify arguments to prevent Notepad++ from exiting unexpectedly).
I would love for this to "just work" for Notepad++ and your scenario, but I need to investigate how we can address this properly, rather than abandoning the use of GitPad in GitHub Desktop.
In the meantime, we have the workaround for applying the custom core.editor setting to your ~/.gitconfig to override GitPad.

Do you have any more information on when you first encountered this? Was there a version of Notepad++ that didn't have this issue?

This has always happened.
I'm sorry if you feel frustrated by the lack of progress on this issue. Because GitHub Desktop installs per-user (and has a sandboxed Git environment) we're still going to use GitPad for the moment while I wrap my head around how we can address the original issue (needing to specify arguments to prevent Notepad++ from exiting unexpectedly).
Its not the lack of progress,, Ive chased this up and down with everyone, Github support first suggested this was an issue with git when I first reported it, Essentially Im chasing this issue with 3 different projects. one of which is to alleviate the pains by documenting issue and workaround.
In the meantime, we have the workaround for applying the custom core.editor setting to your ~/.gitconfig to override GitPad.
Thank the config gods for that :)


[CLOSED] Multiple definition of kNvwalInvalidEpoch

 Issue by hvolos
Wednesday Aug 24, 2016 at 19:13 GMT
Originally opened as https://github.com/hkimura/libnvwal/issues/1

Separate const definition of kNvwalInvalidEpoch in include/nvwal_types.h into declaration/definition.

 Comment by hkimura
Wednesday Aug 24, 2016 at 19:27 GMT

ah, this is the pitfall in C. In C++, we can
const nvwal_epoch_t kNvwalInvalidEpoch = 0;
in header and include it from everywhere. In C, we need to separately have a definition.
.. which I don't like because I want to make this concise both in C/C++.
I will make it an enum entry.


Average non-zero entries

I'm trying to define a lambda function that averages all of the word embeddings from the embedding layer.  This code words, but it includes the word embedding of the 0s in the input matrix -- those 0s are just placeholders, so we don't want to include them -- eg
model.predict(np.array([[0, 100]]))

should equal
model.predict(np.array([[100]]))

Does anyone have any ideas how to take the mean but drop the 0s?  I'm assuming that it can be done with proper use of masking, but I'm not exactly sure how.
Thanks!
def s(x):
    return K.mean(x, axis=1)

input = Input(shape=(100,), dtype='int32')

embedding = Embedding(
    input_length = 10,
    input_dim = 100,
    output_dim = 256,
    mask_zero = True
)(input)

lambda_ = Lambda(s)(embedding)

dense = Dense(1)(lambda_)

model = Model(input=labeled, output=dense)

model.compile(loss='mse', optimizer='rmsprop')

Why not make the sum and divide by the number of non zeros? In Theano you
can compute that number as
T.neq(x, 0).sum()
Le jeu. 5 mai 2016 16:12, bkj<EMAIL_ADDRESS>a écrit :

I'm trying to define a lambda function that averages all of the word
embeddings from the embedding layer. This code words, but it includes the
word embedding of the 0s in the input matrix -- those 0s are just
placeholders, so we don't want to include them -- eg
model.predict(np.array([[0, 100]]))
should equal
model.predict(np.array([[100]]))
Does anyone have any ideas how to take the mean but drop the 0s? I'm
assuming that it can be done with proper use of masking, but I'm not
exactly sure how.
Thanks!
def s(x):
return K.mean(x, axis=1)
input   = Input(shape=(100,), dtype='int32')
embedding = Embedding(
trainable    = True,
input_length = 10,
input_dim    = 100,
output_dim   = 256,
mask_zero    = True
)(input)
lambda_ = Lambda(s)(embedding)
dense   = Dense(1)(lambda_)
model   = Model(input=labeled, output=dense)
model.compile(loss='mse', optimizer='rmsprop')
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/fchollet/keras/issues/2632

I agree with @nouiz , masked mean I'm using is basically like that

(I think) the issue with that solution is that it backprops into the embedding of the 0s -- so eventually you're adding a nonzero vector for each zero that is supposed to be masked, which is bad.
I solved with:
class ZSumLayer(Layer):
    def __init__(self, output_dim, **kwargs):
        self.supports_masking = True
        self.output_dim = output_dim
        super(ZSumLayer, self).__init__(**kwargs)

    def call(self, x, mask=None):
        return K.sum(K.switch(mask[:,:,np.newaxis], x, 0), axis=1) # operative line

    def get_output_shape_for(self, input_shape):
        return (input_shape[0], self.output_dim)

    def compute_mask(self, input, mask):
        return None

This satisfies the following:
v1 = np.array([[0, 1]])
v2 = np.array([[0, 0, 1]])

assert(model.predict(v1) == model.predict(v2))
model.fit(X, y)
assert(model.predict(v1) == model.predict(v2))

regardless of the values in the first row of model.layers[1].get_weights()[0].
(PS, I could additionallty count and divide by the number of non-zeros -- turns out that the zero-masked sum was actually fine for my purposes.)
Thanks everyone!

@bkj Thanks, this is a working solution. I added the count for the sake of completeness:
def call(self, x, mask=None):
        count = K.sum(mask, axis=1)[:, np.newaxis]
        avg = K.sum(K.switch(mask[:, :, np.newaxis], x, 0), axis=1) / count
        return K.cast(avg, x.dtype)```

@bkj @soheilb Have yall tried making a version of this that works under tensorflow as well? It doesn't support that kind of indexing and I'm having trouble getting the switch statement to work.

I've only tried for Theano -- not sure how you'd do this in Tensorflow
On Tue, Jun 28, 2016 at 2:03 PM, RaffEdwardBAH<EMAIL_ADDRESS>wrote:

@bkj https://github.com/bkj @soheilb https://github.com/soheilb Have
yall tried making a version of this that works under tensorflow as well? It
doesn't support that kind of indexing and I'm having trouble getting the
switch statement to work.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/fchollet/keras/issues/2632#issuecomment-229131588,
or mute the thread
https://github.com/notifications/unsubscribe/AFzgfUxVEh4k26ST3h2EbRl2cYcGO4teks5qQWHkgaJpZM4IYV1o
.

Check the solution suggested by @mpavankumarreddy in #2728 which should work on TF as well.

@soheilb
Thanks for the code.
With the give code, i am able to train my model.
But when I am loading the saved model as:
self.model = model_from_json(mj, {'WordAverage':WordAverage})
I am getting following error:
16   File "/home/shwegarg/anaconda2/lib/python2.7/site-packages/keras/models.py", line 197, in model_from_json
17     return layer_from_config(config, custom_objects=custom_objects)
18   File "/home/shwegarg/anaconda2/lib/python2.7/site-packages/keras/utils/layer_utils.py", line 36, in layer_from_config
19     return layer_class.from_config(config['config'])
20   File "/home/shwegarg/anaconda2/lib/python2.7/site-packages/keras/engine/topology.py", line 2375, in from_config
21     process_layer(layer_data)
22   File "/home/shwegarg/anaconda2/lib/python2.7/site-packages/keras/engine/topology.py", line 2353, in process_layer
23     custom_objects=custom_objects)
24   File "/home/shwegarg/anaconda2/lib/python2.7/site-packages/keras/utils/layer_utils.py", line 36, in layer_from_config
25     return layer_class.from_config(config['config'])
26   File "/home/shwegarg/anaconda2/lib/python2.7/site-packages/keras/engine/topology.py", line 929, in from_config
27     return cls(**config)
28 TypeError: init() takes exactly 2 arguments (1 given)
Please help me in this regard.

I have solved the problem my adding following function in the ZSumLayer class:
def get_config(self):
config = {'output_dim': self.output_dim}
base_config = super(ZSumLayer, self).get_config()
return dict(list(base_config.items()) + list(config.items()))


Feature: Gradients

This PR adds support for the rendering of gradients.

I would like to report on racism


Add AreYouARobot in Kotlin

Thank you @deepkrg17  for your contributions. Continue to go ahead and contribute more.


Problem initializing VimBox. Could not checkout jordwalke/VimBox(branch json)

I got following message in the mac "In the macProblem initializing VimBox. Could not checkout jordwalke/VimBox(branch json)"

+1

I get this error too. Then the second time I launch VimBox, I get "Problem initializing VimBox, Could not copy over main menu"

Anyone have solution for this error.?

Anyone have solution for this error.?


KNIFT aar on Android with Gradle using demo apps - java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "_ZNK2cv17DescriptorMatcher8knnMatchERKNS_11_InputArrayES3_RNSt6__ndk16vectorINS5

System information (Please provide as much relevant information as possible)

OS Platform and Distribution (e.g., Linux Ubuntu 16.04, Android 11, iOS 14.4):
MediaPipe version: v0.8.6
Bazel version:bazel 4.1.0
Solution (e.g. FaceMesh, Pose, Holistic): KNIFT aar
Programming Language and version ( e.g. C++, Python, Java): Java

Describe the expected behavior:
My goal was to create an aar to extract the bounding box coordinates of my custom template (after having built and replacing the knift_index.pb file with my template image) using the KNIFT aar on Android Studio with gradle
When I replace the .aar file in the libs folder (from the face_detection and multi_hand_tracking demo/example projects) with the one that I generated following the steps in
https://google.github.io/mediapipe/getting_started/android_archive_library.html
I get the following crash at
System.loadLibrary("mediapipe_jni");
java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "_ZNK2cv17DescriptorMatcher8knnMatchERKNS_11_InputArrayES3_RNSt6__ndk16vectorINS5_INS_6DMatchENS4_9allocatorIS6_EEEENS7_IS9_EEEEiS3_b" referenced by "/data/app/~~IXWF_H6noRNss6OBiB8kZQ==/com.my.mediapipe.apps.myapplication-Eds2VNkZzhvjhYw-zhjNaw==/lib/arm64/libmediapipe_jni.so"...
Complete log:
08/10 08:36:35: Launching 'app' on Google Pixel 5.
$ adb shell am start -n "com.my.mediapipe.apps.myapplication/com.my.mediapipe.apps.myapplication.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -D
Waiting for application to come online: com.my.mediapipe.apps.myapplication | com.my.mediapipe.apps.myapplication.test
Waiting for application to come online: com.my.mediapipe.apps.myapplication | com.my.mediapipe.apps.myapplication.test
Connecting to com.my.mediapipe.apps.myapplication
Waiting for application to start debug server
Waiting for application to come online: com.my.mediapipe.apps.myapplication | com.my.mediapipe.apps.myapplication.test
Connecting to com.my.mediapipe.apps.myapplication
Capturing and displaying logcat messages from application. This behavior can be disabled in the "Logcat output" section of the "Debugger" settings page.
I/s.myapplicatio: Waiting for a blocking GC Instrumentation
I/s.myapplicatio: WaitForGcToComplete blocked Instrumentation on SystemWeakHolder for 13.305ms
Connected to the target VM, address: 'localhost:8600', transport: 'socket'
I/System.out: Debugger has connected
waiting for debugger to settle...
I/System.out: waiting for debugger to settle...
I/chatty: uid=10283(com.my.mediapipe.apps.myapplication) identical 1 line
I/System.out: waiting for debugger to settle...
I/System.out: waiting for debugger to settle...
I/System.out: waiting for debugger to settle...
I/System.out: waiting for debugger to settle...
I/System.out: debugger has settled (1439)
D/ApplicationLoaders: Returning zygote-cached class loader: /system/framework/android.test.base.jar
D/NetworkSecurityConfig: No Network Security Config specified, using platform default
D/NetworkSecurityConfig: No Network Security Config specified, using platform default
W/s.myapplicatio: Got a deoptimization request on un-deoptimizable method java.lang.Object java.lang.Class.newInstance()
Got a deoptimization request on un-deoptimizable method java.lang.Object java.lang.Class.newInstance()
W/s.myapplicatio: Got a deoptimization request on un-deoptimizable method java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])
W/s.myapplicatio: Got a deoptimization request on un-deoptimizable method java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])
W/s.myapplicatio: Got a deoptimization request on un-deoptimizable method void com.android.internal.os.ZygoteInit.main(java.lang.String[])
D/AndroidRuntime: Shutting down VM
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.my.mediapipe.apps.myapplication, PID: 15956
java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "_ZNK2cv17DescriptorMatcher8knnMatchERKNS_11_InputArrayES3_RNSt6__ndk16vectorINS5_INS_6DMatchENS4_9allocatorIS6_EEEENS7_IS9_EEEEiS3_b" referenced by "/data/app/~~IXWF_H6noRNss6OBiB8kZQ==/com.my.mediapipe.apps.myapplication-Eds2VNkZzhvjhYw-zhjNaw==/lib/arm64/libmediapipe_jni.so"...
at java.lang.Runtime.loadLibrary0(Runtime.java:1087)
at java.lang.Runtime.loadLibrary0(Runtime.java:1008)
at java.lang.System.loadLibrary(System.java:1664)
at com.my.mediapipe.apps.myapplication.MainActivity.(MainActivity.java:67)
at java.lang.Class.newInstance(Native Method)
at android.app.AppComponentFactory.instantiateActivity(AppComponentFactory.java:95)
at androidx.core.app.CoreComponentFactory.instantiateActivity(CoreComponentFactory.java:41)
at android.app.Instrumentation.newActivity(Instrumentation.java:1253)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3335)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3595)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:223)
at android.app.ActivityThread.main(ActivityThread.java:7664)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
I/Process: Sending signal. PID: 15956 SIG: 9
Disconnected from the target VM, address: 'localhost:8600', transport: 'socket'

Hi @arijith96, Can you try this https://github.com/google/mediapipe/issues/1224#issuecomment-745190852

Hi @sgowroji,
Thanks for your response!
I do not think that could help since I was able to run both the demo/example apps with the .aar. Will give it a try nonetheless.
Also, could it be because of this
In this this, I observed that the author had specified, this line
System.loadLibrary("opencv_java4");
instead of the usual
  System.loadLibrary("opencv_java3");

present in the example apps of face_detection and multi_hand_tracking
Is there some dependency on OpenCv4 that I need for DescriptorMatcherknnMatch? I was not able to find anything on the MediaPipe steps to build this library.
How could I go about that if I need to build an aar of KNIFT to extract the x,y coordinates of the bounding box of the template that I find?

Got to know what was going wrong :)
Since there are issues with the knnMatch I needed to swtich the WORKSPACE to OpenCV4 and then build the aar.
Also had to change the loadLibrary in Android Studio to "opencv_java4" instead of "opencv_java3" for it load properly.
Closing this issue now. Thanks!


Update enable-conditional-access.md

Resolved Issue: ADFS Update #3134

This is my first time creating a PR from the public repository. (Got here by editing directly on Github's browser) I wasn't sure if this was the correct line of action. Going forward, should I complete the update in the private one? Thanks so much! @MicrosoftDocs/marveldocs-pubops

Hi @adeejoseph,
If this update is high priority in nature, I would recommend closing this PR and submitting via the private repos.
In general, PubOps recommends all FTEs and vendors work in the private repos if they are able to do so. The one of the many reasons is that PubOps does not review public PRs.
If this update is not high pri, @tiburd and her team will review and merge the PR as soon as reasonably possible.
Thanks!

@adeejoseph
Hi,
I reviewed this change and merged the PR, but we do recommend creating PRs in the private repo going forward.
Thanks!!

Thanks so much for the quick response @traya1 & @tiburd!! I'll be sure to stay in the Private repo going forward. Have a wonderful week!!


OS error hugginface config file not available

Here is the error :
OSError: laion/CLIP-ViT-H-14-laion2B-s32B-b79K does not appear to have a file named config.json. Checkout 'https://huggingface.co/laion/CLIP-ViT-H-14-laion2B-s32B-b79K/main' for available files.

I had to delete .cache in user folder


could user login， when user‘s group is in the LDAP_BASE_DN，but user outside the LDAP_BASE_DN？

Attempted Debugging

[X] I have read the debugging page

Searched GitHub Issues

[X] I have searched GitHub for the issue.

Describe the Scenario
BookStack Version: v22.07
my .env profille

I have created role

my user：
CN=azheng，OU=test,DC=test,DC=com
CN=azheng3，OU=test2,DC=test,DC=com
my group
CN=test,OU=test,DC=test,DC=com
azheng and azheng3 are in the group
when LDAP_BASE_DN="ou=test,dc=test,dc=com"
azheng can login
azheng3 can't login error messages:user or password wrong
when LDAP_BASE_DN="dc=test,dc=com"
azheng and azheng3 can login both,and two user are in this test role

could user login， when user‘s group is in the LDAP_BASE_DN，but user outside the LDAP_BASE_DN？
Exact BookStack Version
v22.07
Log Content
No response
PHP Version
7.4.30
Hosting Environment
centos 7.9

Copying my response from the same issue posted on the website repo:

the ldap group sync can't let user log through users are not in the LDAP_BASE_DN?

The group sync does not control user access to login, it's somewhat unrelated although group discovery may be affected by LDAP_BASE_DN.
LDAP_BASE_DN will affect the discovery of users and groups since searchers will be performed using this DN as the base.
Group sync is performed on returned memberOf style returned properties only. Groups within the LDAP_BASE_DN setting are not used directly as part of group sync.


feat: add opt-in chat features

Limit KaTeX, tables, headings behind feature flag for channels.

why?

Less moderation overhead


some issue or not issue about app.route

first, here is the normal code
from sanic import Sanic,reponse
app=Sanic(__name__)

def return_value(controller_fun):
    """
    :param controller_fun:
    :return:
    """

    async def __decorator(*args, **kwargs):
        ret_value = {
            "version": server_current_config.version,
            "success": 0,
            "message": u"fail query"
        }
        ret_data, code = await controller_fun(*args, **kwargs)

        if is_blank(ret_data):
            ret_value["data"] = {}
        else:
            ret_value["success"] = 1
            ret_value["message"] = u"succ query"
            ret_value["data"] = ret_data
            ret_value["update_time"] = convert_time_to_time_str(get_now())
        print(ret_value)
        return response.json(body=ret_value, status=code)

    return __decorator

async def test1():
    return {"a":1"}
@return_value
async def test2():
    return await test1(),200

@app.route("/wtf")
async def test3():
    return await test2()

it`s OK . and here's another code
from sanic import Sanic,reponse
app=Sanic(__name__)

async def test1():
    return {"a":1"}
@return_value
async def test2():
    return await test1()

@app.route("/wtf")
def test3():
    return test2()

First I guess it will raise an exception, but it's works. I view code and I find some interesting code in app.py
    async def handle_request(self, request, write_callback, stream_callback):
        """Take a request from the HTTP Server and return a response object
        to be sent back The HTTP Server only expects a response object, so
        exception handling must be done here

        :param request: HTTP Request object
        :param write_callback: Synchronous response function to be
            called with the response as the only argument
        :param stream_callback: Coroutine that handles streaming a
            StreamingHTTPResponse if produced by the handler.

        :return: Nothing
        """
        try:
            # -------------------------------------------- #
            # Request Middleware
            # -------------------------------------------- #

            request.app = self
            response = await self._run_request_middleware(request)
            # No middleware results
            if not response:
                # -------------------------------------------- #
                # Execute Handler
                # -------------------------------------------- #

                # Fetch handler from router
                handler, args, kwargs, uri = self.router.get(request)
                request.uri_template = uri
                if handler is None:
                    raise ServerError(
                        ("'None' was returned while requesting a "
                         "handler from the router"))

                # Run response handler
                response = handler(request, *args, **kwargs)
                if isawaitable(response):
                    response = await response
        except Exception as e:
            # -------------------------------------------- #
            # Response Generation Failed
            # -------------------------------------------- #

            try:
                response = self.error_handler.response(request, e)
                if isawaitable(response):
                    response = await response
            except Exception as e:
                if self.debug:
                    response = HTTPResponse(
                        "Error while handling error: {}\nStack: {}".format(
                            e, format_exc()))
                else:
                    response = HTTPResponse(
                        "An error occurred while handling an error")
        finally:
            # -------------------------------------------- #
            # Response Middleware
            # -------------------------------------------- #
            try:
                response = await self._run_response_middleware(request,
                                                               response)
            except:
                log.exception(
                    'Exception occured in one of response middleware handlers'
                )

        # pass the response to the correct callback
        if isinstance(response, StreamingHTTPResponse):
            await stream_callback(response)
        else:
            write_callback(response)

In the handle_request method , there is some compatible code to fix user's error . But I don't know it right or false.
However , I suggest for that add warning-raise mechanism in route or add_route .If user add a none-async method as route handler ,it will log a warning to remind people for that he use an inelegant way to use Sanic

Your example code is very complex, and I can't really determine what your issue is or what question you are asking.
Are you able to post a very minimal and very simplified code example that reproduces what you are seeing? And also please describe what you expect to be the correct behaviour.

@Zheaoli If I'm understanding properly you want a way to warn the developer if he adds a route that is not awaitable from the condition isawaitable, right? (Please correct me if I'm wrong)
My conclusion would be that is not a warning and is not an info log level, can be debug level, as it is a comment of what it "should" be done/used. But for me the case is that if a dev uses a non awaitable handler it sort of is ok, as the framework is based in async code, the only problem the developer would face is that the code wont be sooo performant....
I can argue that all, if not almost all, Sanic documentation has async definitions, plus Sanic is an async framework. In this mindset, I think logging is not required for non-async definitions.

Closing, requester never responded to ask for more info.


Add KEM API and new KEX which can use any KEM

Issue # (if available):
https://github.com/awslabs/s2n/issues/904
Description of changes:
The NIST submissions that are being added to s2n in https://github.com/awslabs/s2n/issues/904 implment a Key Encapsulation Mechanism API:

generate_keypair
encapsulate
decapsulate

That does not fit nicely into the new Key Exchange API all existing s2n algorithms were mapped to in https://github.com/awslabs/s2n/pull/887. Therefore we need one more abstraction that can cleanly map the NIST API to the one in use in s2n without having to modify all the existing NIST submissions core code.
You can see an example of what this looks like here. BIKE and SIKE have not been merged in yet so this change only has unit tests that create dummy KEMs for proof of concept.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Force push for the rebase to fix the tls/s2n_crypto.h conflicts.

For others reviewing, I found the spec link in #904 labeled "SIKE_and_BIKE_Hybrid_Key_Exchange_Cipher_Suites_for_Transport_Layer_Security.txt" to be helpful.


Release the random port before starting the application

It looks like listening on the random port can cause the application to be unable to start. It works fine on my local OS X instance, but fails in Travis-CI (running on Linux). I have been able to resolve this by closing the socket and then reusing the port for the application.
A failed Travis-CI build:
https://travis-ci.org/davehunt/mozwebqa-test-templates/jobs/48327198
A passing Travis-CI build (using my fork/branch):
https://travis-ci.org/davehunt/mozwebqa-test-templates/jobs/48478829
The failing build times out. I was able to determine through debugging that the address was not available. Closing the socket fixed this. Ideally we'd have a way of starting an application on a random available port. I believe this can be done by passing 0 however there's then no way to determine the port that was selected.

Hmm.. looks like even with this change I'm still seeing issues. See https://travis-ci.org/davehunt/mozwebqa-test-templates/builds/48480450, going to close this pull, but I'm not sure what else to try.

A little more information here: http://stackoverflow.com/questions/5085656/how-to-get-the-current-port-number-in-flask

A rerun of the job in Travis passed, but I'd like to have greater confidence in this change. I wonder if you have any thoughts @vitalk?

Very weird behavior and looks like pytest-django has no such issue, but they use the built-in Django live server. As for me, the releasing port before application has been started is a good workaround.

Okay, I've only seen one instance when closing the port still caused a build failure. If you're comfortable with this, please go ahead and merge it.

Pypi release will be available in a few minutes.

Thanks! :smile:


Cloud Deployment & Documentation: Setup Elastic IP

As a dev I would like to have a static IP, since we are using AWS I need to use elastic IP

To setup an Elastic IP in AWS,
A) Use the search function to navigate to the Elastic IP for EC2

Next lets allocate an elastic IP:

Next we will assosiate the IP with the instance.

Tada!

So the chain looks like this now:
Person Types in name in browser or clicks link: The user enters "Northseattlecollegeevents.com" into their web browser or clicks on a link containing the domain name.
DNS Server resolves: The DNS server is queried to resolve "Northseattlecollegeevents.com" to an IP address. The DNS records for "Northseattlecollegeevents.com" are checked, and the corresponding Elastic IP address (e.g., <IP_ADDRESS>) associated with the EC2 instance is retrieved.
Domain Points to Elastic IP: If DNS settings are properly configured, "Northseattlecollegeevents.com" resolves to the Elastic IP address (e.g., <IP_ADDRESS>) associated with your EC2 instance. This is achieved by setting up an A record in the domain's DNS settings pointing to the Elastic IP address.
Example DNS Record:
A     Northseattlecollegeevents.com    <IP_ADDRESS>
Request Sent to Instance: The user's web browser sends an HTTP request to the Elastic IP address (<IP_ADDRESS>), which reaches your EC2 instance.
Instance Responds: Your EC2 instance, configured with Nginx and PM2 running the Next.js application, receives the request. Nginx, configured with a server block for "Northseattlecollegeevents.com," forwards the request to the PM2 server running the Next.js application.
Example Nginx Server Block:
nginx
server {
listen 80;
server_name Northseattlecollegeevents.com;
location / {
    proxy_pass http://localhost:3000; # Assuming PM2 server is running Next.js on port 3000
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    proxy_set_header Host $host;
    proxy_cache_bypass $http_upgrade;
}

}
The Next.js application served by PM2 processes the request and generates the appropriate response, which is then sent back through Nginx to the user's web browser.


Adding the Catalog API to the GraphQL Schema

Here's a more tidied up version with typechecking with the schema that's provided with catalog-graphql.
It's still far from complete, but thought we could iterate on this for now and see what we can come up with!


os-zabbix-agent / os-zabbix5-proxy - add support for custom config parameters

Problem:
Currently it is not possible to add custom config lines to Zabbix agent or proxy, which are not supported by the OPNsense webfrontend. There exists the config directive "Include=/usr/local/etc/zabbix_agentd.conf.d" in /usr/local/etc/zabbix_agentd.conf (Zabbix agent config file), which makes it possible to read further config files, but I don't know, if this is update-safe. The "Include" directive does not exist in /usr/local/etc/zabbix5/zabbix_proxy.conf, which is the config file for Zabbix proxy. So, it is currently impossible to add configuration there.
Use case
Zabbix agent

Adding UserParameters (see https://www.zabbix.com/documentation/5.0/en/manual/config/items/userparameters) for implementing checks, which are not part of the Zabbix agent by default.

Zabbix proxy

Making it possible to gather statistics. For allowing this, it is needed to add the directive "StatsAllowedIP=<ip/hostname>" to the config file, where the allowed host(s) should be entered (see https://www.zabbix.com/documentation/5.0/en/manual/appendix/items/remote_stats).

Solution proposal

Add a field "Advanced Parameters" to Zabbix agent and proxy, where additional config lines can be added
Add a field "Stats Allowed IP", where allowed hosts for getting statistics can be entered

Zabbix agent

I'm the maintainer of the Zabbix agent plugin. Adding UserParameters is already possible:
Services: Zabbix Agent: Settings -> Advanced -> User Parameters

Currently it is not possible to add custom config lines to Zabbix agent or proxy

...and that's for a reason. This would greatly increase the risk of breaking the configuration at any time. Contributors and plugin maintainers simply cannot test all combinations of arbitrary configuration includes, so any change may break things at any time. So I'm strongly opposed to this. Instead all features should be directly added to the GUI.
@mimugmail is the maintainer of the Zabbix proxy plugin, maybe he can comment on the other requests.


Server side client not updated for remote updates

Looks like the Server-side (on the Vpin) is not getting updated properly. Either the client and/or server software is not updating when doing it from a remote VPS client on the remote PC (not the local Vpin)
I was on the prior version on both the Vpin (VPS client & server) and my remote PC (VPS client).
Connected from remote PC's VPC client to the Vpin (client & server) ... the VPS client showed the 2.15.0 update avaialble which I selected for it to install immediately.
the remote VPS client showed both client & server software completed without error.
BUT when local on the Vpin, the client showed is was still on the older version -- showing the 2.15 version was available so I had to install in on the vPin locally.

Fixed with 2.16.0. The remote client is now updated too.
I noticed one label is not updated in the dialog yet, but will fix this small issue with the next update.


Adjusting the legend position

Is there a way to adjust the legend position?
Is there a way to access the legend of a plot?
In MakieLayout it seems to be easy to move stuff around (and also adjusting things like orientation). But I guess, the output of a AoG plot is a plain scene, and not a (scene, layout), right?

Thanks to @asinghvi17 on Slack and the fabulous MakieLayout tutorial by @jkrumbiegel, I solved the problem.
using AlgebraOfGraphics, AbstractPlotting, CairoMakie
x = rand(100)
g = rand(["very loooong","looooong"], 100)
df = DataFrame(g = g, x = x, y = (g .== "very") .+ x .+ randn(100))

cols = style(:x, :y);
grp = style(color = :g)
scat = spec(Scatter)
pipeline = cols * scat
aog = data(df) * grp * pipeline

aog |> draw

scene, layout = MakieLayout.layoutscene()
AlgebraOfGraphics.layoutplot!(scene, layout, aog)

#lax = layout.content[1].content.content[1].content
leg = layout.content[2].content
layout[0,1] = leg
leg.tellheight = true
leg.tellwidth = false
leg.orientation = :horizontal
leg.titleposition = :left

trim!(layout)
scene

If you think this would be helpful to have in the docs, I can submit a PR. (Or feel free to use the code here)

Yes, by all means, docs PR are always welcome!
I suspect by default one could also have layoutplot return both the layout and the scene, as long as draw only returns one "plottable thing". Alternatively (which IMO would be even better) MakieLayout could somehow be restructured so that both scene and layout belong to a unique object that displays as a plot.

Yes, I think each scene should contain a layout by default (basically the same configuration that layoutscene creates, where the layout moves to track the px_area of the Scene) once we do the MakieLayout merge. Then you wouldn't have to pass the layout around, too.

Here is a function that can be used to customize the legend.
using AlgebraOfGraphics, AbstractPlotting, CairoMakie
using MakieLayout
using UnPack

default_orientation(legend_position) = legend_position in [:top, :bottom] ? :horizontal : :vertical
default_titleposition(orientation) = orientation == :horizontal ? :left : :top

function legend_position!(scene, layout, position;
                          orientation=default_orientation(position),
                          titleposition=default_titleposition(orientation))
    outer_layout = layout
    outer_axs = outer_layout.content

    cont_leg = outer_axs[2]
    cont_plt = outer_axs[1]

    leg = cont_leg.content
    layout_inner = cont_plt.content

    @unpack rows, cols = cont_plt.span

    if position == :top
        outer_layout[rows .- 1, cols] = leg
    elseif position == :bottom
        outer_layout[rows .+ 1, cols] = leg
    elseif position == :left
        outer_layout[rows, cols .- 1] = leg
    elseif position == :right
        outer_layout[rows, cols .+ 1] = leg
    else
        @error "position $position not supported"

    end

    if position in [:top, :bottom]
        leg.tellheight = true
        leg.tellwidth = false
    else # if position in [:left, :right]
        leg.tellheight = false
        leg.tellwidth = true
    end

    leg.orientation = orientation
    leg.titleposition = titleposition

    trim!(outer_layout)
    scene
end

To illustrate,
using RDatasets

mpg = dataset("ggplot2", "mpg")
mpg[!,:grpx] .= rand.(Ref(["a", "b", "c"]))
mpg[!,:grpy] .= rand.(Ref(["aa", "bb"]))

cols = style(:Displ, :Hwy)
grp = style(color = :Cyl => categorical, layout_x = :grpx, layout_y = :grpy)
scat = spec(Scatter)
pipeline = cols * scat
aog = data(mpg) * grp * pipeline

scene, layout = MakieLayout.layoutscene()
AlgebraOfGraphics.layoutplot!(scene, layout, aog)

legend_position!(scene, layout, :bottom)

legend_position!(scene, layout, :left)

legend_position!(scene, layout, :top)

legend_position!(scene, layout, :right)

The function above works for AoG plots, because they consist of some inner layout and a legend and nothing more.
Should such functionality be part of AoG? Or of a different package?
Or should one strive for a more general solution in AbstractPlotting?

Closing as now legend position is customizable.


NFR: Only show live for stage/talent

Often I don't want to distract my talent and want them to focus on red only.
Would it be possible to disable the preview for the stage and give the operator only heads up for the preview?

With RGB Leds this is easy: Don't connect the green LED. :smile:
But yes, this should become an option at some point.
If you need a quick fix for now, this is the line to change the logic:
https://github.com/wifi-tally/wifi-tally/blob/389a298332b69e7827ea73f586a1c1794fa06051/tally/src/my-led.lua#L54

This is part of v0.4.0

This is part of v0.4.0


Multi-repo workspace breaks when adding a top-level repo

Issue Type: Bug
I have a multi-project workspace.  The folder structure looks like this:
MainProject
|-Deployment
|  |-Database *
|  |-Services *
|-Framework
|  |-core *
|  |-components *

And so on. In this structure, all the folders marked with an asterisk have their own repo.
Initially I added each repo to the workspace file and I could then see a list of repos on my Git panel, each with changes listed etc. Perfect!
Then I added the workspace file itself to source control. Since it is located in MainProject (and there were a few other files I needed to add), I initialized a new repo in MainProject.
Now I only see the repo in MainProject and all the others are simply not shown at all. The workspace folders still look like they did, but the Git panel only knows about the top-level repo.


Cleanup mockgen files when ensure generate mocks is terminated early

If you terminate ensure generate mocks while the mocks are being generated, it can lead to mockgen reflection files cluttering the file system. Before exiting, clean these up.

Closed via https://github.com/JosiahWitt/ensure-cli/pull/5


Adding vue2 support

referencing #66 ,
I fixed infinite loading screen and example and so on from recent main branch. And finished test in both vue2 and vue3

I'd like to help make sure #66 or this PR get across the finish line, how can I do that best? Vue 2 support is very important to me as I'm trying to support @vue/composition-api in our component-library, and it works much better with Vite as the builder. I can't migrate to Vue3 until Vuetify goes to Vue 3 as well.

If the issues really are just around adding a vue2 example, I wonder if we should just punt that part of it, and add support for vue2 without an example, with the caveat that it'll be pretty experimental and might break since we won't be testing it.

If I put up a PR without an example and with considerations in the documentation, would it be considered @eirslett ?

Sounds OK to me!

Great job @TylerOliver, I have rebased this branch on last commit and it works properly for my project (vite + vue2 + composition api). Would you consider merging this @eirslett ?

@Toilal I don't think we have a PR yet which adds vue2 without an example, as we discussed above.

Great job @TylerOliver, I have rebased this branch on last commit and it works properly for my project (vite + vue2 + composition api). Would you consider merging this @eirslett ?

I haven't done anything @Vnthf did the ground work here. I ended up getting what I needed in the last Vuetify Alpha release to move forward on an alpha, so I'm doing that. I do think there are a lot of enterprises that would love this though.

The project I belong to also uses vite + vue2 (vite-plugin-vue + @vue/composition-api).
In many cases, companies have been slow to migrate to vue3, and there is a high motivation to maintain the vue2 configuration and leverage the vite ecosystem.

@ushironoko we're not opposed to adding it, but none of the maintainers use vue2, so it's up to someone to submit a PR.  This attempt ran into troubles with the examples within our monorepo, but we've said that we'd be willing to review either this PR or another which adds vue2 without an example.

I've changed my mind a bit on this topic. Take into consideration that this builder is maintained by a few contributors, working as volunteers in their own free time on the project. If none of the maintainers here really use Vue 2, my suggestion is that we don't support Vue 2 at all.
We should try to keep the maintenance burden as low as possible. If we add Vue 2 support, that could break in the future if we make changes to the builder, and without proper testing, it would be hard to detect these bugs.
The best solution, given these human resource constraints, would be that developers with a real need for Vue 2 support take it upon themselves to make their own separate builder, say storybook-builder-vite-vue2, and then maintain it in their own GitHub repository and publish it on npm in their own pipeline.
Users of Vue 2 would basically have 3 choices:

Upgrade their codebase to Vue 3
Use the Webpack builder instead of Vite
Publish their own builder

To me, it looks like the Vue community at large is gradually maturing for Vue 3, with tools like Vuetify and Nuxt 3 soon being stable enough for adoption. This will allow most projects to migrate to Vue 3.
There will be enterprises with Vue 2 codebases that cannot be upgraded for various reasons, but that should be these enterprises' concerns. Enterprises are not resource constrained in the same way that a volunteer project is.
If any volunteers want to maintain a builder for Vue 2 (maybe some of these enterprises?), then by all means go ahead and create a separate builder!

I'm sorry if I've confused you.
I appreciate the high quality work you are doing with limited resources. As you said, companies can just host plugins for Vue2 if they need to.
I "personally" wanted Vue2 support, found this PR by accident, and only saw that it may or may not be merged, and just wanted to tell you that some users simply want the feature. If it is reconsidered based on a rational decision, we will respect that decision.


[Analysis] the PublishOn usage in ParitionPumpManager

The ParitionPumpManager has the following code
https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/eventhubs/azure-messaging-eventhubs/src/main/java/com/azure/messaging/eventhubs/PartitionPumpManager.java#L241-L242
 partitionEventFlux
	 .concatMap(Flux::collectList)
	 .publishOn(scheduler, false, prefetch)

From the usage, it looks like we're requesting prefetch number of "list" from upstream collectList. If so, it could result in the async-chain requesting and buffering more events than we need. (prefetch * batch_size).
Creating this work item to analyze the impact of this reactor chain usage and understand how this gets translated to credit on wire.

Closed in favour of #38368


NTR: protease-activated receptor-1 agonist

CHEBI already has protease-activated receptor-1 antagonist (CHEBI:83313). Please consider adding
CHEBI:NEW protease-activated receptor-1 agonist
"An agonist of protease-activated receptor-1."
Subclass of agonist CHEBI:48705
PMID: 11487506
If useful, my ORCID is https://orcid.org/0000-0002-2825-0621
Thanks,
Paola

An entry has now been created for protease-activated receptor-1 agonist (CHEBI:194153). It should be searchable on the ChEBI website by tomorrow.


Revert "Refine cancel for read thread stream (#8511)"

This reverts commit adf85696270f864c0317526919b37fbdfe5a6417.
What problem does this PR solve?
Issue Number: close https://github.com/pingcap/tiflash/issues/8539
Problem Summary:
See https://github.com/pingcap/tiflash/issues/8539
What is changed and how it works?
#8511 introduced an issue that WorkQueue<Block> in SegmentReadTaskPool may not finish forever. Revert this PR to fix this issue for safety and simplicity.
Check List
Tests

[ ] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

/run-all-tests


Support for password

Need to open encrypted zip. Is it possible?

Original issue reported on code.google.com by<EMAIL_ADDRESS>on 18 Oct 2013 at 11:33

Any progress on this feature?


Add MSVC-specific deducing-this check

This compiler, like clang, doesn't properly advertise deducing this
support.
I really don't know the point of these feature test macros if we have to
work around them not being used for almost every compiler. :(

This compiler, like clang, doesn't properly advertise deducing this support.
I really don't know the point of these feature test macros if we have to work around them not being used for almost every compiler. :(

It's usually about level of support and stability of the feature. Still very frustrating when code works but the compiler says it won't.


Add supabase tables setup in Learn.md

Here is the schema visualizer.

Add steps to create tables along with sql codes.
Provide name of columns and datatype in table form
Specify the ENUMs properly

could you assign this to me @Yeasir0032  ?

Did you setup the supabase database?

@Yeasir0032 I already setup the supabase database.

You have to add the documentation in Learn.md file

OK will do that.

This is a different issue. @ArtiGaund
Try to complete the previous one first

But I am not able to enter, it's still giving 401 authentication error. I have cloned the repository multiple time, updated the credentials multiple times, but it's still giving authentication error.

I can do md files at least it don't need app to up and running for this.

Hi, I want to contribute in this issue, assign me please...also I've experience to work in supa ase

Hello @Yeasir0032 I am looking forward to solve this issue. I have previously worked on supabase can please assign me this issue.

Hello @Deathnote45  Is there any update on this issue?


Add ability to fold diagnostics in the diagnostics panel

This PR adds the ability to fold diagnostics in the diagnostics panel and keep them folded when the panel is updated.

Sorry, things got messed up with the old PR (#462) so I had to create a new one, I made folding optional and disabled by default.

I don't know why Travis CI Build is failing
plugin/core/settings.py:71: error: "Settings" has no attribute "fold_diagnostics"
plugin/core/panels.py:53: error: "Settings" has no attribute "fold_diagnostics"
The command "mypy -p plugin" exited with 1.

why is mypy only complaining about the additions i made ?

It appears your new setting has not been added to plugin/core/types.py - that should be enough to make mypy happy. A setting defaulted to false is great, thanks for adding it!
Did you consider why the folds have to be manually restored for each update?
I wonder if the panel update logic can't be implemented in a way so the regions under each file get replaced, keeping the folds intact.

build is still failing, it doesn't update to e6f346a

@AmjadHD try force pushing without changing anything: git push -f.

it says: "everything up to date"


Rework call list to remove part of last note and include Initial Call Date instead

I rule and have completed some work on Case Manager that's ready for review!
This adds a sortable Initial Call Date column to the call list, and drops last note (which hasn't worked right for awhile; part of our justification for dropping it is that nobody has complained in that time). Last note will still show up on the new call flow.
This pull request makes the following changes:

Add initial call date to call list
Remove last note from call list

It relates to the following issue #s:

Fixes https://github.com/DARIAEngineering/dcaf_case_management/issues/2501

For reviewer:

Adjust the title to explain what it does for the notification email to the listserv.
Tag this PR:

feature if it contains a feature, fix, or similar. This is anything that contains a user-facing fix in some way, such as frontend changes, alterations to backend behavior, or bug fixes.
dependencies if it contains library upgrades or similar. This is anything that upgrades any dependency, such as a Gemfile update or npm package upgrade.

If it contains neither, no need to tag this PR.

I think we didn't test that because (blast from the past) precision clicking was something I wasn't good at in capybara at the time, haha. Live and learn?


Kui should assist with rendering long pipeline command lines

e.g.
cat /usr/share/dict/words | grep publisher | sort | uniq -c

we could render it better? e.g.

We will need to be careful not to introduce actual breaks. I.e. we don't want a browser copy/paste to capture newlines. We want this to be purely cosmetic, if possible.


Bug: Test runner output cluttered

🐛 Bug Report
All of a sudden the jest test runner output is cluttered.
As seen in below photo it logs a test suite several times as running. Here crypto.test.ts. But when I remove the file crypto.test.ts it is another one that is displayed mutliple times.
crypto.test.ts also does not use async or any console.log().

Do you have a reproduction? This report as is isn't actionable

Phew that is hard. I tried a lot to repro it. Are there any related issues cluttering the output?
I guess it could be related to async tests?
I hoped someone else was having this issue?

My guess is that something somewhere does process.stdout.write

@Obiwarn I'm having this issue too. No idea what's causing it...


libc: Fatal signal 11 with android 4.1

Maybe it's an emulator fault, but have you noticed any fatal signal using android 4.1? BottomBar works without issues on other versions.

show the code & xml of what you implemented if you need help still


Erocast

[v ] I'm reporting a new site support request
[v ] I've verified that I'm running youtube-dl version 2021.12.17
[v ] I've checked that all provided URLs are alive and playable in a browser
[v ] I've checked that none of provided URLs violate any copyrights
[v ] I've searched the bugtracker for similar site support requests including closed ones

Example URLs

https://erocast.me/track/4254/intimate-morning-with-your-wife
Description
Popular website for adult voice actors from /r/gonewildaudio

The audio stream and metadata are in JSON assigned to var song_data_{audio_id} (here audo_id == '4254'), like this:

pretty-printed JS from page

var song_data_4254 = {
  'id': 4254,
  'mp3': 0,
  'waveform': 0,
  'preview': 0,
  'wav': 0,
  'flac': 0,
  'hd': 0,
  'hls': 1,
  'explicit': 0,
  'selling': 1,
  'price': '0.00',
  'genre': '10,6',
  'mood': null,
  'title': 'Intimate morning  with your wife',
  'description': null,
  'access': null,
  'duration': 1409,
  'artistIds': null,
  'loves': 0,
  'collectors': 0,
  'plays': 2344,
  'released_at': '08/26/2022',
  'copyright': null,
  'allow_download': 0,
  'download_count': 0,
  'allow_comments': 1,
  'comment_count': 0,
  'visibility': 1,
  'approved': 1,
  'pending': 0,
  'created_at': '2022-08-26T19:20:14.000000Z',
  'updated_at': '2022-08-27T11:49:34.000000Z',
  'vocal': 1,
  'script': null,
  'artwork_url': 'https://erocast.me/common/default/song.png',
  'permalink_url': 'https://erocast.me/track/4254/intimate-morning-with-your-wife',
  'stream_url': 'https://erocast.me/stream/hls/4254',
  'favorite': false,
  'library': false,
  'streamable': true,
  'user': {
    'id': 4198,
    'name': 'ZLOY_ASMR',
    'username': 'ZLOY_ASMR',
    'session_id': null,
    'artist_id': 0,
    'collection_count': 0,
    'following_count': 0,
    'follower_count': 0,
    'last_activity': '2022-08-26 19:41:03',
    'notification': null,
    'bio': null,
    'allow_comments': 1,
    'comment_count': 0,
    'script': null,
    'artwork_url': 'https://erocast.me/common/default/user.png',
    'permalink_url': 'https://erocast.me/zloy-asmr'
  },
  'tags': [
    {
      'id': 48044,
      'song_id': 4254,
      'tag': 'morning',
      'permalink_url': 'https://erocast.me/tracks/tag/morning'
    },
    {
      'id': 48045,
      'song_id': 4254,
      'tag': 'established relationships',
      'permalink_url': 'https://erocast.me/tracks/tag/established-relationships'
    },
    {
      'id': 48046,
      'song_id': 4254,
      'tag': 'wholesome',
      'permalink_url': 'https://erocast.me/tracks/tag/wholesome'
    },
    {
      'id': 48047,
      'song_id': 4254,
      'tag': 'kisses',
      'permalink_url': 'https://erocast.me/tracks/tag/kisses'
    },
    {
      'id': 48048,
      'song_id': 4254,
      'tag': 'wife',
      'permalink_url': 'https://erocast.me/tracks/tag/wife'
    }
  ]
}

Can I take this?

Thanks.

You've pasted the test part but not the _real_extract() method.
Please make a draft Pull Request. You'll need to have forked the repo in GitHub, committed your changes to a new branch, and pushed the branch to your fork.

I have created a draft pull request
https://github.com/ytdl-org/youtube-dl/pull/31261/commits

Looks like I have to update the real extract code, just one question how do I know which attributes to return for _real_extract

Hey I want to work on this project

It looks like @abhishek-1309 has given up, but feel free to take it up either way. The suggestions above apply equally.

Hi, I created an extractor for erocast and a pull request https://github.com/ytdl-org/youtube-dl/pull/31631
Only basic functionality to download a single sound file.
Erocast uses an m3u8 streaming file. The sound data seems to be in mp4 format (audio only)


echart svg extension can not show  tag in xxx.svg

1 my svg file contains a image tag and some polygon tag
2 I load the svg in eChart
3 polygon shows but image not
is eChart not support the image tag in svg?

my situation is that I have a map.jpg ,and i create a map.svg contains a image tag imported the map.jpg.
I draw some polygens on the map.svg.
The i import the svg in eChart
only the polygens shows in eChart but map.jpg is not.

Post your code here.

Not supported yet


Configuration option to disable chat sync

Great tool. Many thanks for your great work.
I am interested in syncing just a folder up to a project. It would be nice to disable the "chat" sync.
I would imagine this as a setting in configuration or at the project level.

Thank you for adding this feature. it works great.

I can't find anything about the config to disable chat sync. The claudesync chat isn't listed in Quick reference, and claudesync config ls has not chat related item.

It isn't obvious, but this worked for me claudesync project sync.


VisualScript: the preload node's resource property opens a huge dropdown

Godot 3.1 beta5
I wanted to preload a resource in VisualScript, so I created a Preload item, which has a resource property. However, clicking it brings a gigantic menu listing every resource type in Godot for creating them. If you want to just load one, you have to scroll down for about 10 seconds with the mouse wheel until you can reach the Load option. This is quite overwhelming, I think it should either open a more workable popup instead, or just not show the New option because that's a Preload item.
Note: I can't find any way to create new resource instances in VisualScript, so maybe that could be another issue. Maybe I'm not doing it the easiest way, I went trying this because I was curious about a Q&A thread so I toyed around with VisualScript and found this.

Want to open another issue for creating new object (of a specific type) instances in VisualScript?

Duplicate of #24319.


any memory leak problem  ?

static dyad_Event createEvent(int type) {
dyad_Event e;
memset(&e, 0, sizeof(e));
e.type = type;
return e;
}
'e' has been freed when this func returned
any memory cordump problem ?

sorry,  no problem.
return e is ok instead of  return &e,


Progressive JPEG if > 10Kb

Could you add option to address this issue https://github.com/imagemin/imagemin/issues/142 ?

Thanks for the idea!
I'll add 2 config options. minFileSize and maxFileSize. Then you can include 2 copies of the plugin into your config, one for files over 10kb, and one for files under 10kb.

I just added this and released version 1.5.1
You can see how to use it here.


Send message without having to click the send button

Hi! is it possible to achieve this?

Not possible as it's within Whatsapp control.


Dont fail changeset status command if there are no changed packages

Fixes #496.
Add a check to the status command, so process.exit(1) is only called if there are no changesets and a package has been changed. This prevents a few false-positives that can hurt DX. See #496 for more details.
@Andarist I wasn't sure if you wanted this to be a major bump or not.. IMO this should be a minor bump, since the new version will produce less errors than before, not more (meaning, no CI checks should fail that were not already failing before). Let me know if you agree or not, and I'll add the changeset accordingly.

Sounds reasonable to me too but I wouldn't mind getting @Noviny's thoughts on it because I've never used changeset status to enforce having changesets.


New releases should notify Discord and Twitter

Currently, users of our plugins don't really have a way to know when new releases are availalbe.
Can we send an automated discord message to our Discord server when we release a new version? This should work just like the one for Backstage.
Can we send a Tweet from the Roadie Twitter account when we release a new version?

https://app.clubhouse.io/larder/story/3458/new-releases-should-notify-discord-and-twitter

https://app.clubhouse.io/larder/story/3458/new-releases-should-notify-discord-and-twitter

[Ch3458]

https://app.clubhouse.io/larder/story/3458


cra, npx, npm versions

📖 Documentation
after banging head against wall as to why npx create-razzle-app myapp was not installing properly and resulting in "module not found" errors, i saw it was necessary for me to update npx and npm and uninstall create-razzle-app from global.
cra has this blurb which is useful

i had to:
npm uninstall -g create-razzle-app
npm cache clean
update npm and npx
may be worth adding this.

Fixed: https://razzlejs.org/getting-started#quick-start


Fixes #1297

This PR currently only fixes the cluster-install manifest - not namespace-install

Closing in favor of #1129


Labels not animated properly after #29

Bug appeared after merging of #29
@luisfernandezbr Have a look at the ItemPicker demo, you'll see that the labels are always floating. This is because getParentVisibility never returns 'VISIBLE'.
Could you have a look at it please?

You can implement your own yourself. https://gist.github.com/tonespy/9e3689449d13549da6ca


Duplicate content

Description
The content selected is duplicated.
(Optional:) Please add any files, screenshots, or other information here.
No response
(Required) What is this issue most closely related to? Select one.
Other
Internal issue ID
34b60928-1f6c-43a3-96a8-ba97e98152bc
Paper URL
https://arxiv.org/html/2312.07769v1
Browser
Chrome/<IP_ADDRESS>
Device Type
Desktop

@cndpzc isn't this also the case in the PDF?
https://arxiv.org/pdf/2312.07769v1
It may be worth informing the authors, who can push a v2 with a correction. I see that the exact code you mention is duplicated in the main.tex source as well.

Please let the authors know, as this appears to be an error with the source document.


Style transfer paraphrasing

Hello,
This paraphraser is an enabler to use GPT-2 paraphrasers, originally trained by Krishna et al. for the paper Reformulating Unsupervised Style Transfer as Paraphrase Generation. Currently, I have integrated 6 different GPT-2 paraphrasers with different styles that I have tested and worked, but I might integrate more by uploading them to Huggingface (WIP).
The currently supported styles are:

Shakespeare
Switchboard (Conversation Speech)
Tweets
Bible
Romantic poetry
Basic

The paraphraser is quite similar to formality_change, but more diverse and general, and works for several different styles. There is a model for "Conversational Speech"-style which is similar to formality, which is the "Switchboard" version.
Model sizes
Each model is about 3.25 GB, so the testing will require a GPU if it has to be quick (as with any large language model).
A comment about the tests
Note that the tests currently only cover the Shakespeare model. I was unsure how to add different tests for different models. Perhaps subclasses for the different models is a better option than specifying the specific style, at least given the testing environment. Can I add instantiation arguments for the different tests somehow?
License
I was unsure how to handle the LICENSE from the original repository. Much of the code is based upon the original code (which I am not an author of) made by @martiansideofthemoon and his co-authors, but has been greatly modified. I therefore included the license (which is MIT), but please correct me if this is not necessary.
No new requirements
No new requirements were needed to be added; the current model and the code I adapted from the original repository was compatible with the requirements already existing in the repository.
(Edit, I accidentally clicked and submitted the PR before finishing what I was writing here).

Hmm, the build is failing on a test-case from SentenceAdjectivesAntonymsSwitch, not from anything in my PR.
E              Predicted Output: Amanda's mother was very beautiful.
E           assert "Amanda's mot...ry beautiful." == "Amanda's mot...as very ugly."
E             - Amanda's mother was very ugly.
E             ?                           ^ -
E             + Amanda's mother was very beautiful.
E             ?                          +++ ^^^^

test/test_main.py:34: AssertionError
=============================== warnings summary ===============================

Ah, it seems that my branch is out of sync with the tests due to merging of other branches during the time I was developing my feature. In other words, it does not have it. Should I sync it with the main branch to make sure it passes all the tests? Let me know in that case.

There, now I fetched upstream/main and included the ones missing. Now it should pass the tests.

@kaustubhdhole Can you answer the Test question?

@sebastianGehrmann I figured it out thanks :) I will fix more tests after the weekend, displaying examples for some of the other models!

@sebastianGehrmann that is a good point; however, I found the original modules to be extended to a lot of experimentation, with a lot of redundant arguments and parameters to the functions. I therefore refactored it for this specific purpose to make it simpler and more maintainable :)

@sebastianGehrmann I have fixed the changes you request :) There should be some other reviewer; not sure who that is though.

Thank you @juand-r for your kind words! I have added the change you requested. The evaluation could be interesting to experiment with more. However, I am not sure whether I will have access to a GPU-server in the coming days; if I get it, I will try it on other tasks too.

Hi @Filco306,
I was assigned to review your transformation. Thank you for the contribution. I would brief my findings
Correctness: No checks performed (1 workflow awaiting approval)
Interface: I think correct.
Applicable Tasks & Keywords: Relevant
Specificity: Has some diversity on the type of paraphraser which I think is  good
Novelty: new
Adding New Libraries: No
Description: The README is clear and explains what the transformation is aiming to do.
Data and code source: Data and code well documented
Test Cases: 8 have been added with 1 long sentence (I think its good)
Evaluating Robustness: Performance is very Poor on imdb roberta
Languages other than English: No


Separate oidc check auth into a seperate endpoint

Resolves having to login twice to get into the UI by adding a CheckAuth endpoint to be used by react-admin checkauth instead of /web/login/end which was creating a race condition since AuthProvider RA calls checkauth multiple times during a login along with a long running timer which was triggering login/end after login as well.
As a side benefit this resolves another issue where a user is kicked out of the web ui after a few minutes and forced to login again.
Additional client side web console logging added as well.
Closes #1402

Logout is still not honoring what should be 30 minutes according to the idle timer in KC "ssoSessionIdleTimeout": 1800,. Will figure it out on another PR since logout needs some attention as well.


Support alternative ways of choosing normal approximations

Given an optimization trace, Pathfinder proposes the multivariate normal approximation constructed from the trace that maximizes the ELBO. It does this by approximating the ELBO at each point.
The discussion notes that instead of exhaustively approximating the ELBO at each point, Bayesian optimization could be used to optimize over (or even between) the points. More generally, we could allow alternative objective functions than ELBO and allow any discrete optimizer to be provided. While between points, we could interpolate means, we'd need to think a bit about how to interpolate covariances between points.

Would this also cover say diagonal approximations to the covariance?

In principle, if one could specify a different way of choosing the best distribution, then yes, once could maximize ELBO (or some other objective) over some transformation of that distribution instead.
It might be cleaner though to allow the user to provide such a transformation, which would be applied to all constructed distributions before computing the objective. This would allow the user to control the distributions used for the components of the mixture model returned by multipathfinder.


mutagen: 0.16.0 -> 0.16.4

Description of changes
The primary motivation for this change can be found in this discussion. In short, the underlying mutagen project was not handling symlinks of binaries in a way that was suitable for how much nix relies on symlinks. In particular, the nix store libexec path was being appended to the directory mutagen was found in instead of being treated as an absolute path.
Example:
Extracting agent...
Error: unable to connect to beta: unable to connect to endpoint: unable to dial agent endpoint: unable to install agent: unable to get agent for platform: unable to locate agent bundle (search paths: [/Users/beausimensen/.nix-profile/bin /Users/beausimensen/.nix-profile/bin/nix/store/kir3243y2wqsxz762pmj0kvd5b7hk2c7-mutagen-0.16.0/libexec])

More details from that discussion.
beausimensen@Beaus-MacBook-Pro whrc-portal % ls -l /Users/beausimensen/.nix-profile/bin/mutagen
lrwxr-xr-x 1 root wheel 70 Dec 31  1969 /Users/beausimensen/.nix-profile/bin/mutagen -> /nix/store/kir3243y2wqsxz762pmj0kvd5b7hk2c7-mutagen-0.16.0/bin/mutagen
beausimensen@Beaus-MacBook-Pro whrc-portal % ls -l /Users/beausimensen/.nix-profile/bin/nix/store/kir3243y2wqsxz762pmj0kvd5b7hk2c7-mutagen-0.16.0/libexec
ls: cannot access '/Users/beausimensen/.nix-profile/bin/nix/store/kir3243y2wqsxz762pmj0kvd5b7hk2c7-mutagen-0.16.0/libexec': No such file or directory
beausimensen@Beaus-MacBook-Pro whrc-portal % ls -l /nix/store/kir3243y2wqsxz762pmj0kvd5b7hk2c7-mutagen-0.16.0/libexec
total 0
lrwxr-xr-x 1 root wheel 87 Dec 31  1969 mutagen-agents.tar.gz -> /nix/store/nvyj8id029ighslr27jwb3plrrsm94gk-mutagen-agents-0.16.0/mutagen-agents.tar.gz
beausimensen@Beaus-MacBook-Pro whrc-portal % ls -l /nix/store/nvyj8id029ighslr27jwb3plrrsm94gk-mutagen-agents-0.16.0/mutagen-agents.tar.gz
-r--r--r-- 1 root nixbld 77M Dec 31  1969 /nix/store/nvyj8id029ighslr27jwb3plrrsm94gk-mutagen-agents-0.16.0/mutagen-agents.tar.gz

For the full list of changes between 0.16.0 and 0.16.4, you can refer to this link on GitHub.
You can find a more friendly changelog by looking at this link on GitHub.

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[x] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)

I have sandbox = false.

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

This is my first contribution to anything related to nix and I'm not sure if I set up everything correctly. I'm happy to jump through more hoops to get it right.
TLDR
This PR solves the original problem by upgrading to a version of mutagen that can correctly locate the agents in libexec. However, it does not appear to work for docker containers without manual intervention, so I think I need to send another PR just to fix that.
More details about the Docker issue follows below.

@xenoscopic I've been able to build and use this locally. It seems to work now, which is great, with one exception.
When started from launchctl, mutagen daemon run cannot find docker. I believe this is because it runs as root in that context, and thus doesn't know where docker was installed as my user under nix.
The only way I can successfully get mutagen started and also connect to my docker containers, is by starting it like this:
MUTAGEN_DOCKER_PATH=/run/current-system/sw/bin mutagen daemon run

I'm not sure if this is mutagen related or more about how nix works, and maybe even specific to nix-darwin.
To be clear, I'm trying to connect to a beta via docker:
mutagen sync create \
    --name acme-portal \
    --default-owner-beta="id:1000" \
    $PWD \
    docker://acme-portal_mutagen/volumes/acme-portal_mutagen

If I don't start the daemon automatically with MUTAGEN_DOCKER_PATH specified, I get the following output:
Started Mutagen daemon in background (terminate with "mutagen daemon stop")
Connecting to agent (POSIX)...
Error: unable to connect to beta: unable to connect to endpoint: unable to dial agent endpoint: unable to create agent command: unable to probe container: unable to set up Docker invocation: unable to identify 'docker' command: unable to locate command

It is possible I can set MUTAGEN_DOCKER_PATH globally somehow so that mutagen can run correctly from launchcontrol or daemon run without manually specifying where docker is installed, but I think it would be less hacky and better if this didn't require extra configuration outside nix in order to get it working.

Hey @simensen, if you're talking about launchd operation via the mutagen daemon register command, then that Mutagen daemon should be running as your login user (not root), but it won't inherit any of the PATH manipulation that you might do in your shell initialization scripts.
There was a similar issue with the docker executable installed by Docker Desktop (see mutagen-io/mutagen#67).  I patched this by adding a set of additional search paths on macOS.
A similar approach would likely work for NixOS.  I'm not super familiar with NixOS and its packaging structure, so I don't know what the best path to include might be in that case.  Can you give me the 5 second summary of how the packages (as installed) might be stored on the filesystem?  I'm thinking it might also make sense to only include the NixOS docker path in the search criteria if the Mutagen daemon being run is also installed via the NixOS package manager.

I want to make sure this discussion regarding launchd doesn't hinder the approval of this PR. :) If it would be better for me to start another discussion somewhere else regarding the daemon's inability to locate the docker command, I'm happy to do so.

That said, what I notice about the mutagen.nix is that it doesn't do anything at all with launchd registration on its own. It occurs to me that this probably means we'd either need to have mutagen's nix configuration (optionally|always) configure launchd or ignore it entirely. This seems like it would be best to maybe continue this conversation in a new discussion or issue on Mutagen's repo and/or in slack. I'm "@Beau Simensen" in Mutagen slack if you would like to reach out to me there. :)

Fair enough, I don't think many people actually use the launchd functionality anyway, so I would probably leave it off by default.  I'll ping you on Slack about it, but otherwise I think this PR looks correct.


Remove MSDN zip xref config from existing .NET repos

Remove MSDN zip xref config from existing .NET repos

Docs Build status updates of commit 11a702a:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

Line 136: [Error] Restore nuget package W:\dovs-s\.optemp\dependentPackages\Microsoft.OpenPublishing.CommonPlugins\packages.config in folder:W:\dovs-s\.optemp\packages failed, possibly due to transient errors from nuget servers. Please retry building your content. If the issue still happens, open a ticket in https://SiteHelp and include the build report and the following error message for our team to troubleshoot: Errors in packages.config projects     Unable to find version '1.0.222' of package 'Microsoft.OpenPublishing.CommonPlugins'.       C:\Users\ContainerAdministrator\.nuget\packages\: Package 'Microsoft.OpenPublishing.CommonPlugins.1.0.222' is not found on source 'C:\Users\ContainerAdministrator\.nuget\packages\'.       https://docfx.pkgs.visualstudio.com/docfx/_packaging/docs-build-v2-prod/nuget/v2: Package 'Microsoft.OpenPublishing.CommonPlugins.1.0.222' is not found on source 'https://docfx.pkgs.visualstudio.com/docfx/_packaging/docs-build-v2-prod/nuget/v2'.
Line 136: [Error] Restore nuget package W:\dovs-s\.optemp\dependentPackages\Microsoft.DocAsCode.ECMA2Yaml\packages.config in folder:W:\dovs-s\.optemp\packages failed, possibly due to transient errors from nuget servers. Please retry building your content. If the issue still happens, open a ticket in https://SiteHelp and include the build report and the following error message for our team to troubleshoot: Errors in packages.config projects     Unable to find version '1.0.669' of package 'Microsoft.DocAsCode.ECMA2Yaml'.       C:\Users\ContainerAdministrator\.nuget\packages\: Package 'Microsoft.DocAsCode.ECMA2Yaml.1.0.669' is not found on source 'C:\Users\ContainerAdministrator\.nuget\packages\'.       https://docfx.pkgs.visualstudio.com/docfx/_packaging/docs-build-v2-prod/nuget/v2: Package 'Microsoft.DocAsCode.ECMA2Yaml.1.0.669' is not found on source 'https://docfx.pkgs.visualstudio.com/docfx/_packaging/docs-build-v2-prod/nuget/v2'.

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 11a702a:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

officedocs-dev-ucma-api/_zip/msdn.4.5.2.zip
:white_check_mark:Succeeded

officedocs-dev-ucma-api/docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Mockup some consistent error and response UI

Such as a bar across the top or a modal.

Two ideas. I really like where the second one is going.


build: update dependencies and peer dependencies

Codecov Report

Merging #12 (d37978b) into main (cfe9593) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #12   +/-   ##
=======================================
  Coverage   90.44%   90.44%
=======================================
  Files           5        5
  Lines         429      429
  Branches      152      152
=======================================
  Hits          388      388
  Misses         41       41

Continue to review full report at Codecov.

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


GDB: Error when right clicking a debugger target; component must be showing on the screen to determine its location

Describe the bug
An error occur when I initialism a GNU GDB local debugger session, then go to the debugger targets window and right click on the one target I currently have open.
To Reproduce
Steps to reproduce the behavior:

Launch Ghidra and open the debugger tool.
Click the create connection button on the debugger targets window.
Select GDB local debugger (I happened to have used gdb-multiarch here) and click Connect.
You will be in the interpreter window, go back to the Debugger Targets window.
You should see one target in the list, right click on it.
Observe the error message.

Expected behavior
To not have an error message appear and see the right click menu appear such as the option to disconnect.
Screenshots
Here is how my Ghidra layout is configured right after step 1 above is done on my end, just in case the layout matters:

The interpreter window appears alongside the Objects window and the Debugger Target window in the same bottom right section of the screenshot.
Environment (please complete the following information):

OS: Arch Linux kernel 5.16.15-arch1-1
Java Version: openjdk 11.0.15 2022-04-19
Ghidra Version: 10.1.1
Ghidra Origin: official ghidra-sre.org distro

Additional context
Here is the full error message:
component must be showing on the screen to determine its location
java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
	at java.desktop/java.awt.Component.getLocationOnScreen_NoTreeLock(Component.java:2101)
	at java.desktop/java.awt.Component.getLocationOnScreen(Component.java:2075)
	at java.desktop/javax.swing.JPopupMenu.show(JPopupMenu.java:940)
	at docking.PopupActionManager.popupMenu(PopupActionManager.java:91)
	at docking.ActionToGuiMapper.showPopupMenu(ActionToGuiMapper.java:133)
	at docking.DockableComponent.showContextMenu(DockableComponent.java:173)
	at docking.DockableComponent$1.mousePressed(DockableComponent.java:70)
	at docking.widgets.JTreeMouseListenerDelegate.fireMousePressed(JTreeMouseListenerDelegate.java:125)
	at docking.widgets.JTreeMouseListenerDelegate.mousePressed(JTreeMouseListenerDelegate.java:97)
	at java.desktop/java.awt.Component.processMouseEvent(Component.java:6632)
	at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342)
	at java.desktop/java.awt.Component.processEvent(Component.java:6400)
	at java.desktop/java.awt.Container.processEvent(Container.java:2263)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5011)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4544)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

---------------------------------------------------
Build Date: 2021-Dec-21 1319 EST
Ghidra Version: 10.1.1
Java Home: /usr/lib/jvm/java-11-openjdk
JVM Version: Oracle Corporation 11.0.15
OS: Linux 5.16.15-arch1-1 amd64
Workstation: aldelaro5-PC.localdomain

@aldelaro5 Hey, am having a hard time recreating your error....  Am testing with Ghidra 10.1.1, JVM 11.0.14, Linux 5.13.0 - not exactly the same, but I would have thought close enough.  Am assuming the screen capture you sent is NOT after you hit connect, correct?   After connecting, would assume you have something in both the Target and Objects trees.  Can you try running with support/ghidraDebug and seeing if there are additional messages in the console?

@aldelaro5 Hey, am having a hard time recreating your error.... Am testing with Ghidra 10.1.1, JVM 11.0.14, Linux 5.13.0 - not exactly the same, but I would have thought close enough. Am assuming the screen capture you sent is NOT after you hit connect, correct? After connecting, would assume you have something in both the Target and Objects trees. Can you try running with support/ghidraDebug and seeing if there are additional messages in the console?

doesn't seem like it, here's the full output up to me getting the error:
openjdk version "11.0.15" 2022-04-19
OpenJDK Runtime Environment (build 11.0.15+3)
OpenJDK 64-Bit Server VM (build 11.0.15+3, mixed mode)
INFO  Using log config file: file:/home/aldelaro5/Documents/ghidra_10.1.1_PUBLIC/support/debug.log4j.xml  (LoggingInitialization.java:51)
INFO  Using log file: /home/aldelaro5/.ghidra/.ghidra_10.1.1_PUBLIC/application.log  (LoggingInitialization.java:52)
INFO  Loading user preferences: /home/aldelaro5/.ghidra/.ghidra_10.1.1_PUBLIC/preferences  (Preferences.java:117)
INFO  Loading previous preferences: /home/aldelaro5/.ghidra/.ghidra_10.1_PUBLIC/preferences  (Preferences.java:170)
INFO  Class search complete (944 ms)  (ClassSearcher.java:276)
INFO  Initializing SSL Context  (SSLContextInitializer.java:76)
INFO  Initializing Random Number Generator...  (SecureRandomFactory.java:37)
INFO  Random Number Generator initialization complete: NativePRNGNonBlocking  (SecureRandomFactory.java:41)
INFO  Trust manager disabled, cacerts have not been set  (ApplicationTrustManagerFactory.java:95)
INFO  User aldelaro5 started Ghidra.  (GhidraRun.java:80)
DEBUG Recovery snapshot timer set to 5 minute(s)  (RecoverySnapshotMgrPlugin.java:170)
INFO  Opening project: /home/aldelaro5/Documents/Ghidra projects/dvd-gba/gba-dvd  (DefaultProject.java:134)
INFO  Packed database cache: /tmp/aldelaro5-Ghidra/packed-db-cache  (PackedDatabaseCache.java:64)
DEBUG Using cached packed database: /home/aldelaro5/Documents/ghidra_10.1.1_PUBLIC/Ghidra/Features/Base/data/typeinfo/generic/generic_clib.gdt  (PackedDatabaseCache.java:364)
DEBUG Using cached packed database: /home/aldelaro5/Documents/Ghidra projects/colo/REL.gdt  (PackedDatabaseCache.java:364)
DEBUG New Pty: /dev/pts/1 at (154,167)  (LinuxPty.java:52)
INFO  local Pty session. PID = 144390  (LocalProcessPtySession.java:29)
DEBUG New Pty: /dev/pts/2 at (168,169)  (LinuxPty.java:52)
ERROR Error: Uncaught Exception!
IllegalComponentStateException - component must be showing on the screen to determine its location  (SwingExceptionHandler.java:80)
java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
	at java.awt.Component.getLocationOnScreen_NoTreeLock(Component.java:2101) ~[?:?]
	at java.awt.Component.getLocationOnScreen(Component.java:2075) ~[?:?]
	at javax.swing.JPopupMenu.show(JPopupMenu.java:940) ~[?:?]
	at docking.PopupActionManager.popupMenu(PopupActionManager.java:91) ~[Docking.jar:?]
	at docking.ActionToGuiMapper.showPopupMenu(ActionToGuiMapper.java:133) ~[Docking.jar:?]
	at docking.DockableComponent.showContextMenu(DockableComponent.java:173) ~[Docking.jar:?]
	at docking.DockableComponent$1.mousePressed(DockableComponent.java:70) ~[Docking.jar:?]
	at docking.widgets.JTreeMouseListenerDelegate.fireMousePressed(JTreeMouseListenerDelegate.java:125) ~[Docking.jar:?]
	at docking.widgets.JTreeMouseListenerDelegate.mousePressed(JTreeMouseListenerDelegate.java:97) ~[Docking.jar:?]
	at java.awt.Component.processMouseEvent(Component.java:6632) ~[?:?]
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3342) ~[?:?]
	at java.awt.Component.processEvent(Component.java:6400) ~[?:?]
	at java.awt.Container.processEvent(Container.java:2263) ~[?:?]
	at java.awt.Component.dispatchEventImpl(Component.java:5011) ~[?:?]
	at java.awt.Container.dispatchEventImpl(Container.java:2321) ~[?:?]
	at java.awt.Component.dispatchEvent(Component.java:4843) ~[?:?]
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918) ~[?:?]
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4544) ~[?:?]
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488) ~[?:?]
	at java.awt.Container.dispatchEventImpl(Container.java:2307) ~[?:?]
	at java.awt.Window.dispatchEventImpl(Window.java:2772) ~[?:?]
	at java.awt.Component.dispatchEvent(Component.java:4843) ~[?:?]
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) ~[?:?]
	at java.awt.EventQueue$4.run(EventQueue.java:721) ~[?:?]
	at java.awt.EventQueue$4.run(EventQueue.java:715) ~[?:?]
	at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) ~[?:?]
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) ~[?:?]
	at java.awt.EventQueue$5.run(EventQueue.java:745) ~[?:?]
	at java.awt.EventQueue$5.run(EventQueue.java:743) ~[?:?]
	at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) ~[?:?]
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:742) ~[?:?]
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) [?:?]
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) [?:?]
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) [?:?]
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) [?:?]
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) [?:?]
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:90) [?:?]

And yes this screenshot is as I open the debugger tool in the project. After I connect I both see stuff in the objects window and the targets window. This issue is extremely consistent on my end, I can easily reproduce it.
If it helps, my DE is cinnamon 5.2.7.

Might have figured this out, but you might be able to help me confirm - if you drag the Targets view somewhere else so that it’s not layered over the Objects view, do you still get the error?

@d-millar I no longer get the error yeah. I retry placing it where it was before and I get the error back so it definitely has to do with my layouts. Good thing I put the screenshot because I kinda thought it could have been layout related, but this seems to confirm it.

OK, fix should be in the next release (fingers crossed).  It appears the issue was actually more directly related to the fact that the node in the tree ends up unselected as a side effect of the layout.  When you right-clicked, there was a race condition between the selection task and the right-click action.  If the selection wins, everyone is happy;  if not, boom - error.  Thanks for helping pin this down!


Add progress observable

Have managed a Proof of Concept to make a progress observable to address #7. It's not quite ready, but I think I'll move the conversation to here instead on the issue.
I've just remembered I was supposed to make a DownloadProgressState object instead of a Pair, so will change that.
Another thing I mentioned on the issue was what to do with the sample. I could partition the screen in to two to show example of both image download with no progress and a large download with progress. At the moment, I've replaced the image download with the progress download.
Also, I don't expect this to be pulled in as is, because it is messy so will squish together or do what you'd like. It also contains changes to work with Android Studio 3.1 Beta 3. Would you rather I split up this pull request as a series of them or are you happy with it as it is?
Can you take a look, @esafirm?

Another thing I've noticed is that the README will need updating to reflect changes.

TODO

[X] Add progress state object
[ ] Update Readme
[ ] Update sample to demo both image download and progress

@Kisty i think instead of just have one stream that rely on the timer tick, we should have other stream that listen to complete event so that once the download complete, we don't have to wait until the next tick
Anyway, i think we should have a separate branch for this and maybe i should add you as a contributor so we can have a flexibility to code together? WDY?

@Kisty changed the base branch. Sorry it took me so long to actually can take a look at this 🙏

@esafirm OK, just got to update the README, and then I think this will be good to go.
When I looked at combining the completed tick with the timer tick, I didn't need to do an explicit mergeWith() call. Since the receiver was pushing a result to the download Map of PublishSubjects, it was getting the completed callback, it got to the result quicker than the ticker thread, as you said!
As for adding a development branch to this repository, I'm not sure if we can tell GitHub to track another branch, though I might be wrong. What would you rather? As it stands, am happy just doing it on the fork repository and then we can merge it in once you're happy