Clarify imagefolder is for small datasets

Based on feedback from here, this PR adds a note to the imagefolder loading and creating docs that imagefolder is designed for small scale image datasets.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

I think it's also reasonable to add the same note to the AudioFolder decription

Thank you ! I think "regular" is more appropriate than "small". It can easily scale to a few thousands of images - just not millions x)


test(dtslint): add bufferTime

Description:
This PR adds dtslint tests for bufferTime.
Related issue (if exists): #4093

Coverage increased (+0.2%) to 96.967% when pulling 04cfa83222bdef0c131a7f44b7963ee685f9c3e8 on timdeschryver:pr/dtslint-buffer-time into d2f7083baada8edf0696969aad7390e46ac99235 on ReactiveX:master.


Supplementary material template

Hi,
Is there a template for the supplementary material and the rebuttal?
Thank you

Please see https://github.com/eccv24/paper-template/issues/4


WiFI Streaming works but shows some RGB not LIDAR next to RGB

Hi,
I can stream just fine to my pc , but what I see on both PC and the app is NOT like the image in the github explanation. Instead of two images side by side, one LIDAR (color coded) and one RGB, I see just one RGB image, with some 'hints' of LIDAR readings as it does not look like regular RGB (see attached)
I use latest Chrome on a Windows 11 machine, iPhone Pro 14, both on same WiFi network of course.

Hi,
firstly, thanks for using Record3D.
I could not replicate the problem you are describing when running the simple RGBD demo (this repo).
The screenshot you attached looks like it was taken while running the other, more complicated Theee.js 3D demo, which creates a colored point cloud out of the RGB and color-encoded depth map video stream.
The easiest way to see the raw side-by-side RGBD stream is to:

Enable Wi-Fi streaming in Record3D in the Settings tab.
Go to the Record tab and press the red toggle button. The app will show the IP address of your iPhone/iPad.
On your computer: open your browser and enter the IP address of your iPhone which you saw in the Record3D app. The Record3D app runs a webserver on port 80 of your iPhone/iPad, which serves the simple streaming demo (contents of this repo) for convenience.
You should see a simple website with the title "Record3D live-streamed video from your iPhone/iPad" with input field pre-filled with the IP address of the iPhone/iPad, and with a "Press to start streaming". Please press the button to start streaming — you should see the raw RGBD stream with side-by-side Depth and RGB images.

Please let me know if this helped or if there are still problems with the stream. Thanks!

Thank you for the quick response!
I first tried the 'simple app' as per these instructions, and the iPhone did report it is connected and streaming the RGBD video, but the screen remained always blank (see sample screenshot).
That's why I switched to the Three.js app (https://192.168.xx.yy/3d-demo/) which does work, but does not output the video as I wish (the simple version).
Any ideas?

OK an update - with Microsoft Edge the simple demo DOES work! So it is a Chrome browser issue as you mention in the github documentation. Is there a way to bypass it? It is not critical since I can use Edge, just wondering.
Follow up quick one - is there a way to make the LIDAR display use grayscale instead of colors? or control it in some other way?
Thanks!

That's an interesting observation — perhaps Chrome does now use more security restrictions compared to Edge? Unfortunately, I am unable to install Chrome at this moment to test this myself, but may I ask if starting Chrome with the same parameters as mentioned in the section Option 3 of the following comment makes the RGBD stream visible: https://github.com/marek-simonik/record3d-simple-wifi-streaming-demo/issues/2#issuecomment-1287568104 ?
Regarding your second question about grayscale depth images: unfortunately, the side-by-side RGBD stream needs to be encoded using the HSV-based color encoding, so there is no option to make it grayscale. However, you could post-process each frame of the received video (the stream is available in a <video> tag, as can be seen from both demos) and convert it into grayscale in browser.

Thank you, that is indeed no problem. But my intent is that the grayscale will correspond to distance/depth reading - e.g. bright values to close objects and darker as they become more distant, on a  linear scale. Is that what conversion to grayscale will accomplish?
thanks

If you only want to obtain the (approximate) depth in meters, then you don't need to convert the color-encoded depth into grayscale (in fact, converting the RGB color directly into a grayscale value by averaging the 3 color components would not give you a depth value). Please see the description of the color encoding in the README of this demo (the section RGBD Video Format) to understand how depth can be decoded from color.
And here you can see an example implementation, which converts a RGB color-encoded depth pixel value into absolute distance in meters.
If your workflow requires depth maps encoded into grayscale images, then you will first need to convert the color(RGB)-encoded depth values into absolute depth in meters (using the guide linked above), and then convert the depth values in meters into grayscale pixel value in the range [0; 255] by normalizing them.
But note that conversion into grayscale depthmap will discretize the continuous range of depth values [0.0; 3.0] meters into just 255 discrete uint8 values. (This is why Record3D encodes depth into colors — so that there is much more discrete values, making the decoded absolute depth more accurate).

Thank you, very clear and I verified it worked for me.


update version number for registration, update AVERT to 2021 data, minor other changes to emissions implementation

Still working on getting the 2021 AVERT data working but GitHub won't let me convert this to a draft.

No description provided.

@hdunham would you mind updating the description of this PR? will help with review!


Add ModuleDesc as the base type of EcmaModule

I didn't move much functionality over to ModuleDesc mostly to find out
what are the exact things we will need on a ModuleDesc.
Notably, I didn't put GetName() on it to keep the door open to introduce
AssemblyDesc/EcmaAssembly (deriving from ModuleDesc).

Hi @MichalStrehovsky, I'm your friendly neighborhood .NET Foundation Pull Request Bot (You can call me DNFBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by .NET Foundation and real humans are currently evaluating your PR.
TTYL, DNFBOT;

LGTM


Suggestion: add an option for chat when toggling the plugin

When using the hot key it would be nice if we could have a toggle to make the plugin say something to the effect of "You have enabled/disabled the thrall helper info box"

The hotkey should only work to dismiss an active reminder, are you asking for a hotkey that toggles the plugin on/off completely?

Oh! Well in that case there's no need. Thats a more elegant solution. I didnt realize it did only the active reminder


Dedicated inputs for Social Media platforms (Contact Bundle)

Users should be able to add input fields for SoMe handles in Contacts bundle.
Facebook
Twitter
LinkedIn
Xing
Google+
Disqus
Snapchat
Tumblr
Pinterest
YouTube
Instagram
WhatsApp
Other

Fixed in https://github.com/sulu/sulu/pull/3354


Fibonacci implementation in java

Automated review using OpenAI for file fibonacci.java:
The file Input does not have copyright. Please add copyrights before merging.'

Automated review using OpenAI for file fibonacci.java:
There are a few changes present in the code. The variable declarations for p1, p2, p3, i, and count have been moved inside the try block in the added_changes variable. Additionally, a try-catch block has been added around the for loop in added_changes. Finally, the for loop and variable declarations have been removed from the removed_changes variable.
Overall, the code looks good and adheres to Java coding standards. There are no syntax or logical errors, and it should compile and run without any issues. One suggestion for improvement could be to add more detailed error handling in the catch block in the added_changes variable, instead of just printing the error message.

Automated review using OpenAI for file fibonacci.java:
The file Input does not have copyright. Please add copyrights before merging.'


Support for MemoryPack

Is your feature request related to a problem? Please describe.
I was trying to implement custom marshaller for MemoryPack (https://github.com/Cysharp/MemoryPack) but I quickly learned it wouldn't work. The internally used Message class could not be serialized and the reason for this is that MemoryPack does not support [DataContract] attribute nor do they plan on supporting it (https://github.com/Cysharp/MemoryPack/issues/188).
What MemoryPack requires is to make the class partial and annotate it with [MemoryPackable] attribute.
Describe the solution you'd like
Could the Message class be exposed as partial class so that it could be annotated with [MemoryPackable], I think this should allow Source Generator to do it's things (not 100% sure).
Or maybe there is some other way to solve this?
Anyways, thank you for this library. I'm enjoying it very much.

https://github.com/Cysharp/MemoryPack/issues/188
... Unlike protobuf-net and MessagePack for C#, you first need to make it partial ...

Making Messages classes partial won't help: for your project Message(<,>) is external-type. see Serialize external types.

Or maybe there is some other way to solve this?

An example of the MemoryPackMarshaller draft:
public sealed class MemoryPackJsonMarshallerFactory : IMarshallerFactory
{
    public static readonly IMarshallerFactory Default = new MemoryPackJsonMarshallerFactory();

    static MemoryPackJsonMarshallerFactory()
    {
        MemoryPackFormatterProvider.RegisterGenericType(typeof(Message<>), typeof(MessageMemoryPackFormatter<>));
        // TODO: implement MemoryPackFormatterProvider.RegisterGenericType(typeof(Message<,>), typeof(MessageMemoryPackFormatter<,>));
    }

    public Marshaller<T> CreateMarshaller<T>() => new(Serialize, Deserialize<T>);

    private static void Serialize<T>(T value, SerializationContext context)
    {
        var bufferWriter = context.GetBufferWriter();
        MemoryPackSerializer.Serialize(bufferWriter, value);
        context.Complete();
    }

    private static T Deserialize<T>(DeserializationContext context)
    {
        return MemoryPackSerializer.Deserialize<T>(context.PayloadAsReadOnlySequence())!;
    }
}

// TODO implement internal readonly partial struct SerializableMessage<T1, T2>
[MemoryPackable]
internal readonly partial struct SerializableMessage<T>
{
    internal readonly Message<T> Message;

    [MemoryPackInclude]
    public T Value => Message.Value;

    [MemoryPackConstructor]
    public SerializableMessage(T value)
    {
        Message = new Message<T>(value);
    }

    public SerializableMessage(Message<T> message)
    {
        Message = message;
    }
}

// TODO implement internal sealed class MessageMemoryPackFormatter<T1, T2>
internal sealed class MessageMemoryPackFormatter<T> : MemoryPackFormatter<Message<T>>
{
    public override void Serialize<TBufferWriter>(ref MemoryPackWriter<TBufferWriter> writer, scoped ref Message<T>? value)
    {
        ArgumentNullException.ThrowIfNull(value);

        writer.WritePackable(new SerializableMessage<T>(value));
    }

    public override void Deserialize(ref MemoryPackReader reader, scoped ref Message<T>? value)
    {
        if (reader.PeekIsNull())
        {
            throw new NotSupportedException();
        }

        var wrapped = reader.ReadPackable<SerializableMessage<T>>();
        value = wrapped.Message;
    }
}

Test
MemoryPackFormatterProvider.RegisterGenericType(typeof(Message<>), typeof(MessageMemoryPackFormatter<>));

var input = new Message<string>("foo");

var payload = MemoryPackSerializer.Serialize(input);
var actual = MemoryPackSerializer.Deserialize<Message<string>>(payload);

actual.ShouldNotBeNull();
actual.Value.ShouldBe("foo");

This does look like good solution. If you manage to craft it I can give it a good test run.

Yes I got to try it today and it works great. I also tested making wrappers for Message (empty message?) and Message<T1, T2> which worked as expected.
Do you want PR for this?

The approach will work for limited functionality: operation with a maximum of 3 input parameters.
Task DoSomething(p1, p2, p3) // will
Task DoSomething(p1, p2, p3, p4) // will not

You are welcome to create PR Examples/MemoryPackMarshaller, it would be helpful for others, something like Examples/CustomMarshaller.

The new NuGet package ServiceModel.Grpc.MemoryPackMarshaller has been released in version 1.10.1 of ServiceModel.Grpc.
Example of how to use MemoryPackMarshaller.


fix(stream): yield upstream updates for backfill after last barrier in the interval

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
Follow up of #12644 .
For backfill spanning N >= 2 barriers, we must make sure not to drop updates until the start of the next interval.
That could happen currently, if the update record's PK is larger than the current backfill position.
If that happens, the update gets dropped, even though we may read its snapshot record within the barriers.
This also means now more memory will be used, since we buffer it all the way until the first barrier of the next interval, and if there are heavy updates incoming during backfill, we could contribute to oom.

Checklist

[ ] I have written necessary rustdoc comments
[ ] I have added necessary unit tests and integration tests
[ ] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[ ] My PR contains breaking changes. (If it deprecates some features, please create a tracking issue to remove them in the future).
[ ] All checks passed in ./risedev check (or alias, ./risedev c)
[ ] My PR changes performance-critical code. (Please run macro/micro-benchmarks and show the results.)

[ ] My PR contains critical fixes that are necessary to be merged into the latest release. (Please check out the details)

Documentation

[ ] My PR needs documentation updates. (Please use the Release note section below to summarize the impact on users)

Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.

We can remove cur_barrier_upstream_processed_rows metric below these codes as well.


Can we remove skipped tests from the report?

After my test fails I want to exit the script and when the html report is generated I don't want it to include the scripts that were skipped in the report. Can anyone help with this?

Hi @viralfineos
This report will only transform the JSON into HTML.
Closing this now because it's not related to what the report can do for your


can't add a new mac address for user

I was able to add a new mac address by editing an old one. The old one did not disapear and the new one was added at the end of the list with the same name as the old one. The newly added one seems to be working normally


question in training

Hi,I'd like to know is it necessary to remove Chumpy objects from the SMPL model,should I create another python2 environment?

During training,I encounter this error:
Traceback (most recent call last):
File "train.py", line 49, in
main()
File "train.py", line 43, in main
train_dataloader=train_loader)
File "core/train/trainers/occnerf/trainer.py", line 230, in train
net_output = self.network(**data)
File "/media/data4/yejr/conda_env/occnerf/lib/python3.7/site-packages/torch/nn/modules/module.py", line 889, in _call_impl
result = self.forward(*input, **kwargs)
File "core/nets/occnerf/network.py", line 636, in forward
all_ret = self._batchify_rays(packed_ray_infos, **kwargs)
File "core/nets/occnerf/network.py", line 335, in _batchify_rays
ret = self._render_rays(rays_flat[i:i+cfg.chunk], **kwargs)
File "core/nets/occnerf/network.py", line 501, in _render_rays
non_rigid_pos_embed_fn=non_rigid_pos_embed_fn)
File "core/nets/occnerf/network.py", line 211, in _query_mlp
chunk=chunk)
File "core/nets/occnerf/network.py", line 276, in _apply_mlp_kernals
slices_y=self.slices_y.to(xyz.device)
TypeError: knn() got an unexpected keyword argument 'ranges_x'
It happends at kpknn:
knn_idxs = kpknn(xyz.repeat(4,1),
torch.cat([self.point_base, self.point_base[self.fps_index[0]], self.point_base[self.fps_index[1]],
self.point_base[self.fps_index[2]]], dim=0),
k,
#distance_limit = 0.1,
return_distance = False,
padding_mode= "empty",
ranges_x=ranges_x.to(xyz.device),
slices_x=self.slices_x.to(xyz.device),
ranges_y=self.ranges_y.to(xyz.device),
slices_y=self.slices_y.to(xyz.device)
)
and here is knn's input:
def knn(
q_points: Tensor,
s_points: Tensor,
k: int,
dilation: int = 1,
distance_limit: float = None,
return_distance: bool = False,
remove_nearest: bool = False,
transposed: bool = False,
padding_mode: str = "nearest",
inf: float = 1e10,
):
I use "https://github.com/qinzheng93/Easy-KPConv.git" you provided to install easy_kpconv,how to deal with it?

Hi, thanks for letting me know. I have now refactored the code to remove dependency on easy_kpconv, users are expected to install pykeops directly. I have also tried to clean the codes to be more organized. Please pull the newly updated repository and try again. Thank you!

Thanks for replying,and I'd like to know the CUDA version you tested on.My version is torch1.8.1+cu101,and encountered OOM issue during training,at the beginning I installed torch1.8.1+cu111 but it failed when building pytorch3d,I wonder how many memory is needed for occnerf and how to fix this problem?Thanks a lot.

Thanks for replying,and I wonder can the model train from last checkpoint?

Yes! The training can be resumed from the last checkpoint (as in the same experiment), e.g. please run:
python train.py --cfg configs/occnerf/zju_mocap/387/occnerf.yaml resume True
to load the last checkpoint and resume training.

Thanks for replying.Now I have completed the training of the model,then I use this command to render:
python run.py
--type movement
--cfg configs/occnerf/zju_mocap/387/occnerf.yaml
and I get the following error:
The rendering is saved in /media/data4/yejr/OCCNeRF/experiments/occnerf/zju_mocap/p387/occnerf/latest/movement
Traceback (most recent call last):
File "run.py", line 244, in
globals()f'run_{args.type}'
File "run.py", line 147, in run_movement
model = load_network(model)
File "run.py", line 35, in load_network
model.load_state_dict(ckpt['network'], strict=True)
File "/media/data4/yejr/conda_env/occnerf/lib/python3.7/site-packages/torch/nn/modules/module.py", line 1224, in load_state_dict
self.class.name, "\n\t".join(error_msgs)))
RuntimeError: Error(s) in loading state_dict for Network:
Unexpected key(s) in state_dict: "point_base", "point_dist", "point_counter", "cnl_mlp.module.encoder.embeddings", "cnl_mlp.module.encoder.offsets", "cnl_mlp.module.pts_linears.0.weight", "cnl_mlp.module.pts_linears.0.bias", "cnl_mlp.module.pts_linears.2.weight", "cnl_mlp.module.pts_linears.2.bias", "cnl_mlp.module.pts_linears.4.weight", "cnl_mlp.module.pts_linears.4.bias", "cnl_mlp.module.pts_linears.6.weight", "cnl_mlp.module.pts_linears.6.bias", "cnl_mlp.module.geo_linear.0.weight", "cnl_mlp.module.geo_linear.0.bias", "cnl_mlp.module.rgb_linears.0.weight", "cnl_mlp.module.rgb_linears.0.bias", "cnl_mlp.module.rgb_linears.2.weight", "cnl_mlp.module.rgb_linears.2.bias", "cnl_mlp.module.rgb_linears.4.weight", "cnl_mlp.module.rgb_linears.4.bias", "cnl_mlp.module.rgb_linears.6.weight", "cnl_mlp.module.rgb_linears.6.bias", "cnl_mlp.module.output_linear.0.weight", "cnl_mlp.module.output_linear.0.bias".
Then I try to change model.load_state_dict(ckpt['network'], strict=True) to model.load_state_dict(ckpt['network'], strict=False),and get this error:
load network from  /media/data4/yejr/OCCNeRF/experiments/occnerf/zju_mocap/p387/occnerf/latest.tar
Traceback (most recent call last):
File "run.py", line 245, in
globals()f'run_{args.type}'
File "run.py", line 148, in run_movement
model = load_network(model)
File "run.py", line 38, in load_network
return model.cuda().deploy_mlps_to_secondary_gpus()
File "core/nets/occnerf/network.py", line 147, in deploy_mlps_to_secondary_gpus
self.cnl_mlp = self.cnl_mlp.to(cfg.secondary_gpus[0])
File "/media/data4/yejr/conda_env/occnerf/lib/python3.7/site-packages/torch/nn/modules/module.py", line 948, in getattr
type(self).name, name))
AttributeError: 'Network' object has no attribute 'cnl_mlp'
I'm confused about this,is it due to different pytorch environments?I use torch1.8.1+cu111 following the requirements.txt and use one RTX3090 for training and rendering.

Sorry for the problem. It has been fixed in the latest commit. Please pull again and give it a try!

Thanks for the help,now I have done rendering.I want to compute the psnr between rendered image and GT,I use
python run.py
--type freeview
--cfg configs/occnerf/zju_mocap/387/occnerf.yaml
freeview.frame_idx 128
to render frame_128 from views without training view,I think I will get (23-1)=22 images,but I get 100 images,so some of these 100 images are virtual cameras which I have no GT to compute psnr,could you please answer this question?

To evaluate on certain frame, please use render_allview.sh the script, it will render the 23 images wrt to the given camera configurations.

I use this script and get the following error:
Traceback (most recent call last):
File "run.py", line 247, in
globals()f'run_{args.type}'
File "run.py", line 192, in run_allview
if not cfg.render_folder_name else cfg.render_folder_name)
File "run.py", line 73, in _freeview
test_loader = create_dataloader(data_type)
File "/home/yejr/Digital_Avater/OccNeRF/core/data/create_dataset.py", line 66, in create_dataloader
dataset = create_dataset(data_type=data_type, evaluate=evaluate)
File "/home/yejr/Digital_Avater/OccNeRF/core/data/create_dataset.py", line 51, in create_dataset
dataset = dataset(**args)
File "core/data/occnerf/allview.py", line 56, in init
cameras = self.load_train_cameras()
File "core/data/occnerf/allview.py", line 94, in load_train_cameras
with open(os.path.join(self.dataset_path, 'all_cameras.pkl'), 'rb') as f:
FileNotFoundError: [Errno 2] No such file or directory: '/media/data4/yejr/OCCNeRF/dataset/zju_mocap/387/all_cameras.pkl'
Is the missing file 'all_cameras.pkl' the same as  'cameras.pkl' in the dataset?

I also have some questions about the evaluation metrics.Can you provide more details about PSNR_vis and PSNR_full?As I know,PSNR_vis only compute two images on pixels non-zero,and PSNR_full compute two images on people's mask region.

Sorry for the late response and yes you are correct! Note that in the main paper we didn't report PSNR_body and SSIM_body, feel free to add those results if you find useful :)

Thanks for replying.In oreder to compare with occnerf with other method,I have tried to modify the training setting about occnerf,I set training view to 4,and sample one image every 5 frames for a total of 100 images for training.The results I get are far from your original version.Why did the result drop so baddly?

Have you recalculated the mask ratio and update the masking configures accordingly? The default masking configure is computed based on the default view and all frames. It is very likely the 100 images from view 4 may be mostly masked (leading to bad results) if you are still using the default masking configures. Please check the masking first!

Thanks for reminding me!Now I only want to change the training view from [0] to [4] and still use 570 images for training.I wonder should I change the occlusion_mid and occlusion_width since the position of people may be differ from view [0]?In view [0],you set occlusion_mid=460 and occlusion_width=70.Also for the rest subjects,is doing this necessary?

Yes, we basically decide occlusion_mid first based on the average width of visible human masks in all frames, then decide occlusion_width via binary search to make sure a certain portion of human body will be masked. This process has to be repeated for all NEW videos, include new subjects, new view etc...

I see.And can you please provide the code for the above steps?


Handle Absent Injected Wallet

Handle Absent Injected Wallet
In a situation where users don't have any injected wallet installed, developers are meant to receive a response, so as to handle what to display to users. Doing this will help increase user experience

@Realkayzee ,
I would love to work on this issue. I have extensive knowledge of React and TypeScript and expertise in building React hooks. Here is my proposed solution:

I will focus on modifying packages/core/src/connectors/injected.ts to handle absent wallets.
Update the InjectedConnector class to detect the absence of injected wallets and throw a ConnectorNotFoundError if no wallet is found.
I will ensure wallet detection is performed using the getInstalledWallets() function, which checks the window object for injected wallets.
Modify the connect() method to provide feedback when no wallet is detected.
In the React component, i will handle the ConnectorNotFoundError to display a user-friendly message or modal, guiding users to install a wallet if none is found.

This is already possible by getting the connectors list (from the useConnect hook, docs is currently wrong) and checking they're available.


Help needed with how to use the "Original combination and classification" section of Edit Taxon Name page

It isn't clear in this section that the user needs to drag the name down to the appropriate taxonomic level in order to activate the fields.  Matt suggested putting a gray box around the taxonomic levels and then putting some instructions to the left of the "set as current" entry telling the user to drag the name down accordingly.

Thanks for filing @hhopkins77
Now I'm waffling, because there is help under the "?".  In an effort to keep the interface as clean and not distracting as possible I think we should keep the help phrases there.  This requires more training of users, but it also gets them to learn to use the overlayed help if in doubt.   This is also a case where once learned it's not forgotten.
So- to keep consistent we'll keep this help phrase out for now.


Add new category: XAML Controls

The resources in this suggested category aren't full libraries, but rather single controls. I don't think they belong under UI Libraries as they are not a collection of multiple features/services/controls.
Added resources:

ExpanderUWP
PullToRefreshXaml

Also merged, thanks! :)


.NET implementation of Cucumber Expressions

Description
This is a port of the java implementaition to .NET / C# with the following differences:

The ParameterTypeRegistry is not implemented here, only defines the IParameterTypeRegistry and IParameterType interfaces
The matching logic is not implemented in the expression implementation (cucumber, regex). Currently this logic sits in SpecFlow and it is not that easy (or makes sense) to move it out.

Also added a test-dotnet GitHub action.

[x] I have read the CONTRIBUTING document.
[x] My code follows the code style of this project.
[x] I have added tests to cover my changes.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have added an entry to the "Unreleased" section of the CHANGELOG, linking to this pull request.

I think the failing JavaScript tests are unrelated to this...

I think the failing JavaScript tests are unrelated to this...

I do not reproduce the error on main, but I can reproduce it on your branch. Could you merge origin main into your branch?


Fix handling of  elements in documentation

This change only updates SA1604, SA1606, and SA1615 to properly handle
these comments.
Fixes #1603

Current coverage is 79.37%

Merging #1898 into stabilization will decrease coverage by -0.01% as of 831e1b3

@@            stabilization   #1898   diff @@
=============================================
  Files                 558     559     +1
  Stmts               34837   34998   +161
  Branches             9650    9682    +32
  Methods
=============================================
+ Hit                 27655   27781   +126
- Partial              5640    5654    +14
- Missed               1542    1563    +21

Review entire Coverage Diff as of 831e1b3

Powered by Codecov. Updated on successful CI builds.

Otherwise :+1:

:+1:


New options to disable redirect and deletion of auth cookies

We're using Caddy with the caddy-auth-jwt to protect files that are consumed by our application.
If a token is expired, we see the 401, refresh the token, and try again.
Because caddy-auth-jwt redirects, we don't get the 401. Moreover, the redirect is not a valid response when CORS is in effect (the GET request was made from a different server). A cross-site scripting error is logged.
I propose a new option in the Caddyfile to suppress the redirect and let Caddy fail the request.
In addition, I propose an option to suppress the Set-Cookie headers used to delete what would be an expired cookie, as were using the Authorization header, and not cookies.
@greenpau I have forked the repo and have implemented these changes.
localhost:2019 {
  route * {
    jwt {
      primary yes
      default deny
      allow roles anonymous guest
      option validate_bearer_header
      disable auth_redirect
      disable delete_auth_cookies
    }
    encode gzip
    file_server {
      root /Users/me/Documents/help-server/public_html
    }
  }
}

Version Information
http.authentication.hashes.bcrypt v2.2.0
http.authentication.hashes.scrypt v2.2.0
http.authentication.providers.http_basic v2.2.0
http.authentication.providers.jwt v1.2.3
http.handlers.auth_portal v0.0.0-00010101000000-000000000000
http.handlers.authentication v2.2.0

@greenpau On 2nd thought, rather than adding a disable delete_auth_cookies option, the plugin can simply delete the auth cookies that were sent in the request.

@greenpau On 2nd thought, rather than adding a disable delete_auth_cookies option, the plugin can simply delete the auth cookies that were sent in the request.

https://github.com/greenpau/caddy-auth-jwt/pull/46

https://github.com/greenpau/caddy-auth-jwt/pull/46


Understand macros

Changes
Some ideas/experiments for fixing #1302.
To get around the problem with expanding marker macros i just transform them to comments and back when reading. This way all the parsing/searching markers can stay the same.
The only tests that don't work yet are the non_final fields because those macros still get removed. Same for the default value macros. The same trick with commenting should work here.
We can't use the build scripts anymore for code-generation because they cant use cargo-expand, so we might need more changes in the tests. Code generation with just precommit works fine
Checklist

[ ] An issue to be fixed by this PR is listed above.
[ ] New tests are added to ensure new features are working. End-to-end tests are usually in the ./frb_example/pure_dart example, more specifically, rust/src/api.rs and dart/lib/main.dart.
[ ] The code generator is run and the code is formatted (via just precommit).
[ ] If this PR adds/changes features, documentations (in the ./book folder) are updated.
[ ] CI is passing.

Remark for PR creator

Justfile is a task runner for the command line interface that allows you to run shell commands from a file named justfile in your project directory. You can use Justfile after installing it. Note that commands written in justfile of this repository are expected to be run in bash, not cmd or powershell. Running just ... commands in cmd or powershell will produce errors as the syntax is not compatible. On Windows, you can use git bash if you have Git installed.
If fzyzcjy does not reply for a few days, maybe he just did not see it, so please ping him.

Good job! I will check ASAP (hopefully within a day)

The handling of the macros is probably not ideal. I just wanted to see if the idea works before spending more time.
The macro should probably operate directly on the TokenStream instead of on strings. This was just easier to implement quickly for testing the idea.
But all existing tests work now 🎉

The handling of the macros is probably not ideal. I just wanted to see if the idea works before spending more time.
The macro should probably operate directly on the TokenStream instead of on strings. This was just easier to implement quickly for testing the idea.
But all existing tests work now 🎉
At least locally. CI does not have cargo expand yet. I should probably also add a better error message that tells the user to install it in that case.

Sure! So I only briefly checked the code and skipped that part.

@fzyzcjy  do you think the macros should be changed to use the TokenStream directly? If not i would leave them as they are, because i think it also is easier to understand/adjust and doesn't really matter for performance.
I fixed the other suggestions from the review, so please check again when you have time.
I am still looking into some failing ci runs but i don't really know what the problem is there.

@fzyzcjy do you think the macros should be changed to use the TokenStream directly? If not i would leave them as they are, because i think it also is easier to understand/adjust and doesn't really matter for performance.

I guess it would be great to use token stream, since it may be more robust?
By the way, it may be helpful to add a (unit) test case to that logic, then it is clear for everyone who reads the function to immediately understand the input/output!

Just want to note that frb_macros only removes the attributes at compile time and does not affect the AST input of codegen. What you could do is try to have codegen optimistically syn::parse the input tokens as an Item, and ignore the macro if parsing fails.

updating the lock file worked for fixing the "Rust build and test" ci run on ubuntu. Is it ok to do that change?
Before changing it the ci run failed but it worked locally.

(really busy now, will try to reply today)

updating the lock file worked for fixing the "Rust build and test" ci run on ubuntu. Is it ok to do that change?
Before changing it the ci run failed but it worked locally.

What command did you run to update it? If it is just a routine update, and it is compatible with old rust, then it is ok

CI is green except for that one MacOS Integration test that was already failing before

@all-contributors please add @MnlPhlp for code,doc

Well done!


Update device-watcher to 2.9.2

Please update my adapter ioBroker.device-watcher to version 2.9.2.
This pull request was created by https://www.iobroker.dev c0726ff.

2.9.2 created 19.5.2023

200 user
OK


Add dependabot support.

Dependabot is an application that allows for the upgrading of packages automatically, through pull requests created automatically.
These can be merged at any time by someone with write access.
Keep in mind, however, that compatibility may not be fully fluent with all pull requests (i.e. major version changes, these may not be backwards compatible as specified by semantic versioning).
Dependabot is currently configured to pull packages from NPM and open up to 10 pull requests of package upgrades daily. This can be changed in accordance with its configuration.

In addition to this, you will need to enable dependabot in the "Security" tab of the repository.


Fileupload: Second drop breaks FileUpload

Package
filament/filament
Package Version
3.0.48
Laravel Version
10.23.1
Livewire Version
3.0.3
PHP Version
8.2.10
Problem description
If we have a simple FileUpload form field we cant drop two pdf files. If we drop the first everything is ok. On the second drop the first file and the second one are removed and the loading spinner in the submit button of the form won't stop spinning.
Expected behavior
It should be possible to drop two seperate files without the field to be broken.
Steps to reproduce

Create a Ressource with a fileupload field
visit the create page
drop one pdf file
drop a second file after successful upload of the first file
-> Field ist broken

Reproduction repository
https://github.com/KriKrus/filament-fileupload-drop-bug
Relevant log output
No logged errors in laravel.log or browser console

Example as video:
drop_bug.webm

multiple()?

Setting mutiple() or not won't change the behaviour

I dont understand, do you want 2 files stored at once. Or are you replacing the first file with the second file

It would be replacing the first file. Problem is, that both files wont be in the field after the second drop

Duplicate of #6775 then


Tabletop reads in empty cells as numeric 0 instead of empty string

Replicating code:
https://jsfiddle.net/oh0m5d85/
Spreadsheet used in code
https://docs.google.com/spreadsheets/d/1KF0w8f0pvoetEDcnE3VNPiE7QLhtadMMcfxn7q2u11Y/edit#gid=0
This is a big problem for me because I've been using handlebars to present the data alasql returns as html, and all those ugly zeroes really drive me nuts.
I would try solving the problem with a pull request, but I'm new to the javascript world and know nothing about how things are packaged, tested, versioned, and published.
I am currently suspecting this commit for causing this behavior:
https://github.com/agershun/alasql/commit/ee7c4afa250f4271bcafe6572ecbe7e17f125ca2
And I think this is not the way to properly handle numbers: I checked tabletop's documentation (today), and they have a special init option that allows converting numbers automatically. It is off by default, but if I'm reading the code right, alasql allows passing additional init options to tabletop. So the changes in that commit should nolonger be necessary.
Again, I'm new to github and opensource development. Please tell me if I'm formatting anything wrong, and I would deeply appreciate it if someone could tell me how this project works and how I could have fixed this with a pull request.
I really love alasql and would like to contribute.

Hi @renxida
Thank you for a very profound analysis of the problem.
Have you been poking around with node development before? Are you used to git?

@mathiasrw I know how to commit, push, and do pull requests. However, I have never done anything at all with Node (I was more of a Python person), and I don't know how this project is built or tested.
Can I just go in and try changing the code I think is wrong? How do I make alasql.min.js once I have done that? And will I need to do anything with the test cases and/or the code coverage thing I don't quite understand?
Thank you.

Sure! just poke around...
Make sure you have node (and npm) on your computer and follow https://github.com/agershun/alasql/blob/develop/CONTRIBUTING.md - let me know if you have problems getting to the first npm test to run the tests as they are now.

I'm back! Spent the morning trying to make the test.
Mocha reports tabletop to be missing. What I did was npm install tabletop, and I also added this to the beginning of the test file:
if(typeof exports === 'object') { 	var assert = require("assert"); 	var alasql = require('..'); 	var Tabletop = require('tabletop') }
What am I missing？ Should I be doing something special to allow Alasql to find tabletop?

Problem can be solved by removing var before Tabletop. I wonder why though?

Hmmm. strange...


Syntax highlighting appears worse with Clojure Sublimed?

Hi I'm using
"color_scheme": "Monokai.sublime-color-scheme",

Clojure Sublimed

In-built Clojure

Sorry I don't have more concrete description of the problem but does this look "correct"?
edit: the file I'm looking at is a .cljc file but this obviously reframe stuff here, I've tested with .clj files too and they have the same "problem"

Clojure Sublimed might highlight less semantic stuff, yes. I personally find this enough, but do not mind if someone contribute additions

Ah I see, is there a way to use the nrepl client from Clojure-Sublimed with either Tutkain or sublime's inbuilt syntaxes instead?

@slifin unfortunately not right now (See #24). This plugin relies on the syntax definition in order to do things like "find top form we're currently inside". If you use a different syntax, you'll see weird behaviour in any such form selection.

I personally find this enough

I second this, and prefer not having more colors TBH.

I also prefer the standard Clojure coloring, after getting used to semantic highlight (from Cursive in my case), the lack of them gets me lost quite often.

Close in favor of #24


[fix-#14851] [standalone]fix yaml in  standalone

Purpose of the pull request
plz close this issue : #14851

#14851

Brief change log
Verify this pull request

This pull request is code cleanup without any test coverage.

@zhuangchong PTAL


Practice: Vision Setting

An exercise to help a group of participants create a Vision statement together, using "Looks like", "Sounds like", "Feels like" prompts.
I have used this exercise in multiple contexts and have drafted the practice guide for it at: https://docs.google.com/document/d/1l4z8zox8EXFvEtYH0KR3uy78lRVILxWIZcVJEwGaHXw/edit

Thanks @chliuPivotal! Can you please fill out the template below with a bit of context? Thanks!
Summary
For a new practice: a short summary, a few sentences at most.
For changes to an already-published practice: provide the link and describe your proposed change.
Progress and Publication Status

[ ] Already published on the Tanzu Developer Center.
[ ] Published internally or elsewhere; needs review for Tanzu Developer Center publication
[ ] Partially written and/or draft in progress
[ ] Not yet written

Maturity of this Practice

[ ] Very Mature: well established and widely used by our organization and others
[ ] Mature: have successfully used many times with many teams / projects
[ ] Immature: have used several or many times but is evolving quite a bit with each usage
[ ] Incubating: have used a few times, still rapidly evolving, has promise but unsure if generally applicable across many teams

Resources
List anything here that might be helpful for writing this article.

Links to articles and blog posts
Links to presentations, videos, books, etc.

Note: If these resources are not public (i.e. an internal document), provide publicly safe information about how someone with the proper access would find these resources. Do not post insecure links or non-public information here.

Getting Started

Please review the Contribution Guide
Ready to start writing? Please use this Tanzu Practice Template

Where should I Publish This Tanzu Practice?
It depends!
The mission for this content is to help our people and others self-service their way to successful software product outcomes.
First ask “is this a Core Method?” A method can be defined as "any process or template that can be utilized to go from point A to point B, in order to help in decision-making and move the project towards success."
A Core Method should have the following properties:

Generally applicable to software product teams
Teams consistently see value from the method
Its success has been repeated
You are likely to use this method in the future, either on the same project or other projects
While everything evolves, this method is not under constant and dramatic change

If the method meets these criteria then it is a strong candidate for the Practices section of the public, open source Tanzu Developer Center.
If this method does not meet those criteria then it might be more appropriate to publish it internally to our company Confluence. For example, if you chose a Publication Status of "Not yet written" and Maturity of "Immature" above then consider documenting this method internally, applying it in more situations and have others do the same. Iterate on the method or practice until it is more stable.

Here You go:
Summary
An exercise to help a group of participants create a Vision statement together, using "Looks like", "Sounds like", "Feels like" prompts. This exercise has been used in multiple contexts - both to establish Vision, and to establish action items based on Vision.
Progress and Publication Status

[ ]  Already published on the Tanzu Developer Center.
[ ]  Published internally or elsewhere; needs review for Tanzu Developer Center publication
[X]  Partially written and/or draft in progress
[ ]  Not yet written

Draft at: https://docs.google.com/document/d/1l4z8zox8EXFvEtYH0KR3uy78lRVILxWIZcVJEwGaHXw/edit
Maturity of this Practice

[ ]  Very Mature: well established and widely used by our organization and others
[X]  Mature: have successfully used many times with many teams / projects
[ ]  Immature: have used several or many times but is evolving quite a bit with each usage
[ ]  Incubating: have used a few times, still rapidly evolving, has promise but unsure if generally applicable across many teams

Resources
List anything here that might be helpful for writing this article.

Links to articles and blog posts
Links to presentations, videos, books, etc.

Note: If these resources are not public (i.e. an internal document), provide publicly safe information about how someone with the proper access would find these resources. Do not post insecure links or non-public information here.
Getting Started

Please review the Contribution Guide
Ready to start writing? Please use this Tanzu Practice Template

Where should I Publish This Tanzu Practice?
It depends!
The mission for this content is to help our people and others self-service their way to successful software product outcomes.
First ask “is this a Core Method?” A method can be defined as "any process or template that can be utilized to go from point A to point B, in order to help in decision-making and move the project towards success."
A Core Method should have the following properties:

Generally applicable to software product teams
Teams consistently see value from the method
Its success has been repeated
You are likely to use this method in the future, either on the same project or other projects
While everything evolves, this method is not under constant and dramatic change

If the method meets these criteria then it is a strong candidate for the Practices section of the public, open source Tanzu Developer Center.
If this method does not meet those criteria then it might be more appropriate to publish it internally to our company Confluence. For example, if you chose a Publication Status of "Not yet written" and Maturity of "Immature" above then consider documenting this method internally, applying it in more situations and have others do the same. Iterate on the method or practice until it is more stable.

Thank you! I've added this to the backlog.


Keeps closing when I open it

when I try to open it it keeps closing itself please fix this issue now

Latest build works for me.
Are you saying it crashes? Or are you just double clicking the exe, and it closes the terminal right after printing its header, as is expected?
Those are CLI tools, you need to run them from a terminal.

It's closing itself for me. Also ok nevermind I didn't know.

I am running them from the apps in the bin, too.


DB Time: Hour, Shift, & Day scripts

Implement scripts that are called when the time advances to a new hour, shift, and day. The repo will have placeholder scripts with example code that does simple things like post chat messages, but they will provide the primary way to add additional customisation from the passage of time.
Data objects will be passed into the scripts giving the current time.

also adding a script that is called once for any time change


ocamlPackages.mlbdd: init at 0.7.2

Description of changes

new ocaml package, a library for working with binary decision diagrams. https://github.com/arlencox/mlbdd

The mlbdd library provides a simple, easy-to-use, easy-to-extend implementation of binary decision diagrams (BDDs) in OCaml. It is well tested and well documented. The library itself has no dependencies and is thus easy to include in applications that might, for example, be compiled with js_of_ocaml or other tools that rely on pure OCaml. It is also easier to integrate with existing projects due to its lack of dependencies.

built package size is 880KB.
Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.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.

Add a :+1: reaction to pull requests you find important.

addressed comments by @vbgl in https://github.com/NixOS/nixpkgs/pull/344136/commits/c0437071dda619f305610358dd170fd277a9c85e. commits can be squashed by me later or the committing person on push.


x265: fix build on x86_64-darwin

Update to 3.6 pulled in local definition of __rdtsc() symbol in the test suite and caused symbol clash:
/tmp/nix-build-x265-3.6.drv-0/x265_3.6/source/test/testharness.h:78:24: error: static declaration of '__rdtsc' follows non-static declaration
static inline uint32_t __rdtsc(void)
                       ^
/tmp/nix-build-x265-3.6.drv-0/x265_3.6/source/test/testharness.h:78:24: note: '__rdtsc' is a builtin with type 2

The change avoids redefinition if the compiler already provides the builtin.
Description of changes

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.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.

Add a :+1: reaction to pull requests you find important.

Ah, so after the clang change this cmake part detection doesn't suffice anymore, apparently
check_symbol_exists(__rdtsc "intrin.h" HAVE_RDTSC)

Anyway, thanks.  This does look good; I see no need for delaying.
Have you notified upstream somehow?  At a glance we could file https://bitbucket.org/multicoreware/x265_git/issues

Also proposed to apply this patch unconditionally in staging as:

https://github.com/NixOS/nixpkgs/pull/334246

For posterity: proposed the patch upstream as https://mailman.videolan.org/pipermail/x265-devel/2024-August/013796.html


Add OCP 4.15 to the operator doc

@liranr23 next time please do it on the main branch first, then release-v2.6.0 and only then release-v2.5.6 - this time, please post the changes on the other branches as well


Feature Request: --safe-mode in spyder main cli options

Safe mode is currently implemented in bootstrap.py as a convenient way to help developers to trouble shoot development issues. Safe mode opens Spyder with default settings and temporary config directory that is removed when it is closed.
This would also be a great for uses diagnosing configuration and installation issues. We also wouldn't need to suggest users need to --reset Spyder when submitting a bug. Most users wouldn't want to loose their configurations when submitting a bug.

Hi @bcolsen that sounds good to me :+1: (needing to reset config can be quite excessive and sometimes it doesn't even help to make Spyder work again). Probably if we change this we will need to update the FAQ/trouble shooting guide and also the issue template.
@spyder-ide/core-developers what do you guys think?

I agree with this. @dalthviz, since you're a senior dev, please decide who among our junior ones (Stephannie or Juanita) is going to implement this and add this issue to 4.1.4.

Hi @juanis2112 , please check this one. I think the relevant files were changes need to be done are:

...\spyder\bootstrap.py - Remove the argument and logic of the option:

https://github.com/spyder-ide/spyder/blob/833de4b928a5d2b28422d2c56a08e9217af6ad2a/bootstrap.py#L55-L57
https://github.com/spyder-ide/spyder/blob/833de4b928a5d2b28422d2c56a08e9217af6ad2a/bootstrap.py#L249-L255

...\spyder\spyder\app\cli_options.py - Add the argument of the option (probably before the --report-segfault):

https://github.com/spyder-ide/spyder/blob/833de4b928a5d2b28422d2c56a08e9217af6ad2a/spyder/app/cli_options.py#L124-L133

...\spyder\spyder\app\mainwindow.py - Add the logic to handle the argument (which should be similar to what we are doing in bootstrap.py, and should be added before the show_console option or reset option handling done in this file):

https://github.com/spyder-ide/spyder/blob/833de4b928a5d2b28422d2c56a08e9217af6ad2a/spyder/app/mainwindow.py#L3691-L3710


WINDOWS AVAILABLE NOW?

I read on README.md, it says "Note that for now, AI Feynman is supported only for Linux and Mac environments."
So, is this available on windows NOW?

Maybe try WSL ?


fix: Check out jx-requirements.yml from cluster repo upon sparse checkout

Requirements config file is needed jx-requirements.yml as well as .jx/gitops/source-config.yaml - add the former when doing a sparse checkout.
Note: tests are failing as only the "clone" step is run: https://github.com/jenkins-x-plugins/jx-gitops/blob/main/pkg/fakerunners/git_cloner.go

/cc @msvticket @Skisocks

/ok-to-test


Donut Chart Enhancements

Added onClickFn
Updated size to match latest PF ref. impl.
Removed styles in angular-pf which are now in base patternfly
Clearer ngdocs:

LGTM (after you fix the eslint issues caused by updated version of grunt-eslint)

@erundle please review and merge if happy with it ;-)


Add option to sanity check tombstones on reads/compaction

Should we have this validation enabled for utests and dtests and maybe have the dtests fail if these validations fail?

Believe this is no longer in use.


how to use .net core in visual studio 2013

Issue Title
Be as descriptive as you can with your title.
General
Provide details on the problem you are experiencing including the .NET Core version, operating system version and anything else that is relevant.
Please provide a code sample for your issue if it is relevant, either inline, link to a gist (or similar) or add it as a zipped attachment.
For some issues, you will get a quicker and better response if you file it at a more specific .NET repo. For example, if the problem is with ASP.NET Core, you are encouraged to use the aspnet/home repo.

You don't/can't. Consider VS2019 or VS2017 or vscode.

Closing as this has been answered.


LTE detected should support all tested compatible LTE modules

See list of tested units here:
https://github.com/NebraLtd/helium-miner-software/wiki/3G---4G-Module-Compatability-List
Only currently looks for 2c7c in USB vendor ID
https://github.com/NebraLtd/hm-diag/blob/1444a3b2ccfcec7c6b505ede8dd2ecfa31b1e831/diagnostics-program/main.py#L91

Perhaps it should instead use mmcli -L or similar to detect a working modem instead?

EG25G-S = ID 2c7c:0125 Quectel Wireless Solutions Co., Ltd. EC25 LTE modem
EG25G = ID 2c7c:0125 Quectel Wireless Solutions Co., Ltd. EC25 LTE modem
sim7100e = ID 1e0e:9001 Qualcomm / Option
reyax ryx9000 = ID 1bc7:1201 Telit Wireless Solutions
ec25-e = ID 2c7c:0125 Quectel Wireless Solutions Co., Ltd. EC25 LTE modem
eg21-g = ID 2c7c:0121 Quectel Wireless Solutions Co., Ltd. EC21 LTE modem
BG95-M3 = ID 2c7c:0700 Quectel Wireless Solutions Co., Ltd.
BG96 = ID 2c7c:0296 Quectel Wireless Solutions Co., Ltd. BG96 CAT-M1/NB-IoT modem
Sierra mc7700 = ID 1199:68a2 Sierra Wireless, Inc.

See also table at https://github.com/NebraLtd/Helium-Guides/blob/main/docs/outdoor-hotspot/lte-config.md

Huawei ME909s-120 = ID 12d1:15c1 Huawei Technologies Co., Ltd. ME906s LTE M.2 Module
root@c03ac42:~# mmcli -m 0
  -----------------------------
  General  |         dbus path: /org/freedesktop/ModemManager1/Modem/0
           |         device id: cbcec58bece9c9fc9b2fb5c338dbca65d2c3f715
  -----------------------------
  Hardware |      manufacturer: Huawei Technologies Co., Ltd.
           |             model: HUAWEI Mobile V7R11
           | firmware revision: 11.6<IP_ADDRESS>
           |      h/w revision: RM1ME909ASM
           |         supported: gsm-umts, lte
           |           current: gsm-umts, lte
           |      equipment id:<PHONE_NUMBER>18697
  -----------------------------
  System   |            device: /sys/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2
           |           drivers: cdc_mbim
           |            plugin: huawei
           |      primary port: cdc-wdm0
           |             ports: cdc-wdm0 (mbim), wwan0 (net)
  -----------------------------
  Status   |             state: failed
           |     failed reason: sim-missing
           |       power state: on
           |    signal quality: 0% (cached)
  -----------------------------
  Modes    |         supported: allowed: 2g, 3g, 4g; preferred: none
           |           current: allowed: any; preferred: none
  -----------------------------
  IP       |         supported: ipv4, ipv6, ipv4v6

Sierra mc7700 = ID 1199:68a2 Sierra Wireless, Inc.
root@c03ac42:~# mmcli -m 0
error: couldn't find modem

MikroTik R11e-LTE6 = ID 2cd2:0004
root@c03ac42:~# mmcli -m 0
error: couldn't find modem

sim7100e = ID 1e0e:9001 Qualcomm / Option
root@c03ac42:~# mmcli -m 3
  -----------------------------
  General  |         dbus path: /org/freedesktop/ModemManager1/Modem/3
           |         device id: da87fd78b247b9849a4a05bf663228bba0a6a0db
  -----------------------------
  Hardware |      manufacturer: QUALCOMM INCORPORATED
           |             model: SIMCOM_SIM7100E
           | firmware revision: M9615A-CETWTBZM-6.0.15255  1  [May 13 2016 01:00:00]
           |      h/w revision: 30000
           |         supported: gsm-umts, lte
           |           current: gsm-umts, lte
           |      equipment id:<PHONE_NUMBER>36586
  -----------------------------
  System   |            device: /sys/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2
           |           drivers: option1, qmi_wwan
           |            plugin: simtech
           |      primary port: cdc-wdm0
           |             ports: cdc-wdm0 (qmi), ttyUSB0 (qcdm), ttyUSB2 (at), wwan0 (net),
           |                    ttyUSB4 (audio), ttyUSB1 (gps), ttyUSB3 (at)
  -----------------------------
  Status   |             state: failed
           |     failed reason: sim-missing
           |       power state: on
           |    signal quality: 0% (cached)
  -----------------------------
  Modes    |         supported: allowed: 2g; preferred: none
           |                    allowed: 3g; preferred: none
           |                    allowed: 4g; preferred: none
           |                    allowed: 2g, 3g; preferred: 3g
           |                    allowed: 2g, 3g; preferred: 2g
           |                    allowed: 2g, 4g; preferred: 4g
           |                    allowed: 2g, 4g; preferred: 2g
           |                    allowed: 3g, 4g; preferred: 4g
           |                    allowed: 3g, 4g; preferred: 3g
           |                    allowed: 2g, 3g, 4g; preferred: 4g
           |                    allowed: 2g, 3g, 4g; preferred: 3g
           |                    allowed: 2g, 3g, 4g; preferred: 2g
           |           current: allowed: any; preferred: none
  -----------------------------
  Bands    |         supported: egsm, dcs, utran-1, utran-3, utran-5, utran-8, eutran-1,
           |                    eutran-3, eutran-7, eutran-8, eutran-20, eutran-38, eutran-40
  -----------------------------
  IP       |         supported: ipv4, ipv6, ipv4v6

reyax ryx9000 = ID 1bc7:1201 Telit Wireless Solutions
root@c03ac42:~# mmcli -m 6
  -----------------------------
  General  |         dbus path: /org/freedesktop/ModemManager1/Modem/6
           |         device id: df6a4b9224e6144271db2b66a87ffa40354fa833
  -----------------------------
  Hardware |      manufacturer: Telit
           |             model: LE910C4-EU
           | firmware revision: 25.20.678  1  [May 12 2020 00:00:00]
           |    carrier config: default
           |      h/w revision: 1.10
           |         supported: gsm-umts, lte
           |           current: gsm-umts, lte
           |      equipment id:<PHONE_NUMBER>34010
  -----------------------------
  System   |            device: /sys/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2
           |           drivers: qmi_wwan, option1
           |            plugin: telit
           |      primary port: cdc-wdm0
           |             ports: cdc-wdm0 (qmi), ttyUSB0 (unknown), ttyUSB2 (at),
           |                    ttyUSB4 (unknown), wwan0 (net), ttyUSB1 (gps), ttyUSB3 (at)
  -----------------------------
  Status   |             state: failed
           |     failed reason: sim-missing
           |       power state: on
           |    signal quality: 0% (cached)
  -----------------------------
  Modes    |         supported: allowed: 2g; preferred: none
           |                    allowed: 3g; preferred: none
           |                    allowed: 4g; preferred: none
           |                    allowed: 2g, 3g; preferred: 3g
           |                    allowed: 2g, 3g; preferred: 2g
           |                    allowed: 2g, 4g; preferred: 4g
           |                    allowed: 2g, 4g; preferred: 2g
           |                    allowed: 3g, 4g; preferred: 4g
           |                    allowed: 3g, 4g; preferred: 3g
           |                    allowed: 2g, 3g, 4g; preferred: 4g
           |                    allowed: 2g, 3g, 4g; preferred: 3g
           |                    allowed: 2g, 3g, 4g; preferred: 2g
           |           current: allowed: any; preferred: none
  -----------------------------
  Bands    |         supported: egsm, dcs, utran-1, utran-3, utran-8, eutran-1, eutran-3,
           |                    eutran-7, eutran-8, eutran-20, eutran-28
  -----------------------------
  IP       |         supported: ipv4, ipv6, ipv4v6

EG25G-S = ID 2c7c:0125 Quectel Wireless Solutions Co., Ltd. EC25 LTE modem
EG25G = ID 2c7c:0125 Quectel Wireless Solutions Co., Ltd. EC25 LTE modem
root@c03ac42:~# mmcli -m 7
  -----------------------------------
  General  |               dbus path: /org/freedesktop/ModemManager1/Modem/7
           |               device id: 702f6b8507808aa397db70ff62f718078f192531
  -----------------------------------
  Hardware |            manufacturer: QUALCOMM INCORPORATED
           |                   model: QUECTEL Mobile Broadband Module
           |       firmware revision: EG25GGBR07A08M2G
           |          carrier config: ROW_Generic_3GPP
           | carrier config revision: 0501081F
           |            h/w revision: 10000
           |               supported: gsm-umts, lte
           |                 current: gsm-umts, lte
           |            equipment id:<PHONE_NUMBER>07338
  -----------------------------------
  System   |                  device: /sys/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2
           |                 drivers: qmi_wwan, option1
           |                  plugin: quectel
           |            primary port: cdc-wdm0
           |                   ports: cdc-wdm0 (qmi), ttyUSB0 (qcdm), ttyUSB2 (at), wwan0 (net),
           |                          ttyUSB1 (gps), ttyUSB3 (at)
  -----------------------------------
  Status   |                   state: failed
           |           failed reason: sim-missing
           |             power state: on
           |          signal quality: 0% (cached)
  -----------------------------------
  Modes    |               supported: allowed: 2g; preferred: none
           |                          allowed: 3g; preferred: none
           |                          allowed: 4g; preferred: none
           |                          allowed: 2g, 3g; preferred: 3g
           |                          allowed: 2g, 3g; preferred: 2g
           |                          allowed: 2g, 4g; preferred: 4g
           |                          allowed: 2g, 4g; preferred: 2g
           |                          allowed: 3g, 4g; preferred: 4g
           |                          allowed: 3g, 4g; preferred: 3g
           |                          allowed: 2g, 3g, 4g; preferred: 4g
           |                          allowed: 2g, 3g, 4g; preferred: 3g
           |                          allowed: 2g, 3g, 4g; preferred: 2g
           |                 current: allowed: any; preferred: none
  -----------------------------------
  Bands    |               supported: egsm, dcs, pcs, g850, utran-1, utran-4, utran-6, utran-5,
           |                          utran-8, utran-2, eutran-1, eutran-2, eutran-3, eutran-4, eutran-5,
           |                          eutran-7, eutran-8, eutran-12, eutran-13, eutran-18, eutran-19,
           |                          eutran-20, eutran-25, eutran-26, eutran-28, eutran-38, eutran-39,
           |                          eutran-40, eutran-41, utran-19
  -----------------------------------
  IP       |               supported: ipv4, ipv6, ipv4v6

BG96 = ID 2c7c:0296 Quectel Wireless Solutions Co., Ltd. BG96 CAT-M1/NB-IoT modem
root@c03ac42:~# mmcli -m 8
  -----------------------------
  General  |         dbus path: /org/freedesktop/ModemManager1/Modem/8
           |         device id: 7336675dc556d5cbd1828788b1cedb83e0497392
  -----------------------------
  Hardware |      manufacturer: Quectel
           |             model: 0
           | firmware revision: BG96MAR02A07M1G
           |    carrier config: default
           |      h/w revision: 10000
           |         supported: gsm-umts, lte
           |           current: gsm-umts, lte
           |      equipment id:<PHONE_NUMBER>19483
  -----------------------------
  System   |            device: /sys/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2
           |           drivers: qmi_wwan, option1
           |            plugin: quectel
           |      primary port: cdc-wdm0
           |             ports: cdc-wdm0 (qmi), ttyUSB0 (qcdm), ttyUSB2 (at), wwan0 (net),
           |                    ttyUSB1 (gps), ttyUSB3 (at)
  -----------------------------
  Status   |             state: failed
           |     failed reason: sim-missing
           |       power state: on
           |    signal quality: 0% (cached)
  -----------------------------
  Modes    |         supported: allowed: 2g; preferred: none
           |                    allowed: 4g; preferred: none
           |                    allowed: 2g, 4g; preferred: 4g
           |                    allowed: 2g, 4g; preferred: 2g
           |           current: allowed: any; preferred: none
  -----------------------------
  Bands    |         supported: egsm, dcs, pcs, g850, eutran-1, eutran-2, eutran-3,
           |                    eutran-4, eutran-5, eutran-8, eutran-12, eutran-13, eutran-17,
           |                    eutran-18, eutran-19, eutran-20, eutran-26, eutran-28, eutran-39
  -----------------------------
  IP       |         supported: ipv4, ipv6, ipv4v6

eg21-g = ID 2c7c:0121 Quectel Wireless Solutions Co., Ltd. EC21 LTE modem
root@c03ac42:~# mmcli -m 9
  -----------------------------------
  General  |               dbus path: /org/freedesktop/ModemManager1/Modem/9
           |               device id: e3dd9d6271f145e3fb375f5b656f7c56401fe4fd
  -----------------------------------
  Hardware |            manufacturer: QUALCOMM INCORPORATED
           |                   model: QUECTEL Mobile Broadband Module
           |       firmware revision: EG21GGBR07A11M1G
           |          carrier config: ROW_Generic_3GPP
           | carrier config revision: 05040820
           |            h/w revision: 10000
           |               supported: gsm-umts, lte
           |                 current: gsm-umts, lte
           |            equipment id:<PHONE_NUMBER>96662
  -----------------------------------
  System   |                  device: /sys/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2
           |                 drivers: qmi_wwan, option1
           |                  plugin: quectel
           |            primary port: cdc-wdm0
           |                   ports: cdc-wdm0 (qmi), ttyUSB0 (qcdm), ttyUSB2 (at), wwan0 (net),
           |                          ttyUSB3 (at)
  -----------------------------------
  Status   |                   state: failed
           |           failed reason: sim-missing
           |             power state: on
           |          signal quality: 0% (cached)
  -----------------------------------
  Modes    |               supported: allowed: 2g; preferred: none
           |                          allowed: 3g; preferred: none
           |                          allowed: 4g; preferred: none
           |                          allowed: 2g, 3g; preferred: 3g
           |                          allowed: 2g, 3g; preferred: 2g
           |                          allowed: 2g, 4g; preferred: 4g
           |                          allowed: 2g, 4g; preferred: 2g
           |                          allowed: 3g, 4g; preferred: 4g
           |                          allowed: 3g, 4g; preferred: 3g
           |                          allowed: 2g, 3g, 4g; preferred: 4g
           |                          allowed: 2g, 3g, 4g; preferred: 3g
           |                          allowed: 2g, 3g, 4g; preferred: 2g
           |                 current: allowed: any; preferred: none
  -----------------------------------
  Bands    |               supported: egsm, dcs, pcs, g850, utran-1, utran-4, utran-6, utran-5,
           |                          utran-8, utran-2, eutran-1, eutran-2, eutran-3, eutran-4, eutran-5,
           |                          eutran-7, eutran-8, eutran-12, eutran-13, eutran-18, eutran-19,
           |                          eutran-20, eutran-25, eutran-26, eutran-28, eutran-38, eutran-39,
           |                          eutran-40, eutran-41, utran-19
  -----------------------------------
  IP       |               supported: ipv4, ipv6, ipv4v6

BG95-M3 = ID 2c7c:0700 Quectel Wireless Solutions Co., Ltd.
root@c03ac42:~# mmcli -L
No modems were found

ec25-e = ID 2c7c:0125 Quectel Wireless Solutions Co., Ltd. EC25 LTE modem
root@c03ac42:~# mmcli -m 10
  -----------------------------
  General  |         dbus path: /org/freedesktop/ModemManager1/Modem/10
           |         device id: a8858af7f03227a6671538dfa4c52ee6eb276586
  -----------------------------
  Hardware |      manufacturer: QUALCOMM INCORPORATED
           |             model: QUECTEL Mobile Broadband Module
           | firmware revision: EC25EFAR06A02M4G
           |    carrier config: default
           |      h/w revision: 10000
           |         supported: gsm-umts, lte
           |           current: gsm-umts, lte
           |      equipment id:<PHONE_NUMBER>49852
  -----------------------------
  System   |            device: /sys/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2
           |           drivers: qmi_wwan, option1
           |            plugin: quectel
           |      primary port: cdc-wdm0
           |             ports: cdc-wdm0 (qmi), ttyUSB0 (qcdm), ttyUSB2 (at), wwan0 (net),
           |                    ttyUSB1 (gps), ttyUSB3 (at)
  -----------------------------
  Status   |             state: failed
           |     failed reason: sim-missing
           |       power state: on
           |    signal quality: 0% (cached)
  -----------------------------
  Modes    |         supported: allowed: 2g; preferred: none
           |                    allowed: 3g; preferred: none
           |                    allowed: 4g; preferred: none
           |                    allowed: 2g, 3g; preferred: 3g
           |                    allowed: 2g, 3g; preferred: 2g
           |                    allowed: 2g, 4g; preferred: 4g
           |                    allowed: 2g, 4g; preferred: 2g
           |                    allowed: 3g, 4g; preferred: 4g
           |                    allowed: 3g, 4g; preferred: 3g
           |                    allowed: 2g, 3g, 4g; preferred: 4g
           |                    allowed: 2g, 3g, 4g; preferred: 3g
           |                    allowed: 2g, 3g, 4g; preferred: 2g
           |           current: allowed: any; preferred: none
  -----------------------------
  Bands    |         supported: egsm, dcs, utran-1, utran-5, utran-8, eutran-1, eutran-3,
           |                    eutran-5, eutran-7, eutran-8, eutran-20, eutran-38, eutran-40,
           |                    eutran-41
  -----------------------------
  IP       |         supported: ipv4, ipv6, ipv4v6

Perhaps it should instead use mmcli -L or similar to detect a working modem instead?

Nice findings! So we shouldn't really "shell out" to something like nmcli but rather integrate with Network Manager directly over DBUS. That will be far more reliable.

@marvinmarnold @vpetersson need to get this resolved in order for diagnostics to work properly with RockPi

Thanks for calling this out. I'll need to catch up on the details. Marked it for next sprint.

@posterzh can you confirm that this is resolved by #280 and close if that's the case.

Closed by https://github.com/NebraLtd/helium-miner-software/pull/280


Added a customizeErrorMessage function to the options

Added a customizeErrorMessage function to provide an ability to customize the dead url error message
Updated readme doc.
Updated tests

Hi @zivl @davidtheclark @ChristianMurphy , Can you please take a look at this PR and let me know if this is ok. Thanks!

I'm not sure it makes sense to have this at an individual lint rule level.
Take for example, if someone wanted custom message for each of the 70 some rules in https://github.com/remarkjs/remark-lint
Would all 70 packages/rules need to re-implement this same function/option? That feels off :thinking:
Maybe this could live in https://github.com/remarkjs/remark-lint/tree/main/packages/unified-lint-rule or https://github.com/remarkjs/remark-message-control ? :thinking:
/cc @wooorm

Maybe. It’s always good to look at how other linters do it. Solving this nicely would probably come with complex schema, e.g.,:
https://github.com/mysticatea/eslint-plugin-node/blob/cd97880ca2792db47c7952ac517e9e32d2ec783e/lib/rules/no-sync.js#L8-L33
However, I don’t think ESLint supports changing messages. I also don‘t really see a strong need (because there is a good alternative: use a plugin after it that changes message). And I’m not sure what the API would be to change them. A function seem off to me

Thanks @LokeshNSF!
I think adding another plugin after makes sense, if you have questions on how that would work, feel free to follow up in a discussion https://github.com/orgs/remarkjs/discussions


Airdrop missing

Hello, you have arrived at the letter N, in the distribution of the last xlm, but this time I did not receive the recompense.  My account is the following: momo_s10 can you verify?  Thanks spacedrop

Hi! Why the me not came 355XLM?
With respect, anatvas


Vsphere e2e - Labels and Taints

Issue #, if available:
Description of changes:
Adds an e2e for vSphere that checks for labels and taints added by the lifecycle api
Testing (if applicable):
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/approve


MINOR: Upgrade version of Gradle entreprise to 3.14.1 & custom user data Gradle plugin to 1.11.1

In the current minor pull request :

Upgrading Gradle entreprise to version  3.14.1
Upgrade custom user data Gradle plugin to version 1.11.1

The main motivation from this upgrade is to keep up to date this important tool for capturing build scans to get more deeply insights
To get more information about the the release notes of this version please check: https://plugins.gradle.org/plugin/com.gradle.enterprise/3.14.1
Release notes for custom user data Gradle plugin to 1.11.1:
https://plugins.gradle.org/plugin/com.gradle.common-custom-user-data-gradle-plugin/1.11.1
Notice that those upgrades are too minor true, but they will allow to use latest stable version available to prevent a drastic changes in the future upgrade of related tools and libraries
Notice there is no breaking changes
Committer Checklist (excluded from commit message)

[x] Verify design and implementation
[] Verify test coverage and CI build status
[x] Verify documentation (including upgrade notes)

The last test run had an OOM. Restarting the CI.

CI has a compilation error which is fixed by https://github.com/apache/kafka/pull/14126. Please rebase from trunk and we can start the CI run again.

@divijvaidya  I just made a rebase, wait to see the build results

@divijvaidya  The build now looks far better

Unrelated failures
[Build / JDK 11 and Scala 2.13 / kafka.server.DynamicBrokerReconfigurationTest.testThreadPoolResize()](https://ci-builds.apache.org/job/Kafka/job/kafka-pr/job/PR-14131/6/testReport/junit/kafka.server/DynamicBrokerReconfigurationTest/Build___JDK_11_and_Scala_2_13___testThreadPoolResize__/)
[Build / JDK 8 and Scala 2.12 / org.apache.kafka.connect.mirror.integration.MirrorConnectorsWithCustomForwardingAdminIntegrationTest.testReplicateSourceDefault()](https://ci-builds.apache.org/job/Kafka/job/kafka-pr/job/PR-14131/6/testReport/junit/org.apache.kafka.connect.mirror.integration/MirrorConnectorsWithCustomForwardingAdminIntegrationTest/Build___JDK_8_and_Scala_2_12___testReplicateSourceDefault__/)
[Build / JDK 8 and Scala 2.12 / kafka.server.DynamicBrokerReconfigurationTest.testThreadPoolResize()](https://ci-builds.apache.org/job/Kafka/job/kafka-pr/job/PR-14131/6/testReport/junit/kafka.server/DynamicBrokerReconfigurationTest/Build___JDK_8_and_Scala_2_12___testThreadPoolResize__/)
[Build / JDK 17 and Scala 2.13 / org.apache.kafka.common.security.authenticator.SaslAuthenticatorTest.testMultipleServerMechanisms()](https://ci-builds.apache.org/job/Kafka/job/kafka-pr/job/PR-14131/6/testReport/junit/org.apache.kafka.common.security.authenticator/SaslAuthenticatorTest/Build___JDK_17_and_Scala_2_13___testMultipleServerMechanisms__/)
[Build / JDK 17 and Scala 2.13 / kafka.server.DynamicBrokerReconfigurationTest.testThreadPoolResize()](https://ci-builds.apache.org/job/Kafka/job/kafka-pr/job/PR-14131/6/testReport/junit/kafka.server/DynamicBrokerReconfigurationTest/Build___JDK_17_and_Scala_2_13___testThreadPoolResize__/)
[Build / JDK 17 and Scala 2.13 / org.apache.kafka.controller.QuorumControllerTest.testBalancePartitionLeaders()](https://ci-builds.apache.org/job/Kafka/job/kafka-pr/job/PR-14131/6/testReport/junit/org.apache.kafka.controller/QuorumControllerTest/Build___JDK_17_and_Scala_2_13___testBalancePartitionLeaders__/)
[Build / JDK 17 and Scala 2.13 / org.apache.kafka.trogdor.coordinator.CoordinatorTest.testTaskRequestWithOldStartMsGetsUpdated()](https://ci-builds.apache.org/job/Kafka/job/kafka-pr/job/PR-14131/6/testReport/junit/org.apache.kafka.trogdor.coordinator/CoordinatorTest/Build___JDK_17_and_Scala_2_13___testTaskRequestWithOldStartMsGetsUpdated__/)
[Build / JDK 20 and Scala 2.13 / kafka.server.DynamicBrokerReconfigurationTest.testThreadPoolResize()](https://ci-builds.apache.org/job/Kafka/job/kafka-pr/job/PR-14131/6/testReport/junit/kafka.server/DynamicBrokerReconfigurationTest/Build___JDK_20_and_Scala_2_13___testThreadPoolResize__/)


latest supported anthos version

i would like to be able to specify the "latest supported version" of anthos.  is there an automated way of obtaining this info?
if not, i propose that there should be a text file, perhaps named ANTHOS_SUPPORTED_VERSIONS.txt.  its contents would be one line per supported version, sorted by version number.
eg,
1.1.2-gke.0
1.2.0-gke.6
1.2.1-gke.4
1.2.2-gke.2
1.3.0-gke.16
1.3.1-gke.0
1.3.2-gke.1
1.4.0-gke.13
1.4.1-gke.1
1.5.0-gke.27
this is basically the same as what's in the README, only in raw form rather than markdown.

as a user i have found that not all revisions of this repo work with all versions of anthos.  i feel it would be helpful to also list for each anthos version, the specific revision(s) of the repo that it has been tested with.  of course, ideally each new version of the repo would be tested against every anthos version.  but short of that, it would be helpful to give the user some idea of which revisions of the repo are compatible with which versions of anthos.

as a user i have found that not all revisions of this repo work with all versions of anthos.  i feel it would be helpful to also list for each anthos version, the specific revision(s) of the repo that it has been tested with.  of course, ideally each new version of the repo would be tested against every anthos version.  but short of that, it would be helpful to give the user some idea of which revisions of the repo are compatible with which versions of anthos.

@dfong you might try to leverage our latest Anthos on Bare Metal terraform module.
https://registry.terraform.io/modules/equinix/anthos-on-baremetal/metal/latest

@dfong you might try to leverage our latest Anthos on Bare Metal terraform module.
https://registry.terraform.io/modules/equinix/anthos-on-baremetal/metal/latest

@dfong this data might be best tracked as a Terraform variable. We could track these as two separate variables, supported versions and latest version.
If this is data that you think you may need script access to, we could also consider using the .tf.json file format: https://www.terraform.io/docs/configuration/syntax-json.html#variable-blocks. I would probably just include these variables in variables.tf otherwise.

@dfong this data might be best tracked as a Terraform variable. We could track these as two separate variables, supported versions and latest version.
If this is data that you think you may need script access to, we could also consider using the .tf.json file format: https://www.terraform.io/docs/configuration/syntax-json.html#variable-blocks. I would probably just include these variables in variables.tf otherwise.

@jacobsmith928 ,

you might try to leverage our latest Anthos on Bare Metal terraform module.

unfortunately this isn't easy for me to do since the baremetal stuff seems to use different conventions than google-anthos.
also i need anthos 1.4 and 1.5 which doesn't seem to be supported by baremetal.

@jacobsmith928 ,

you might try to leverage our latest Anthos on Bare Metal terraform module.

unfortunately this isn't easy for me to do since the baremetal stuff seems to use different conventions than google-anthos.
also i need anthos 1.4 and 1.5 which doesn't seem to be supported by baremetal.

@displague ,

data might be best tracked as a Terraform variable. We could track these as two separate variables, supported versions and latest version.

json would be fine for my purposes, but i'm not sure about terraform.  is there a reasonable way to access a terraform variable outside terraform?
alternatively, branching or tagging would work for me.  that is, if each anthos version had a tag like "tested-with-VERSION" .

@displague ,

data might be best tracked as a Terraform variable. We could track these as two separate variables, supported versions and latest version.

json would be fine for my purposes, but i'm not sure about terraform.  is there a reasonable way to access a terraform variable outside terraform?
alternatively, branching or tagging would work for me.  that is, if each anthos version had a tag like "tested-with-VERSION" .

I tried v1.6 of Anthos but got some errors around node affinity. Maybe it was transient will have to retry.

I tried v1.6 of Anthos but got some errors around node affinity. Maybe it was transient will have to retry.

alternatively, branching or tagging would work for me. that is, if each anthos version had a tag like "tested-with-VERSION" .

This particular format of tags would not be unique and would need to be moved around commits.

This is what I imagine a PR for this would look like. I'm don't know what the current set of versions should be.
// anthos-version-compatibility.tf.json
{
  "variable": {
    "compatible_anthos_versions": {
      "default": ["", "", ""]
    }
    "latest_anthos_version": {
      "default": ""
    }
  }
}

alternatively, branching or tagging would work for me. that is, if each anthos version had a tag like "tested-with-VERSION" .

This particular format of tags would not be unique and would need to be moved around commits.

This is what I imagine a PR for this would look like. I'm don't know what the current set of versions should be.
// anthos-version-compatibility.tf.json
{
  "variable": {
    "compatible_anthos_versions": {
      "default": ["", "", ""]
    }
    "latest_anthos_version": {
      "default": ""
    }
  }
}

@displague ,

This particular format of tags would not be unique and would need to be moved around commits.

i don't understand your objections.  suppose i need anthos 1.4.  i want to check out a version of google-anthos that is known to work with 1.4.  under my proposed scheme, i'd be able to do that by looking for tags of the form "tested-with-1.4*" and checking out one of them.
of course it is true that the tags would need to be "moved" as further testing is done.  the ability to move the tags seems like a feature, not a bug.
one argument for using tags rather than a terraform source file is, suppose we have an automated CI system in the future.  you would need to check in the source file, which superficially would look like a change requiring a rebuild.  i think the info about which versions have been tested is sort of metadata.

@displague ,

This particular format of tags would not be unique and would need to be moved around commits.

i don't understand your objections.  suppose i need anthos 1.4.  i want to check out a version of google-anthos that is known to work with 1.4.  under my proposed scheme, i'd be able to do that by looking for tags of the form "tested-with-1.4*" and checking out one of them.
of course it is true that the tags would need to be "moved" as further testing is done.  the ability to move the tags seems like a feature, not a bug.
one argument for using tags rather than a terraform source file is, suppose we have an automated CI system in the future.  you would need to check in the source file, which superficially would look like a change requiring a rebuild.  i think the info about which versions have been tested is sort of metadata.


Add new Sql VA API

Changelog
Add a changelog entry for this PR by answering the following questions:

What's the purpose of the update?

[X] new service onboarding
[ ] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[ ] Other, please clarify - fix lint diff

When are you targeting to deploy the new service/feature to public regions? Please provide the date or, if the date is not yet available, the month.
When do you expect to publish the swagger? Please provide date or, the the date is not yet available, the month. 05/2022
If updating an existing version, please select the specific language SDKs and CLIs that must be refreshed after the swagger is published.

[ ] SDK of .NET (need service team to ensure code readiness)
[ ] SDK of Python
[ ] SDK of Java
[ ] SDK of Js
[ ] SDK of Go
[ ] PowerShell
[ ] CLI
[ ] Terraform
[X] No refresh required for updates in this PR

Contribution checklist:

[ ] I commit to follow the Breaking Change Policy of "no breaking changes"
[ ] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

Applicability: :warning:
If your changes encompass only the following scenarios, you should SKIP this section, as these scenarios do not require ARM review.

Change to data plane APIs
Adding new properties
All removals

Otherwise your PR may be subject to ARM review requirements. Complete the following:

[X] Check this box if any of the following apply to the PR so that label "WaitForARMFeedback" will be added automatically to begin ARM API Review. Failure to comply may result in delays to the manifest.

Adding a new service

Adding new API(s)

Adding a new API version
-[ ] To review changes efficiently, ensure you are using OpenAPIHub to initialize the PR for adding a new version. More details, refer to the wiki.

[ ] Ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If any of the following scenarios apply to the PR, request approval from the Breaking Change Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in a stable version
[ ] Removing properties in a stable version
[ ] Removing API version(s) in a stable version
[ ] Updating API in a stable or public preview version with Breaking Change Validation errors
[ ] Updating API(s) in public preview over 1 year (refer to Retirement of Previews)

Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki.
Please follow the link to find more details on PR review process.

it seems you need to address the lintDiff errors which are introduced by your VA spec files.

@shimonar1171, pls see https://aka.ms/ci-fix for guidance of CI check fixes.

This PR is not ready for review. Please fix the changelog and set the correct checkboxes or we do not know how to review this

there are too many VA json files. can we group them into one or two operation groups: i.e DatabaseSqlVulnerabilityAssessment.json or SqlVulnerabilityAssessment.json or just VulnerabilityAssessment.json?
The operation group def is in the beginning of the controller impl file in DSMainDev repo: it starts as: "[public(xyz"

In addition, please do not change the PR description template. The github bot uses it to trigger multiple tags and reviewers

there are too many VA json files. can we group them into one or two operation groups: i.e DatabaseSqlVulnerabilityAssessment.json or SqlVulnerabilityAssessment.json or just VulnerabilityAssessment.json? The operation group def is in the beginning of the controller impl file in DSMainDev repo: it starts as: "[public(xyz"

This is a different APIs, the DatabaseSqlVulnerabilityAssessment is on a database lever and the SqlVulnerabilityAssessment is on a server level.
Server level - /subscriptions/{{Subscription}}/resourceGroups/{{ResourceGroupsName}}/providers/Microsoft.Sql/servers/sqlVulnerabilityAssessments/defualt
Database level - /subscriptions/{{Subscription}}/resourceGroups/{{ResourceGroupsName}}/providers/Microsoft.Sql/servers/{{ServerName}}/databases/{{Database}}/sqlVulnerabilityAssessments/defualt

/azp run

raosuhas,
The PR is ready to review. can you please approve it?

it seems ARM has signed off


Lots of ResourceWarnings when testing

When I run my test suite I see lots of ResourceWarnings like this:
/usr/local/lib/python3.6/site-packages/sanic/server.py:471: ResourceWarning: unclosed resource <TCPTransport closed=False reading=True 0x31c3088>
  loop.close()

Is this something I'm doing wrong? I'm afraid I don't know the sanic code well enough yet to debug myself.
Thanks for your help!

+1
I'm getting the same errors. It's strange, my tests were not producing them for a long time, but just recently they started appearing.

You'll probably find more helpful results online with ResourceWarning: unclosed transport <_SelectorSocketTransport ....
The warning from OP is produced by uvloop which seems less common. It looks like roughly the solution is to do an await asyncio.sleep(0) in between closing a transport and letting it get garbage collected.

Yeah, the reason is: after calling transport.close() asyncio needs for extra loop iteration for actual closing. and It's by design. After adding await asyncio.sleep(0) just before loop closing should be able to swipe warnings.


add Low Power Sensor Fusion (SFLP) support in lsm6dsv16x sensor driver

Add the Sensor Fusion Low Power (SFLP) FIFO streaming capability, using RTIO. The decode function is now aware of parsing following FIFO tags:
    - LSM6DSV16X_SFLP_GAME_ROTATION_VECTOR_TAG
    - LSM6DSV16X_SFLP_GYROSCOPE_BIAS_TAG
    - LSM6DSV16X_SFLP_GRAVITY_VECTOR_TAG

To activate SFLP the user should put in DT the proper configuration. For example, to activate a 60Hz SFLP FIFO batching rate of game rotation vector, gravity vector and gbias components, the user should add in DT the following:
      sflp-odr = <LSM6DSV16X_DT_SFLP_ODR_AT_60Hz>;
      sflp-fifo-enable = <LSM6DSV16X_DT_SFLP_FIFO_GAME_ROTATION_GRAVITY_GBIAS>;

The data are accessed thru three new sensor channels:
    - SENSOR_CHAN_GAME_ROTATION_VECTOR

      The "game rotation vector" reports the four components x/y/z/w
      (quaternions) of the unit vector representing a 3D spatial
      rotation or orientation.

    - SENSOR_CHAN_GRAVITY_VECTOR

      The "gravity vector" reports the three axis x/y/z of the gravity
      vector separated from the linear acceleration components.
      The measurement unit is m/s^2.

    - SENSOR_CHAN_GBIAS_XYZ

      The "gbias" reports the gyroscope offset x/y/z components.
      The measurement unit is radians/s.

Tested on a nucleo_h503rb board plus a x_nucleo_iks4a1 shield, and an improved version of the sample in the #82342

Added DNM, because I reminded that this PR is dependent to stmemsc module which has not been modified yet.

@teburd @XenuIsWatching
After https://github.com/zephyrproject-rtos/hal_st/pull/24 merge, I rebased this PR and submitted again. Please take a look again if you have time.
@XenuIsWatching
Pls note that I added a patch to #79346, because after rebasing my application was not streaming the FIFO anymore. The patch is in e40f1bdf320f4d34892c318d53d5b56530a74418. Take a look at it and maybe try it also at your end, thx!

I addressed the comment...

CI fixed by #83429
rebased and relaunched!


Does drawer navigation use the native thread for opening and closing drawer?

I am currently not using this library.
I am having usability issues in my app when I have a block on the javascript thread and I'm trying to open and close the drawer.
I'd like to know if the drawer navigation in this project uses the native thread for opening and closing animation of the drawer?

This is a JavaScript-based solution to navigation. If your drawer is lagging when you open and close it, you might be doing something that locks the thread while the drawer is trying to animate.


Adding your own calculator, correct method?

A little confused about overriding the calculator...
should it be as per the example here http://gmaps-utility-library-dev.googlecode.com/svn/trunk/markerclusterer/examples/simple_example_with_values.html
eg passed in as a option on instantiation..
var markerCluster = new MarkerClusterer(map, markers, {'calculator': average});
or using the
markerCluster.setCalculator(function(markers, numStyles) {...});
I couldn't seem to get the example method to work, but assume there might be an overhead setting after instantiation?

Hey!
If it's ok to have calculator globally, you can override function like this:
MarkerClusterer.prototype.calculator_ = function(markers, numStyles) {
...

coffeescript:
MarkerClusterer::calculator_ = (markers, numStyles) ->
...