Update NOTES.ANDROID for newer NDK versions + small fixes.

Fixes #8941
This has only been tested by myself - it would be good if someone can check the accuracy of new information/instructions before merging.
The newer NDK's don't include GCC and have different structures and paths, especially if you are using the new side-by-side NDK. I've retained the information for older NDK's as it's still relevant for people who are not updating their toolchains (EG maintaining somewhat legacy apps).
Checklist

[x] documentation is added or updated

Isn't this update supposed to include information for NDK 20+? It seems to be missing...

Isn't this update supposed to include information for NDK 20+? It seems to be missing...

There are several references, but you made me realize I forgot to include part of the path needed for the clang toolchain. I've updated the document.

Cool. Do you need to say anything special to get clang? I usually have to say CC=clang on my linux builds...

Cool. Do you need to say anything special to get clang? I usually have to say CC=clang on my linux builds...

No extra tags needed! clang detection was added as a fallback for when GCC is not found at some point. The part of the path that I had forgotten to add that your comment reminded me of was actually the path to the Android NDK llvm/clang tools, which for some reason are in a different path than all the other tools... Otherwise there really wasn't much of a big change for r20+ other than a few caveats (like paths being slightly different for side-by-side NDK, which is now the "recommended" way to obtain it).
I'm currently trying to get Gradle to build out all platforms through the side-by-side NDK and their new external build tools. I suppose if I get that working I should add that to the document as well and put up another PR - but it's not exactly vital information just "convenient" to some.

Thanks for the explanation

Travis failure is not relevant to this change but is interesting (@paulidale):
    # ERROR: (int) 'errors < max - tail' failed @ test/property_test.c:379
    # [9990] compared to [9990]
    not ok 8 - test_query_cache_stochastic

Another that dropped off the radar.  Merged to master and 1.1.1.
Travis failure is not related.

mattcaswell wrote:

mattcaswell approved this pull request.
I wonder how you check that documentation is correct?

We can't always double check things ourselves, so we have to trust our community.
If you find an error, feel free to submit a correcting PR

We can't always double check things ourselves, so we have to trust our community.
If you find an error, feel free to submit a correcting PR

Vote of openssl team member is important. Vote of other does not make sense if I remember rules.
As result (even for changes from team members) team member must be more precise - double check is required in all cases.
I don't have enough spare time to propose changes.
In addition I have enough experience to use work-around broken build system. But in this case build system is fine and so not precise documentation is out of my scope.


I want to be a translator

Hi i would like to help translating the plugin into
Serbian, Croatian, Bosnian, and Montenegrian,
I'm Native in these languages,
do i just need to just submit the messages_rs.yml file?

Hi @KamenkoTV!
Thank you for your interest in contributing to OpeNLogin! ;)

To submit the translated file, go to https://github.com/nickuc/OpeNLogin/tree/master/openlogin-common/src/main/resources/com/nickuc/openlogin/config/lang
After that, click the 'Add file'->'Create new file' button (https://i.imgur.com/qcjn400.png)
Choose a name for the file, paste the content of the translation and click on 'Propose changes' (https://i.imgur.com/YfitJEv.png)
Click the 'Create pull request' button

Thanks for the quick reply!
I have successfully contributed.


The Showcase application hangs on Session Stop and when the application stops

Following the steps listed to run the Showcase application (1.05), using Unity 2019.4.23, after having run the application and connected to a session, clicking on the Stop Session button or ending the application using the Unity Play toggle button causes the application to hang (task manager shows that one of the Unity tasks is not responding).
Note that previous versions work without any issues (0.1.69 and 0.1.74).
I have tried removing the library folder and reopening the project but this does not fix the issue.

Hello @User-01A and thank you very much for your bug report! Chances are these could be two different issues. Are you seeing hangs as well if you just start and stop the application, without being connected to a session?
I tried reproducing the issue locally with 1.0.5 but without success. I'll check internally how we might be able to debug this appropriately and update you accordingly.
In relation, there is at least one known bug in Unity's mono runtime causing such hangs on application exit, which we are currently trying to work around.

Thank you for looking into this.
If I run the app (from within the Unity editor) and stop it via the Play toggle it is fine.  The issue only appears once a session has been connected to.
As it works for you, perhaps there is some environmental issue. I am using Unity 2019.4.23f1 with the two required modules: Universal Windows Platform Build Support and Windows Build Support (IL2CPP). This is running on Windows 10 Pro (20H2, 19042.746).
Please let me know if you require any further information.

I retried with Unity 2019.4.23f1, also using Windows 10 Pro 20H2, albeit on 19042.867. The problem still did not reproduce unfortunately. You could try updating your Windows but I suspect this won't solve the issue.
The Unity Editor saves its log to the following location on Windows: %LOCALAPPDATA%\Unity\Editor\Editor.log. Can you spot anything suspicious in there, like reported errors? Also, if you are comfortable with it, you can run a WPR trace using our tracing profile in the repository, under Tools/ETLProfiles/ArrInternal.wprp, and provide us with the resulting tracing file. See here for an explanation on how to run those traces: https://docs.microsoft.com/en-us/azure/remote-rendering/how-tos/performance-tracing. It would be best to start the trace before you start the application in Unity, and end it after you encounter the problem.

Hello @jumeder this is a follow up to your previous comment.
I upgraded the version of Windows to match the one you used but this made no difference, as you suspected.
The Unity log file shows no errors but does show many Mixed Reality Toolkit warnings (Windows Mixed Reality specific camera code has been moved into Windows Mixed Reality Camera Settings.) I debugged the issue and tracked down the area of the hang to the Disconnect method in the RemoteRenderingConnection class inside RemoteRenderingService.cs. There is a while loop (line 1849) that is getting stuck. Note that the request to Disconnect (line 1838) is returning success in its Result. For whatever reason, it appears that _arrSession.IsConnected is always true. As a workaround, I tried changing the while to an if, however, it then gets stuck on line 1857.
I ran the trace as requested – output attached.
WPR.zip

Hi @User-01A, that is very helpful indeed, thank you. Good to know where it is actually stuck. Looking at the trace pretty much confirms your observation: For some reason, the API does not disconnect and thus the connection state does not change.
This is odd in so far as that the task which does the waiting in line 1849 also requests the disconnection in line 1838. There are also a bunch of other events missing from the trace I'd expect, so just to confirm the timeline of the trace you took:

You started the trace
Started the App in Unity
Let the App connect to the session
Stopped the session/Stopped the App in Unity
Stopped the trace

Is this correct?

Hello @jumeder yes this is correct - I loaded the app into Unity, started the trace, then started the app, then connected, waited for the connection to be made, then stopped the session a few seconds later, then waited a further 10-20 seconds before stopping the trace (it ran for a total of about 4 minutes).
It appears to me that there is some resource locking that is never released in the newer versions that wasn’t there in the previous (working) versions – but as I don’t have access to the package source I’m only guessing. If I modify the code to ignore the lines that are causing hangs, it will hang anyway when Unity unloads the app.

Alright, thanks for confirming. Full disclosure, the trace seems to be missing a lot of events I'd expect from the timeline you describe, potentially because they were dropped due to system cpu/ram load. If you're up for it you can try taking another trace and watching out for the 'Events dropped:' field on the right hand side of WPR, but I don't want to waste your time.
What I can see from the traces is that your streaming connection to the service might not be that great. Is the App generally working for you, i.e. you can connect, load a model, see the remote rendering and interact with it in-app without trouble?
We'll investigate why the disconnection doesn't properly take place. I'll also try to find a workaround for you in the meantime.

Hello @jumeder, I didn’t notice any event drops. Note that the only profile enabled for recording was ArrInternal. All other settings were at their defaults (General/Verbose/Memory). Using the Showcase application, I don’t have any external models to load, however, almost identical code is used by our own application (with the same hanging issue when updated to V1.0.5 of the ARR package) and that can load and interact with remote models. Due to other commitments I can’t run another trace at the moment but will hopefully be able to do this later today. I appreciate that this isn’t going to be easy to fix since you are unable to replicate the issue – I am happy to test any solutions that you may have or to assist further in gathering more debug information.

Thanks so much for your understanding and cooperation! I'm using the same tracing settings as you describe, so these look fine to me. I recommend unchecking everything else in the profile list but the ARRInternal profile.

I have rerun the trace - file attached. Please let me know if you want me to try anything else.
WPR_2.zip

Thx for taking the time! Unfortunately it looks like there's a bunch of events missing yet again, different ones this time, but still too much to get a clear picture of the timeline. Could you try one more thing, and then we'll leave the traces be: Switch the 'Logging mode' in WPR to 'File' instead and rerun the trace.

OK - I changed logging to File and got a much bigger trace file - see attached.
WPR_File.zip

That did the trick, the trace looks complete now! I'll check back with you once we analyzed it.

Hi @User-01A, we determined the possible reason for this hang. There is a workaround you should be able to use, which is curious, because its exactly what you have tried previously (Changing the while to an if at RemoteRenderingService.cs:1849). You said it then hangs on line 1857. Can you verify if the hang is indefinite? From what I am seeing here, it should continue after ~2 seconds.

OK – I made the change, connected then stopped the session – it’s still hanging (task manager shows not responding). After waiting a while it’s still not responding. The only difference is that it is no longer using up a CPU core in the tight while loop. This is consistent with my previous investigations.

Thx for verifying, that's too bad. I'll get back to you once we know more.

Hi @User-01A, just to keep you updated: We are still investigating the issue and a possible fix. On the bright side we managed to understand and reproduce the issue and will have a fix for it in a couple of days.

Hi @User-01A, we have a fix for your issue which will be in the next sdk release. As for a workaround in the meantime, it looks like the issue is related to using Wifi as your local network connection. If you happen to use wifi, consider switching to hard-wired LAN if possible.

Hello @jumeder, many thanks for looking into this. We do indeed use Wi-Fi, but ethernet is not an option for normal use, however, I have just tested this using a temporary ethernet connection and can confirm that the hang no longer occurs. Do you know when the fix will be available?

I can't make any promises but in all estimation we'll do an sdk release this week.

SDK 1.0.6 (with the fix) has been released on github. Please re-open when the problem persists.


Error loading http://localhost:3000/@qontu/ngx-inline-editor

Trying to get ngx-inline-editor to work and I'm getting the error message above in the F12 screen.
My import in app.module looks like
import {InlineEditorModule} from '@qontu/ngx-inline-editor';
and
@NgModule({
imports: [
InlineEditorModule,
running npm version 5.0.3 and nodejs version v8.1.4
@qontu/ngx-inline-editor exists in node-modules.
Any help would be appreciated.    Thanks.

Hi @jritchhart, what inline-editor version are you using? And can you provide us a demo?


Fixed issue 375. Code was already working, just needed some bug fixes…

Fixes #375
This looks like its already working correctly. I had to remove the entitySpecific check and also fix an issue with FilterOutException (which must have happened when the code was changed to be async). After that it works! The only thing is that it spits out an ugly error as it spits out the whole stack (not just the message). Thought of changing that, but the entire stack can be nice!
Tested both topic and queue based connection strings
Endpoint=sb://xxxx.servicebus.windows.net/;SharedAccessKeyName=test;SharedAccessKey=abcd;EntityPath=topicPath

:white_check_mark: Build ServiceBusExplorer 4.2.0-Issue375-EnableSupportSingleEntityConnStr.54.build.638 completed (commit https://github.com/paolosalvatori/ServiceBusExplorer/commit/8eff24e4e1 by @rajrao)

:white_check_mark: Build ServiceBusExplorer 4.2.0-Issue375-EnableSupportSingleEntityConnStr.55.build.639 completed (commit https://github.com/paolosalvatori/ServiceBusExplorer/commit/e8b6960551 by @rajrao)


Microdata: Faithfulness

Implementing #1790.
Few open questions:

How to enforce public knowledge of a LazyDataframe? Perhaps adding SizedLazyFrame? For example,

def sized_lazyframe_domain(lf_domain, size):
    return user_domain(
        f"Sized{lf_domain}",
        member=lambda x: lf_domain.member(x) and len(x.collect()) == size,
        descriptor={"domain": lf_domain, "size": size})

How to include igraph as optional dependency?

For reference, I promised Shlomi I would add some FFI helpers to retrieve descriptors from the domain. It would help us avoid wrapping the domain in an user domain.

How to include igraph as optional dependency?

This would be something like how numpy or sklearn are now? You could add it in setup.cfg under [options.extras_require]... although this could support a DAG of optional dependencies, we're tried to keep it as a chain, so our test matrix in smoke-test.yml only needs to check n options, instead of 2^n.
Is there a natural place that igraph would fit? The downsides of requiring it at a lower level are the potential for dependency version range conflicts, and just the install time... so if it doesn't have many strict transitive dependencies, and it's not huge, adding it to the [numpy] extra wouldn't be unreasonable.


please tell me where to find real ipa of COF3 jailbreak and from where can i download it

check my repos


[hot fix]fix typo in the java doc

What is the purpose of the change
fix typo in the java doc
Brief change log
fix typo in the java doc
Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (no)

@libenchao @wuchong


Package request for mermaid-filter

Project description
a pandoc filter that adds support for mermaid syntax diagrams in markdown
Metadata

homepage URL: https://github.com/raghur/mermaid-filter
source URL:https://github.com/raghur/mermaid-filter
license: ? unspecified
platforms: node

Seems like the license is BSD 2-clause
https://github.com/raghur/mermaid-filter/blob/97f0bfb2498b70377365fcfd1a376baa2e1fe140/package.json#L16

It has been added on june, it's available on NixOS 23.11!
https://github.com/NixOS/nixpkgs/pull/236667


Does it make sense to spawn > 10 empty functions?

see title.
Maybe a function to call functions would solve the issue:
call: function (method) {
return typeof this[method] === 'function' ? this[method]() : false;
}

An even more concise way !  thanks.
But every time the execution should be check -> typeof this[method] === 'function'~~
I'm a perfectionist. I can not accept the checking.

Ah yes, true.
Then another idea:
var noop = function() {}
this.rotate = options.rotate || noop
this.touchStart = options.rotate || noop

and so on. That would only spawn one empty function and doesn't require checking :)

good idea. done. https://github.com/AlloyTeam/AlloyFinger/commit/93e6ee60799d4d787d5fac1c725b737f4c68d99e

Perfect! :)


Export refinements

Combined locality & species export now works in a simple way without server crashing. Here are some differences in current export to the legacy version, it should be discussed which of these have to be made similar in the new app and with what priority:
Current functionality:

Exports all localities if user is Admin or Edit Unrestricted, otherwise (not logged in or other roles) will export only public localities and their species.
Returns only the localities which user has filtered in the table
The table's sorting is not respected, it is always A-Z by locality name as in the old application
In technical terms: It uses the SQL View just like the old application, but always exports all columns and in the order that the view gives the columns.

Differences to old:

[ ] Column headers are different: Old version has all capitalized letters, but possibly also sometimes edited names, meaning not directly the database columns
[ ] Selection of columns is always the same: new app exports all columns that are in the SQL view; old app makes different selections based on who is exporting and with what settings
[ ] Order of columns is different
[ ] What settings should be brought into new app? Now you can filter based on localities only, but cannot select for example only now_ls or com_species, also cannot export the species that are not assigned to any locality.
[ ] Mesowear score may not work right now - Does it need to be calculated in code or is it done in view?

This feature is not used anymore as we have cross-search. Closing as not planned.


timezone helpers

Description
Added timezone helpers to the core:
public/lib/helpers/timezone/get_all.liquid
public/lib/helpers/timezone/get_by_name.liquid
Issue ticket number and link
https://trello.com/c/m8KLzIcH
Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my code
[ ] I have made corresponding changes to the documentation
[ ] Any dependent changes have been merged and published in downstream modules

@Slashek fyi


gRPC's Bazel build depends on a WORKSPACE file

gRPC isn't a binary that's distributed to end users, it's a library intended to be embedded in other projects.
To facilitate this, it would be best if it worked without requiring a WORKSPACE file, as this prevents any other Bazel project from embedding it.

That's nonsense. The WORKSPACE file is ignored by Blaze on subprojects.
If you have a WORKSPACE file in your project, which references grpc, or WORKSPACE files will be superseded by yours.
If anything, our WORKSPACE file should be used as a reference for the list of externals you need to bind in yours, since you need to match the names we are using.

I wasn't trying to say that it caused a conflict, the problem I'm trying to point out is that gRPC requires a lot of work to integrate as all its dependencies have to be pulled out and put in the parent project.
This could be avoided by (for example) cloning the dependency repositories, adding a BUILD file to them and depending on them using //third_party/project:target as if they were any other component of the project.
This does raise the problem that any other project embedding gRPC may have issues if it tries to link a binary with its own version of the library but that should be resolvable by simply using the one already embedded in gRPC and would be worth (to me at least) the simplicity of just adding a single gRPC repository and being done.
Perhaps the title I should have used is "gRPC is difficult to embed in Bazel projects".

So, that's the problem with any Bazel project that uses complex subprojects. If you look at TensorFlow for example, their own WORKSPACE file is split into a myriad of subscripts-scripts that do a lot of work:
https://github.com/tensorflow/tensorflow/blob/master/WORKSPACE
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/workspace.bzl
That's... what you get if you want to use Bazel properly :-)
One of the things that Bazel enforces in fact, is a singular version of a library for the whole project. Let's say you have TensorFlow, currently depending on gRPC 1.3. If you want to create a binary using Bazel, that depends on TensorFlow, you WON'T get to use TensorFlow's WORKSPACE file. But you'll have to provide the same names for everything. So while TensorFlow depends on gRPC 1.3 currently through its WORKSPACE, you can override this to point at gRPC 1.4 in your own WORKSPACE that overrides the one from TensorFlow. Yes, this is complex, but this also guarantees that you don't have more than one copy of the code at a given time in a single project.


feat: add exception events for streaming errors

When streaming encounters an error, there may not be a parent span to drop. Below is an example.
Note that before fetching the first token, the original span has already ended (returning a generator object).
from llama_index.core.base.llms.types import ChatMessage
from llama_index.llms.openai import OpenAI

if __name__ == "__main__":
    response_gen = OpenAI(model="gpt-3.5-turbo").stream_chat([ChatMessage(content="hello")])
    for response in response_gen:
        print(response, end="")

This PR covers one such case, and so we're dispatching the new ExceptionEvent accordingly. Correct?

This correct. The streaming events are emitted towards the parent span that produced the generator. But that span has ended before the first token was fetched (i.e. no http request was sent). If the first token-fetch is not successful the drop span event is emitted towards a new span that does the actual iteration. But in situations where the old parent span is still waiting for token events and there isn't a new span to drop, the old span would have to keep waiting (or time out).

This PR covers one such case, and so we're dispatching the new ExceptionEvent accordingly. Correct?

This correct. The streaming events are emitted towards the parent span that produced the generator. But that span has ended before the first token was fetched (i.e. no http request was sent). If the first token-fetch is not successful the drop span event is emitted towards a new span that does the actual iteration. But in situations where the old parent span is still waiting for token events and there isn't a new span to drop, the old span would have to keep waiting (or time out).

ah okay, thanks for the confirmation and added explanation!


[bcl-gallery] Several issues found

While I was working on a paragraph integration with Media gallery pattern I have found several things that I think could be issues:

I think Items parameters are wrong. By example:

caption_classes: is not used
thumbnails: should be thumbnail and it can't be an string because it shouldn't be rendered properly. I have had to use a render array from Drupal instead.
media: if an string is passed, it is not rendered properly. I have had to use a render array from Drupal instead.

Because we can't put an string as thumbnail/media, video detection is not working properly in several places across the twig template. Also, for carousel items, is correct media type detection done for caption/image here? For caption you try to detect iframe/video tag and for image iframe/img.

Media gallery works properly for 10 items but if you add 11 or more items, you will see that styling for 11th and other items are wrong.

Please, let me know if I would need to clarify some of this points more or if you need more info about them.

Good day, thanks for pointing out this issues, we are working on them but please can you clarify number 2?

About point 2, for every item I have tried to send one string (image or video code) as it is suggested in comments for thumbnail/media parameters and they are rendered as simple strings. Those parameters are properly rendered only if they are send as render arrays from Drupal. In Twig of bcl-gallery we have some code to detect if media is a video or not, and in case it is a video show triangle icon but those pieces of code are not working properly when parameters are render arrays.

Thanks, I pushed now the fix, feel free to have a look and add comments if needed


039 drawer menu

Description
Add drawer menu to application
Motivation and Context
Closes #39
How has this been tested?
Mi 9T Pro
Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

[X] My code follows the code style of this project.
[X] My change requires a change to the documentation.
[X] I have updated the documentation accordingly.

I've made small fixes. Very nice work! I've found some issues:

Drawer doesn't close when pressing current page link if drawer was opened using gestures
When using sandwich button, drawer doesn't open after closed


WinRT Futures should update their inner Waker

Opening this issue as a continuation of #322. While it is now possible to call poll on winrt futures more than once, consecutive poll calls will not update the Waker. As a result, these futures will hang forever if a future is transferred between tasks after being polled. A simple example of this behavior:
mod bindings {
    winrt::include_bindings!();
}

use bindings::*;
use crate::test_component::TestRunner;
use futures::FutureExt;

fn main() {
    let mut tokio_rt = tokio::runtime::Builder::new()
        .threaded_scheduler()
        .build()
        .unwrap();

    tokio_rt.block_on(async {
        let fut_1 = TestRunner::create_async_action(1000).unwrap();
        let fut_2 = TestRunner::create_async_action(2000).unwrap();

        let mut fut_1_fuse = fut_1.fuse();
        let mut fut_2_fuse = fut_2.fuse();

        let incomplete_future = futures::select! {
            res_1 = fut_1_fuse => fut_2_fuse,
            res_2 = fut_2_fuse => fut_1_fuse,
        };

        println!("1 future complete, finishing other on different task...");

        // Work-around !Send future, this example still works with Send winrt futures and tokio::spawn.
        let local = tokio::task::LocalSet::new();

        local.spawn_local(async move {
            incomplete_future.await.unwrap();
        });

        local.await;

        println!("Both futures complete!");
    });

    println!("Done!");
}

This example will hang indefinitely and never complete. Unfortunately, I don't this its possible to fix this while maintaining the Future impl on IAsyncxxx as some extra memory is needed to store the shared reference to the Waker to update if needed.
In my opinion, IntoFuture is probably the best way forward, however it is currently unstable. Implementing this trait will allow await-ing on that value by implicity calling into_future, just as the IntoIterator trait allows iterating over a value that doesn't explicitly implement Iterator. In the meantime, maybe we could remove the Future impl from IAsyncxxx, replacing it with a method to get a wrapper struct implementing Future?

Thanks for the repro, Nathaniel! That's super helpful. A wrapper may be the way to go, but I really don't enjoy all the verbiage Rust requires with all the unwrapping so I'll think about generating the projection to possibly return the wrapper directly so that it doesn't require another method call.

I was thinking that some of the verbiage could be avoided by making the conversion method not return a result, like this:
// Work-around being unable to implement new functions on foreign types
trait IAsyncActionExt {
    fn to_future(self) -> IAsyncActionFuture;
}

impl IAsyncActionExt for IAsyncAction {
    fn to_future(self) -> IAsyncActionFuture {
        IAsyncActionFuture {
            inner: self,
            shared_waker: Arc::new(Mutex::new(None)),
        }
    }
}

struct IAsyncActionFuture {
    inner: IAsyncAction,
    shared_waker: Arc<Mutex<Option<Waker>>>,
}

impl Future for IAsyncActionFuture {
    type Output = winrt::Result<()>;

    fn poll(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output> {
        if self.inner.status()? == AsyncStatus::Started {
            let mut shared_waker = self.shared_waker.lock().unwrap();
            let shared_waker_is_none = shared_waker.is_none();
            *shared_waker = Some(cx.waker().clone());

            if shared_waker_is_none {
                let shared_waker = self.shared_waker.clone();
                self.inner.set_completed(AsyncActionCompletedHandler::new(
                    move |_sender, _args| {
                        // The waker will always be some here
                        shared_waker.lock().unwrap().take().unwrap().wake();
                        Ok(())
                    },
                ))?;
            }

            Poll::Pending
        } else {
            Poll::Ready(self.inner.get_results())
        }
    }
}

fn main() {
    let mut tokio_rt = tokio::runtime::Builder::new()
        .threaded_scheduler()
        .build()
        .unwrap();

    tokio_rt.block_on(async {
        let fut_1 = TestRunner::create_async_action(1000).unwrap().to_future();
        let fut_2 = TestRunner::create_async_action(2000).unwrap().to_future();

        let mut fut_1_fuse = fut_1.fuse();
        let mut fut_2_fuse = fut_2.fuse();

        let incomplete_future = futures::select! {
            res_1 = fut_1_fuse => fut_2_fuse,
            res_2 = fut_2_fuse => fut_1_fuse,
        };

        println!("1 future complete, finishing other on background task...");

        // Work-around !Send future, this example still works with Send winrt futures and tokio::spawn.
        let local = tokio::task::LocalSet::new();

        local.spawn_local(async move {
            incomplete_future.await.unwrap();
        });

        local.await;

        println!("Both futures complete!");
    });

    println!("Done!");
}

The only job of the conversion method is to essentially create a wrapper around an IAsyncxxx and a shared waker implementation, which is infallible. As a result, I think the only increased verbosity here is in the extra to_future method call, which we can partially hide when IntoFuture stabilizes. In this case though, i think the into_future verbosity is needed in order to call fuse on the created futures as FutureExt is only implemented for futures.

IntoFuture is stabilizing now, so this seems worth doing. I would also suggest implementing Drop for the wrapper future and having it call Cancel() on the IAsyncInfo, since that's consistent with semantics of other Rust futures.

Thanks for the reminder. Yes, now that IntoFuture is in 1.64 I'd love to see whether it can help to improve the integration of WinRT async with Rust async/await.

Closing this old issue - doesn't seem to be much demand for such API support. Let me know if you have thoughts to the contrary. 😊

This is still an issue and is a footgun for anyone who wants to use async APIs.
I might take a crack at implementing a wrapper using IntoFuture, but not this week.

I also would also like to note that the issue isn't specifically the code I sent above, but the fact that the waker isn't updated. This is a violation of the futures contract. Updates to async executors in the future may break the current code in strange ways, such as permanently hanging like shown in the code above.
If fixing this is off the table, would it be possible to at least gate the Future impl behind a feature flag? I don't want to accidentally use it when working with this crate.

#3142 removes the Future implementations. We can revisit in future... 😊

Reopening as there's been some renewed interest in futures support. Here's a sketch of how this can be implemented correctly to accommodate both Rust futures and WinRT async.
use std::future::Future;
use std::pin::Pin;
use std::sync::{Arc, Mutex};
use std::task::{Context, Poll, Waker};
use windows::{core::*, Foundation::*, System::Threading::*};

// The actual async types can implement `IntoFuture` and return this `Future` with some extra state needed to
// keep things moving along. This would just need to be a bit more generic to handle the four kinds of async
// types.
struct AsyncFuture {
    // Represents the async execution and provides the virtual methods for setting up a `Completed` handler and
    // calling `GetResults` when execution is completed.
    inner: IAsyncAction,

    // Provides the `Status` virtual method and saves repeated calls to `QueryInterface` during polling.
    status: IAsyncInfo,

    // A shared waker is needed to keep the `Completed` handler updated.
    waker: Option<Arc<Mutex<Waker>>>,
}

impl AsyncFuture {
    fn new(inner: IAsyncAction) -> Self {
        Self {
            status: inner.cast().unwrap(),
            inner,
            waker: None,
        }
    }
}

unsafe impl Send for AsyncFuture {}
unsafe impl Sync for AsyncFuture {}

impl Future for AsyncFuture {
    type Output = Result<()>;

    fn poll(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output> {
        // A status of `Started` just means async execution is still in flight. Since WinRT async is always
        // "hot start", if its not `Started` then its ready for us to call `GetResults` so we can skip all of
        // the remaining set up.
        if self.status.Status()? != AsyncStatus::Started {
            return Poll::Ready(self.inner.GetResults());
        }

        if let Some(shared_waker) = &self.waker {
            // We have a shared waker which means we're either getting polled again or been transfered to
            // another another execution context. Either way, we need to update the shared waker to make sure
            //  we've got the "current" waker.
            let mut guard = shared_waker.lock().unwrap();
            guard.clone_from(cx.waker());

            // It may be possible that the `Completed` handler acquired the lock and signaled the old waker
            // before we managed to acquire the lock to update it with the current waker. We check the status
            // again here just in case this happens.
            if self.status.Status()? != AsyncStatus::Started {
                return Poll::Ready(self.inner.GetResults());
            }
        } else {
            // If we don't have a saved waker it means this is the first time we're getting polled and should
            // create the shared waker and set up a `Completed` handler.
            let shared_waker = Arc::new(Mutex::new(cx.waker().clone()));
            self.waker = Some(shared_waker.clone());

            // Note that the handler can only be set once, which is why we need a shared waker in the first
            // place. On the other hand, the handler will get called even if async execution has already
            // completed, so we can just return `Pending` after setting the Completed handler.
            self.inner
                .SetCompleted(&AsyncActionCompletedHandler::new(move |_, _| {
                    shared_waker.lock().unwrap().wake_by_ref();
                    Ok(())
                }))?;
        };

        Poll::Pending
    }
}

async fn async_test() -> Result<()> {
    let object = ThreadPool::RunAsync(&WorkItemHandler::new(|_| {
        println!("work");
        Ok(())
    }))?;

    AsyncFuture::new(object).await
}

fn main() -> Result<()> {
    futures::executor::block_on(async_test())
}

This is now fixed by #3213, right?

Yes.


Mapbox Studio 0.2.6: Source upload succeeds, still loading online (yosemite)

Upload "succeeds" in Studio, but still loading 40+ minutes later on Mapbox.com. Can't cancel.

Studio allows me to upload a style, now I've got an upload que:

(similar but without postgis connection https://github.com/mapbox/mapbox-studio/issues/1257)
/cc @willwhite

Finally got an error:

Fixed!


tests: lib: mem_alloc: Fix newlib test

tests: lib: mem_alloc: Fix incorrect newlib variant usage

NEWLIB_LIBC_NANO defaults to y when building with a toolchain that
supports nano.specs and this was causing the libraries.libc.newlib
test to link with the newlib nano variant (libc_nano.a) when it should
be linking with the normal newlib (libc.a).

By setting CONFIG_NEWLIB_LIBC_NANO=n in prj_newlib.conf, we make sure
that the libraries.libc.newlib test links with the normal newlib.

For more details, refer to the issue #21167.

Signed-off-by: Stephanos Ioannidis<EMAIL_ADDRESS>
tests: lib: mem_alloc: Increase malloc heap size for newlib test

The newlib full malloc implementation (i.e. non-nano) requests a
relatively large 4096-byte memory chunk through `_sbrk`, which exceeds
the configured 512-byte heap size.

This commit changes `CONFIG_NEWLIB_LIBC_ALIGNED_HEAP_SIZE` from 512 to
8192 in order to increase the size of the heap memory used by the
newlib malloc function.

For more details, refer to the issue #21167.

Signed-off-by: Stephanos Ioannidis<EMAIL_ADDRESS>
Closes #21167

NOTE: This PR only fixes the incorrect test runtime library linkage issue. The actual test failure for libraries.libc.newlib when linking with the non-nano newlib needs to be addressed separately (see #21167).

NOTE: This issue will apply to the Zephyr SDK as well in the near future (see 21098).

The newlib test failure issue been addressed. This PR can now be merged.

Under what conditions is this failing?  we aren't seeing any issues in CI w/sanitycheck on the qemu platforms.

Under what conditions is this failing? we aren't seeing any issues in CI w/sanitycheck on the qemu platforms.

It was failing until I added the commit "tests: lib: mem_alloc: Increase malloc heap size for newlib test".
Try running the test with only "tests: lib: mem_alloc: Fix incorrect newlib variant usage" and you will see the failure reported in #21167.

@galak https://github.com/zephyrproject-rtos/zephyr/issues/21167#issuecomment-585546262


Cannot validate since no PHP executable is set

After updating Live Share for VS2019, VS Code error now reports this
PHP Language Features
Cannot validate since no PHP executable is set. Use the setting 'php.validate.executablePath' to configure the PHP executable.

The extension shows "This extension is bundled with Visual Studio Code. It can be disabled but not uninstalled." So where is the repository for reporting this problem?

Ok, this issue can be closed. I added the php path to environment PATH.


[FEATURE] Kyuubi-Flink support TIMESTAMP(%d) WITH LOCAL TIME ZONE type

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Search before asking

[X] I have searched in the issues and found no similar issues.

Describe the feature
Flink data type TIMESTAMP(%d) WITH LOCAL TIME ZONE is not supported currently, but we use this type for our data.
https://github.com/apache/incubator-kyuubi/blob/master/externals/kyuubi-flink-sql-engine/src/main/scala/org/apache/kyuubi/engine/flink/schema/RowSet.scala#L310
Motivation
No response
Describe the solution
No response
Additional context
Demo:
CREATE TABLE `iceberg`.`test`.`test_1` (`t` TIMESTAMP(6) WITH LOCAL TIME ZONE);

select * from `iceberg`.`test`.`test_1`;

Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

@polaris6, do you have interest to contribute this support?

@polaris6, do you have interest to contribute this support?

I'm Interested in this, could you assign it to me？


VPN gateway offers certificate with a different subject to the DNS name

For some reason VPN gateway responds to IKEv2 connectivity requests with a certificate containing a subject that doesn't match the FQDN used to find/request the gateway endpoint.
For example, say the gateway I configure my VPN client to connect to is the FQDN azuregateway-01234567-890A-BCDE-F0123-4567890ABCDE-a1b2c3d4e5f6.vpn.azure.com. When I connect to that using a VPN client configured through something like Intune or manually, then I receive a certificate error because the name returned in the subject for the gateway endpoint's certificate is: 01234567-890A-BCDE-F0123-4567890ABCDE.vpn.azure.com
What's interesting is that this second name doesn't resolve...unless you are on Microsoft internal network.
Is this expected behaviour? If so, it should be documented in this page somehow, explaining why the certificate for the endpoint has a name mismatch. Otherwise, I see this as a bug; because we should not be allowing users the possibility of being exposed to accepting certificates that have a name mismatch.

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

ID: a3113b20-0f6c-988e-444b-eff387f3ffef
Version Independent ID: ded2a816-93c7-a4b3-1ec2-c29ce86cd492
Content: About Azure Point-to-Site VPN connections
Content Source: articles/vpn-gateway/point-to-site-about.md
Service: vpn-gateway
GitHub Login: @cherylmc
Microsoft Alias: cherylmc

@webash Thanks for your question. We are checking on this and will respond to you soon.

@webash , It is by design and I will assign this issue to the content author to validate and update the doc.

#reassign:anzaman

Thanks @msrini-MSFT . I wonder if it would be prudent for the VPN setup package that is downloaded from the portal to communicate this in the ProfileXML, too.

Any update here?

PR merged

The advice that people should ‘Un-check "Verify the server's identity by validating the certificate"’ is extremely dangerous advice. That then means that users of that VPN would be vulnerable to malicious attacks on their connectivity, should their traffic or DNS queries be MITM’d or otherwise co-opted. TLS certificate verification should never be bypassed in this way!
The second option provided of ‘add the server FQDN along with the certificate’ doesn’t specify what this FQDN should be; the documentation should spell out the structure of the certificate name, versus the DNS name. Otherwise, again, if there is malicious MITM or DNS, the cert name they end up trusting could be wrong.

With Azure certificate authentication the same certificate is being used for server validation in the VPN tunneling protocol (IKEv2/SSTP) and the EAP protocol. Since the server certificate and FQDN is already validated by the VPN tunneling protocol, it is redundant to validate the same again in EAP. However when using RADIUS authentication, the RADIUS server certificate and FQDN must be validated in the EAP protocol as it is a different server

I'm not sure I agree that that logic provides a remit to be able to ignore the server certificate at the EAP level. Certificates only work if people trust them. If they aren't trusted, and are ignored, then that's how bad things happen.
If you truly believe that ignoring a certificate name mismatch is valid advice, then the documentation should include this explanation for people to make their own decision as to whether they agree, rather than just suggesting something dangerous without an explanation.
However, I would strongly urge that the only advice given in this section is to provide the FQDN that should be matched, and help people determine what that FQDN should be. (since there is no warning in any interface in the Azure Portal, let alone this documentation, that helps you determine it)

Whilst I appreciate that it is a holiday period across most of the globe, this bad advice is still present on the site. Can this be updated with a matter of urgency?

What you are saying only makes sense when the VPN tunnel and EAP terminate on different servers. In this case both of them are terminating on the same server,, there is no benefit of validating the server identity twice.

The general guidance of ignoring certificates should never be done. It undermines the certificate trust system. It shouldn't matter what assumptions can be made about the configuration of the remote endpoint; the whole point of certificates is that if one is being offered for the name you expect, you have some trust that those names have been validated out of band.
Your assumption about there being no benefit to validating the server identity twice only makes sense when it is known to the administrator/user that it is the same server. We can't possibly see that topology for an Azure Gateway. Additionally, there doesn't need to be a benefit to validate a cert, but there is a detriment to not validate the cert. Can you guarantee that there isn't a situation where ignoring the certificate would open the client device to MITM or some other kind of impersonation problem?
If the certificate is offering a different name, then that name should be targeted. All I'm asking is that you drop the guidance about ignoring the certificate, and provide more specificity on how to determine the FQDN that is on the EAP server certificate.
Finally: if the VPN tunnel and EAP terminate on the same server, why do they present different certificates? Why not just have the EAP use the same certificate and avoid this problem entirely?

I have added the clarification in the document. Thank you for your feedback.  We appreciate your intent and applaud your desire to ensure the safest and most secure methods of certificate validation.  We’ve discussed within our development team and feel certain that the correction stands as it would be a redundant check.  Again, thank you for bringing this to our attention and please continue to let us know of any future issues you find.  We value our customers’ advice and feedback.

I still don't agree, but there's only so much time I can provide to this. The clarification at least leaves those who read it to ponder the choice.
I only wish you would provide more information on how to correctly determine the FQDN that is offered on the EAP server certificate since it is different to the external FQDN, but I can see I'm not winning here.


WIP: dummy PR to test ci

Signed-off-by: Mohamed Mahmoud<EMAIL_ADDRESS>
- What this PR does and why is it needed

- Special notes for reviewers

- How to verify it

- Description for the changelog

CI issue was fixed by https://issues.redhat.com/browse/OCPBUGS-4977


MM-11469: Create a telemetry event for telemetry config changed.

Summary
Sends a client-side telemetry event when telemetry config setting changed in system console.
Ticket Link
https://mattermost.atlassian.net/browse/MM-11469
Checklist

[x] Ran make check-style to check for style errors (required for all pull requests)
[x] Ran make test to ensure unit and component tests passed

Setup Test Server label detected. Spinmint test server created if build succeeds (checks pass and no conflicts with base branch).

Spinmint test server created at: https://i-0ca4394bae4d6557c.test.spinmint.com
Test Admin Account: Username: sysadmin | Password: sysadmin
Test User Account: Username: user-1 | Password: user-1
Instance ID: i-0ca4394bae4d6557c

@wiersgallak Would you like to give this one a try to verify the telemetry is correct? Steps for webapp/client-side events:

On the test server, open Developer Console, go to the Network tab and Filter events by segment

Select one of the network events and identify the userId

Log in to Segment, go to Data Sources > Mattermost Development Builds > Debugger

Search by the userId identified in step 2

Each event triggered in the test server will be listed on the Debugger mode. So you can test if the correct event is sent for a telemetry config change.

Thanks @jasonblais for your instructions. Test was successful.

Spinmint test server destroyed


How to deploy landing zone subscriptions?

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Description
This is not really an issue and more of seeking direction towards "landing zone subscription deployment". We have tried out this repo and successfully deployed related components. Before we go ahead and create our own modules on top of this for landing zone components, where we can actually vend out to LZ consumers, do we have any pre-work done on this so far ? Any recommendation or direction on this is much appreciated.
Is your feature request related to a problem?
No

Describe the solution you'd like
Sample next steps for "Landing zone subscription" vending out part

Additional context

@chanakanissanka are you aware of our lz-vending module?
You can find examples on how to use this on the wiki, including an Example of how to integrate this module with the ALZ Terraform module.
cc: @matt-FFFFFF

Thanks @chanakanissanka... I'll close the issue for now, but please re-open and let us know if you need any further information.

@krowlandson Apologies if I'm barking the wrong tree here, we are in the middle of deploying a LZ and we want it to be aligned with 100% CAF and got really confused with this two repos provided by MS.
This repo ( Enterprise Landing Zone ) works fine and vending module is easy to implement tat has all these initial information.
Then, this CAF super module comes with all goodies but no any MGMT group or Policy .
Deployed connectivity module both into  test subscriptions and looks same.  Any idea why MS has these two repos and what we ( As customers ) should be  start using ?

Thanks @chanakanissanka... I'll close the issue for now, but please re-open and let us know if you need any further information.

@krowlandson Apologies if I'm barking the wrong tree here, we are in the middle of deploying a LZ and we want it to be aligned with 100% CAF and got really confused with this two repos provided by MS.
This repo ( Enterprise Landing Zone ) works fine and vending module is easy to implement tat has all these initial information.
Then, this CAF super module comes with all goodies but no any MGMT group or Policy .
Deployed connectivity module both into test subscriptions and looks same. Any idea why MS has these two repos and what we ( As customers ) should be start using ?

@chanakanissanka have you seen the following guidance on the CAF docs?
Deploy Azure landing zones by using Terraform
Does this help?

@krowlandson , Thanks again and really don't want to waste your time anymore. quick update/background,
we have seen this page multiple times (All honesty) and doubt we had was, we will have to maintain pipeline consists of both repos as upstream which has different level of provider dependency for our landing zone. Keep maintaining those levels as explained here- https://aztfmod.github.io/documentation/docs/fundamentals/lz-intro could be somewhat challenging. Not saying we can’t, it just that lots of moving parts. More than happy to be wrong here and pick your brain for the last time. Do you have any thoughts or possible approach that can be shared. Specific to our scenario we need obviously both platform and application component.
Irrelevant, many thanks for your direction so far. Cheers mate


target.'cfg(test)'.dependencies - unknown target test

With the following in Cargo.toml
[target.'cfg(test)'.dependencies]
tracing = { version = "0.1.5", features = ["log"] }

https://github.com/tokio-rs/tokio/blob/5efe31f2ed3c797e8055306a05faa3d7e786e7b6/tokio-net/Cargo.toml#L102
Crate2 nix creates  statement like target."test" but the that target isn't defined anywhere.
$ nix-build Cargo.nix -A rootCrate
error: attribute 'test' missing, at crate2nix-issues/cfg-test/Cargo.nix:89:22
(use '--show-trace' to show detailed location information)

I created a minimal test project at https://github.com/andir/crate2nix-issues/tree/d1e6ef9f7d1ea59a0286ee040015ba671511cb05/cfg-test

Thank you very much for the example! I included it as a regression test.


Drop obsolete logic from the downloadFile function in test/downloadutils.js

This patch is a first step to refactor the testing code to make it more manageable. This is needed in order to, over time, enable the no-var rule there too, which is now made difficult by lots of global variable and callback usage.
This code is old and predates the improvements we made to the test manifest to only contain working URLs (either Web Archive or GitHub/Bugzilla links), so the fallback logic to try the Web Archive is no longer necessary. This greatly simplifies the function and also makes sure that we fail directly in case a bad URL is added to the manifest, instead of having it work "accidentally" because of this logic, since we want the manifest to be correct at all times (and otherwise fail loudly).
To verify that this works I removed my local test/pdfs folder, did a clean checkout of it and ran the tests, which forced a re-download of all files. All files downloaded correctly, there were no MD5 checksum mismatches and the files could also be opened correctly.

/botio test


Fix pool CRD format in egress.md and service-loadbalancer.md

Signed-off-by: Jianjun Shen<EMAIL_ADDRESS>

/skip-all


Public site: Browse: Tag page not working

For the browse keyword page, a list of keywords and a (short) summary of the paper for each keyword. (see also issue #744)

Fixed (on server side by https://github.com/materials-commons/materialscommons.org/commit/b0bf84d9f4c87f7122e497f281d246dd30d1854e and on client side by https://github.com/materials-commons/mc-publish/commit/acd359941c028055a3b882c791d4b9630d87f998)


Project Setup

Project Setup

Created a Virtual Environment (local)
Install Django and other Python Packages
Start Django Project
Create App directory
Configure Template and Static directories
Push to GitHub

Closed

Opened


fix: Inapproprite order shimmer placeholder (#1424)

Fixes #1424
Changes: Replace linear layout with the constraint layout.
Screenshots for the change:

@aman210697 I'm already working on #1419 which is same.
Check out existing issues before creating a new one.


VS Code v1.75.0 still fails to open integrated terminal with Node 18_x

Before #38, when connecting VS Code via remote (SSH or WSL), the integrated terminal would fail to open with the following error:
The terminal process failed to launch: A native exception occurred during launch
(posix_spawn failed: No such file or directory).

After #38 the integrated terminal still doesn't open, and I get a different error:
The terminal process failed to launch: A native exception occurred during launch
(The module '/home/user/.vscode-server/bin/e2816fe719a4026ffa1ee018
9dc89bdfdbafb164/node_modules/node-pty/build/Release/pty.node' was compiled
against a different Node.js version using NODE_MODULE_VERSION 93. This version
of Node.js requires NODE_MODULE_VERSION 108. Please try re-compiling or
re-installing the module (for instance, using `npm rebuild` or `npm install`).).

I have removed the ~/.vscode-server directory and had VS Code re-install and received the same errors.

Thank you for reporting this. I am going to see if using #20 fixes this, i.e. adding the FHS environment.

Thank you for opening this issue, and @msteen for reacting this fast.
I've spent some time trying to debug this issue in the past days. Here are my "findings" so far:

despite what is said in #38, the last update of VSCode still ships with Node 16 (see image attached), at least it does on MacOS ARM versions.
the vscode-server which is uploaded to the remote host is "compiled" against the same node version as the editor, so #38 looks actually like a regression.
the shell issues looks like an environment-related problem, since when trying with "remote.SSH.useLocalServer": false" shows The path of the shell executable "/home/leo/.nix-profile/bin/zsh" does not exist`.

I also opened an issue on the vscode-remote repository, which didn't receive traction. I thought since their update caused the issue, it might still be relevant so i'll link it here : microsoft/vscore-remote-release#7986

I created an options branch to address some of the open issues and PRs and am trying to fix the issue with version 1.75.0. I am getting various FHS errors now (see below), but I am not sure if this is due to my weird server setup or an actual problem with the FHS environment. If someone else could test that branch and see if it works for them, I would appreciate the feedback.
> Server did not start successfully. Full server log at /home/matthijs/.vscode-ser
> ver/.e2816fe719a4026ffa1ee0189dc89bdfdbafb164.log >>>
> /nix/store/dvzrdz86i15bmjyy869mi7h2bcgl05az-nodejs-16.15.0/bin/node: /usr/lib/li
> bstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /nix/store/dvzrdz8
> 6i15bmjyy869mi7h2bcgl05az-nodejs-16.15.0/bin/node)
> /nix/store/dvzrdz86i15bmjyy869mi7h2bcgl05az-nodejs-16.15.0/bin/node: /usr/lib/li
> bc.so.6: version `GLIBC_2.33' not found (required by /nix/store/dvzrdz86i15bmjyy
> 869mi7h2bcgl05az-nodejs-16.15.0/bin/node)
> /nix/store/dvzrdz86i15bmjyy869mi7h2bcgl05az-nodejs-16.15.0/bin/node: /usr/lib/li
> bc.so.6: version `GLIBC_2.34' not found (required by /nix/store/dvzrdz86i15bmjyy
> 869mi7h2bcgl05az-nodejs-16.15.0/bin/node)
> /nix/store/dvzrdz86i15bmjyy869mi7h2bcgl05az-nodejs-16.15.0/bin/node: /usr/lib/li
> bc.so.6: version `GLIBC_2.32' not found (required by /nix/store/dvzrdz86i15bmjyy
> 869mi7h2bcgl05az-nodejs-16.15.0/bin/node)
> /nix/store/dvzrdz86i15bmjyy869mi7h2bcgl05az-nodejs-16.15.0/bin/node: /usr/lib/li
> bc.so.6: version `GLIBC_2.32' not found (required by /nix/store/rchs3lp1yvz46yza
> gi0yzagkwc22j33s-libuv-1.44.1/lib/libuv.so.1)
> /nix/store/dvzrdz86i15bmjyy869mi7h2bcgl05az-nodejs-16.15.0/bin/node: /usr/lib/li
> bc.so.6: version `GLIBC_2.33' not found (required by /nix/store/rchs3lp1yvz46yza
[00:00:56.488] >
> gi0yzagkwc22j33s-libuv-1.44.1/lib/libuv.so.1)
> /nix/store/dvzrdz86i15bmjyy869mi7h2bcgl05az-nodejs-16.15.0/bin/node: /usr/lib/li
> bc.so.6: version `GLIBC_2.34' not found (required by /nix/store/rchs3lp1yvz46yza
> gi0yzagkwc22j33s-libuv-1.44.1/lib/libuv.so.1)
> /nix/store/dvzrdz86i15bmjyy869mi7h2bcgl05az-nodejs-16.15.0/bin/node: /usr/lib/li
> bc.so.6: version `GLIBC_2.33' not found (required by /nix/store/2k6ybn1vrqannzps
> s8xkkn25mwkzfmyi-icu4c-71.1/lib/libicuuc.so.71)
> /nix/store/dvzrdz86i15bmjyy869mi7h2bcgl05az-nodejs-16.15.0/bin/node: /usr/lib/li
> bc.so.6: version `GLIBC_2.34' not found (required by /nix/store/2k6ybn1vrqannzps
> s8xkkn25mwkzfmyi-icu4c-71.1/lib/libicuuc.so.71)

I'll test that as soon as I get on my laptop. Give me a few hours.

@msteen Getting the following error with the home-manager module:
 error: A definition for option `systemd.user.services.auto-fix-vscode-server.Service.ExecStart' is not of type `boolean or signed integer or string or list of (boolean or signed integer or string)'. Definition values:
       - In `/nix/store/b4d5kv0h6b5ngbb0y2yiyh4papnxhsvy-source/home-manager/williamfence/home.nix': <derivation auto-fix-vscode-server.sh>

@msteen I just switched to the options branch and rebuilt it, deleted .vscode-server, enabled systemctl --user enable auto-fix-vscode-server.service and restarted wsl. Thanks for the fix. :D

@msteen Getting the following error with the home-manager module:
 error: A definition for option `systemd.user.services.auto-fix-vscode-server.Service.ExecStart' is not of type `boolean or signed integer or string or list of (boolean or signed integer or string)'. Definition values:
       - In `/nix/store/b4d5kv0h6b5ngbb0y2yiyh4papnxhsvy-source/home-manager/williamfence/home.nix': <derivation auto-fix-vscode-server.sh>

Ah, forgot about that issue, NixOS automatically converts packages to strings for systemd services, home-manager does not. I no manually converted it to a string, that should hopefully fix it for home-manager, can you verify?

Ah, forgot about that issue, NixOS automatically converts packages to strings for systemd services, home-manager does not. I now manually converted it to a string, that should hopefully fix it for home-manager, can you verify?

I just tested the home-manager module with the lastest version, and it works! Thank you for the quick and great job!

I noticed an issue with this approach, though: you cannot use sudo inside VSCode's shell anymore, or any security wrapper for that matter. There is apparently an issue with SUID binaries from inside FHSEnvs, here are a few links about that:

https://github.com/NixOS/nixpkgs/issues/69338
https://github.com/NixOS/nixpkgs/issues/42117

There are apparently some workarounds possible, but it might be more relevant in a separate issue.

@msteen Besidest the security wrapper issue, everything works well 👍

I created an options branch to address some of the open issues and PRs and am trying to fix the issue with version 1.75.0. I am getting various FHS errors now (see below), but I am not sure if this is due to my weird server setup or an actual problem with the FHS environment. If someone else could test that branch and see if it works for them, I would appreciate the feedback.

In my environment, in the options branch, VSCode v1.75.1 seems to successfully connect to vscode-server via ssh.

Does the integrated terminal open? Ctrl/Cmd-`

I have merged the options branch to master, considering the multiple confirmations that it now works again, except for the SUID binaries. If someone knows whether one of the workarounds works for VS Code too, I would love a PR for this!

Thanks @msteen ! SUID binaries are quite important for my use case, so if I find a workaround, I'll be sure to contribute!

@phdcybersec From what I read in the links you shared, https://github.com/NixOS/nixpkgs/issues/42117#issuecomment-974194691 seems the mostly likely to work, but I don't have working test environment (something I plan to work on this weekend).
Maybe this is all it takes: runScript = "PATH=''${PATH//:\/run\/wrappers\/bin/} ${nodejsPackage}/bin/node";

Yeah, I tried to run stuff in the user namespace via /run/current-system but didn't mange to make it work. It might just be that I messed up somewhere. I'll try to try (!) again this weekend.

Sorry if I missed it earlier, but do we know the root cause of the posix_spawn file not found error? It's great that putting the server binary in an FHS env gets things somewhat working again, but there's other reasons that make that not ideal besides issues with SUID binaries, as now every integrated terminal and process under that now has to be able to run in that same FHS container.

I'm also not too keen on FHSing by default. I'd expect my terminal to act like any other SSH session.
So, regarding the posix_spawn root cause, here's a fun strace from the Remote Pty Host process:
[pid   456] execve("/home/<SNIP>/.vscode-server/bin/<SNIP>/node_modules/node-pty/build/Release/spawn-helper", ["/home/<SNIP>", "-1", "-1", "1", "/home/<SNIP>/.nix-profile/bin/zsh", "-i"], 0x391ba90 /* 79 vars */) = -1 ENOENT (No such file or directory)

spawn-helper is a binary with libstdc++.so.6 => not found, as well as an ELF interpreter of /lib64/ld-linux-x86-64.so.2 (not a file on my machine). A typical NixOS binary repackaging problem.
This little script copies stuff from the auto-fixed node. The result is fixed terminals in vscode without FHS.
nix shell 'nixpkgs#patchelf'
cd ~/.vscode-server/bin/*/node_modules/node-pty/build/Release/
INTERP="$(patchelf --print-interpreter ~/.vscode-server/bin/*/node)"
RPATH="$(patchelf --print-rpath ~/.vscode-server/bin/*/node)"
patchelf --set-interpreter "$INTERP" --add-rpath "$RPATH" spawn-helper

(I'm actually using remote WSL2 rather than remote SSH, idk if that matters.)
So, can we have an alternate fix that uses autoPatchelfHook or whatever on this spawn-helper binary, instead of FHS?

@akiekintveld @libjared You are both right, FHS is more of a workaround, and not as ideal as I had hoped. I will see if I can manage to patch everything without resorting to FHS, though I will keep it in as an option for now.

@libjared I tried your thing in my patchelf branch, but I keep getting stat: No such file or directory when I run patchelf --set-interpreter "$INTERP" --add-rpath "$RPATH" spawn-helper. I tried doing it manually too, same error. Do you or anybody else have any idea what might be the cause?

@libjared Your --add-rpath doesn't exist on patchelf of NixOS, should have been --set-rpath. Figured it out with a strace and patchelf --help. Now it works without FHS, but I am going to see if I shouldn't patch more, like pty.node in the same folder.

@msteen --add-rpath has been a supported argument for at least 3 years. Not sure why you can't use it.

@libjared My bad then! This test machine must be pointing to some really old nixpkgs version. Something to investigate and to update for sure, thanks for letting me know!
I updated the script to make it patch all binaries, hopefully making it a bit more future proof.

VSCode Terminal would work, if I removed the following command line:
rm -r ~/.vscode-server/ && \

It looks like inotifywait does not work properly.

@Atry You mean on WSL? Ah, yes, you're right, I ran into this problem with Docker on Windows too in a different context, as it uses WSL too. I can apply a similar fix I did in that project, making it less efficient, but it wouldn't need inotifywait.

I use WSL2 and inotifywait works fine.
Also, @Atry, this is the first time someone's mentioned segfault! Where is that coming from?

@libjared Good reminder, inotifywait works fine, but not on mounted drives, which was what my use case in Docker was about. Happy I did not waste time yet making an alternative to the inotifywait part of the script.

Ran into this problem when I upgraded VSCode today. Updated the module on my local NixOS system, nuked the ~/.vscode directory, and tried to connect. It failed to start with this error:
/home/josh/.vscode-server/bin/441438abd1ac652551dbe4d408dfcec8a499b8bf/bin/code-server: line 12: /home/josh/.vscode-server/bin/441438abd1ac652551dbe4d408dfcec8a499b8bf/node: No such file or directory

I use WSL2 and inotifywait works fine. Also, @Atry, this is the first time someone's mentioned segfault! Where is that coming from?

See https://github.com/msteen/nixos-vscode-server/issues/43

@jmgilman Happy it is working again! You probably had to manually restart the service.


Add boxplot test

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 99.79%. Comparing base (1f2987a) to head (992a2ce).
Report is 72 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #83      +/-   ##
==========================================
+ Coverage   99.68%   99.79%   +0.10%
==========================================
  Files          19       20       +1
  Lines        5132     5395     +263
==========================================
+ Hits         5116     5384     +268
+ Misses         16       11       -5

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


chore: use same convert_to_generic_platform_wheel.py script as cmake

This prepares for universal2 wheels and allows to create py2.py3 wheels

Why isn't there something more official for doing this sort of thing? There are other packages that have "special" output tag requirements. I've seen a regex package that needed python version only (no plat/arch), we had multiple tags in cibuildwheel as a macOS hack for a little bit, etc.

Why isn't there something more official for doing this sort of thing? There are other packages that have "special" output tag requirements. I've seen a regex package that needed python version only (no plat/arch), we had multiple tags in cibuildwheel as a macOS hack for a little bit, etc.

A while back I looked into this and then work on transferring the wheeltools project into the scikit-build organization.
See https://github.com/scikit-build/wheeltools/issues/2
That said, I am wondering if there is a more current effort and if we should archive or abandon wheeltools .... I didn't have a chance to look at the details since then.

I think this is now "passing" - Travis is out of credits and AppVeyor is being weird, but CircleCI is passing.

Going to give AppVeyor another chance, turned of the Travis requirement.


Remove profile aliasing from 1.1-rc2

This PR is derived from #1410 which included this same alias removal. Per @dgeb' s request, I've broken this out into its own PR. I agree that this will make this change easier to review and consider.
This PR supersedes #1362.
Motivation
Aliasing anticipates a problem that I'm not yet convinced we'll encounter. That is, it attempts to make it possible for a server to support profiles with conflicting keywords.
Unfortunately, aliasing is not a trivial thing to implement on the client or the server. A global dictionary must be computed for every HTTP message by either the client or the server. There is no guarantee that two implementations will use the same aliases, nor that they will even use the same aliases between requests. In systems that have hierarchical (de)serialization components, that global dictionary must be shared between them and that can be a cumbersome process. Even after deserialization, every processor must also know about the aliases too, since processors will be looking for specific keywords.
I propose we remove aliasing from v1.1 of the spec. If they really does become necessary, it shouldn't be too difficult to add them to a subsequent version of the spec.

@gabesullice thanks for breaking out this change as a separate PR. LGTM.

IIRC I also found aliasing one of the more confusing things to wrap my head around.
I wanted to read it again on the website to try to remember what exactly I found confusing, but now there's only https://jsonapi.org/format/1.1/, the 1.1-RC1 release is gone. Is this intentional or accidental?

@wimleers Sorry for the confusion. We have reverted 1.1 to be a working draft as per this discussion: https://github.com/json-api/json-api/issues/1403#issuecomment-518263298
I'm working with @gabesullice to stabilize a modified vision for 1.1 ASAP.

I know! But I think that for posterity sake and for full transparency, it'd be good to keep old RCs around. "Cool URIs don't change" :) But I just noticed that the old URL was indeed also …/1.1, not …/1.1-rc1. So the choice of the URL just wasn't ideal, because that is indeed a good reason to not keep that published.
Ignore my request :)

Well I totally agree about URIs not changing. And I'm open to publishing each RC to its own URL and leaving it available in perpetuity.


Syntax-check a script without executing it?

I use the VBScriptEngine to execute some nightly maintenance-scripts. Some scripts are somewhat difficult to run during the day for testing-purposes (like rebooting a server for example). Sometimes I make small changes to such a script, and cannot test it. But when I make stupid syntax errors (like forgetting a quote or a bracket), the script fails during the nightly-run.
So, is there a way to parse a script without really running it (basically do a syntax-check) ?
EDIT: I found a workaround using the "quit" command I added a while ago (see https://github.com/microsoft/ClearScript/issues/218): it's possible to syntax check if you add the "quit" command before the first script-line and then execute it. However, I have the feeling that there must be a better way to syntax-check a script :-)

Hi @bmaster001,
Unfortunately we are not aware of any way to check VBScript code for syntax errors without executing it. The Windows Script API doesn't seem to expose that capability.
Sorry!

Ok thanks, I'll have to keep using my workaround then!


Recursive @var definitions cause the compiler to stall forever

Describe the bug
I accidently made a recursive @var function i.e. where all it does is call itself when I really wanted to return the str of the _ private version of the value. This caused reflex run compilation to pause at step 3 and never complete.

To Reproduce
any trivial @var where all it does is return itself.
Steps to reproduce the behavior:
@rx.var
def foo(self) -> str:
    return self.foo

Expected behavior
A clear and concise description of what you expected to happen.
Raise a proper error that a vars cannot have itself as a dependency
Specifics (please complete the following information):

Python Version: 3.12.4
Reflex Version: 0.5.9
OS: Ubuntu 22.04.3 on Windows 11 WSL 2
Browser (Optional):

(I edited return foo to return self.foo in the code snippet)


Number of Severities?

Hi, Thanks for your work! I am interested in evaluating my multi-modal model on this benchmark but have a question.
In your paper, it is mentioned that there are 5 Severities for most text perturbations. But in perturb_COCO_TP.py, I see most perturbation have 7 Severities (e.g., char_rate_chunk = [1,2,3,4,5,6,7]). I wonder which 5 of them should I use in the final evaluation? [1,2,3,4,5] or [3,4,5,6,7]?

Hi Jiacheng, thanks for your interest in our work. In our results in the paper, we used the parameter set [3,4,5,6,7].

@Jason-Qiu Thank you for the quick reply, Jason!
I notice that the generation of COCO-TP and FLICKR-TP using the Python scripts is stochastic. I am not sure if my generated data are exactly the same as the one used in the paper. Just want to make the evaluation in my work fair, I wonder if you could kindly send me<EMAIL_ADDRESS>a copy of the COCO-TP and FLICKR-TP annotation json files? Your help is greatly appreciated!

Hi Jiacheng, there is a seed provided in the scripts to control the generated perturbations, so your generated ones should be the same as ours.


No method dequeue in class Resque

I installed resque, command:
composer require --prefer-dist chrisboulton/php-resque "*"
I downloaded zip with resque.
Classes Resques are different.
In zip file, method dequeue exists.
In composer,  method dequeue does not exist.
Why is classes different?
Why is not present dequeue method?

The ZIP is of the master branch.  Composer didn't install the dev/master version.  That is the source of the difference.

I ctreated job: \Resque::enqueue($queue, $class, $args, $trackStatus)
I reserved job: \Resque::reserve($queue)
How can I delete job from redis (What method for this)?

no dequeue method in source...... how / why?
what should i do now?

@danhunsaker can you please elaborate? How do i ensure composer installs dev-master?

The composer docs may have an easier way, but you can edit your composer.json and change whatever version string it has for PHP-Resque to dev-master, then do a composer update.

thanks @danhunsaker


unable to add jenkins user in docker group when runnig dind container

i am running 2 pods one of jenkins and one of docker daemon through dind image . i want to add jenkins user  so that i can run my jenkins job through this user  but i am unable to .

Unfortunately, these sorts of questions/requests would be more appropriately posted to a dedicated support forum, such as the Docker Community Slack, Server Fault, Unix & Linux, or Stack Overflow.
(You'll want to collect more information about what you're trying to accomplish, what you've tried, and in what ways it didn't do what you expected before you post elsewhere, though.)


Update git packages with pipx upgrade-all

This might be a bit far fetched but imagine I've installed some package with --spec git+https:.../some_branch/ and that package gets an update i.e a new commit in some_branch.
Can pipx pull those new changes upon pipx upgrade? (AFAICT it doesn't do this already).
Thanks!

I just did an upgrade-all, and unfortunately it overwrote one of my personal git-based pipx installs with one from pypi that is completely unrelated...  They just happened to have the same name.  In this case it was a pretty serious breakage.

@itsayellow ah so sorry to hear that. The .pipxrc file probably would have prevented that from happening, but I haven't gotten around to adding it.

thanks @cs01 , I was perplexed for a while at what was happening, but I'm ok now.  Just wanted to add another motivation for this issue.  Thanks for all your work on pipx.

This is fixed via #222, for cases where the package version number changes (the most reliable way to detect an upgrade is needed.)

Thank you! Is there going to be a release soon?

Yes, we're getting close


[BUG] - Mod Update Version Comparison

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
Thank you very much for the great work! I'm using this now always to manage my mods.
Today I found the following behaviour:
A mod is updated with version <IP_ADDRESS>. During the comparison with the older mod versions FSG thinks, that the earlier version <IP_ADDRESS> of this mod is newer version and wants to replace the just updated one - see screenshot.

Expected Behavior
FSG should handle version <IP_ADDRESS> as newer.
Steps To Reproduce
LS22 with mod "FS22_aPalletAutoLoader"
Environment
- Mod Assistant Version: 2.2.3
- OS: Win 10
- Virtualized: No

Anything else?
No response

Gross. Why in the world they couldn't have used real SemVer for versions is beyond me - look for this to be fixed in the next update, likely tomorrow.

This will be in the release later tonight. I forgot to convert the string back to numbers prior to comparing.  Because text "10" is less than "9".  sigh.


[improvement](jdbc catalog) opt get db2 schema list & xml type mapping

Proposed changes
Issue Number: close #xxx

Trim Schema Names: Adapted the system to remove trailing spaces from DB2 schema names, ensuring compatibility without affecting query operations.
XML Mapping: Implemented a feature to directly map XML types to String.

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

run buildall


Download MS MARCO dev subset

Hi, everyone, I met some issues when I was trying to download msmarco_ans_small.zip, errors as follows:
--2021-05-20 21:46:58--  https://www.dropbox.com/s/5xa5vjbjle0c8jv/msmarco_ans_small.zip
Resolving www.dropbox.com (www.dropbox.com)... <IP_ADDRESS>, 2001::6ca0:a694
Connecting to www.dropbox.com (www.dropbox.com)|<IP_ADDRESS>|:443... failed: Connection timed out.
Connecting to www.dropbox.com (www.dropbox.com)|2001::6ca0:a694|:443... failed: Network is unreachable.
Could you give me a link where I can obtain this dataset???
Thank you all !!

Hey @XY2323819551, the dropbox link works fine for me, are you not even able to open that on a browser?

@XY2323819551 if you are in ShangHai, you might need a VPN to access dropbox

Thanks for you reply，I used VPN yesterday but failed，I put the link in the browse directly and got the file，what is confusing me is that the fold is very small？？
---Original---
From: "Xueguang Ma @.>
Date: Fri, May 21, 2021 06:57 AM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [castorini/pygaggle] Download MS MARCO dev subset (#192)
@XY2323819551 if you are in ShangHai, you might need a VPN to access dropbox
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

Thanks for very much！I have got it already，but the size of fold is very small，is it right？
---Original---
From: @.>
Date: Fri, May 21, 2021 06:10 AM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [castorini/pygaggle] Download MS MARCO dev subset (#192)
Hey @XY2323819551, the dropbox link works fine for me, are you not even able to open that on a browser?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

Thanks for very much！I have got it already，but the size of fold is very small，is it right？

Yes, ~2MB, cuz it only contains topics and judgement, so not big.

Thanks for very much！I have got it already，but the size of fold is very small，is it right？

Yes, ~2MB, cuz it only contains topics and judgement, so not big.

Thank you again! You are so kind!


TLS example doesn't work

Hello,
The tls example doesn't work for me, I tried the following code:
use rumqtt::{MqttClient, MqttOptions, QoS};
use std::{thread, time::Duration};

fn main() {
    pretty_env_logger::init();

    let client_id = "tls-test".to_owned();
    let ca = include_bytes!("path/to/cert.pem").to_vec();
    let client_cert = include_bytes!("path/to/client-cert.pem").to_vec();
    let client_key = include_bytes!("path/to/client-key.pem").to_vec();

    let mqtt_options = MqttOptions::new(client_id, "xxxxxxx", 8883)
        .set_ca(ca)
        .set_client_auth(client_cert, client_key)
        .set_keep_alive(10);

    MqttClient::start(mqtt_options);
    // let topic = "hello/world";

    // thread::spawn(move || {
    //     for i in 0..100 {
    //         let payload = format!("publish {}", i);
    //         thread::sleep(Duration::from_secs(1));
    //         if let Err(err) = mqtt_client.publish(topic.clone(), QoS::AtLeastOnce, false, payload) {
    //             println!("{:?}", err);
    //         }
    //     }
    // });

    // for notification in notifications {
    //     println!("{:?}", notification)
    // }
}

I got the following message while executing RUST_BACKTRACE=1 cargo run --example tls, is there any workaround or am I doing something wrong?
thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: ()', src/libcore/result.rs:1165:5
stack backtrace:
   0: backtrace::backtrace::libunwind::trace
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.40/src/backtrace/libunwind.rs:88
   1: backtrace::backtrace::trace_unsynchronized
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.40/src/backtrace/mod.rs:66
   2: std::sys_common::backtrace::_print_fmt
             at src/libstd/sys_common/backtrace.rs:77
   3: <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt
             at src/libstd/sys_common/backtrace.rs:61
   4: core::fmt::write
             at src/libcore/fmt/mod.rs:1030
   5: std::io::Write::write_fmt
             at src/libstd/io/mod.rs:1412
   6: std::sys_common::backtrace::_print
             at src/libstd/sys_common/backtrace.rs:65
   7: std::sys_common::backtrace::print
             at src/libstd/sys_common/backtrace.rs:50
   8: std::panicking::default_hook::{{closure}}
             at src/libstd/panicking.rs:188
   9: std::panicking::default_hook
             at src/libstd/panicking.rs:205
  10: std::panicking::rust_panic_with_hook
             at src/libstd/panicking.rs:464
  11: std::panicking::continue_panic_fmt
             at src/libstd/panicking.rs:373
  12: rust_begin_unwind
             at src/libstd/panicking.rs:302
  13: core::panicking::panic_fmt
             at src/libcore/panicking.rs:141
  14: core::result::unwrap_failed
             at src/libcore/result.rs:1165
  15: core::result::Result<T,E>::unwrap
             at /rustc/4f03f4a989d1c8346c19dfb417a77c09b34408b8/src/libcore/result.rs:933
  16: rumqtt::client::network::stream::NetworkStreamBuilder::connect
             at src/client/network.rs:208
  17: rumqtt::client::connection::Connection::tcp_connect_future
             at src/client/connection.rs:315
  18: rumqtt::client::connection::Connection::mqtt_connect
             at src/client/connection.rs:321
  19: rumqtt::client::connection::Connection::mqtt_eventloop
             at src/client/connection.rs:91
  20: rumqtt::client::connection::Connection::run::{{closure}}
             at src/client/connection.rs:60
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

@tekjar Hello, could you help on this?

@GopherJ Are you using ip address by any chance?
https://github.com/AtherEnergy/rumqtt/blob/master/src/client/network.rs#L208
Rumqtt doesn't support direct ip addresses on tls. You need to provide a dns

Hello, I still get error message:
 ERROR rumqtt::client::connection > Connection error = Error(Inner(Io(Custom { kind: InvalidData, error: WebPKIError(CertNotValidForName) })))

Could you help me on this? we would like to use rumqtt for all the projects but it seems there are still some problems.

@tekjar any ideas? Thanks for your help!

Probably your certificate doesn't have correct SAN? It's necessary for rustls

Hello @tekjar , yes probably, any idea how to check it? I did some researches but I still don't know how to check it.

@GopherJ
https://stackoverflow.com/questions/13127352/how-to-check-subject-alternative-names-for-a-ssl-tls-certificate
https://www.geocerts.com/certificate-decoder
Try these

Hello @tekjar , sadly that it may be caused by this issue, but I cannot change the root certificate.
In this case, I also would like to just test rumqtt works well with tls, but while testing, it seems that I get the same error:
 ERROR rumqtt::client::connection > Connection error = Error(Inner(Io(Custom { kind: InvalidData, error: WebPKIError(CertExpired) })))
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Io(Custom { kind: InvalidData, error: WebPKIError(CertExpired) })', src/libcore/result.rs:1165:5
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.

what I did:
cd tlsfiles && /usr/sbin/mosquitto -c mosquitto.conf
cd ../ && cargo run --example tls

am I doing something wrong?

Error in your previous message says Certificate Expired. Did you check into that? I created these some time back to automate this
https://github.com/AtherEnergy/rumqtt/tree/master/utils/certgenerator
This might probably help. I might not be able to dig deep into the problem as I'm in a time crunch at the moment and I'm not working on this repo anymore.
But I might be able to help in a week as I'm creating a new broker and I have to verify the same at that time. Alternately I can give you access to my private repo if you want to test the new client with TLS. But it's in very early stages

OK I used your script and now I get new error - -:
WebPKIError(UnknownIssuer)

 ERROR rumqtt::client::connection > Connection error = Error(Inner(Io(Custom { kind: InvalidData, error: WebPKIError(UnknownIssuer) })))
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Io(Custom { kind: InvalidData, error: WebPKIError(UnknownIssuer) })', src/libcore/result.rs:1165:5
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.

trace:
 ERROR rumqtt::client::connection > Connection error = Error(Inner(Io(Custom { kind: InvalidData, error: WebPKIError(UnknownIssuer) })))
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Io(Custom { kind: InvalidData, error: WebPKIError(UnknownIssuer) })', src/libcore/result.rs:1165:5
stack backtrace:
   0: backtrace::backtrace::libunwind::trace
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.37/src/backtrace/libunwind.rs:88
   1: backtrace::backtrace::trace_unsynchronized
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.37/src/backtrace/mod.rs:66
   2: std::sys_common::backtrace::_print_fmt
             at src/libstd/sys_common/backtrace.rs:76
   3: <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt
             at src/libstd/sys_common/backtrace.rs:60
   4: core::fmt::write
             at src/libcore/fmt/mod.rs:1030
   5: std::io::Write::write_fmt
             at src/libstd/io/mod.rs:1412
   6: std::sys_common::backtrace::_print
             at src/libstd/sys_common/backtrace.rs:64
   7: std::sys_common::backtrace::print
             at src/libstd/sys_common/backtrace.rs:49
   8: std::panicking::default_hook::{{closure}}
             at src/libstd/panicking.rs:196
   9: std::panicking::default_hook
             at src/libstd/panicking.rs:210
  10: std::panicking::rust_panic_with_hook
             at src/libstd/panicking.rs:473
  11: std::panicking::continue_panic_fmt
             at src/libstd/panicking.rs:380
  12: rust_begin_unwind
             at src/libstd/panicking.rs:307
  13: core::panicking::panic_fmt
             at src/libcore/panicking.rs:85
  14: core::result::unwrap_failed
             at src/libcore/result.rs:1165
  15: core::result::Result<T,E>::unwrap
             at /rustc/4560ea788cb760f0a34127156c78e2552949f734/src/libcore/result.rs:933
  16: tls::main
             at examples/tls.rs:17
  17: std::rt::lang_start::{{closure}}
             at /rustc/4560ea788cb760f0a34127156c78e2552949f734/src/libstd/rt.rs:64
  18: std::rt::lang_start_internal::{{closure}}
             at src/libstd/rt.rs:49
  19: std::panicking::try::do_call
             at src/libstd/panicking.rs:292
  20: __rust_maybe_catch_panic
             at src/libpanic_unwind/lib.rs:80
  21: std::panicking::try
             at src/libstd/panicking.rs:271
  22: std::panic::catch_unwind
             at src/libstd/panic.rs:394
  23: std::rt::lang_start_internal
             at src/libstd/rt.rs:48
  24: std::rt::lang_start
             at /rustc/4560ea788cb760f0a34127156c78e2552949f734/src/libstd/rt.rs:64
  25: main
  26: __libc_start_main
  27: _start
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

is there a workaround @tekjar , I just would like to make it works...

@GopherJ I just verified both your code and the example. Both of them work for me
I suspect you are not using correct ca which is used to sign the server certificate. It's ca-chain.cert.pem in case you are using certgenerator script in utils.

Hello @tekjar , could you tell me what shall I use?
out
├── client
│   ├── crl
│   ├── csr
│   │   └── client.csr.pem
│   ├── private
│   │   └── client.key.pem
│   └── tlsfiles
│       └── client.cert.pem
├── intermediate
│   ├── crl
│   ├── crlnumber
│   ├── csr
│   │   └── intermediate.csr.pem
│   ├── index.txt
│   ├── index.txt.attr
│   ├── index.txt.attr.old
│   ├── index.txt.old
│   ├── newcerts
│   │   ├── 1000.pem
│   │   └── 1001.pem
│   ├── private
│   │   └── intermediate.key.pem
│   ├── serial
│   ├── serial.old
│   └── tlsfiles
│       ├── ca-chain.cert.pem
│       └── intermediate.cert.pem
├── root
│   ├── crl
│   ├── index.txt
│   ├── index.txt.attr
│   ├── index.txt.old
│   ├── newcerts
│   │   └── 1000.pem
│   ├── private
│   │   └── ca.key.pem
│   ├── serial
│   ├── serial.old
│   └── tlsfiles
│       └── ca.cert.pem
└── server
    ├── crl
    ├── csr
    │   └── server.csr.pem
    ├── private
    │   └── server.key.pem
    └── tlsfiles
        └── server.cert.pem

I don't think I made a mistake, but if yours can work then maybe I did something different from you

https://discord.gg/ZQw8Y3
Please join that group. We'll resolve this there

hello @tekjar , could you send a new invitation, I cannot join for some strange reasons, I'll try now.

@GopherJ https://discord.gg/afS2vC

thanks @tekjar


Wrong orientation on Samsung GalaxyS9

Bug
Wrong orientation on Galaxy S9, Android 9.0
"react-native-image-picker": "^1.1.0"

Environment [info]

React native info output:
 // paste it here

Library version: x.x.x
Steps To Reproduce

...
Describe what you expected to happen:

Reproducible sample code

Github turns the attached image 90 degrees as well!!!!! because of Orientation 90 CCW.


Update based on branch

The update can now be forced based on commits to a certain branch

Fix #76


The Japanese text search is highlighting in the wrong positions.

Attach (recommended) or Link to PDF file here:
【利用約款】サテライトオフィス・ワークフロー for Google Workspace - Google ドキュメント.pdf
Configuration:

Web browser and its version: Version 114.0.5735.199
Operating system and its version: Windows 11 Pro
PDF.js version: v3.8.162
Is a browser extension:

Steps to reproduce the problem:

I open file pdf above
input search with keyword 裁判所
I get the result like the picture

What is the expected behavior? (add screenshot)
I want the search results to display the correct position.
What went wrong? (add screenshot)
I'm having an issue where when I upload a Japanese PDF file and then search for text, some of the results are highlighted in the wrong positions. I have an illustrative image and the PDF file below. Please help me fix it. Thank you!

Link to a viewer (if hosted on a site other than mozilla.github.io/pdf.js or as Firefox/Chrome extension):

When opening an issue, please actually provide all of the information requested in https://github.com/mozilla/pdf.js/blob/master/.github/ISSUE_TEMPLATE.md rather than outright ignoring all of it.

When opening an issue, please actually provide all of the information requested in https://github.com/mozilla/pdf.js/blob/master/.github/ISSUE_TEMPLATE.md to make the issue easily actionable. (For example, you've not even provided the search-string as text, which makes things difficult for a non-Japanese speaker.)

Whe

@Snuffleupagus I have updated the description of the issue. Can you help me?

It's due to the mismatch between the canvas and the text layer.
I've a WIP to almost fix this kind of issues and I'll push it in the next weeks: so just be patient.

@calixteman I really need it. Can you guide me on how to fix it?

@calixteman Please give me the solution to this problem. Thanks!

Hi @calixteman - does the below screenshot look like it would be fixed by your WIP?
Thanks!


feature/tests: add more tests and refactor Makefile for race tests

Makefile refactored for racetests
Tests coverage up

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 28.88%. Comparing base (cf02580) to head (9d36714).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##           master      #52      +/-   ##
==========================================
+ Coverage   21.82%   28.88%   +7.05%
==========================================
  Files           9        9
  Lines         678      682       +4
==========================================
+ Hits          148      197      +49
+ Misses        524      474      -50
- Partials        6       11       +5

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


⚠ Bofrost.es has degraded performance

In c03eae5, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 2283 ms

Resolved: Bofrost.es performance has improved in 17303f4.


config.yml can not be edited while the server is open

this happens because when the server stops, the config that the server opened gets saved and overwrites the changes you made while the server is open (maybe the config.yml should be read-only and never saved back to, and ranks should be a separate file)

This is a Windows filresystem thing, not a Cardinal thing. Nothing I can do about it other than encourage users to upgrade.

@twizmwazin i think you could if you only read from the config, and never saved values to it (and save ranks to another file)

@twizmwazin Why this do not happen with ranks.xml?

@TiTo-418 The ranks.xml file uses jDOM, instead of Bukkit's configuration system. jDOM only opens it to read, not to write (which Bukkit's configuration system does).
I think...

@TiTo-418 as I said, ranks.xml does not get edited by the server, and therefore is not saved by the server.
the config file contains the list of players with ranks, and it's modified by the server, and saved by the server when the server shuts down

@TiTo-418 If I had to assume, @dentmaged is sorta right. The config.yml is a bukkit thing that we use, so it really isn't Cardinal that handles it. I presume craftbukkit keeps an open IO stream to the config files while the server is running. The ranks.xml, on the other hand, is all handled in-house, and we only quickly access it and then close the stream, and then open a new stream later if necessary.
Either way, disallowing concurrent streams is a Windows thing, just about every other operating system under the sun will allow you to have multiple applications accessing the same file. If this is a major issue for you, the only advice I could give would be to write a PR for CraftBukkit (they are really slow to respond to PRs, let alone merge them), or try out a more flexible operating system.

@twizmwazin Shared hosts uses Windows?

@TiTo-418 most hosted servers use linux-based OS's