Can't get images to appear

Hey Guys as the title says I can't get the images to appear.
I tried generating my access tokens from both Instagram and Pixel Union.
I am not getting an error just no images.
I am kind of a noob at this so any help would be appreciated.
TIA
Here is my code:

<script type="text/javascript" src="js/instafeed.js"></script>
<script type="text/javascript" src="js/main.js"></script>

Try this: http://pastebin.com/pKybqNDv


Does it support classic bluetooth (non BLE) device?

I was able to connect to the bluetooth printer and write comman to print using the react-native-ble-plx. However, due to firmware update, the priner no longer support bluetooth low energy and the code stop working. Do you know if the library will support bluetooth classic ?
Thank you in advance
react-native 0.59.1

Yes, I want to know if it supports bluetooth classic!


Have .dockerignore support Dockerfile/.dockerignore

If .dockerignore mentions either then the client will send them to the
daemon but the daemon will erase them after the Dockerfile has been parsed
to simulate them never being sent in the first place.
Closes #8330
Signed-off-by: Doug Davis<EMAIL_ADDRESS>

@crosbymichael I refactored the reading of the dockerfile into its own function and moved the cleanup stuff into there so it shouldn't look so odd to you any more.  Have a look and let me know.

@duglin awesome, thanks

LGTM


Documentation for running the scripts

The question that is most likely to arise is "how do I run this" and "how do I build a device to run this"
It would be nice if the README addressed these two points (the npm part and a sample breadboard).
(i.e. the same information you have privately included in e-mails)
Once people have seen that, everything else starts making sense into place.

https://github.com/owlcms/blue-owl contains this documentation.


Possible to create items within a browser field?

Hi,
When choosing to link content via a browser field, is it possible to enable an option to create new records via the popup?
Eg, when I'm in a Project, the popup list of tags that appears when clicking "Add project tag" would also allow me to create new ones.
Thanks!

Hi Seb,
it should be, but I just checked and there are some issues, so let me get back to you later this week about this!

I've been looking for this feature as well.

I am interested in this coming from a fresh project, is it being actively worked on? I can provide help where necessary.

I am interested in this coming from a fresh project, is it being actively worked on? I can provide help where necessary.

It would be amazing to have this feature, I can also help if needed.
Amicalement.

This is being addressed in #731.


implement CellId.walk() and CellId.walk_fast()

more pythonic iterator over cells at a given level

This change is

A few comments. At a higher level, do we want to preserve the 1↔1 mapping between C++ and Python classes? If so, walk and walk_fast should be provided in a separate module.
Previously, svenkreiss (Sven Kreiss) wrote…
> #### implement CellId\.walk\(\) and CellId\.walk\_fast\(\)
>
> more pythonic iterator over cells at a given level
>
>
>

Review status: 0 of 3 files reviewed at latest revision, 4 unresolved discussions.

s2sphere/sphere.py, line 1139 [r1] (raw file):

            Iterator over instances of :class:`CellId`s.
        """
        cellid = cls.begin(level).id()

Python question: why do cls.begin rather than CellId.begin?

s2sphere/sphere.py, line 1139 [r1] (raw file):

            Iterator over instances of :class:`CellId`s.
        """
        cellid = cls.begin(level).id()

The naming here is a bit confusing -- is cellid a CellId or an int?

s2sphere/sphere.py, line 1141 [r1] (raw file):

        cellid = cls.begin(level).id()
        endid = cls.end(level).id()
        increment = cls.begin(level).lsb() << 1

This is cryptic; add a comment (also in walk_fast)

s2sphere/sphere.py, line 1154 [r1] (raw file):

        Use with caution: This modifies the underlying ``id`` of a single
        :class:`CellId` instance for performance reasons.

I'd rewrite this comment to be more oriented towards a user of this function (and less about implementation details). For instance, something like
Use with caution: this repeatedly yields mutates a single object with a changing ``id``.
If you save the object, it will change out from underneath you.

Comments from Reviewable

Thanks for the comments.
That 1 to 1 mapping never existed. This was one of the comments from the original author that he regretted not having preserved that better.
Previously, danvk (Dan Vanderkam) wrote…
> A few comments. At a higher level, do we want to preserve the 1↔1 mapping between C++ and Python classes? If so, `walk` and `walk_fast` should be provided in a separate module.

Review status: 0 of 3 files reviewed at latest revision, 4 unresolved discussions.

s2sphere/sphere.py, line 1139 [r1] (raw file):
Previously, danvk (Dan Vanderkam) wrote…
> Python question: why do `cls.begin` rather than `CellId.begin`?
This has something to do with the behavior for derived classes. I had never used it like this before (I usually use `@staticmethod` and not `@classmethod`), but I think it could make sense so that `begin` is called of the derived class in case it is overwritten.

s2sphere/sphere.py, line 1139 [r1] (raw file):
Previously, danvk (Dan Vanderkam) wrote…
> The naming here is a bit confusing -- is `cellid` a `CellId` or an `int`?
an `int`.  I am struggling to come up with a better name.

s2sphere/sphere.py, line 1141 [r1] (raw file):
Previously, danvk (Dan Vanderkam) wrote…
> This is cryptic; add a comment (also in `walk_fast`)
Done.

s2sphere/sphere.py, line 1154 [r1] (raw file):
Previously, danvk (Dan Vanderkam) wrote…
> I'd rewrite this comment to be more oriented towards a user of this function (and less about implementation details). For instance, something like
>
> ```
> Use with caution: this repeatedly yields mutates a single object with a changing ``id``.
> If you save the object, it will change out from underneath you.
> ```
Done.

Comments from Reviewable

Some more suggestions for the comments, otherwise
Previously, svenkreiss (Sven Kreiss) wrote…
> Thanks for the comments.
>
> That 1 to 1 mapping never existed. This was one of the comments from the original author that he regretted not having preserved that better.

Review status: 0 of 3 files reviewed at latest revision, 3 unresolved discussions.

s2sphere/sphere.py, line 1139 [r1] (raw file):
Previously, svenkreiss (Sven Kreiss) wrote…
> an `int`.  I am struggling to come up with a better name.
`cell_id_int`?

s2sphere/sphere.py, line 1141 [r1] (raw file):
Previously, svenkreiss (Sven Kreiss) wrote…
> Done.
This still wasn't clear to me... @svenkreiss and I hashed it out. How about something like this?
The 64-bit ID has:
- 3 bits to encode the face
- 0-60 bits to encode the position
- a 1

The final 1 is the least significant bit. Doubling it yields the increment between positions as 64-bit IDs.

s2sphere/sphere.py, line 1154 [r1] (raw file):
Previously, svenkreiss (Sven Kreiss) wrote…
> Done.
You've got "use with caution" twice.

Comments from Reviewable

Review status: 0 of 3 files reviewed at latest revision, 1 unresolved discussion.

s2sphere/sphere.py, line 1154 [r1] (raw file):
Previously, danvk (Dan Vanderkam) wrote…
> You've got "use with caution" twice.
Done.

Comments from Reviewable

:shipit:
Previously, danvk (Dan Vanderkam) wrote…
> Some more suggestions for the comments, otherwise :lgtm:

Review status: 0 of 3 files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


Fix mdc-textfield

Fixes issue #20
The MDC api for mdc-textfield was updated in v0.22.0, this uses the new API.

@Ullfis Any chance we can get this pull request merged?

hmmm.. I only need the code change (your fix commit). Merging had been much easier if you had the fix in a separate branch and created a pull request from that branch. Not sure how I can grab just the fix..

I can roll back the other stuff. The fix was fairly straightforward.

Looks like I managed to get the fix and add you as Contributor :smile:
Thanks :+1:


R132

This updated release patches mobile_context schema to increase the max limit for the appAvailableMemory property. It was set too low and some devices (new iPad Pros) already cross the 4GB threshold. Increasing it to match max values for other memory properties. Hoping that we can go for a patch release instead of new version of the schema to avoid having to publish a new version of the mobile trackers and fix issues for users implementing the current tracker version.

Thanks for your pull request. Is this your first contribution to a Snowplow open source project? Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).
:memo: Please visit https://docs.snowplowanalytics.com/docs/contributing/contributor-license-agreement/ to learn more and sign.
Once you've signed, please reply here (e.g. I signed it!) and we'll verify. Thanks.


fix: update citadel sdk for core lightning support

Type of change (Remove other not matching type)

Bug fix (non-breaking change which fixes an issue)

Describe the changes you have made in this PR -
This updates the Citadel SDK and makes a minor change that is required to support Core Lightning (previously called c-lightning) on Citadel in the future.
How Has This Been Tested?
I manually ensured everything was still working correctly when connected to my local Citadel.
Checklist:

[x] My code follows the style guidelines of this project and performed a self-review of my own code
[x] New and existing tests pass locally with my changes
[x] I checked if I need to make corresponding changes to the documentation (and made those changes if needed)

utACK.
in your the sdk code the MiddlewareLND now works for both lnd and cln?
(btw. slightly related thread: https://twitter.com/EricSirion/status/1509906940767481859 )

@AaronDewes would you mind having a look at this?: https://github.com/getAlby/lightning-browser-extension/pull/747
For some reason the jest setup has issues with the citadel-import. Maybe you have an idea what needs to be changed. If not no worries.

in your the sdk code the MiddlewareLND now works for both lnd and cln?

Yes, only the name is a leftover.

@AaronDewes would you mind having a look at this?: #747 For some reason the jest setup has issues with the citadel-import. Maybe you have an idea what needs to be changed. If not no worries.

It seems to be because we use ESM in @runcitadel/sdk, but Alby doesn't use it otherwise

@escapedcat #747 is independent of this, correct?
so we can merge this one?

@escapedcat https://github.com/getAlby/lightning-browser-extension/pull/747 is independent of this, correct?
so we can merge this one?

Yup, all good here


Tensorflow-rocm support for windows

Now rocm is available on Windows when TensorFlow-rocm will come to Windows?

Now rocm is available on Windows when TensorFlow-rocm will come to Windows?

when miopen and amd migraphx  have been resolved


proxy protocol v2, support additional fields

Support the additional fields in proxy protocol v2. proxy-protocol v1.8
All the TLS-related fields will be populated into the #pp2_ssl{} record. We could then use ProxySock#proxy_socket.pp2_ssl to access them.
I've tested the code behind a haproxy.

Thank you @grutabow , I've force-updated my commit.


Add plan and unplan commands

Codecov Report
Base: 49.22% // Head: 49.22% // No change to project coverage :thumbsup:

Coverage data is based on head (a48c339) compared to base (02ef48d).
Patch coverage: 0.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff            @@
##             master      #85   +/-   ##
=========================================
  Coverage     49.22%   49.22%
  Complexity      422      422
=========================================
  Files           100      100
  Lines          1944     1944
  Branches        205      205
=========================================
  Hits            957      957
  Misses          946      946
  Partials         41       41

Impacted Files
Coverage Δ

...seedu/waddle/logic/parser/SelectCommandParser.java
0.00% <0.00%> (ø)

...n/java/seedu/waddle/logic/parser/WaddleParser.java
45.00% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Logging is slowing down application when writing to non-existing disk

When (synchronously) writing to a non-existing, NLog can slow down your application.
E.g.
<nlog>

  <targets>
    <target xsi:type="File" name="file"
               fileName="X:/logs/${shortdate}.log"   /> <!-- no X: on this computer! -->
 </targets>

Not sure how to fix this We could detect that the disk/location is not-existent or don't have rights to write, but should we then disable this target? And for how long?

You could do DriveInfo.GetDrives() on startup and then listen for device change events.
There's a RegisterDeviceNotification API (see example, but:

It is Windows-only
Requires a window, so not sure how this will work in, say ASP.NET scenario

Thanks ! The issue here AFAIK also NLog specific, it retries creating the file/folder which leads to this delay.

@304NotModified may be a flag say if the folder is found. If not we can write to a null logger.

@Page-Not-Found do you mean adding an option to the filetarget?
I think that's not needed, this bug could be fixed without new option AFAIK

@304NotModified I mean, a private flag with in the class to see if it is non existent.

Fixed by https://github.com/NLog/NLog/pull/1621


Not working with RN:0.55.2

What went wrong:
A problem occurred configuring project ':app'.

Could not resolve all dependencies for configuration ':app:_debugApk'.
A problem occurred configuring project ':react-native-config'.
The SDK Build Tools revision (23.0.1) is too low for project ':react-native-config'. Minimum required is 25.0.0

I found the solution which worked for me here https://github.com/oblador/react-native-keychain/issues/68#issuecomment-304836725

@Satya5614  Not working with this solution
https://github.com/oblador/react-native-keychain/issues/68#issuecomment-304836725
Again getting error like:

What went wrong:
Execution failed for task ':app:generateDebugBuildConfig'.

java.io.IOException: Could not delete path 'C:\Users\CR-27\creatise\clapui\android\app\build\generated\source\buildConfig\debug\com'.

@Satya5614 i dont downgrade current project because this is solution breaks my dependences


Revert "Move secret impl to open source pt2 try2" MERGEOK

Reverts vespa-engine/vespa#32460

@gjoranv FYI

Thanks!


Fix/disable docker solaris

A couple things:

It is probably a good idea to return an error that docker is not supported if converge is run on solaris.
You could add a comment to the hcl samples that docker is not supported on solaris; this would be in the docs then too.

thx, good idea, I added a comment to the hcl samples.
But, on the first suggestion, I'm not totally sure where to return an error. right now, the docker resources are not compiled into the solaris build at all so I think it should be like they don't exist. They are not registered in the registry. While I don't have a way to actually verify on solaris, I believe you should get an error like:
$ ./converge plan --local samples/dockerImage.hcl
2016-11-23T17:49:39-05:00 |INFO| serving        addr=:47740 component=rpc
2016-11-23T17:49:39-05:00 |WARN| skipping module verification   component=client
2016-11-23T17:49:39-05:00 |ERROR| could not load        component=rpc error=could not resolve resources: 1 error(s) occurred:

* root/docker.image.busybox: "docker.image" is not a valid resource type in "docker.image.busybox" location=samples/dockerImage.hcl runID=d8ff30e7-6a2d-471d-aa8e-f1e6506dee76
2016-11-23T17:49:39-05:00 |FATAL| could not get responses       component=client error=error getting status response: rpc error: code = 2 desc = loading samples/dockerImage.hcl: could not resolve resources: 1 error(s) occurred:

* root/docker.image.busybox: "docker.image" is not a valid resource type in "docker.image.busybox" file=samples/dockerImage.hcl

if you were to use docker.image, for example. Do we need more than this? I suppose we could maintain a map of unsupported resources by platform in the load package and return a more specific error.


Shortcuts for choosing specific outputs

Per @moshez's suggestion:
The collector callable passed to upon runs on a generator of outputs.  That means replacing it with next, as suggested by the docs, for a transition that includes multiple outputs will result in only the first output running!
Often times you just want the last output's result.  By adding a choose argument to upon, a user can use a numeric index to extract their desired output.  For example, this:
someState.upon(someInput,
               enter=anotherState,
               outputs=[firstOutput, secondOutput],
               choose=-1)

...would mean that someMachine.someInput() would run both firstOutput and secondOutput, but only return secondOutput's result.
What about choosing a specific output instead?  Like so:
someState.upon(someInput,
               enter=anotherState,
               outputs=[firstOutput, secondOutput],
               choose=secondOutput)

Is that too verbose?

Now you can just return a value, the output structure is an internal implementation detail.


Add support for mkdocs

As part of a larger effort of moving off of gitbook, this PR keeps existing gitbook support while adding support to deploy to github pages, specifically using the mkdocs-material library.

@stevemar One small thing before merging, why change tutorial path to docs?

@stevemar One small thing before merging, why change tutorial path to docs?

@hickeyma the material for mkdocs framework depends on a docs folder: https://squidfunk.github.io/mkdocs-material/creating-your-site/
.
├─ docs/
│  └─ index.md
└─ mkdocs.yml

@hickeyma the material for mkdocs framework depends on a docs folder: https://squidfunk.github.io/mkdocs-material/creating-your-site/
.
├─ docs/
│  └─ index.md
└─ mkdocs.yml

Ah yes, see that from the framework doc.

Ah yes, see that from the framework doc.


refactor(datepicker): export datepicker

Export DatePicker component on index.js

The component is not exported because it's not ready yet for prod as it is a quite complex one. Mostly due to internationalization (month names / day name abbreviations) issues and other. You can see some discussion about it here: arturbien/React95#194


suggestion: add methods to make get_property more comfortable

I'm trying to use get_property to get various information from the root window https://specifications.freedesktop.org/wm-spec/latest/ar01s03.html for example the list of all open windows. Basically what wmctrl -l does. get_property(rootWindow, _NET_CLIENT_LIST) returns an array of window ids (u32).
Currently, get_property returns a vector of bytes, which from what I see I have to convert to the type the response is myself.
The haskell library makes this a bit more comfortable by having the methods getTextProperty -> String, getWindowProperty16 -> Vec, getWindowProperty32 -> Vec and similar that just call getProperty but after checking the result directly convert it to the corresponding array. http://hackage.haskell.org/package/X11-extras-0.4/docs/Graphics-X11-Xlib-Extras.html#v%3AgetWindowProperty8
Here's what I'm using right now (hacky, don't use this):
fn to_u32s(v1: &Vec<u8>) -> Vec<u32> {
    let mut c = std::io::Cursor::new(v1);
    let mut v2 = Vec::new();
    while (c.position() < v1.len().try_into().unwrap()) {
        v2.push(c.read_u32::<LittleEndian>().unwrap());
    }
    return v2;
}
fn get_property32<Conn: ?Sized + RequestConnection>(
    conn: &Conn,
    delete: bool,
    window: WINDOW,
    property: ATOM,
    type_: ATOM,
) -> Result<Vec<u32>, ConnectionErrorOrX11Error> {
    let reply = get_property(conn, delete, window, property, type_, 0, std::u32::MAX)?
        .reply()?;

    Ok(to_u32s(&reply.value))
}

Oh, right. I noticed this for ChangeProperty already: https://docs.rs/x11rb/0.3.0/x11rb/wrapper/trait.ConnectionExt.html#method.change_property8
Something similar is needed for GetProperty.
One small remark: This part of your code is wrong: v2.push(c.read_u32::<LittleEndian>().unwrap());
X11 "stuff" is always in native endian, except for image data (fun, I know). The client sends its local byte order when connecting and the server has to byte swap where necessary. Except for image data.
A quick, untested alternative to your code would be:
use x11rb::x11_utils::TryParse; // This trait exists mainly so that I can add methods to u32 :-)
fn to_u32s(input: &[u8]) -> Vec<u32> {
    let mut input = input;
    let mut result = Vec::new();
    while !input.is_empty() {
        let (value, remaining) = u32::try_parse(input).unwrap(); // This will panic if there are less than four bytes remaining
        input = remaining;
        result.push(value)
    }
    result
}

ah nice, I didn't look at change property.

One small remark: This part of your code is wrong
Thanks :)

one more thing, in the haskell library all of these parameter values of get_property are just hardcoded, so I'd guess they are as useless as they look:
delete: false,
type_: ANY (=0),
long_offset: 0,
long_length: std::u32::MAX
(source: here ctrl+f xGetWindowProperty)

delete: false,

Implementing copy&paste requires GetProperty with delete=false. Well, not really "requires", but "makes more sense with". Deleting the property signals to the sender that it should continue.

type_: ANY (=0),

Technically, one should check types and ignore properties with unexpected types. I'm not sure how much this is actually done. If Rust had default arguments, one could set this argument to default to ANY.

long_offset: 0,
long_length: std::u32::MAX

Hm... I have a hard time coming up with an example where it makes sense to use something else here. Something like WM_STATE which has a known length?
Anyway, since X11 has these parameters in the request, I think they should be exposed. I can see why one would want to ignore them, but I am not sure if adding an extra wrapper for this is worth it or not. One could call it get_property_simple() and use the above suggested parameter values...

Ok I guess you're right about those params.
Really for me the ideal api would just be root_window.get_property::<Vec<Window>>("NET_CLIENT_LIST")? Or even just have it know all the usual properties that exist and make it e.g. root_window.get_net_client_list() or window.get_wm_name().
where root_window is a type called Window that has a reference to a Connection and a window u32, NET_CLIENT_LIST is automatically made into an atom, and the generic type is the return type which the X server response is automatically checked against and converted to.

If Rust had default arguments, one could set this argument to default to ANY

I guess you could make the function args (window, Into) argument, impl From<WINDOW> for GetPropertyArgs so it can be instantiated with just a Window & Atom or the full parameter list. Not sure if that's worth the effort though.

This is what I have so far for this issue. I'll have to think a bit more about it, but the below could already work and is not too ugly.
diff --git a/src/cookie.rs b/src/cookie.rs
index 84e73dc..94c06e5 100644
--- a/src/cookie.rs
+++ b/src/cookie.rs
@@ -118,7 +118,7 @@ where C: RequestConnection + ?Sized
     phantom: PhantomData<R>
 }

-impl<C, R> Cookie<'_, C, R>
+impl<'a, C, R> Cookie<'a, C, R>
 where R: TryFrom<Buffer, Error=ParseError>,
       C: RequestConnection + ?Sized
 {
@@ -133,6 +133,14 @@ where R: TryFrom<Buffer, Error=ParseError>,
         }
     }

+    pub fn transmute<R2: TryFrom<Buffer, Error=ParseError>>(self) -> Cookie<'a, C, R2> {
+        let raw_cookie = self.raw_cookie;
+        Cookie {
+            raw_cookie,
+            phantom: PhantomData,
+        }
+    }
+
     /// Get the sequence number of the request that generated this cookie.
     pub fn sequence_number(&self) -> SequenceNumber {
         self.raw_cookie.sequence_number
diff --git a/src/wrapper.rs b/src/wrapper.rs
index d483a99..7408149 100644
--- a/src/wrapper.rs
+++ b/src/wrapper.rs
@@ -1,11 +1,120 @@
 //! Some wrappers around the generated code to simplify use.

-use std::convert::TryInto;
+use std::ops::Deref;
+use std::convert::{TryFrom, TryInto};
+use std::mem::size_of;

-use super::generated::xproto::{ConnectionExt as XProtoConnectionExt, InternAtomReply, ATOM};
+use super::generated::xproto::{ConnectionExt as XProtoConnectionExt, InternAtomReply, GetPropertyReply, ATOM, WINDOW};
 use super::connection::Connection;
 use super::cookie::{VoidCookie, Cookie};
-use super::errors::{ConnectionError, ConnectionErrorOrX11Error};
+use super::errors::{ConnectionError, ConnectionErrorOrX11Error, ParseError};
+use super::utils::Buffer;
+use super::x11_utils::TryParse;
+
+/// Parse a list of values as another type.
+///
+/// This function is useful to deal with the value in `GetProperty` replies. The API has to provide
+/// these as a list of bytes (`u8`) even when the actual values are supposed to be `u16` or `u32`.
+/// This function can convert this.
+pub fn parse_property_list<T: TryParse>(mut input: &[u8]) -> Result<Vec<T>, ParseError>
+{
+    if input.len() % size_of::<T>() != 0 {
+        return Err(ParseError::ParseError);
+    }
+    let mut result = Vec::with_capacity(input.len() / size_of::<T>());
+    while !input.is_empty() {
+        let (value, remaining) = T::try_parse(input)?;
+        input = remaining;
+        result.push(value);
+    }
+    Ok(result)
+}
+
+#[derive(Debug, Clone, PartialEq, Eq)]
+pub struct GetProperty8Reply(GetPropertyReply);
+
+impl GetProperty8Reply {
+    pub fn data8(&self) -> &[u8] {
+        &self.0.value
+    }
+}
+
+impl TryFrom<Buffer> for GetProperty8Reply {
+    type Error = ParseError;
+    fn try_from(value: Buffer) -> Result<Self, Self::Error> {
+        let value: GetPropertyReply = value.try_into()?;
+        if value.format != 8 {
+            Err(ParseError::ParseError)
+        } else {
+            Ok(GetProperty8Reply(value))
+        }
+    }
+}
+
+impl Deref for GetProperty8Reply {
+    type Target = GetPropertyReply;
+    fn deref(&self) -> &Self::Target {
+        &self.0
+    }
+}
+
+#[derive(Debug, Clone, PartialEq, Eq)]
+pub struct GetProperty16Reply(GetPropertyReply, Vec<u16>);
+
+impl GetProperty16Reply {
+    pub fn data16(&self) -> &[u16] {
+        &self.1
+    }
+}
+
+impl TryFrom<Buffer> for GetProperty16Reply {
+    type Error = ParseError;
+    fn try_from(value: Buffer) -> Result<Self, Self::Error> {
+        let value: GetPropertyReply = value.try_into()?;
+        if value.format != 16 {
+            Err(ParseError::ParseError)
+        } else {
+            let list = parse_property_list(&value.value)?;
+            Ok(GetProperty16Reply(value, list))
+        }
+    }
+}
+
+impl Deref for GetProperty16Reply {
+    type Target = GetPropertyReply;
+    fn deref(&self) -> &Self::Target {
+        &self.0
+    }
+}
+
+#[derive(Debug, Clone, PartialEq, Eq)]
+pub struct GetProperty32Reply(GetPropertyReply, Vec<u32>);
+
+impl GetProperty32Reply {
+    pub fn data32(&self) -> &[u32] {
+        &self.1
+    }
+}
+
+impl TryFrom<Buffer> for GetProperty32Reply {
+    type Error = ParseError;
+    fn try_from(value: Buffer) -> Result<Self, Self::Error> {
+        let value: GetPropertyReply = value.try_into()?;
+        if value.format != 32 {
+            Err(ParseError::ParseError)
+        } else {
+            let list = parse_property_list(&value.value)?;
+            Ok(GetProperty32Reply(value, list))
+        }
+    }
+}
+
+impl Deref for GetProperty32Reply {
+    type Target = GetPropertyReply;
+    fn deref(&self) -> &Self::Target {
+        &self.0
+    }
+}

 /// Extension trait that simplifies API use
 pub trait ConnectionExt: XProtoConnectionExt {
@@ -41,6 +150,39 @@ pub trait ConnectionExt: XProtoConnectionExt {
         self.change_property(mode, window, property, type_, 32, data.len().try_into()?, &data_u8)
     }

+    /// Get a property of format 8 from the X11 server.
+    ///
+    /// This is a simple wrapper around `get_property` that checks that the format of the reply is
+    /// `8`.
+    fn get_property8(&self, delete: bool, window: WINDOW,
+                    property: ATOM, type_: ATOM, long_offset: u32, long_length: u32)
+    -> Result<Cookie<Self, GetProperty8Reply>, ConnectionError>
+    {
+        Ok(self.get_property(delete, window, property, type_, long_offset, long_length)?.transmute())
+    }
+
+    /// Get a property of format 16 from the X11 server.
+    ///
+    /// This is a simple wrapper around `get_property` that checks that the format of the reply is
+    /// `16` and parses the reply's value as a list of `u16`.
+    fn get_property16(&self, delete: bool, window: WINDOW,
+                    property: ATOM, type_: ATOM, long_offset: u32, long_length: u32)
+    -> Result<Cookie<Self, GetProperty16Reply>, ConnectionError>
+    {
+        Ok(self.get_property(delete, window, property, type_, long_offset, long_length)?.transmute())
+    }
+
+    /// Get a property of format 32 from the X11 server.
+    ///
+    /// This is a simple wrapper around `get_property` that checks that the format of the reply is
+    /// `32` and parses the reply's value as a list of `u32`.
+    fn get_property32(&self, delete: bool, window: WINDOW,
+                    property: ATOM, type_: ATOM, long_offset: u32, long_length: u32)
+    -> Result<Cookie<Self, GetProperty32Reply>, ConnectionError>
+    {
+        Ok(self.get_property(delete, window, property, type_, long_offset, long_length)?.transmute())
+    }
+
     /// Synchronise with the X11 server.
     ///
     /// This function synchronises with the X11 server. This means that all requests that are still

Alternative idea to the above patch: Add an extension trait that is only implemented for GetPropertyReply. This could avoid the extra Vec allocation by having an extra Iterator implementation. I think I like this idea more than what the above patch does...

Here is a quick implementation of this second idea. If I come up with a mechanism to include code in the modules of the generated code, the extension trait could be avoided and the new methods could be implemented directly on GetPropertyReply. I think this versions is nicer. Only downside is that parse errors are ignored, but those Should Not Happen (tm)...
diff --git a/src/wrapper.rs b/src/wrapper.rs
index d483a99..8ffe5c3 100644
--- a/src/wrapper.rs
+++ b/src/wrapper.rs
@@ -1,11 +1,66 @@
 //! Some wrappers around the generated code to simplify use.

 use std::convert::TryInto;
+use std::slice::Iter;
+use std::iter::Copied;
+use std::marker::PhantomData;

-use super::generated::xproto::{ConnectionExt as XProtoConnectionExt, InternAtomReply, ATOM};
+use super::generated::xproto::{ConnectionExt as XProtoConnectionExt, InternAtomReply, ATOM, GetPropertyReply};
 use super::connection::Connection;
 use super::cookie::{VoidCookie, Cookie};
 use super::errors::{ConnectionError, ConnectionErrorOrX11Error};
+use super::x11_utils::TryParse;
+
+pub trait GetPropertyReplyExt {
+    fn value8(&self) -> Option<Copied<Iter<u8>>>;
+    fn value16(&self) -> Option<PropertyIterator<u16>>;
+    fn value32(&self) -> Option<PropertyIterator<u32>>;
+}
+
+impl GetPropertyReplyExt for GetPropertyReply {
+    fn value8(&self) -> Option<Copied<Iter<u8>>> {
+        if self.format == 8 {
+            Some(self.value.iter().copied())
+        } else {
+            None
+        }
+    }
+
+    fn value16(&self) -> Option<PropertyIterator<u16>> {
+        if self.format == 16 {
+            Some(PropertyIterator(&self.value, PhantomData))
+        } else {
+            None
+        }
+    }
+
+    fn value32(&self) -> Option<PropertyIterator<u32>> {
+        if self.format == 32 {
+            Some(PropertyIterator(&self.value, PhantomData))
+        } else {
+            None
+        }
+    }
+}
+
+#[derive(Debug, Clone)]
+pub struct PropertyIterator<'a, T>(&'a [u8], PhantomData<T>);
+
+impl<T> Iterator for PropertyIterator<'_, T>
+where T: TryParse
+{
+    type Item = T;
+
+    fn next(&mut self) -> Option<Self::Item> {
+        match T::try_parse(self.0) {
+            Ok((value, remaining)) => {
+                self.0 = remaining;
+                Some(value)
+            },
+            Err(_) => None,
+        }
+    }
+}

 /// Extension trait that simplifies API use
 pub trait ConnectionExt: XProtoConnectionExt {


docs: update react quickstart guide

does the css reference exist in js quickstart? it should be present there as well

can we also do the same on js quickstart?

can we also do the same on js quickstart?

It already has tabs.


Maybe adjustments that may help

Thanks for creating this script, I'm using it to convert video's to h264. :)
See my gist about some edits I have done:
https://github.com/francoism90/auto-reencode/blob/master/auto-reencode
I would suggest to use ffprobe instead of mediainfo as it doesn't require any additional install as ffprobe should be in most cases included in ffmpeg. The hwaccel edits are only useful when using VA-API.
There are however some issues with directories with spaces, don't know why this happens, it could be an issue on my end. I have fixed this by using the following find command: find "${PWD}/"* ... Maybe you have a better suggestions?

Looks nice.... any thoughts on syntax to extract the video duration in the "x min y sec" format rather than in the "x sec" format?

@graysky2 Thanks, will check your changes later this week.
I'm using the ptime to calculate the bitrate when ffprobe is unable to do so, this mainly happens with MKV containers and when tested, the bitrate was almost identical to the video itself. Although I may  look into a better solution like this instead.
If using the seconds format, it will be possible to convert this into HH:MM:SS, although I'm not a bash expert, maybe using date?

OK... I read through the ffprobe man page but didn't see a way to do it natively... an easy fix: https://github.com/graysky2/auto-reencode/commit/1773fad345953fe94859a04bf2d5b891319bad3d


Added default option to create blob if not exists

fixes #165

@ChengyuanZhao ,
Thank you for contribution.
Would you mind confirming that you have signed CLA: https://cla.pivotal.io/ ?
I think we need to add Webhook integration (https://cla.pivotal.io/github/hooks/pull_request/spring) here in project for the external contributors. Unfortunately I don't have permissions to do that.
@markfisher, would you mind helping us?
Thanks

Interesting that the tests passed, but this change should have made GoogleStorageProtocolResolver not compile because of the addition to the GoogleStorageResource constructor that isn't here.

Apologies for the checkstyle commits, but I've had an issue with "mvn package" when trying to check style locally on an untouched pull of the master.
Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.6.0:exec (imports) on project spring-cloud-gcp: Command execution failed. Process exited with an error: 0 (Exit value: 0) -> [Help 1]

@ChengyuanZhao Are you running from the root of the project? Try ./mvnw clean install to make sure it's not a Maven version issue.

Thank you! that worked.
On Mon, Oct 9, 2017 at 8:47 AM, Mike Eltsufin<EMAIL_ADDRESS>wrote:

@ChengyuanZhao https://github.com/chengyuanzhao Are you running from
the root of the project? Try ./mvnw clean install to make sure it's not a
Maven version issue.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/spring-cloud/spring-cloud-gcp/pull/185#issuecomment-335147554,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Ab7p8Yl_n0jbZeTnqlNFQ_SNPb9WFjlMks5sqhXWgaJpZM4PvpNG
.

You know I came up with something like this: https://github.com/artembilan/spring-cloud-gcp/commit/f71e634601310dd43fac389fe1c35cf016dc52a9 and we don't need any Contenxt/Settings objects any more. That is for the case you really would like to have that global property. However I would like to see an answer to my request about ?autoCreate=true/false param in the resource URL.
In addition would be great to see some tests on the matter, like my one about properties = "spring.cloud.gcp.storage.autoCreateFiles=false" but with additional assertion that we really carry an option to the target GoogleStorageResource.
Thanks

I am thinking having the auto-create setting in the URL is maybe less intuitive than the global way because a user would need to keep in mind that the getOutputStream call could result in a FileNotFoundException exception if he has the autocreate=false set in the URL string, so he would need to handle that exception only in cases when he sets autocreate=false. He could get over that concern if he  decides to have that exception handling in either case (regardless of what URL setting he uses), but then why not just also use the global setting of auto-create being false?
I'm also in favor of keeping the autocreate setting in GcpStorageProperties so that the "spring.cloud.gcp.storage" settings stay in the same place (both in GcpStorageProperties instead of one of them being in there and one being in StorageAutoConfiguration). I do think it's a good idea that we make a bean for GoogleStorageProtocolResolver in there.
I'll also add the settings-to-resource test.
What do you guys think @joaoandremartins , @meltsufin

why not just also use the global setting of auto-create being false

I can live with your decision. That's fine. But we may really end up someday with the request "per resource". For example end-user may have WRITE permission in one bucket but not in another. Therefore that might autoCreate for the first one, but (s)he would like do not let to fail with permissions error, but really with the FileNotFoundException.

I added the test, but I noticed that GoogleStorageProtocolResolver can't be used until its postProcessBeanFactory method is called and it's provided a bean factory, so it might not be that useful to have it as a bean in StorageAutoConfiguration.

Pay attention also, please, to the Travis report:
home/travis/build/spring-cloud/spring-cloud-gcp/spring-cloud-gcp-starters/spring-cloud-gcp-starter-storage/src/test/java/org/springframework/cloud/gcp/storage/GoogleStorageAutoConfigurationTests.java:46: error: Line is longer than 120 characters (found 140).

so it might not be that useful to have it as a bean in StorageAutoConfiguration.

It can be but it must be as static @Bean method and must not have dependencies on other beans.
Right, just because it is BeanFactoryPostProcessor:
https://docs.spring.io/spring/docs/4.3.12.RELEASE/spring-framework-reference/html/beans.html#beans-factorybeans-annotations

You may declare @Bean methods as static, allowing for them to be called without creating their containing configuration class as an instance. This makes particular sense when defining post-processor beans, e.g. of type BeanFactoryPostProcessor or BeanPostProcessor, since such beans will get initialized early in the container lifecycle and should avoid triggering other parts of the configuration at that point.

And that's exactly why we get access to the Storage bean in the ProtocolResolver from the resolve() method - as late as possible.
And that's why I didn't do GcpStorageProperties injection in its definition but just Environment and some magic via RelaxedPropertyResolver.
But as you wish, just let's consider an inheritance option!


forc README does not show the updated command output for forc parse-bytecode

README for forc doesn't have the new formatting for forc parse-bytecode which pretty-prints the hex of the opcodes now

I assume this is referring to https://fuellabs.github.io/sway/latest/forc/commands/forc_parse-bytecode.html and not the README file in the forc directory.

I assume this is referring to https://fuellabs.github.io/sway/latest/forc/commands/forc_parse-bytecode.html and not the README file in the forc directory?

Indeed


parse flat net config in cmd delete call

This is a regression fix and would make CmdDel not to fail when ovs socket file is in different directory
other than /var/run/openvswitch/.
Signed-off-by: Periyasamy Palanisamy<EMAIL_ADDRESS>

/release-note-none

/lgtm
/approve


🐛 [Bug] RuntimeError 'bad optional access' on quantization notebook

Bug Description
There is an error when using the official quantization notebook in this repository, with the official Nvidia docker image for Pytorch, version 22.05.
To Reproduce
Steps to reproduce the behavior:

Install the missing components in the container (tensorboard, tqdm, torchvision, pytorch-quantization)
Start the jupyter notebook and execute the steps, including training
Try to compile the scripted model to TensorRT with this line (this code is already part of the notebook, it is not added by me):

compile_spec = {"inputs": [torch_tensorrt.Input([16, 3, 32, 32])],
                "enabled_precisions": torch.int8,
                }
trt_mod = torch_tensorrt.compile(qat_model, **compile_spec)

The torch_tensorrt.compile call fails with this stacktrace:
RuntimeError                              Traceback (most recent call last)
Input In [18], in <cell line: 6>()
      1 qat_model = torch.jit.load("trained_vgg16_qat.jit.pt").eval()
      3 compile_spec = {"inputs": [torch_tensorrt.Input([16, 3, 32, 32])],
      4                 "enabled_precisions": torch.int8,
      5                 }
----> 6 trt_mod = torch_tensorrt.compile(qat_model, **compile_spec)
      8 test_loss, test_acc = test(trt_mod, testing_dataloader, crit, 0)
      9 print("VGG QAT accuracy using TensorRT: {:.2f}%".format(100 * test_acc))

File /usr/local/lib/python3.8/dist-packages/torch_tensorrt/_compile.py:109, in compile(module, ir, inputs, enabled_precisions, **kwargs)
    104         logging.log(
    105             logging.Level.Info,
    106             "Module was provided as a torch.nn.Module, trying to script the module with torch.jit.script. In the event of a failure please preconvert your module to TorchScript"
    107         )
    108         ts_mod = torch.jit.script(module)
--> 109     return torch_tensorrt.ts.compile(ts_mod, inputs=inputs, enabled_precisions=enabled_precisions, **kwargs)
    110 elif target_ir == _IRType.fx:
    111     from torch_tensorrt.fx.tracer.acc_tracer import acc_tracer

File /usr/local/lib/python3.8/dist-packages/torch_tensorrt/ts/_compiler.py:113, in compile(module, inputs, device, disable_tf32, sparse_weights, enabled_precisions, refit, debug, capability, num_min_timing_iters, num_avg_timing_iters, workspace_size, calibrator, truncate_long_and_double, require_full_compilation, min_block_size, torch_executed_ops, torch_executed_modules)
     87     raise ValueError(
     88         "require_full_compilation is enabled however the list of modules and ops to run in torch is not empty. Found: torch_executed_ops: "
     89         + torch_executed_ops + ", torch_executed_modules: " + torch_executed_modules)
     91 spec = {
     92     "inputs": inputs,
     93     "device": device,
   (...)
    110     }
    111 }
--> 113 compiled_cpp_mod = _C.compile_graph(module._c, _parse_compile_spec(spec))
    114 compiled_module = torch.jit._recursive.wrap_cpp_module(compiled_cpp_mod)
    115 return compiled_module

RuntimeError: bad optional access

Expected behavior
The VGG16 scripted model should be converted to TensorRT as per the notebook instructions.
Environment

Build information about Torch-TensorRT can be found by turning on debug messages

NOTE: torch_tensorrt and pytorch with these versions are already installed in the docker image

Torch-TensorRT Version (e.g. 1.0.0): 1.2.0a0+666a2637
PyTorch Version (e.g. 1.0): 1.11.0+cu102
CPU Architecture: amd64
OS (e.g., Linux): Linux
How you installed PyTorch (conda, pip, libtorch, source): preinstalled in the Nvidia Docker container from NGC
Build command you used (if compiling from source): --
Are you using local sources or building from archives: --
Python version: 3.8.10
CUDA version: 11.0
GPU models and configuration: GeForce RTX 2080 Ti
Any other relevant information:

@peri044 can we please confirm if this is still an issue in 22.09? P1

Hi,
I tried the latest available image 22.08, and everything seems to work fine. At least the model is converted and no error are raised. I will investigate further as soon as I have more time, but for now the issue can be closed.
Thank you,
Ivan

Thanks! Closing. Please post a new issue if something else comes up.


fix: update greynoise reference links

Background
Fixes some links for Greynoise Lookup Tables that no longer point to the correct locations in the docs.

@k-bailey Sorry, I realized I forgot one lookup table! Can you give this a peek one more time? 🙏


Flutter pub get error

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce
I have tried to check all tutorial possible on YouTube but I keep seeing the process of creating a env variable for it which I have do but the error still happens anytime I try to create a new flutter project and all other requirements have been resolved
Expected results
If there's any other way to get pub get to start working 🙏🏾🙏🏾
Actual results
I would be able to carry out my tasks completely
Code sample
Code sample
[Paste your code here]

Screenshots or Video

Screenshots / Video demonstration
[Upload media here]

Logs
Logs
[Paste your logs here]

Flutter Doctor output
Doctor output
[Paste your output here]

If you would like to report an issue, please file a new issue and fill out all of the information requested in the template; we need all of that information in order to investigate.
Closing as there is nothing actionable here, given the lack of steps and error details.


Throttle Bandwidth

Hi,
I'm developing an Electron App using Aurelia that deals with the Upload and Download of files. I want this local web server to throttle its bandwidth usage as it will run in the background. I was going to use Aurelia's http-client library but I can't see any options to throttle network bandwidth. I've looked at NPM packages such as throttle and throttle-proxy which might help.
Can anyone tell me if this is possible in http-client or of any NPM packages out there that would achieve what I'm after?
Alternatively, if someone thinks this could be added easily to Aurelia's http-client I might be prepared to have a go myself and submit a PR for it.

Please ask questions on SO or Gitter rather than here. We use Github to track bugs and feature requests.
I haven't tried to accomplish specifically what you are asking, so I can't provide any further insight into how best to do that or whether it could be accomplished with our http-client (which just uses XmlHttpRequest or Fetch).

I had tried Gitter but not got far with it.
Could this be a feature request?


Deregister and republish Music Capabilities Agent

IMPORTANT: Before you create an issue, please take a look at our Issue Reporting Guide.
Briefly summarize your issue
For developing a Android companion app, want to temporarily disable Music player capabilities, when bluetooth is off or when correct bluetooth device is not connected to phone.
What is the expected behavior?
No deregister function to disable and republis capabilities
What behavior are you observing?

Provide the steps to reproduce the issue, if applicable:

Tell us about your environment:

What version of the AVS Device SDK are you using?
  <x.y.z>

Tell us what hardware you're using:

[ ] Desktop / Laptop
[ ] Raspberry Pi
[*] Other - tell us more: Android

Tell us about your OS (Type & version):

[ ] Linux
[ ] MacOS
[ ] Raspbian Stretch
[ ] Raspbian Jessy
[ ] Other - tell us more: Android

For registration there is a method CapabilitiesDelegate.registerCapabilities but no such method to deregister them

Hi @Agrahyah,
While possible, it is not recommended to dynamically de-registered capabilities based on state. This applies especially to AudioPlayer, which is a core Capability Agent upon which many cloud side components have complex (and legacy) interactions with. Doing so will likely have adverse side effects and not achieved the desired goal.
Can you elaborate further on the behavior you are trying to implement?

I want to support Alexa Music only when a specific set of devices are connected to my mobile via Bluetooth, else I want to allow access to other Alexa functionalities but not the Music.

@Agrahyah, per AVS and DCF documentation, the de-registration behavior your are seeking is not supported.  When a device connects to AVS, it must publish its supported capabilities so that AVS may correctly route and handle traffic for the device.  The closest you could get (which is supported by us) would be to exit the connection, and make a new connection to AVS publishing the different capability set.

Closing for now - please re-open if you'd like further comment.


HIGH PRIO: Grafana dashboards broken on dalco-staging

Likely due to grafana major version upgrade

@YuryHrytsuk this might be a wontfix since we want to split the existing dalco cluster into two seperated machines (one for staging, one for prod), once tip.itis.swiss is phased out and we have those machines at our disposal.
Do you agree or disagree?

@YuryHrytsuk this might be a wontfix since we want to split the existing dalco cluster into two seperated machines (one for staging, one for prod), once tip.itis.swiss is phased out and we have those machines at our disposal.
Do you agree or disagree?

It makes sense. We can set it as "Blocked". The Ops Stack test fails. Shall we comment out Grafana Dashboard test?

Yes I think this is the way to go, let us first inform or ask the team at the daily

the team agreed, this is a wontfix.


Menu icons are confusing

In the latest OnTask version, there have been considerable UI improvements to improve readability, navigation, and help guide new instructors through OnTask - great job!
One area there seems to be a bit of regression is the navigation buttons in the top left. There are some inconsistencies, I'll outline them all in one issue, and perhaps they can be split into multiple issues if you agree with the fixes.

Problem: When you enter the screen with the list of workflows, it's not entirely clear where you are (in terms of navigation, or how to return to it).

Fix: Highlight the current tab to ensure that we are in "Home"/"Your Workflows"

Clicking "Connections to SQL databases" seems to kick you out of the regular navigation and takes you to another set of menus, with no indication how to get back to the home page with list of workflows.

Fix: Move "SQL connections" to the right of the screen, as this menu item is not workflow specific (all the workflow-related menu items appear on the left. That way it'll stay in the same position whether you're in a workflow or not.

Move "About" and Contact" links to the right of the screen, near "read the manual". I feel that's a more natural place for them, especially because clicking them leads you out of the OnTask app.

Once in a workflow, it's very clear where you are at the moment, but you need to hover to figure out what the other icons mean.

Fix: Can the Menu title text exist along with the icons? That way it'll be clear that the message bubbles means "actions". By the way, hover text says 'Messages and Surveys' but the menu title says 'Actions'. I know that those are the same, but most people will just be confused. That is also a convenient fix for the first issue above: leave the text and icon there to let users know what the menus are, and blue background and white text to indicate they're in a particular tab.

Let me know what you think. I know these seem minor, and they I can probably train myself to get over it, but if this is the final UI, these changes would be helpful for new users (and those migrating from a previous version).
P.S. We just moved to OnTask v4 so expect a few more issues posted in the next few days.

Thanks for the comments. Very useful! We'll be reviewing them in the next weeks.
Here are some quick comments about some of them:

I cannot replicate the issue. The home icon appears highlighted when loading the page. Can you provide the suffix of the URL when you see this behavior? (whatever is after yoursite.com/)

The SQL connection menu is an ADMIN only feature. It is to manage (create, edit, delete) the connections with SQL databases. This is why it is available as the top menu, and why the links related to the workflow disappear. Regular users will not see this feature. Admin do.

Agree!

Pondered over this for a bit. Icons only gives a very compact representation (suitable for mobiles) and follows a bit the trend you see in other platforms of hovering to find out what is that about. Gmail, for example, relies on this. One of the top menu bars has seven icons without titles. But we can change it to include the titles...

Regarding 3) We are thinking to better place them only in the Login page (remove them from the Home Page)

hmm okay, it's like that the moment after I log in. I just noticed that 4.0.1 is the latest, we're still on 4.0 so it may have been fixed. Let's leave this until we upgrade next time.

Ah ok, that's perfect.

Login page only would be even better!

Normally I'd completely agree with you and the minimalistic approach. However in this case, there is not a logical/accepted 1:1 mapping between "Workflows" and "Home icon", "Actions" and "Chat bubbles icon", etc...

There may be some conditions that need tyding up for the icon to be highlighted. Once you see it not highlighted, copy/paste the suffix of the URL

Actually, after reading a bit more in detail what you meant, I finally got it. You are right. It belongs to the right of the menu. I could even dissappear as the functionality is part of the admin sub-site, but we'll leave it for now.

Yes, I gave it another thought and you are right. I'll toy around and see if I can maintain a tight menu :)

Good comments, keep them comming!

New menu bar

Found the glitch you reported in 1). Will be fixed in the next release.

New menu bar

nice solution, this menu change will be really helpful for the users.

Fixed in release B.4.1


Previews not working ( Body, title, date)

I’ve replaced Decap CMS for StaticCMS, I’ve done everything in the migration guide, and when I try to see the previews it doesn’t work.
as you can see in this image the body, the date don’t appear in the preview, and the preview url box, I don’t want it to appear on the preview. Here’s the link to my repo: pxrpl/blog Overall this fork is amazing but I can’t figure out how to set it up.

You can create your own previews and customize them the way you want, see https://www.staticcms.org/docs/custom-previews#editor-preview

Thanks! Do you have any examples I can check out to understand it more?

You can check out mine at https://git.cantorgymnasium.de/gcg/gcg-website/src/branch/master/static/admin/previews/page-previews if you want. They're a bit chaotic, but at least you may understand the structure.

What files? Sorry, I am not able to find the file of the preview

Ech of them are previews 😝 (I have a lot of different collections.....) I think https://git.cantorgymnasium.de/gcg/gcg-website/src/branch/master/static/admin/previews/page-previews/blog-preview.js is the most complete one, but please pay attention that I've moved some parts out to separate files (the import statements in the beginning)

Ohh hahaha thanks

Can you make a script with just shows the title, the date and the body? And uses this css: css/main.css and css/syntax.css, also the date still does not work, I can’t set the date

The date widget no longer exists. It's datetime. The date widget is a deprecated feature in DecapCMS and was removed here

Yes but I just want to display the date and not the time

datetime can do just date, just time or date and time.
Here is the example for just date: https://www.staticcms.org/docs/widget-datetime#date-picker

For the post URL, @denyskon is right. The only way to hide that is to create a custom preview.
As for the body, its not showing because of your HTML you have for your image. The markdown widget uses MDX to render its preview. MDX can handle HTML, but it very picky about all tags (in your case <img>) have a closing tag. Otherwise it will kind of silently error out.
So can your image tag to have a / at the end.
<img src="/images/uploads/2023/11ty.png " alt="Origins" height="150px" style="float: right; margin-left: 10px;" />


Add logging on errors

What

Add logging on errors

:tada: This PR is included in version 1.3.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


add citation and fix typos in readme

Thank you for the pull request! I will be glad to merge the typo fixes, however, for now, I cannot merge the citation file (not all formal details are finalized for the paper).

@Yura52 I've deleted citation file


vim suspended

In my ruby file service.rb, if I write
         "#{}/"

after '/'  input, vim get suspended.
My system is Ubuntu.

Tested on MacVim and NeoVim (both under OSX) and couldn't reproduce the issue.
We need more confirmations from Linux users and then someone should provide a fix for us. The repo is primarily aimed at OSX as its what its maintainers use. We need more Linux users testing and contributing to this repo in order to support it. Otherwise I'm afraid there's not much else we could do.
So... Any other linux users confirm this?

Maybe related to #742 ?

Maybe related to https://github.com/skwp/dotfiles/issues/727#issuecomment-277459325 ? @Lumuy could you please check?

ping @Lumuy

@lfilho
I uninstall vim (with lua), then install vim (without lua), then this problem disappear. But another question is how to install vim with lua.  Installing vim(with lua) from source code with system ruby cause the same problem.

I'm not sure, @Lumuy, as I have never had this problem. The other users of this repo seem to also not experience this (nobody else pointed this out so far). I must be some weird thing going on with you system.
If you follow the troubleshooting steps mentioned in the readme, than I personally don't know how else to help you...
Feel free to reopen this issue if you find a way to provide us a set of steps to reproduce this error, that would be great. Otherwise, our hands are tied... Thanks and good luck


Make http instrumentation use req.emit instead of response event handler

Should fix #248 and #274. Now our instrumentation for http breadcrumbs will pick up response details via monkeypatching ClientRequest.emit and watching the response event, rather than just adding a listener for the response event (which then forces us to sort-of-consume the response body to avoid eating memory, which then interacts poorly with at least aws-sdk). Went down a few of rabbit holes on this but it turned out to be pretty straightforward in the end.
I upgraded our should.js devdep while trying to make a test fail more nicely, but it didn't help and I decided I don't care about tests failing nicely since they're meant to pass; left it since it also revealed a small inconsistency in our tests.
/cc @MaxBittker @benvinegar @ide

Whoops, meant to reference #273.


vimPlugins: split helptag generation into a hook

Motivation for this change
Generating the tags via a hook improves composition as the hook can be used for lua modules too (some neovim plugins are now lua modules too).
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

This passes nixpkgs-review for me except these:
3 packages failed to build:
vimPlugins.direnv-vim vimPlugins.minimap-vim vimPlugins.telescope-fzy-native-nvim

that seem to fail on master already (so not this PR's fault).
I've rebuilt my config and checked the tags were available and they were. (you can check vim-startify for instance).

that seem to fail on master already (so not this PR's fault).

@teto, are you sure vimPlugins.telescope-fzy-native-nvim was already failing on master? It feels to me that this PR broke it.
Because when building it, two symbolic links are created during the preFixup phase to hook up the fzy-lua-native submodule.
https://github.com/NixOS/nixpkgs/blob/93a56230db31337f2bfdeb4f68544a3b59c22859/pkgs/misc/vim-plugins/overrides.nix#L551
After your refactoring, the recursive cp is now done twice.
As before here:
https://github.com/NixOS/nixpkgs/blob/93a56230db31337f2bfdeb4f68544a3b59c22859/pkgs/misc/vim-plugins/build-vim-plugin.nix#L37
And now during vimPluginGenTags as well.
https://github.com/NixOS/nixpkgs/blob/93a56230db31337f2bfdeb4f68544a3b59c22859/pkgs/misc/vim-plugins/vim-gen-doc-hook.sh#L10
I am not sure exactly what preFixupHooks is doing, but it feels to me that for the second cp in vimPluginGenTags, the preFixup phase of vimPlugins.telescope-fzy-native-nvim has already been executed and the symbolic links already exist.
https://github.com/NixOS/nixpkgs/blob/0d40f713be2d567f12cebd09f1965c30b1feea00/pkgs/misc/vim-plugins/vim-gen-doc-hook.sh#L30
And cp -r is not very gentle with symbolic links apparently. Here is the output of the build on my machine:
Executing vimPluginGenTags
cp: cannot overwrite non-directory '/nix/store/4lzcxvirpg92wfrc4v4lw9llkimn9s86-vimplugin-telescope-fzy-native.nvim-2021-04-08/share/vim-plugins/telescope-fzy-native.nvim/./deps/fzy-lua-native/lua' with directory './deps/fzy-lua-native/lua'
cp: cannot overwrite non-directory '/nix/store/4lzcxvirpg92wfrc4v4lw9llkimn9s86-vimplugin-telescope-fzy-native.nvim-2021-04-08/share/vim-plugins/telescope-fzy-native.nvim/./deps/fzy-lua-native/static' with directory './deps/fzy-lua-native/static'

Thanks for your help.

On  master 5da2746c8da3717cd5792d9804da16103af1a169, nix-build -A vimPlugins.telescope-fzf-native-nvim  as well as the purer nix build .#vimPlugins.telescope-fzf-native-nvim  work for me ?

I am referring to vimPlugins.telescope-fzy-native-nvim and no vimPlugins.telescope-fzf-native-nvim. One letter of difference between the two.
Does fzy also work for you?

ha sry, following up on our comment , I then merged a change and when trying on
98a9aba0c07b3213a85109ff97589bab4ab0b387
it succeeds I think
nix-build -A vimPlugins.telescope-fzy-native-nvim
this path will be fetched (0.00 MiB download, 0.01 MiB unpacked):
  /nix/store/qn46qfmd20rv79j520j7g70jhnz1kwzd-vimplugin-telescope-fzy-native.nvim-2021-04-08
copying path '/nix/store/qn46qfmd20rv79j520j7g70jhnz1kwzd-vimplugin-telescope-fzy-native.nvim-2021-04-08' from 'https://cache.nixos.org'...
/nix/store/qn46qfmd20rv79j520j7g70jhnz1kwzd-vimplugin-telescope-fzy-native.nvim-2021-04-08

but while looking at the issue, I found out that parinfer doesn't the rtpPath from vim-utils.nix so it should fail if not a buildtime, at runtime.
pkgs/development/tools/parinfer-rust/default.nix
24:    rtpPath=$out/share/vim-plugins/parinfer-rust
25:    mkdir -p $rtpPath/plugin
27:      plugin/parinfer.vim >$rtpPath/plugin/parinfer.vim

Sorry I am not sure I get it. What is the link between parinfer-rust and telescope-fzy-native-nvim?

none, I found an issue in parinfer-rust while looking into your issue, that's all :)


Upgrading from 0.1.0-alpha.2 to 0.5.1

I'm currently in the process of upgrading Surface from 0.1.0-alpha.2 to 0.5.1.
Besides the obvious stuff (property(...) -> prop(...), etc.), some functions seem to have disappeared, like  context(set(...)), get_form(...), or get_non_nil_props(...).
Is there a tutorial to explain how to upgrade?

@fdeage Unfortunately, there is no migrating guide. That being said, we can surely help you to migrate from Surface 0.1 to surface 0.5 (or 0.6 now).
The context API has been changed. You can take a look at the Contexts section of the Surface website.
Regarding the "form", maybe this page could help you: Form
The get_non_nil_props has been splitted into 2 functions. Look at this commit to have some example: https://github.com/surface-ui/surface/commit/cddf81884a5573f1c746c08f5b9dad8025a9efb1#diff-43d3ccbca3d7ccbc86ab6b039f606bfb2a2a76b50b3f977e6de5c0d2656ca00c  Basicly you should be able to replace get_non_nil_props with props_to_opts
Feel free to comment this issue with your findings or with your comments. I'll try to help you upgrade Surface the best I can.

Hi @Malian, thanks a lot for your response. I'm doing the upgrade this week, I let you know!

Hi @Malian , thanks a lot for your help on this (I'm fdeage coworker).
I'm not sure exactly how to use Context API ? I tried to do like the commit you sent, but got an error :
defmodule EncheresImmoWeb.Components.Form.Textarea do

  use Surface.Components.Form.Input

  import Phoenix.HTML.Form, only: [textarea: 3]
  import Surface.Components.Form.Utils

  def render(assigns) do
    props = get_non_nil_props(assigns, [:value, :class])
    event_opts = get_events_to_opts(assigns)

    ~H"""
    <InputContext assigns={{ assigns }} :let={{ form: form, field: field }}>
      {{ textarea(form, field, props ++ @opts ++ event_opts) }}
    </InputContext>
    """
  end
end

== Compilation error in file lib/encheres_immo_web/components/form/textarea.ex ==
** (Phoenix.LiveView.HTMLTokenizer.ParseError) lib/encheres_immo_web/components/form/textarea.ex:14:5: invalid tag <InputContext>
    (phoenix_live_view 0.16.4) lib/phoenix_live_view/html_engine.ex:485: Phoenix.LiveView.HTMLEngine.decompose_remote_component_tag!/3
    (phoenix_live_view 0.16.4) lib/phoenix_live_view/html_engine.ex:216: Phoenix.LiveView.HTMLEngine.handle_token/3
    (elixir 1.12.2) lib/enum.ex:2385: Enum."-reduce/3-lists^foldl/2-0-"/3
    (eex 1.12.2) lib/eex/compiler.ex:48: EEx.Compiler.generate_buffer/4
    (phoenix_live_view 0.16.4) expanding macro: Phoenix.LiveView.Helpers.sigil_H/2
    lib/encheres_immo_web/components/form/textarea.ex:13: EncheresImmoWeb.Components.Form.Textarea.render/1
    (elixir 1.12.2) lib/kernel/parallel_compiler.ex:319: anonymous fn/4 in Kernel.ParallelCompiler.spawn_workers/7
    ```

    Do you have any idea what my mistake might be?

@GoulvenC You are using the ~H sigil from Phoenix Live View instead of the new ~F sigil from Surface. We had to replace the sigil due to the introduction of the same sigil in Phoenix Live View.

@Malian Thank you for your answer, indeed I was trying to reproduce what we see on this commit: https://github.com/surface-ui/surface/commit/77132bdda7ff88f2457a14423d986e59e0470851#diff-43d3ccbca3d7ccbc86ab6b039f606bfb2a2a76b50b3f977e6de5c0d2656ca00c
I will instead rely on the syntax we can see here : https://github.com/surface-ui/surface/blob/master/lib/surface/components/form/textarea.ex
Thanks again for your time !


Canvas resolution larger than necessary on phone in portrait mode

Expected Behavior
correct canvas resolution
Actual Behavior
canvas resolution is too large on Android phone in portrait mode.
Steps to Reproduce the Problem

open app in Android phone
turn on grid
rotation is sluggish
put phone in landscape, rotation is much faster

The slowdown is due canvas being posibly 3x size needed (in portrait mode)
Specifications
I have an idea for a fix:
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">

by changing demo.js
var meta = document.createElement('meta');
meta.setAttribute('name','viewport');
meta.setAttribute('content','width=device-width, initial-scale=1, user-scalable=no');
document.getElementsByTagName('head')[0].appendChild(meta);

but controls on the top get crammed and overlap, so app layout needs to be changed for mobile too.
(maybe moving all of the controls into a single menu)
I will make a pull request after I finish rotate/pan/zoom improvements

Version: V2
Platform: Android
Environment: browser

I think the grid size can be calculated whenever a new set of geometry is being rendered. There’s a really old issue about this as well.

The grid size would be a separate issue. I used grid here just as a convenient tool to display performance hit.
The issue reported is that canvas area is much larger than needed in portrait mode.

4x when pixelRatio=2
9x when pixelRatio=3
(that is a huge difference for rendering).


Report error correctly when pattern starts with expected value

Problem
textlint-rule-prh does not report an error with a text "（図1） " and the following rule:
  # 全角括弧前後の空白を除去
  - expected: ）
    pattern: /） | ）/

Note: prh does fix the error with this rule.
Cause
This is because the following condition incorrectly ignore the error.
               // Avoid accidental match(ignore case, expected contain actual pattern)
               if (slicedText.indexOf(expected) === 0) {
                   return;
               }

In this case, variables have the following values.

slicedText:  '） '
matchedText: '） '
expected:    '）'

I understand that the condition is introduced by https://github.com/azu/textlint-rule-prh/commit/f528e780567b4cf1584182d773f3b2d499c5ac6f and https://github.com/azu/textlint-rule-prh/commit/cd739dc232e4108430bc2009a9fbb690e3dcbd88 to fix s/Web/Web/i problem and s/ベンダ/ベンダー/ problem. But prh itself does not handle s/ベンダ/ベンダー/ problem, i.e. prh corrects ベンダー to ベンダーー. So, I think s/ベンダ/ベンダー/ problem should be handled by rule (or changing prh's behavior). I believe incompatibility between prh and textlint-rule-prh is confusing.
Implementation

Handle only s/Web/Web/i problem by code.
Handle s/ベンダ/ベンダー/ problem by rule.

This fix the s/） /）/ problem.
I'll send another PR to web+db_press.yml to fix some patterns if this one is merged.

Thanks.

Handle s/ベンダ/ベンダー/ problem by rule.

I agree with this.

Release 3.0.0

Thanks for the merge. After upgrading to 3.0.1, I realized that there were several rules affected by this issue such as s/ユーザー/ユーザ/ :stuck_out_tongue:


Fix blocked ip message

Two points:

#{blah} constructs don't get interpolated in translation strings, use the [blah] construct instead.
:translation_string.t yields HTML, use :translation_string.l instead for plain text.

coverage: 94.423% (-0.007%) from 94.43%
when pulling 03a6f46caf942ebbd8d715777e644e818cbca02c on fix-blocked-ip-message
into 2887c23a53e255ac6e20709b32bee53bdd17c9dc on main.


BUG: Compatible with openai 1.1

Use sse_starlette handle fastapi stream response.

Are these changes compatible with older version of OpenAI? If not, we need to update our requirements.

Are these changes compatible with older version of OpenAI? If not, we need to update our requirements.

It's compatible with old version of OpenAI.

The issue mentioned by comment is not introduced in this PR, merge this PR first and track this issue in #624


Remove assert safety check for normal operation

Pull Request Test Coverage Report for Build 220

0 of 4 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.6%) to 62.11%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

preprocessors/preprocessors.py
0
4
0.0%

Totals

Change from base Build 218:
0.6%

Covered Lines:
2926

Relevant Lines:
4711

💛  - Coveralls


[Feature request] how to get sound

youtube,x sound no work。

Currently, sound support if very limited (https://github.com/jlesage/docker-firefox?tab=readme-ov-file#sound-support).  However, proper support is coming very soon.

Currently, sound support if very limited (https://github.com/jlesage/docker-firefox?tab=readme-ov-file#sound-support). However, proper support is coming very soon.

Streaming audio from a server-based Docker container to a browser is quite challenging; I doubt it's feasible with your current setup, as this would require integrating WebRTC, which isn't just a simple feature addition. If you need assistance, feel free to contact<EMAIL_ADDRESS>

Audio support has been added to the Docker image.


Use census 2021 data for population and cover unmapped areas of LSOA

Sourcing the population data from census 2021 and correct mapping of the LSOA boundaries to new LSOA 2021

Changes brought into main.


add new cloud function

Function that triggers user firestore
and after the user has changed avatar id, the function checks: that such an id is in the user's photo collection or a non-empty id is set, otherwise it changes to the previous identifier

@makarushka thanks for the PR, but since we already have a Firestore-triggered example (uppercaser), we're not going to accept this one


Clang Language Server server crashed: System include extraction: driver clang not found in PATH

Description
I've encountered an issue while using Clangd with a compile_commands.json file generated by CMake. The Clang Language Server (clangd) keeps crashing, and the log indicates a problem with the system include extraction: System include extraction: driver clang not found in PATH.
I've come across a similar issue reported in #1708, but the solutions provided there did not resolve my problem. I've attempted to modify the clangd.arguments in my configuration to specify the --query-driver with both a direct path and a wildcard, as follows:
--query-driver=D:\MySoftware\mingw\mingw64\bin\g++.exe
--query-driver=D:\MySoftware\mingw\mingw64\bin\*

Unfortunately, neither of these approaches has been successful in resolving the issue. I'm using the latest version of Clangd and have ensured that the clang executable is present in the specified directories.
Logs
[Info  - 9:32:07 AM] Connection to server got closed. Server will restart.
E[09:32:07.888] System include extraction: driver clang not found in PATH
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Signalled during AST worker action: Build AST
  Filename: E:/CPP_FILE/SimpleMVG/test/src/add_test.cpp
  Directory: E:/CPP_FILE/SimpleMVG/build/release/test
  Command Line: D:\MySoftware\mingw\mingw64\bin\g++.exe --driver-mode=g++ -DGTEST_LINKED_AS_SHARED_LIBRARY=1 -IE:/Libs/eigen-3.4.0/install_x64/include/eigen3 -IE:/CPP_FILE/SimpleMVG/include -isystem E:/Libs/googletest-1.15.2/install_x64/include -Wall -Wextra -Wpedantic -g -Wall -Wextra -Wshadow -Wnon-virtual-dtor -Wold-style-cast -Wcast-align -Wunused -Woverloaded-virtual -Wpedantic -Wconversion -Wsign-conversion -Wnull-dereference -Wdouble-promotion -Wformat=2 -Wmisleading-indentation -Wduplicated-cond -Wduplicated-branches -Wlogical-op -Wuseless-cast -c -std=c++17 -IE:/CPP_FILE/SimpleMVG/include/ -resource-dir=D:\MySoftware\clangd_19.1.0\lib\clang\19 -- e:\CPP_FILE\SimpleMVG\test\src\add_test.cpp
  Version: 1
[Info  - 9:32:12 AM] Connection to server got closed. Server will restart.
E[09:32:13.663] System include extraction: driver clang not found in PATH
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Signalled during AST worker action: Build AST
  Filename: E:/CPP_FILE/SimpleMVG/test/src/add_test.cpp
  Directory: E:/CPP_FILE/SimpleMVG/build/release/test
  Command Line: D:\MySoftware\mingw\mingw64\bin\g++.exe --driver-mode=g++ -DGTEST_LINKED_AS_SHARED_LIBRARY=1 -IE:/Libs/eigen-3.4.0/install_x64/include/eigen3 -IE:/CPP_FILE/SimpleMVG/include -isystem E:/Libs/googletest-1.15.2/install_x64/include -Wall -Wextra -Wpedantic -g -Wall -Wextra -Wshadow -Wnon-virtual-dtor -Wold-style-cast -Wcast-align -Wunused -Woverloaded-virtual -Wpedantic -Wconversion -Wsign-conversion -Wnull-dereference -Wdouble-promotion -Wformat=2 -Wmisleading-indentation -Wduplicated-cond -Wduplicated-branches -Wlogical-op -Wuseless-cast -c -std=c++17 -IE:/CPP_FILE/SimpleMVG/include/ -resource-dir=D:\MySoftware\clangd_19.1.0\lib\clang\19 -- e:\CPP_FILE\SimpleMVG\test\src\add_test.cpp
  Version: 1
[Error - 9:32:17 AM] The Clang Language Server server crashed 5 times in the last 3 minutes. The server will not be restarted. See the output for more information.

System information
Output of clangd --version:
clangd version 19.1.0 (https://github.com/llvm/llvm-project a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)
Features: windows+grpc
Platform: x86_64-pc-windows-msvc

Editor/LSP plugin: VSCode
Operating system: Windows
Clangd Settings:
    "clangd.path": "D:/MySoftware/clangd_19.1.0/bin/clangd.exe",

    "clangd.arguments": [
        "--all-scopes-completion",
        "--background-index",
        "--compile-commands-dir=${workspaceFolder}/build/",
        "--completion-parse=auto",
        "--completion-style=detailed",
        "--enable-config",
        "--clang-tidy",
        "--function-arg-placeholders=true",
        "--header-insertion-decorators",
        "--header-insertion=iwyu",
        "--log=error",
        "--pch-storage=disk",
        "--pretty",
        "--ranking-model=decision_forest",
        "--query-driver=D:\\MySoftware\\mingw\\mingw64\\bin\\g++.exe",
        "--j=6",
    ],
    "clangd.onConfigChanged": "restart",
    "clangd.serverCompletionRanking": true,
    "clangd.detectExtensionConflicts": true,

compile_comands.json:
[
{
  "directory": "E:/CPP_FILE/SimpleMVG/build/release",
  "command": "D:\\MySoftware\\mingw\\mingw64\\bin\\g++.exe  @CMakeFiles/SimpleMVG.dir/includes_CXX.rsp -std=c++17 -Wall -Wextra -Wpedantic O2 -g -Wall -Wextra -Wshadow -Wnon-virtual-dtor -Wold-style-cast -Wcast-align -Wunused -Woverloaded-virtual -Wpedantic -Wconversion -Wsign-conversion -Wnull-dereference -Wdouble-promotion -Wformat=2 -Wmisleading-indentation -Wduplicated-cond -Wduplicated-branches -Wlogical-op -Wuseless-cast -o CMakeFiles\\SimpleMVG.dir\\src\\add.cpp.obj -c E:\\CPP_FILE\\SimpleMVG\\src\\add.cpp",
  "file": "E:/CPP_FILE/SimpleMVG/src/add.cpp",
  "output": "CMakeFiles/SimpleMVG.dir/src/add.cpp.obj"
},
{
  "directory": "E:/CPP_FILE/SimpleMVG/build/release/test",
  "command": "D:\\MySoftware\\mingw\\mingw64\\bin\\g++.exe -DGTEST_LINKED_AS_SHARED_LIBRARY=1 @CMakeFiles/add_test_Tests.dir/includes_CXX.rsp -std=c++17 -Wall -Wextra -Wpedantic O2 -g -Wall -Wextra -Wshadow -Wnon-virtual-dtor -Wold-style-cast -Wcast-align -Wunused -Woverloaded-virtual -Wpedantic -Wconversion -Wsign-conversion -Wnull-dereference -Wdouble-promotion -Wformat=2 -Wmisleading-indentation -Wduplicated-cond -Wduplicated-branches -Wlogical-op -Wuseless-cast -o CMakeFiles\\add_test_Tests.dir\\src\\add_test.cpp.obj -c E:\\CPP_FILE\\SimpleMVG\\test\\src\\add_test.cpp",
  "file": "E:/CPP_FILE/SimpleMVG/test/src/add_test.cpp",
  "output": "test/CMakeFiles/add_test_Tests.dir/src/add_test.cpp.obj"
}
]

I don't think "System include extraction: driver clang not found in PATH" is the cause of the crash. Clangd should continue running after encountering this error (though its ability to resolve symbols will be affected, and so it's worth trying to fix the error).
Can you attach complete clangd logs, from clangd startup?
Also, can you try using clangd 18 from https://github.com/clangd/clangd/releases/tag/18.1.3? 19.1.0 is known to be affected by a crash whose fix will appear in 19.1.2.

Attached are the verbose logs from clangd startup to the error. I've tested clangd 18.1.3, which didn't crash, but the "System include extraction: driver clang not found in PATH" error persists.
I[12:56:20.775] clangd version 19.1.0 (https://github.com/llvm/llvm-project a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)
I[12:56:20.777] Features: windows+grpc
I[12:56:20.777] PID: 16624
I[12:56:20.777] Working directory: e:\CPP_FILE\SimpleMVG
I[12:56:20.777] argv[0]: D:\MySoftware\clangd\clangd_19.1.0\bin\clangd.exe
I[12:56:20.777] argv[1]: --all-scopes-completion
I[12:56:20.777] argv[2]: --background-index
I[12:56:20.777] argv[3]: --compile-commands-dir=e:\CPP_FILE\SimpleMVG/build/
I[12:56:20.777] argv[4]: --completion-parse=auto
I[12:56:20.777] argv[5]: --completion-style=detailed
I[12:56:20.777] argv[6]: --enable-config
I[12:56:20.777] argv[7]: --clang-tidy
I[12:56:20.777] argv[8]: --function-arg-placeholders=true
I[12:56:20.777] argv[9]: --header-insertion-decorators
I[12:56:20.777] argv[10]: --header-insertion=iwyu
I[12:56:20.777] argv[11]: --log=verbose
I[12:56:20.777] argv[12]: --pch-storage=disk
I[12:56:20.777] argv[13]: --pretty
I[12:56:20.777] argv[14]: --ranking-model=decision_forest
I[12:56:20.777] argv[15]: --query-driver=D:\MySoftware\mingw\mingw64\bin\g++.exe
I[12:56:20.777] argv[16]: --j=6
V[12:56:20.787] User config file is C:\Users\USER_NAME\AppData\Local\clangd\config.yaml
I[12:56:20.787] Starting LSP over stdin/stdout
V[12:56:20.788] <<< {
  "id": 0,
  "jsonrpc": "2.0",
  "method": "initialize",
  "params": {
    "capabilities": {
      "general": {
        "markdown": {
          "parser": "marked",
          "version": "1.1.0"
        },
        "positionEncodings": [
          "utf-16"
        ],
        "regularExpressions": {
          "engine": "ECMAScript",
          "version": "ES2020"
        },
        "staleRequestSupport": {
          "cancel": true,
          "retryOnContentModified": [
            "textDocument/semanticTokens/full",
            "textDocument/semanticTokens/range",
            "textDocument/semanticTokens/full/delta"
          ]
        }
      },
      "notebookDocument": {
        "synchronization": {
          "dynamicRegistration": true,
          "executionSummarySupport": true
        }
      },
      "textDocument": {
        "callHierarchy": {
          "dynamicRegistration": true
        },
        "codeAction": {
          "codeActionLiteralSupport": {
            "codeActionKind": {
              "valueSet": [
                "",
                "quickfix",
                "refactor",
                "refactor.extract",
                "refactor.inline",
                "refactor.rewrite",
                "source",
                "source.organizeImports"
              ]
            }
          },
          "dataSupport": true,
          "disabledSupport": true,
          "dynamicRegistration": true,
          "honorsChangeAnnotations": false,
          "isPreferredSupport": true,
          "resolveSupport": {
            "properties": [
              "edit"
            ]
          }
        },
        "codeLens": {
          "dynamicRegistration": true
        },
        "colorProvider": {
          "dynamicRegistration": true
        },
        "completion": {
          "completionItem": {
            "commitCharactersSupport": true,
            "deprecatedSupport": true,
            "documentationFormat": [
              "markdown",
              "plaintext"
            ],
            "insertReplaceSupport": true,
            "insertTextModeSupport": {
              "valueSet": [
                1,
                2
              ]
            },
            "labelDetailsSupport": true,
            "preselectSupport": true,
            "resolveSupport": {
              "properties": [
                "documentation",
                "detail",
                "additionalTextEdits"
              ]
            },
            "snippetSupport": true,
            "tagSupport": {
              "valueSet": [
                1
              ]
            }
          },
          "completionItemKind": {
            "valueSet": [
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9,
              10,
              11,
              12,
              13,
              14,
              15,
              16,
              17,
              18,
              19,
              20,
              21,
              22,
              23,
              24,
              25
            ]
          },
          "completionList": {
            "itemDefaults": [
              "commitCharacters",
              "editRange",
              "insertTextFormat",
              "insertTextMode"
            ]
          },
          "contextSupport": true,
          "dynamicRegistration": true,
          "editsNearCursor": true,
          "insertTextMode": 2
        },
        "declaration": {
          "dynamicRegistration": true,
          "linkSupport": true
        },
        "definition": {
          "dynamicRegistration": true,
          "linkSupport": true
        },
        "diagnostic": {
          "dynamicRegistration": true,
          "relatedDocumentSupport": false
        },
        "documentHighlight": {
          "dynamicRegistration": true
        },
        "documentLink": {
          "dynamicRegistration": true,
          "tooltipSupport": true
        },
        "documentSymbol": {
          "dynamicRegistration": true,
          "hierarchicalDocumentSymbolSupport": true,
          "labelSupport": true,
          "symbolKind": {
            "valueSet": [
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9,
              10,
              11,
              12,
              13,
              14,
              15,
              16,
              17,
              18,
              19,
              20,
              21,
              22,
              23,
              24,
              25,
              26
            ]
          },
          "tagSupport": {
            "valueSet": [
              1
            ]
          }
        },
        "foldingRange": {
          "dynamicRegistration": true,
          "foldingRange": {
            "collapsedText": false
          },
          "foldingRangeKind": {
            "valueSet": [
              "comment",
              "imports",
              "region"
            ]
          },
          "lineFoldingOnly": true,
          "rangeLimit": 5000
        },
        "formatting": {
          "dynamicRegistration": true
        },
        "hover": {
          "contentFormat": [
            "markdown",
            "plaintext"
          ],
          "dynamicRegistration": true
        },
        "implementation": {
          "dynamicRegistration": true,
          "linkSupport": true
        },
        "inactiveRegionsCapabilities": {
          "inactiveRegions": true
        },
        "inlayHint": {
          "dynamicRegistration": true,
          "resolveSupport": {
            "properties": [
              "tooltip",
              "textEdits",
              "label.tooltip",
              "label.location",
              "label.command"
            ]
          }
        },
        "inlineValue": {
          "dynamicRegistration": true
        },
        "linkedEditingRange": {
          "dynamicRegistration": true
        },
        "onTypeFormatting": {
          "dynamicRegistration": true
        },
        "publishDiagnostics": {
          "codeDescriptionSupport": true,
          "dataSupport": true,
          "relatedInformation": true,
          "tagSupport": {
            "valueSet": [
              1,
              2
            ]
          },
          "versionSupport": false
        },
        "rangeFormatting": {
          "dynamicRegistration": true
        },
        "references": {
          "dynamicRegistration": true
        },
        "rename": {
          "dynamicRegistration": true,
          "honorsChangeAnnotations": true,
          "prepareSupport": true,
          "prepareSupportDefaultBehavior": 1
        },
        "selectionRange": {
          "dynamicRegistration": true
        },
        "semanticTokens": {
          "augmentsSyntaxTokens": true,
          "dynamicRegistration": true,
          "formats": [
            "relative"
          ],
          "multilineTokenSupport": false,
          "overlappingTokenSupport": false,
          "requests": {
            "full": {
              "delta": true
            },
            "range": true
          },
          "serverCancelSupport": true,
          "tokenModifiers": [
            "declaration",
            "definition",
            "readonly",
            "static",
            "deprecated",
            "abstract",
            "async",
            "modification",
            "documentation",
            "defaultLibrary"
          ],
          "tokenTypes": [
            "namespace",
            "type",
            "class",
            "enum",
            "interface",
            "struct",
            "typeParameter",
            "parameter",
            "variable",
            "property",
            "enumMember",
            "event",
            "function",
            "method",
            "macro",
            "keyword",
            "modifier",
            "comment",
            "string",
            "number",
            "regexp",
            "operator",
            "decorator"
          ]
        },
        "signatureHelp": {
          "contextSupport": true,
          "dynamicRegistration": true,
          "signatureInformation": {
            "activeParameterSupport": true,
            "documentationFormat": [
              "markdown",
              "plaintext"
            ],
            "parameterInformation": {
              "labelOffsetSupport": true
            }
          }
        },
        "synchronization": {
          "didSave": true,
          "dynamicRegistration": true,
          "willSave": true,
          "willSaveWaitUntil": true
        },
        "typeDefinition": {
          "dynamicRegistration": true,
          "linkSupport": true
        },
        "typeHierarchy": {
          "dynamicRegistration": true
        }
      },
      "window": {
        "showDocument": {
          "support": true
        },
        "showMessage": {
          "messageActionItem": {
            "additionalPropertiesSupport": true
          }
        },
        "workDoneProgress": true
      },
      "workspace": {
        "applyEdit": true,
        "codeLens": {
          "refreshSupport": true
        },
        "configuration": true,
        "diagnostics": {
          "refreshSupport": true
        },
        "didChangeConfiguration": {
          "dynamicRegistration": true
        },
        "didChangeWatchedFiles": {
          "dynamicRegistration": true,
          "relativePatternSupport": true
        },
        "executeCommand": {
          "dynamicRegistration": true
        },
        "fileOperations": {
          "didCreate": true,
          "didDelete": true,
          "didRename": true,
          "dynamicRegistration": true,
          "willCreate": true,
          "willDelete": true,
          "willRename": true
        },
        "inlayHint": {
          "refreshSupport": true
        },
        "inlineValue": {
          "refreshSupport": true
        },
        "semanticTokens": {
          "refreshSupport": true
        },
        "symbol": {
          "dynamicRegistration": true,
          "resolveSupport": {
            "properties": [
              "location.range"
            ]
          },
          "symbolKind": {
            "valueSet": [
              1,
              2,
              3,
              4,
              5,
              6,
              7,
              8,
              9,
              10,
              11,
              12,
              13,
              14,
              15,
              16,
              17,
              18,
              19,
              20,
              21,
              22,
              23,
              24,
              25,
              26
            ]
          },
          "tagSupport": {
            "valueSet": [
              1
            ]
          }
        },
        "workspaceEdit": {
          "changeAnnotationSupport": {
            "groupsOnLabel": true
          },
          "documentChanges": true,
          "failureHandling": "textOnlyTransactional",
          "normalizesLineEndings": true,
          "resourceOperations": [
            "create",
            "rename",
            "delete"
          ]
        },
        "workspaceFolders": true
      }
    },
    "clientInfo": {
      "name": "Visual Studio Code",
      "version": "1.94.2"
    },
    "initializationOptions": {
      "clangdFileStatus": true,
      "fallbackFlags": [
        "-std=c++17",
        "-Ie:\\CPP_FILE\\SimpleMVG/include/",
        "--target=x86_64-w64-windows-gnu"
      ]
    },
    "locale": "en-us",
    "processId": 16616,
    "rootPath": "e:\\CPP_FILE\\SimpleMVG",
    "rootUri": "file:///e%3A/CPP_FILE/SimpleMVG",
    "trace": "off",
    "workspaceFolders": [
      {
        "name": "SimpleMVG",
        "uri": "file:///e%3A/CPP_FILE/SimpleMVG"
      }
    ]
  }
}

I[12:56:20.788] <-- initialize(0)
I[12:56:20.834] --> reply:initialize(0) 45 ms
V[12:56:20.834] >>> {
  "id": 0,
  "jsonrpc": "2.0",
  "result": {
    "capabilities": {
      "astProvider": true,
      "callHierarchyProvider": true,
      "clangdInlayHintsProvider": true,
      "codeActionProvider": {
        "codeActionKinds": [
          "quickfix",
          "refactor",
          "info"
        ]
      },
      "compilationDatabase": {
        "automaticReload": true
      },
      "completionProvider": {
        "resolveProvider": false,
        "triggerCharacters": [
          ".",
          "<",
          ">",
          ":",
          "\"",
          "/",
          "*"
        ]
      },
      "declarationProvider": true,
      "definitionProvider": true,
      "documentFormattingProvider": true,
      "documentHighlightProvider": true,
      "documentLinkProvider": {
        "resolveProvider": false
      },
      "documentOnTypeFormattingProvider": {
        "firstTriggerCharacter": "\n",
        "moreTriggerCharacter": []
      },
      "documentRangeFormattingProvider": true,
      "documentSymbolProvider": true,
      "executeCommandProvider": {
        "commands": [
          "clangd.applyFix",
          "clangd.applyRename",
          "clangd.applyTweak"
        ]
      },
      "foldingRangeProvider": true,
      "hoverProvider": true,
      "implementationProvider": true,
      "inactiveRegionsProvider": true,
      "inlayHintProvider": true,
      "memoryUsageProvider": true,
      "referencesProvider": true,
      "renameProvider": {
        "prepareProvider": true
      },
      "selectionRangeProvider": true,
      "semanticTokensProvider": {
        "full": {
          "delta": true
        },
        "legend": {
          "tokenModifiers": [
            "declaration",
            "definition",
            "deprecated",
            "deduced",
            "readonly",
            "static",
            "abstract",
            "virtual",
            "dependentName",
            "defaultLibrary",
            "usedAsMutableReference",
            "usedAsMutablePointer",
            "constructorOrDestructor",
            "userDefined",
            "functionScope",
            "classScope",
            "fileScope",
            "globalScope"
          ],
          "tokenTypes": [
            "variable",
            "variable",
            "parameter",
            "function",
            "method",
            "function",
            "property",
            "variable",
            "class",
            "interface",
            "enum",
            "enumMember",
            "type",
            "type",
            "unknown",
            "namespace",
            "typeParameter",
            "concept",
            "type",
            "macro",
            "modifier",
            "operator",
            "bracket",
            "label",
            "comment"
          ]
        },
        "range": false
      },
      "signatureHelpProvider": {
        "triggerCharacters": [
          "(",
          ")",
          "{",
          "}",
          "<",
          ">",
          ","
        ]
      },
      "standardTypeHierarchyProvider": true,
      "textDocumentSync": {
        "change": 2,
        "openClose": true,
        "save": true
      },
      "typeDefinitionProvider": true,
      "typeHierarchyProvider": true,
      "workspaceSymbolProvider": true
    },
    "serverInfo": {
      "name": "clangd",
      "version": "clangd version 19.1.0 (https://github.com/llvm/llvm-project a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4) windows+grpc x86_64-pc-windows-msvc"
    }
  }
}

V[12:56:21.034] <<< {
  "jsonrpc": "2.0",
  "method": "initialized",
  "params": {}
}

I[12:56:21.034] <-- initialized
V[12:56:21.053] <<< {
  "jsonrpc": "2.0",
  "method": "textDocument/didOpen",
  "params": {
    "textDocument": {
      "languageId": "cpp",
      "text": "#include \"simplemvg/add.h\"\r\n\r\n#include <gtest/gtest.h>\r\n#include <Eigen/Dense>\r\n\r\nTEST(TmpAddTest, CheckValues)\r\n{\r\n  ASSERT_EQ(smvg::Add(1, 2), 3);\r\n  EXPECT_TRUE(true);\r\n}\r\n\r\nint main(int argc, char **argv)\r\n{\r\n  ::testing::InitGoogleTest(&argc, argv);\r\n  return RUN_ALL_TESTS();\r\n}\r\n",
      "uri": "file:///e%3A/CPP_FILE/SimpleMVG/test/src/add_test.cpp",
      "version": 1
    }
  }
}

I[12:56:21.053] <-- textDocument/didOpen
E[12:56:21.104] System include extraction: driver clang not found in PATH
V[12:56:21.106] config note at e:\CPP_FILE\SimpleMVG\.clangd:1:0: Parsing config fragment
V[12:56:21.106] config note at e:\CPP_FILE\SimpleMVG\.clangd:1:0: Parsed 1 fragments from file
V[12:56:21.106] Config fragment: compiling e:\CPP_FILE\SimpleMVG\.clangd:1 -> 0x000001FA73A45E20 (trusted=false)
V[12:56:21.107] config note at C:\Users\USER_NAME\AppData\Local\clangd\config.yaml:2:0: Parsing config fragment
V[12:56:21.107] config note at C:\Users\USER_NAME\AppData\Local\clangd\config.yaml:1:0: Parsed 1 fragments from file
V[12:56:21.107] Config fragment: compiling C:\Users\USER_NAME\AppData\Local\clangd\config.yaml:2 -> 0x000001FA73A46690 (trusted=true)
I[12:56:21.107] --> textDocument/publishDiagnostics
V[12:56:21.107] >>> {
  "jsonrpc": "2.0",
  "method": "textDocument/publishDiagnostics",
  "params": {
    "diagnostics": [],
    "uri": "file:///e:/CPP_FILE/SimpleMVG/.clangd"
  }
}

Attached are the verbose logs from clangd startup to the error. I've tested clangd 18.1.3, which didn't crash, but the "System include extraction: driver clang not found in PATH" error persists.

Other than seeing this error in the log, is anything not working as expected with clangd 18 (for example, any incorrect diagnostics)?

It seems that everything is working normally, although there are some differences in the external library include file existence checks compared to clangd 19. However, I think it might be due to a misconfiguration on my part.
Without compile_commands.json and set CompileFlags: Add: ["-IE:/Libs/gflags-2.2.2/install_x64/include/"], clangd 18 said it can't find gflags/gflags_declare.h but can find gflags/gflags.h. But when I tried using Clangd 18 with compile_commands.json, it could find all the include files, so I think Clangd 18 might not have any issues for me despite that error log.