Pulltorefresh not working (android)

Added pulltorefresh on existing working Xamarin.Forms app (at the moment only the Android branch is being developed, the UWP and IOS ones are a secondary update project).
Code additions shown below
When the pull gesture is used the indictator for it appears but NONE of the code added is actually run
On the output log this message appears
D/ViewRootImpl(20424): ViewPostImeInputStage ACTION_DOWN
(this appears even when the pulldown funtions are NOT added to the control)
The indicator remains on screen all the time and no application code is triggered.
Added to the XAML
RefreshCommand="{Binding RefreshCommand}"
IsRefreshing="{Binding IsRefreshing}"
IsPullToRefreshEnabled="True"
And to the code
private bool _isRefreshing = false;
public bool IsRefreshing
{
get { return _isRefreshing; }
set
{
_isRefreshing = value;
OnPropertyChanged(nameof(IsRefreshing));
}
}
public ICommand RefreshCommand
{
get
{
return new Command(async () =>
{
IsRefreshing = true;
                await App.RefreshApplicationData();

                IsRefreshing = false;
            });
        }
    }

Also not working on UWP

I have it working in a small sample project with the following code
XAML
    IsPullToRefreshEnabled="true"

    RefreshCommand="{Binding PullToRefresh}"

    IsRefreshing="{Binding RefreshActive}"

ViewModel
    public DelegateCommand PullToRefresh { get; set; }

    public SimpleSamplePageViewModel()

    {

        PullToRefresh = new DelegateCommand(OnPullToRefresh);

        GenerateSimpleItems();

    }

    private bool _RefreshActive;

    public bool RefreshActive

    {

        get { return _RefreshActive; }

        set { SetProperty(ref _RefreshActive, value); }

    }

    private void OnPullToRefresh()

    {

        RefreshActive = false;

    }

Check out the full view model here https://github.com/thetombomb91/FlowListViewSampleApp/blob/master/FlowListViewSampleApp/FlowListViewSampleApp/ViewModels/SimpleSamplePageViewModel.cs
and full view here https://github.com/thetombomb91/FlowListViewSampleApp/blob/master/FlowListViewSampleApp/FlowListViewSampleApp/Views/SimpleSamplePage.xaml

PullToRefresh is the same implementation as in Xamarin.Forms.ListView. It's definitely not an FlowListView issue. Cheers.

Is this still the case?
I'm seeing the same issue
Also - the example above doesn't actually update anything. It loads data once in your viewmodel constructor.
VM:
 public class MainPageViewModel : ViewModelBase
    {
        public ObservableCollection<Video> Videos { get; set; }
        public Video SelectedVideo { get; set; }
        public bool IsRefreshing { get; set; }
        public DelegateCommand RefreshVideosCommand { get; set; }
        public DelegateCommand VideoTappedCommand { get; set; }
        private readonly IPageDialogService _dialogService;
        private readonly IDataStore<Video> _dataStore;

        public MainPageViewModel(
            INavigationService navigationService,
            IPageDialogService dialogService,
            IDataStore<Video> dataStore)
            : base (navigationService)
        {
            _dialogService = dialogService;
            _dataStore = dataStore;
            VideoTappedCommand = new DelegateCommand(SelectVideo);
            RefreshVideosCommand = new DelegateCommand(RefreshVideos);
            Videos = new ObservableCollection<Video>();
            IsRefreshing = false;
            RefreshVideos();
        }

        public async void RefreshVideos()
        {
            if (IsRefreshing) return;

            IsRefreshing = true;

            Videos.Clear();
            var _videos = await _dataStore.GetVideosAsync(true);

            foreach (var video in _videos)
            {
                if (string.IsNullOrWhiteSpace(video.Thumbnail))
                    Videos.Add(new Video(video.Url, video.Title));
                else
                    Videos.Add(video);
            }

            IsRefreshing = false;
        }

        private async void SelectVideo()
        {
            if (SelectedVideo == null) return;
            try
            {
                var videoParameters = new NavigationParameters
                {
                    { "videoUrl", SelectedVideo.Url }
                };

                await NavigationService.NavigateAsync("VideoPlayerPage", videoParameters, false, true);
            }
            catch (Exception ex)
            {
                await _dialogService.DisplayAlertAsync("Error Playing Video", ex.Message, "OK");
                Debug.WriteLine(await Task.Run(() => JsonConvert.SerializeObject(SelectedVideo)));
            }
        }

View:
 <StackLayout HorizontalOptions="Fill" VerticalOptions="Fill">

        <flv:FlowListView SeparatorVisibility="None" HasUnevenRows="true"
			FlowItemTappedCommand="{Binding VideoTappedCommand}" FlowLastTappedItem="{Binding SelectedVideo}"
			FlowColumnMinWidth="300" FlowItemsSource="{Binding Videos}"
            IsPullToRefreshEnabled="True" RefreshCommand="{Binding RefreshVideosCommand}" IsRefreshing="{Binding IsRefreshing}">

            <flv:FlowListView.FlowColumnTemplate>
                <DataTemplate>
                    <Grid Padding="20">

                        <Grid.RowDefinitions>
                            <RowDefinition Height="*" />
                        </Grid.RowDefinitions>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="*" />
                        </Grid.ColumnDefinitions>

                        <ffimageloading:CachedImage HeightRequest="250" Aspect="AspectFill"
							DownsampleHeight="250" DownsampleUseDipUnits="false"
							LoadingPlaceholder="image_loading.png" ErrorPlaceholder="image_error.png"
                            Source="{Binding Thumbnail}"/>

                    </Grid>
                </DataTemplate>
            </flv:FlowListView.FlowColumnTemplate>

        </flv:FlowListView>

    </StackLayout>

What happens is the refresh starts, but IsRefreshing never gets updated to false, and so the refreshing symbol stays on the screen
Android 6.0

@prom3theu5 The reason the symbol stays on is that you are not setting BindingContext for the IsRefreshing binding. If you change the binding to IsRefreshing="{Binding IsRefreshing, Source={x:Reference Page}} and add x:Name="Page" to the ContentPage tag it will work correctly


Hint to the user that name prefixes can be used with -d

In the flutter CLI tool, -d is the way to specify which device to use. We have a great little feature that lets a user use a prefix with either the ID or the name when specifying the device.
We could make this more discoverable if the -d option's help text mentioned the prefix.
For example, today we say:
-d, --device-id       Target device id.
We could instead say:
-d, --device-id       Target device id or name. Prefixes allowed.

dup of https://github.com/flutter/flutter/issues/4330


Partial update for russian translation

Hello!
Me translated some strings in ru.po file. Me planning make some little PR's for fast review and merge into upstream.
Thanks!

Tested locally :white_check_mark:


Can't show the vectortilelayer by GDAL create

I need to display a very large vector file(ESRI Shapefile) in the web，so I choose the vectortilelayer to show. But I failed. Below is my code, looking forward to your help！
I converted ESRI Shapefile to mvt file by python+gdal.VectorTranslate
import os

from osgeo import gdal
content ={}
content['shapefile'] = 'D:/openlayer_study/test2/openlayers-workshop-en/data/TS/test.shp'
content['mvtfile'] = 'D:/openlayer_study/test2/openlayers-workshop-en/data/tm1'
shp = content['shapefile']
mvt = content['mvtfile']
translateOption = gdal.VectorTranslateOptions(format='MVT',dstSRS='EPSG:3857',
                                              datasetCreationOptions=['MINZOOM=0','MAXZOOM=10',
                                                                      'TILING_SCHEME=EPSG:3857,-20037508.343,20037508.343,40075016.686'])
task = gdal.VectorTranslate(mvt,shp,options = translateOption)
del task

Then, use openlayer
import MVT from 'ol/format/MVT';
import {Fill, Stroke, Style} from 'ol/style.js';
import VectorTileLayer from 'ol/layer/VectorTile';
import VectorTileSource from 'ol/source/VectorTile';
import {Map, View} from 'ol';
import {fromLonLat} from 'ol/proj';
import XYZ from 'ol/source/XYZ';
const mvt_layer = new VectorTileLayer({
  source: new VectorTileSource({
    format: new MVT(),
    // url:'https://ahocevar.com/geoserver/gwc/service/tms/1.0.0/' +
    // 'ne:ne_10m_admin_0_countries<EMAIL_ADDRESS>
    url: './data/tm1/{z}/{x}/{y}.pbf',
    minZoom:0,
    maxZoom: 10
  }),
  style:new Style({
    stroke: new Stroke({
      color: 'rgba(200,20,20,0.8)',
      width: 2,
    }),
    fill: new Fill({
      color: 'rgba(200,20,20,0.4)',
    }),
  })
});

var map = new Map({
  target: 'map-container',
  layers: [
    new TileLayer({
      source: new XYZ({
        url:"https://gac-geo.googlecnapps.cn/maps/vt?lyrs=s&x={x}&y={y}&z={z}"
    }),
    }),
  ],
  view: new View({
    center: fromLonLat([120, 33]),
    zoom: 6,
  }),
});
map.addLayer(mvt_layer);

And I get the error

and the Nothing is displayed on the page！

Python generated metadata.json files

@ahocevar Thanks a lot for your great and quick answer! The vectortilelayer displayed！
But there are still some errors displayed in the console.

I really don't have these tiles. So I manually set extent, which looks useful. Is there a method to automatically read the extent of the vector tiles?
Thank you again for your help！

Thank you, it works. But I didn't find any interface in openlayer to read metadata.json. I directly read metadata.json use jQuery.
There will still be some tiles that cannot be found, I guess this is because my vector layer is not a regular rectangle.

Yes, the 404 error did not have a significant impact. Thank you!


chore: release 1.2.121

:robot: I have created a release *beep* *boop*
1.2.121 (2022-07-06)
Features

helm: track Helm hooks of any kind (86ba23f)

Bug Fixes

kubedog: non-blocking mode didn't work (0cc6882)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/werf/werf/releases/tag/v1.2.121 :sunflower:


Shuffling letters before assigning them to training and validation datasets

Can one of the admins verify this patch?

I signed it!

Sounds like a good idea. Can you:

replace "lets" with "let's"
move the call to np.random.seed(133) to the top of the file, so that the seed is fixed for everything
add a:
valid_dataset, valid_labels = randomize(valid_dataset, valid_labels) where the other calls are

I think that would take care of all randomization and reproducibility issues.

Sure, I just do not get what do you mean by the third bullet point "add a: valid_dataset, valid_labels = randomize(valid_dataset, valid_labels) where the other calls are"

We don't appear to be re-randomizing the validation set here:
train_dataset, train_labels = randomize(train_dataset, train_labels)
test_dataset, test_labels = randomize(test_dataset, test_labels)

I see. Should be OK now

Merged. Thanks!


Disable hot reload in webpack dev server

Fixes problems with building the plugin using newer(>1.0.0) versions of @openshift/dynamic-plugin-sdk-webpack library.
Hot reload is not needed as the plugin is consumed by the Console which does not support hot reload of plugins.

Hot reload is not needed as the plugin is consumed by the Console which does not support hot reload of plugins.

WHAT ?!


Preferences & Status

Hi,
It is a great program. I was thinking about writing my own before I found yours.
One thing though. In order to access directory like /usr/local using Finder interface, you have to either turn on hidden folders or make an alias to the folder to each of the path locations.
This makes it very hard for user that install MongoDB via Homebrew like me to do the configurations even though the configuration only requires you to do it once.
It would be great if I can manually type in the path or copy and paste those paths directly to the input box, or better, the program can intelligently scan for MongoDB and it's files for Homebrew users.
Additionally, the apps would be perfect if the app icon changes when MongoDB instance is running/not running.
If you like, I can help collaborate that get it improved.
Cheers,
Attawit

Hello Attawit,
I’m very glad you liked the project. You pointed out some great features that could definitely improve the user experience. I haven’t had the time to work on this project lately so it would be great if you could collaborate to continue to improve it. I will add you as a collaborator.


[WIP] Add trace logging for block worker client

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/8974/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/8975/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/8977/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/8978/
Test PASSed.


billing breakdown invalid

sevenbridges-python: 2.5.0
I'm using the api to calling the billing group method, but it seems breakdown() is not working (previously it was). Upon calling the breakdown() method, I receive the following error (I replaced actual billing group with <billing group>)
sevenbridges.errors.NotFound: /v2/billing/groups/<billing group>/breakdown not found

Hi @boyangzhao thank you for opening the issue, and apologies for inconvenience. As you noticed, the breakdown() method is not working and will be deprecated very soon in a new release. The billing breakdowns are available in more detail in three new methods for analysis, storage and egress billing breakdowns, e.g. analysis_breakdown(). Hope this information is helpful, I will close this issue, please reopen if needed.

Thanks - is there an equivalent to get at the total_spending.amount that was previously available in breakdown. The methods (analyses, storage, egress) return arrays and it seems you have to now sum through all the array items and across all the analyses/storage/egress breakdowns to get at the total spending amount.

Hi, you are right for now the only way to get the total is to sum everything up. I will send a ticket internally to see if we can improve this somehow. Thanks again for the feedback.

Thanks that would be great. Also, while egress and analyses as cost fields, storage does not contain cost fields, so I cannot get the total by simply summing it up. Storage seems to have in units of GB/Month, but based on the https://docs.sevenbridges.com/docs/storage-costs example, it doesn't seem though it is adding up. Can you clarify if the unit is indeed GB/Month, and how do we go from size to storage cost?

Hi @boyangzhao
This is an oversight, and the unit should actually be GB * Month. I added a recipe here with some explanations https://github.com/sbg/okAPI/blob/master/Recipes/SBPLAT/billing_getTotalForPeriod.ipynb that shows example of how to sum up all costs in a project for a particular time frame, including storage costs.

Thanks - I also saw in the documentations the cost conversions (for example here). But the conversion of $0.023 per (GB * month) doesn't quite match that in billing on SB. For example ~ 61000 GB*Month (the sum through the API) would lead to $1400, but in billing, this corresponds to ~$70. This is off by a pretty big factor. Previously the total_spending.amount matches the total spending under billing on SB.
A side note, it seemed the date_from and date_to follows mm-dd-yyyy and not dd-mm-yyyy format


GridModel should have a 'hideGroupByCols' option

EXT has this, but ag-grid requires you to hide the columns manually after grouping. We can set hidden on our columns in the grid model, but would be nice if the groupBy method could do this for you automatically if you so choose.

So Petra found a very specifc and exciting option in  agGrid:  suppressMakeColumnVisibleAfterUnGroup after a bit of troubleshooting with the name (they misspelled it in their own documentation) she was able to determine that it solves this issue for us:
We are considering the following approach, that would make it the default behavior:
https://github.com/xh/hoist-react/pull/1715
But I now that might be too blunt, for existing grids that are relying on setting the initial grouped column to hidden, and using this behavior, to have only the currently grouped column hidden.
Perhaps we should go ahead and add the option Don suggests, but making it do everything it needs to do would be a lot more work that what we have in the current PR.

Currently, if the user hides a column, then groups and ungroups that field, not only does the column appear visible but it also remains "Available" and does not show as "Displayed" on the column chooser.

@petradish - could you take a few minutes to update this ticket with the current status? Unclear from the history here what (if anything) PR #1715 changed w.r.t. auto-hiding of groupBy columns.

PR #1715 set the agOption suppressMakeColumnVisibleAfterUnGroup: true on our DataView component to support grouping on hidden columns. Without it, ungrouping in ag-grid has the default behavior of making the column visible (and for DataView, we want all but the 1 synthetic column hidden).
For Grid there is no default hiding of columns when a grid is grouped by them. From my understanding, this ticket would like that feature to be added (perhaps as some hideWhenGrouped config on column). The question is, if we do support that, what should happen when that column is ungrouped? Should it remain hidden, become visible, or return to its hidden/visible state before it became a grouped column)
Another orthogonal issue/bug that was discovered relating to ag-grid's default behavior of making a column visible after it is ungrouped, is that our ColChooser does not correctly reflect the visible state of an ungrouped column if it had been hidden while grouped. I could create a new ticket for that bug, or address this in the PR that would eventually resolve this ticket.

Bumping to v48 as this came up in client QA - change to groupBy causing outgoing groupBy col to show unexpectedly, including unsupported state within the column chooser

We have another usage of suppressMakeColumnVisibleAfterUnGroup: true in the TODO app, to support hidden column grouping.  Noting that here so that we clean it up if we do something better here.

Just hit this annoying bug again in a client app, FYI

looking now!

Upvoting this ticket since I just ran into the same issue of our Hoist Grid col-visibility state being out of sync with AG-Grid's and leading to some unexpected behavior.


[Hacktoberfest] Added multiple ad sites and ip loggers

Added various sites as requested in #19

A couple of notes:

grabify.link is already on the list; it has its own section
shorte.st is the site that is used to create the shortened URLs, but the final URLs don't use this domain

I missed on the grabify.link, sorry.
I think even though shorte.st is not used as the domain of the URLs, it can be good to filter content from it, to avoid advertising of the service itself.

Once you remove the duplicate grabify, I'll merge this. Feel free to leave shorte.st on the list.

Thank you for your contribution!


crossplane: update to v1.4.3-up.1

Part of https://github.com/upbound/universal-crossplane/issues/195

@hasheddan should be good for another look


Rephrase the right to work questions

https://trello.com/c/5y6UCGrU/517-reword-right-to-work-question
Changes in this PR:
Rewording of the right to work question/hint text and removing the hidden text shown when the user selects the no radio on the job application and jobseeker profile journies.
Screenshots of UI changes:
Before
After
Next steps:

[ ] Terraform deployment required?

[ ] New development configuration to be shared?

 Reword right to work question


Meld Encrypt + Code Styler breaks codeblocks

Hey. I love this plugin, it is one of my top used. However, the plugin Code Styler is also one of my top used.
When Meld Encrypt is installed, the formatting for the Code Styler plugin breaks completely. The issue is I'm not sure if it's coming from your end, or if Code Styler did something.
I went through and did a quick peak at the CSS to see if it was a simple CSS fix, but the CSS isn't causing it. So I'm assuming it has to do with showing an encrypted note in Reading Mode.
Edit Mode appears fine, but as soon as I flip over to Reading Mode, the code block breaks.
Meld Encrypt Disabled

Meld Encrypt Enabled

If you want to take a quick look and see if it's a simple thing, or I can try to drop a ticket over at the other guy. As I said, not sure which side it's coming from, but hopefully it's a simple solution as I love both these plugins.
Another thing to note, disabling Meld doesn't fix or start the problem. If you have Meld enabled when Obsidian starts up, the issue shows. But you'd have to disable meld and completely restart Obsidian before the issues goes away.

Thanks @Aetherinox, I'm pretty sure it's related to #132 ... My fault 😬... But it should be fixed in the next release (hopefully this weekend)

Should be fixed in v2.3.4, will reopen if not


DefaultClaimsService Filters out protocol claims like exp, amr, nonce...

Question
What is the reasoning behind filtering out Protocol claims in the DefaultClaimsService?
https://github.com/IdentityServer/IdentityServer4/blob/master/src/IdentityServer4/src/Services/Default/DefaultClaimsService.cs
"Filters out protocol claims like amr, nonce etc.."
If I need to have access to for example expiration claim in a client application do I need to add this into my own claim type instead of using the stadard "exp" claim in the identity token? This feels strange when I read the OpenId documentation below on what thet call "Reserved Claim Names".
"None of the claims defined in the table below are intended to be mandatory, but rather, provide a starting point for a set of useful, interoperable claims."
https://openid.net/specs/draft-jones-json-web-token-07.html
But I'm quite new to OpenId and cant find any documentation around this.

We filter those returned from a custom profile service so erroneous claims don't conflict with those maintained/issued/controlled by IdentityServer and would incorrectly influence the resultant tokens.


Register

@JuliaRegistrator register()
Release notes:
Provides support for working with FreeParameter's interactively.

@JuliaRegistrator register()
Release notes:
Provides support for working with FreeParameter's interactively.

Registration pull request created: JuliaRegistries/General/9254
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if Julia TagBot is installed, or can be done manually through the github interface, or via:
git tag -a v0.1.1 -m "<description of version>" e88288e86a4b83f7ccdb5864ba763aea72d21f24
git push origin v0.1.1

@JuliaRegistrator register()
Release notes:
Provides support for working with FreeParameter's interactively.

Registration pull request created: JuliaRegistries/General/9255
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if Julia TagBot is installed, or can be done manually through the github interface, or via:
git tag -a v0.2.0 -m "<description of version>" 3e82cff591c84962a0425f7616e391d282bb0ddc
git push origin v0.2.0


Allow for short hand hex colors

re #25328
When specifying colors in for html/css you can abbreviate #00000 as #000. It would be nice we support that as well

#0000 as #000 are actually already accepted, it's just the JSON validation/color tocks that don't like them. Will fix.


Extension has been auto remove.

VSCode Version: 1.19.3
OS Version: Win 10 Ent. 1709

Sometime I found extension has been auto remove, but I never remove it.
Steps to Reproduce:

Open VSCode.
Some extension has been auto remove.

Does this issue occur when all extensions are disabled?: I don't known, because I don't known what happened.

When gitLens has been auto removed, my vscode installed extension.

[
  {
    "metadata": {
      "id": "d3836729-9cc1-42c1-b2af-d50071f57d29",
      "publisherId": "formulahendry.auto-close-tag",
      "publisherDisplayName": "formulahendry"
    },
    "name": "auto-close-tag",
    "publisher": "formulahendry",
    "version": "0.5.5"
  },
  {
    "metadata": {
      "id": "6e440e71-8ed9-4f25-bb78-4b13096b8a03",
      "publisherId": "formulahendry.auto-rename-tag",
      "publisherDisplayName": "formulahendry"
    },
    "name": "auto-rename-tag",
    "publisher": "formulahendry",
    "version": "0.0.15"
  },
  {
    "metadata": {
      "id": "2a658c1b-308a-41e8-805a-fc8abda483bc",
      "publisherId": "thekalinga.bootstrap4-vscode",
      "publisherDisplayName": "thekalinga"
    },
    "name": "bootstrap4-vscode",
    "publisher": "thekalinga",
    "version": "3.0.0"
  },
  {
    "metadata": {
      "id": "e337c67b-55c2-4fef-8949-eb260e7fb7fd",
      "publisherId": "Shan.code-settings-sync",
      "publisherDisplayName": "Shan"
    },
    "name": "code-settings-sync",
    "publisher": "Shan",
    "version": "2.8.7"
  },
  {
    "metadata": {
      "id": "690b692e-e8a9-493f-b802-8089d50ac1b2",
      "publisherId": "ms-vscode.cpptools",
      "publisherDisplayName": "ms-vscode"
    },
    "name": "cpptools",
    "publisher": "ms-vscode",
    "version": "0.14.6"
  },
  {
    "metadata": {
      "id": "d0bfc4ab-1d3a-4487-8782-7cf6027b4fff",
      "publisherId": "ms-vscode.csharp",
      "publisherDisplayName": "ms-vscode"
    },
    "name": "csharp",
    "publisher": "ms-vscode",
    "version": "1.13.1"
  },
  {
    "metadata": {
      "id": "1418d351-3831-476d-8142-170de49f63cc",
      "publisherId": "hasanakg.firebase-snippets",
      "publisherDisplayName": "hasanakg"
    },
    "name": "firebase-snippets",
    "publisher": "hasanakg",
    "version": "0.0.1"
  },
  {
    "metadata": {
      "id": "d6f6cfea-4b6f-41f4-b571-6ad2ab7918da",
      "publisherId": "lukehoban.Go",
      "publisherDisplayName": "lukehoban"
    },
    "name": "Go",
    "publisher": "lukehoban",
    "version": "0.6.73"
  },
  {
    "metadata": {
      "id": "16e73f8b-6e09-4e9f-aa7b-b8799942993b",
      "publisherId": "Andreabbondanza.iis-express-executer",
      "publisherDisplayName": "Andreabbondanza"
    },
    "name": "iis-express-executer",
    "publisher": "Andreabbondanza",
    "version": "1.2.5"
  },
  {
    "metadata": {
      "id": "26a529c9-2654-4b95-a63f-02f6a52429e6",
      "publisherId": "zhuangtongfa.Material-theme",
      "publisherDisplayName": "zhuangtongfa"
    },
    "name": "Material-theme",
    "publisher": "zhuangtongfa",
    "version": "2.12.2"
  },
  {
    "metadata": {
      "id": "dff6b801-247e-40e9-82e8-8c9b1d19d1b8",
      "publisherId": "christian-kohler.npm-intellisense",
      "publisherDisplayName": "christian-kohler"
    },
    "name": "npm-intellisense",
    "publisher": "christian-kohler",
    "version": "1.3.0"
  },
  {
    "metadata": {
      "id": "a41c1549-4053-44d4-bf30-60fc809b4a86",
      "publisherId": "christian-kohler.path-intellisense",
      "publisherDisplayName": "christian-kohler"
    },
    "name": "path-intellisense",
    "publisher": "christian-kohler",
    "version": "1.4.2"
  },
  {
    "metadata": {
      "id": "03e014a0-a915-4672-92b3-77e5a6ad72df",
      "publisherId": "searKing.preview-vscode",
      "publisherDisplayName": "searKing"
    },
    "name": "preview-vscode",
    "publisher": "searKing",
    "version": "1.4.2"
  },
  {
    "metadata": {
      "id": "dbaa4934-dace-47b3-9bb5-01f7126203b1",
      "publisherId": "Togusa09.tmlanguage",
      "publisherDisplayName": "Togusa09"
    },
    "name": "tmlanguage",
    "publisher": "Togusa09",
    "version": "0.8.5"
  },
  {
    "metadata": {
      "id": "2f5dd8cb-d251-4d70-abfe-ddebcb077483",
      "publisherId": "octref.vetur",
      "publisherDisplayName": "octref"
    },
    "name": "vetur",
    "publisher": "octref",
    "version": "0.11.7"
  },
  {
    "metadata": {
      "id": "9ccc1dd7-7ec4-4a46-bd4f-7d7b8b9d322a",
      "publisherId": "robertohuertasm.vscode-icons",
      "publisherDisplayName": "robertohuertasm"
    },
    "name": "vscode-icons",
    "publisher": "robertohuertasm",
    "version": "7.19.0"
  },
  {
    "metadata": {
      "id": "daf8b44d-8aae-4da2-80c5-1f770219f643",
      "publisherId": "DavidAnson.vscode-markdownlint",
      "publisherDisplayName": "DavidAnson"
    },
    "name": "vscode-markdownlint",
    "publisher": "DavidAnson",
    "version": "0.13.0"
  },
  {
    "metadata": {
      "id": "3fb77af3-b8b3-4cb9-9137-f555bd80e2b1",
      "publisherId": "richie5um2.vscode-sort-json",
      "publisherDisplayName": "richie5um2"
    },
    "name": "vscode-sort-json",
    "publisher": "richie5um2",
    "version": "1.10.2"
  },
  {
    "metadata": {
      "id": "6afc37b9-362f-4bd8-9a0d-9d24eade270d",
      "publisherId": "chenxsan.vscode-standardjs",
      "publisherDisplayName": "chenxsan"
    },
    "name": "vscode-standardjs",
    "publisher": "chenxsan",
    "version": "1.2.1"
  },
  {
    "metadata": {
      "id": "97a08c5f-6667-4242-a5c5-045dfb6bd4b9",
      "publisherId": "wayou.vscode-todo-highlight",
      "publisherDisplayName": "wayou"
    },
    "name": "vscode-todo-highlight",
    "publisher": "wayou",
    "version": "0.5.11"
  },
  {
    "metadata": {
      "id": "2b2535e4-d0cd-4b0a-9a18-5db6d6fb0c31",
      "publisherId": "toba.vsfire",
      "publisherDisplayName": "toba"
    },
    "name": "vsfire",
    "publisher": "toba",
    "version": "1.3.1"
  },
  {
    "metadata": {
      "id": "b6f57432-c4a8-4f6f-868c-ec08f797e584",
      "publisherId": "oysun.vuehelper",
      "publisherDisplayName": "oysun"
    },
    "name": "vuehelper",
    "publisher": "oysun",
    "version": "0.1.0"
  },
  {
    "metadata": {
      "id": "0cb81da2-1880-4755-9995-0ae9cc728e20",
      "publisherId": "DotJoshJohnson.xml",
      "publisherDisplayName": "DotJoshJohnson"
    },
    "name": "xml",
    "publisher": "DotJoshJohnson",
    "version": "1.9.2"
  }
]

We never auto remove the extension unless user requests to uninstall or installs a latest version (in which case we remove the older version).
By any chance do you know what what extension did you have in your extensions folder (Use command Open Extensions Folder) before and after?

I will use some tool to monitor extension folder.
If this issue happened again, I can get more information.

Thanks.

It happened.
I found some extension can't use, then I restart vscode, then a extension had been auto remove.

Any way to get vscode debug log?

I have the same problem. Recently I always notice some extensions were auto-removed.
After upgrade to the lastest vscode version.I clearly remember I installed vscode-icons, Better TOML, C/C++ before, but these extensions disappear now.
I also use the gitlens extension, a few weeks ago it also has been removed automatically.

I've also just seen this again with Dart Code -> https://github.com/Microsoft/vscode/issues/41894#issuecomment-367253316

Same issue, among the extensions that disappeared (after a vscode update or not):

Typescript hero
Gitlens
Tslint
Bracket pair colorizer
Azure cosmos DB I think this one was removed just after updating to February update

And there might be others that I don't remember. I think it's been approximately a month since I started noticing this (so maybe January release ?)

@WilliamChelman I don't think it's related to your other extension; I only have Dart Code and Chrome Debugger installed and it's happened to me.
There are some comments at https://github.com/Microsoft/vscode/issues/41894#issuecomment-370444630 about logs - if you're on v1.21 it might be worth looking in your logs for anything relevant.

I just saw this comment, maybe it's the answer?
https://github.com/Microsoft/vscode/issues/45111#issuecomment-371001505

@DanTup I think it was.


bpf: nodeport: fix-up error check in rev_nodeport_lb*() for XDP

lb4_extract_tuple() calls ipv4_ct_extract_l4_ports(), which returns CTX_ACT_OK on success. This is 0 in TC, but 2 in XDP. This caused us to erronously bail out from the RevDNAT check in the XDP NAT reply path.
Fix up the error check accordingly. Also adjust lb6_extract_tuple() for consistency.
Fixes: fd52b2fb1382 ("bpf: nodeport: skip CT lookup for non-NodePort replies in RevDNAT path")

Brown-bag time :/. Unit tests will land via https://github.com/cilium/cilium/pull/22756...

/test

Overall this LGTM. I'll give it another day for a chance for additional reviews, then tomorrow either I can merge it or tophat can. I've assigned myself so I know who to follow up with :sweat_smile:


API Naming inconsistencies - pronoun usage

Some of the API's use His while another use Its. Stay consistent.
Why did you change from no pronouns in the Java version of the API to pronouns in the  Kotlin version? I suggest you use Its if you want a pronoun, or just drop it completely (suggested). I don't usually think of a guy when I think about my views.

I'm just not an english native speaker,
Can you please help me sending the list of mistake I made, or directly a
pull request ? Thanks
Le 16 mars 2018 11:55, "Christopher Rucinski"<EMAIL_ADDRESS>a
écrit :

Some of the API's use His while another use Its. Stay consistent.
Why did you change from no pronouns in the Java version of the API to
pronouns in the Kotlin version? I suggest you use Its if you want a
pronoun, or just drop it completely (suggested). I don't usually think of a
guy when I think about my views.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/florent37/KotlinPleaseAnimate/issues/3, or mute the
thread
https://github.com/notifications/unsubscribe-auth/AFfQXJqISWBQ89EZCVEfQTc1pNvIpAaNks5te5oNgaJpZM4StmLH
.

fixed in 1.0.1, thanks for the issue 👍

Sorry, I didn't get the lost to you earlier. I just looked quick over the Readme and it seems more pleasant to read. Thanks ^^


Failed detecting root disk device: No root device could be found

Required information

Distribution: Ubuntu
Distribution version: Hirsuite

# lxc launch images:ubuntu/focal/amd64 b
Creating b
Error: Failed instance creation: Failed creating instance record: Failed initialising instance: Invalid devices: Failed detecting root disk device: No root device could be found
root@RF-PC-BUD-036:~# lxc info
root@RF-PC-BUD-036:~# lxc info
config: {}
api_extensions:
- storage_zfs_remove_snapshots
- container_host_shutdown_timeout
- container_stop_priority
- container_syscall_filtering
- auth_pki
- container_last_used_at
- etag
- patch
- usb_devices
- https_allowed_credentials
- image_compression_algorithm
- directory_manipulation
- container_cpu_time
- storage_zfs_use_refquota
- storage_lvm_mount_options
- network
- profile_usedby
- container_push
- container_exec_recording
- certificate_update
- container_exec_signal_handling
- gpu_devices
- container_image_properties
- migration_progress
- id_map
- network_firewall_filtering
- network_routes
- storage
- file_delete
- file_append
- network_dhcp_expiry
- storage_lvm_vg_rename
- storage_lvm_thinpool_rename
- network_vlan
- image_create_aliases
- container_stateless_copy
- container_only_migration
- storage_zfs_clone_copy
- unix_device_rename
- storage_lvm_use_thinpool
- storage_rsync_bwlimit
- network_vxlan_interface
- storage_btrfs_mount_options
- entity_description
- image_force_refresh
- storage_lvm_lv_resizing
- id_map_base
- file_symlinks
- container_push_target
- network_vlan_physical
- storage_images_delete
- container_edit_metadata
- container_snapshot_stateful_migration
- storage_driver_ceph
- storage_ceph_user_name
- resource_limits
- storage_volatile_initial_source
- storage_ceph_force_osd_reuse
- storage_block_filesystem_btrfs
- resources
- kernel_limits
- storage_api_volume_rename
- macaroon_authentication
- network_sriov
- console
- restrict_devlxd
- migration_pre_copy
- infiniband
- maas_network
- devlxd_events
- proxy
- network_dhcp_gateway
- file_get_symlink
- network_leases
- unix_device_hotplug
- storage_api_local_volume_handling
- operation_description
- clustering
- event_lifecycle
- storage_api_remote_volume_handling
- nvidia_runtime
- container_mount_propagation
- container_backup
- devlxd_images
- container_local_cross_pool_handling
- proxy_unix
- proxy_udp
- clustering_join
- proxy_tcp_udp_multi_port_handling
- network_state
- proxy_unix_dac_properties
- container_protection_delete
- unix_priv_drop
- pprof_http
- proxy_haproxy_protocol
- network_hwaddr
- proxy_nat
- network_nat_order
- container_full
- candid_authentication
- backup_compression
- candid_config
- nvidia_runtime_config
- storage_api_volume_snapshots
- storage_unmapped
- projects
- candid_config_key
- network_vxlan_ttl
- container_incremental_copy
- usb_optional_vendorid
- snapshot_scheduling
- container_copy_project
- clustering_server_address
- clustering_image_replication
- container_protection_shift
- snapshot_expiry
- container_backup_override_pool
- snapshot_expiry_creation
- network_leases_location
- resources_cpu_socket
- resources_gpu
- resources_numa
- kernel_features
- id_map_current
- event_location
- storage_api_remote_volume_snapshots
- network_nat_address
- container_nic_routes
- rbac
- cluster_internal_copy
- seccomp_notify
- lxc_features
- container_nic_ipvlan
- network_vlan_sriov
- storage_cephfs
- container_nic_ipfilter
- resources_v2
- container_exec_user_group_cwd
- container_syscall_intercept
- container_disk_shift
- storage_shifted
- resources_infiniband
- daemon_storage
- instances
- image_types
- resources_disk_sata
- clustering_roles
- images_expiry
- resources_network_firmware
- backup_compression_algorithm
- ceph_data_pool_name
- container_syscall_intercept_mount
- compression_squashfs
- container_raw_mount
- container_nic_routed
- container_syscall_intercept_mount_fuse
- container_disk_ceph
- virtual-machines
- image_profiles
- clustering_architecture
- resources_disk_id
- storage_lvm_stripes
- vm_boot_priority
- unix_hotplug_devices
- api_filtering
- instance_nic_network
- clustering_sizing
- firewall_driver
- projects_limits
- container_syscall_intercept_hugetlbfs
- limits_hugepages
- container_nic_routed_gateway
- projects_restrictions
- custom_volume_snapshot_expiry
- volume_snapshot_scheduling
- trust_ca_certificates
- snapshot_disk_usage
- clustering_edit_roles
- container_nic_routed_host_address
- container_nic_ipvlan_gateway
- resources_usb_pci
- resources_cpu_threads_numa
- resources_cpu_core_die
- api_os
- container_nic_routed_host_table
- container_nic_ipvlan_host_table
- container_nic_ipvlan_mode
- resources_system
- images_push_relay
- network_dns_search
- container_nic_routed_limits
- instance_nic_bridged_vlan
- network_state_bond_bridge
- usedby_consistency
- custom_block_volumes
- clustering_failure_domains
- resources_gpu_mdev
- console_vga_type
- projects_limits_disk
- network_type_macvlan
- network_type_sriov
- container_syscall_intercept_bpf_devices
- network_type_ovn
- projects_networks
- projects_networks_restricted_uplinks
- custom_volume_backup
- backup_override_name
- storage_rsync_compression
- network_type_physical
- network_ovn_external_subnets
- network_ovn_nat
- network_ovn_external_routes_remove
- tpm_device_type
- storage_zfs_clone_copy_rebase
- gpu_mdev
- resources_pci_iommu
- resources_network_usb
- resources_disk_address
- network_physical_ovn_ingress_mode
- network_ovn_dhcp
- network_physical_routes_anycast
- projects_limits_instances
- network_state_vlan
- instance_nic_bridged_port_isolation
- instance_bulk_state_change
- network_gvrp
- instance_pool_move
- gpu_sriov
- pci_device_type
- storage_volume_state
api_status: stable
api_version: "1.0"
auth: trusted
public: false
auth_methods:
- tls
environment:
  addresses: []
  architectures:
  - x86_64
  - i686
  certificate: |
    -----BEGIN CERTIFICATE-----
    MIICGDCCAZ+gAwIBAgIRALzEO4ETFlhumdEvYPaJmR4wCgYIKoZIzj0EAwMwOzEc
    MBoGA1UEChMTbGludXhjb250YWluZXJzLm9yZzEbMBkGA1UEAwwScm9vdEBSRi1Q
    Qy1CVUQtMDM2MB4XDTIxMDEwNDA1NDMxOFoXDTMxMDEwMjA1NDMxOFowOzEcMBoG
    A1UEChMTbGludXhjb250YWluZXJzLm9yZzEbMBkGA1UEAwwScm9vdEBSRi1QQy1C
    VUQtMDM2MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEgTzfpNPkytN7wWWdA6Tn+jpk
    iBHkMydiQG1HZqtMohKcRAkyxTDmWLdgCjv3q/TdOuDRqPA5JEfTleSF45YhHoR0
    N/6cg6rU0UiDX5h2ps2bFzpdVBG8YjiWljg+7An2o2cwZTAOBgNVHQ8BAf8EBAMC
    BaAwEwYDVR0lBAwwCgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADAwBgNVHREEKTAn
    gg1SRi1QQy1CVUQtMDM2hwR/AAABhxAAAAAAAAAAAAAAAAAAAAABMAoGCCqGSM49
    BAMDA2cAMGQCMFir/pv1eBzopkDKI91KnvxqftQBkxtANdkXH26sDsdhAocG4Orj
    F6APQ+Noe9TmPgIwCKzdpChIWOlrSj2tT+42uAxs8QoCBXa74UdIvgNT8D83SYCG
    oYtxiTxlvSw6vAZP
    -----END CERTIFICATE-----
  certificate_fingerprint: 81465cdb49482084d969de02c94f82642d7f04a1831e51e68205fd1689a48487
  driver: lxc | qemu
  driver_version: 4.0.6 | 5.2.0
  firewall: nftables
  kernel: Linux
  kernel_architecture: x86_64
  kernel_features:
    netnsid_getifaddrs: "true"
    seccomp_listener: "true"
    seccomp_listener_continue: "true"
    shiftfs: "false"
    uevent_injection: "true"
    unpriv_fscaps: "true"
  kernel_version: 5.10.0-14-generic
  lxc_features:
    cgroup2: "true"
    devpts_fd: "true"
    mount_injection_file: "true"
    network_gateway_device_route: "true"
    network_ipvlan: "true"
    network_l2proxy: "true"
    network_phys_macvlan_mtu: "true"
    network_veth_router: "true"
    pidfd: "true"
    seccomp_allow_deny_syntax: "true"
    seccomp_notify: "true"
    seccomp_proxy_send_notify_fd: "true"
  os_name: Ubuntu
  os_version: "21.04"
  project: default
  server: lxd
  server_clustered: false
  server_name: RF-PC-BUD-036
  server_pid: 210564
  server_version: "4.11"
  storage: zfs
  storage_version: 2.0.2-1ubuntu2

Issue description
After ugrading to 4.11 launching container failed:
# lxc launch images:ubuntu/focal/amd64 b
Creating b
Error: Failed instance creation: Failed creating instance record: Failed initialising instance: Invalid devices: Failed detecting root disk device: No root device could be found

After running snap revert lxd fixed to issue, though it remained on v4.11.
I don't know, how....I'm not sure, how useful this report could be this way.

I don't understand snap versions:
Client version: 4.11
Server version: 4.11
root@RF-PC-BUD-036:~# snap revert lxd
lxd reverted to 4.11
root@RF-PC-BUD-036:~# snap refresh lxd
lxd 4.11 from Canonical✓ refreshed
root@RF-PC-BUD-036:~# lxc version
Client version: 4.11
Server version: 4.11

Does it work if you pass '-p default' to that launch command?
If that's the case, then try launching from a different image, if that works too, then it's an issue where your local copy of the image got detached from the default profile.
You can fix that with 'lxc image edit' by adding back the default profile to the list of profiles for the image.

I cannot reproduce it anymore.

Ok, so that was most likely the image getting detached from the default profile and getting fixed when it refreshed itself.
We've actually got some new logic in 4.12 to prevent this from happening in the first place, so let's hope that fixes it.


Re-render with conda-smithy version 1.2.0

Closes https://github.com/conda-forge/git-feedstock/pull/13

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

It doesn't look like this PR broke AppVeyor to me, but are we aware of it not working from something else?

Looked like the bug fixed by PR ( https://github.com/conda/conda-build/pull/1261 ) to me.

Closing as the re-rendering in PR ( https://github.com/conda-forge/git-feedstock/pull/20 ) is more recent and is likely to pass/be merged soon.


VC with white backgrounf apperas grey

test with Werify issuer :
https://kit-staging.werify.eu/client/home#

you can test wit OIDC4VCI test 4, TestCredential

"display": [
{
"name": "Test Credential",
"description": "For testing purpose",
"locale": "en-US",
"background_image": {
"url": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBwgHBgkIBwgKCgkLDRYPDQwMDRsUFRAWIB0iIiAdHx8kKDQsJCYxJx8fLT0tMTU3Ojo6Iys/RD84QzQ5OjcBCgoKDQwNGg8PGjclHyU3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3N//AABEIAJQA3gMBIgACEQEDEQH/xAAWAAEBAQAAAAAAAAAAAAAAAAAAAQf/xAAXEAEBAQEAAAAAAAAAAAAAAAAAAREx/8QAFgEBAQEAAAAAAAAAAAAAAAAAAAIB/8QAFBEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEQMRAD8A2woKamGKAi0AQWkBMIoAlUAAAAAAAqYoCEXAAAAACkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUWAgAAGgAaABoAAAAAAAAAaaAAAAAAAAAqAAFAMTTQXUAF4gAukiGgpqavQBNUCkC0DDgnQXQAAAAAAAAATQAAAAAAAAAAADQA0AAnQBaRAFEAUSKAAAACAAAAAAAAAAAAAAAAAAAAs4gARQBL1QAAB//Z",
"alt_text": "ABN Amro Card"
},
"background_color": "#FFFFFF",
"text_color": "#000000"
}
]
},


Running this code for single-machine multi-GPUs

Dear authors, thank you for releasing this wonderful code. Great work!
I am trying to run your code for single-machine multi-GPUs. I read PyTorch's docs and tutorials for data parallel training, but did not come up with a method. I am wondering whether you could give me some hints. Thank you.

I compared this code with PyTorch's tutorials and find the difference is the backend. When the backend is changed from NCCL to gloo, the code can run in single-machine multi-GPUs case. But I did not figure out why this works.

I compared this code with PyTorch's tutorials and find the difference is the backend. When the backend is changed from NCCL to gloo, the code can run in single-machine multi-GPUs case. But I did not figure out why this works.

hello, do you know how to run it in single-machine single-GPU case? thanks.

I compared this code with PyTorch's tutorials and find the difference is the backend. When the backend is changed from NCCL to gloo, the code can run in single-machine multi-GPUs case. But I did not figure out why this works.

hello, do you know how to run it in single-machine single-GPU case? thanks.

As indicated this line of code , set ’--distributed_training 1‘ should work.


fix(template-retail-react-app): product-list refinements

Description
This PR fixes numerous points opened in #901 regarding the PLP refinements component, such as:

Having numerous possible types (string | number | Array<string | number>) for the filter values passed down to a value component (color, checkbox, etc), and then running methods like .includes() against them, providing different results depending on the type.
Invalid isChecked logic for checkboxes, making all checkboxes in a refinement group appear as checked after selecting just one.
Confusing string|array proptype on the color refinements component.
Invalid handling of query parameters, where a number is received but it was then treated as a string (by attempting to access the .split() method on it).

In addition to a couple of other bug fixes:

Not being able to deselect a "non multiple" refinement (e.g. checkbox) by unchecking the selected checkbox (as it would select itself again). This was introduced (and resolved) in this PR after having fixed item 2 from above.
Radio groups maintaining their previously checked UI after having their value cleared via the "Selected Refinements" clear filter buttons.

Types of Changes

[x] Bug fix (non-breaking change that fixes an issue)
[ ] New feature (non-breaking change that adds functionality)
[ ] Documentation update
[ ] Breaking change (could cause existing functionality to not work as expected)
[ ] Other changes (non-breaking changes that does not fit any of the above)

Breaking changes include:

Removing a public function or component or prop
Adding a required argument to a function
Changing the data type of a function parameter or return value
Adding a new peer dependency to package.json

Changes
See details in commit message and description above.
How to Test-Drive This PR
Steps for testing the (testable) points described above:
Item 1
If you potentially had a refinement option that was a substring of another, for instance color, "blue" and "light blue". When the selected value was "light blue", both would appear as selected since here it would be using the string.includes() method, instead of array.includes().
Item 2

Visit the electronics category.
Select the "Type → Lithium Ion" refinement checkbox.
Both "Lithium Ion" and "Lithium Polymer" will be checked.

Item 4

Visit the mens suits category.
Select the "Size → 36" refinement option.
(Note it's not marked as selected visually).
Select "Size → 38".
Nothing happens, see an error in the browser console.

Item 6

Visit the electronics category.
Select the "Price → $20 - $49.99" refinement radio option.
Clear the refinement option via the individual clear buttons or the "Clear all" button in the "Selected refinements" area.
Notice that the radio option selected in step 2 is still visually checked.

Checklists

General

[x] Changes are covered by test cases
[ ] CHANGELOG.md updated with a short description of changes (not required for documentation updates)

Accessibility Compliance
You must check off all items in one of the follow two lists:

[x] There are no changes to UI

or...

[ ] Changes were tested with a Screen Reader (iOS VoiceOver or Android Talkback) and had no issues
[ ] Changes comply with WCAG 2.0 guidelines levels A and AA
[ ] Changes to common UI patterns and interactions comply with WAI-ARIA best practices

Localization

[ ] Changes include a UI text update in the Retail React App (which requires translation)

Thank you @breadadams for this PR. I plan to review it tomorrow.

Hey @breadadams .. thanks for the contribution. I've added some replies to you comments. Lets work on getting that resolved and we can merged your PR 👍


Fix interop with other plugins

When using this plugin with other plugins attaching to the same hooks, the callback result will become the htmlPluginData object for the next plugin, so unmodified properties need to be copied or they will be lost.
I ran into this problem when using html-webpack-inline-source-plugin, which suffers from the same bug. Patching this in both plugins solved the issue.
See also the corresponding issue on the other repo. I'm not sure what these plugins are based on but I'm suspecting at some point someone blindly copied what the html-webpack-plugin unit tests are doing without consulting the actual implementation.

This PR includes the fix from https://github.com/jamesjieye/html-webpack-exclude-assets-plugin/pull/7 but suffers from the same failing tests (though it does not modify the tests like #7 did so maybe there are other reasons for that).

@pluma The Travis build failed with node 0.12. This is caused by the style-loader's 0.13.2 release, which upgraded the loader-utils to 1.0.2. And loader-utils 1.0.2 only supports node engines +4.
And because of that, the html-webpack-exclude-assets-plugin can only supports node v4+.

Sweet. Thanks a ton!


removed unnecessary save call

I stumbled upon a bug in a larger MEAN application.
Basically the createCustomer method is only called in a pre-save hook, so saving the user is useless.
Moreover, by calling the save method, the pre-save hook will be called a second time, potentially causing bugs if other hooks are involved.

good catch! :+1:


Customizing Reminder Message to Partners

Summary
Provide the ability to customize the reminder  message for partners,  similar to how we currently allow customization of the distribution email content
Why?
Bank request -- The banks may want to include more info in their reminder message
Details
For clarity, the request is to be able to customize the message that goes out to partners to remind them to put their requests in.
Please follow the pattern we have established with the distribution message.   Places that you'll want to look at include
-- the organization edit and show pages (where we let them configure the distribution email)
-- the organization model
-- the distribution mailer
-- the distribution mailer view
Criteria for completion

[ ] implementation of customized reminder messages
[ ] tests supporting customized reminder messages

Bonus round

[ ] Also allow customization of the message reminding partners to pick up the distributions

Good morning! I would like to take this ticket.

You have taken it!

You know -- I can't find it either.   Please ignore the bonus -- if I find it, I'll create a new issue.


Some thoughts on the Metadata area (and follow / view profile buttons)?

Happy timezone,
Had some thoughts on the location of the follow & view profile buttons on the channel page and just wanted to share them for any comments before implementing:
Rather than trying to squeeze the buttons into the stream title, would it be a better idea to put them in the metadata area like the below?

Additionally, I wonder if it'd be worth extending the metadata area to fill the whole chat area apart from the text box, then close it whenever the text box is tapped?

Rather than trying to squeeze the buttons into the stream title, would it be a better idea to put them in the metadata area like the below?

I like having some of the non-important buttons hidden for sure! I was thinking maybe clicking on profile pictures could be a universal "visit profile" type action? I suspect Follow might be important enough to have as an always-shown button, but with the potential of the Support button as well I think having them in the dropdown might be good!

Additionally, I wonder if it'd be worth extending the metadata area to fill the whole chat area apart from the text box, then close it whenever the text box is tapped?

Sounds good to me.

I was thinking maybe clicking on profile pictures could be a universal "visit profile" type action?

I agree, wasn't sure about how easy / difficult that'd be to tap when I wrote the issue, but looking now, we shouldn't have any problems there

I suspect Follow might be important enough to have as an always-shown button, but with the potential of the Support button as well I think having them in the dropdown might be good!

I think I'll have a play around and prototype a few different things and post them here


⚠ ClamAV has degraded performance

In de0fa97, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 94 ms

Resolved: ClamAV performance has improved in 8fd0799 after 21 minutes.


add Heiman matter Motion and door sensor

Hi @lelandblue , thanks for reminding, signed.

Thanks a lot for your help @greens @hubTab @lelandblue

Hi @z-michel , could you help to review the PR, thanks.

Yes I brought that up the partner success manager and they are getting back to me. We will most likely close the other PR with the four devices in it.


PostgreSQL bytea support

Hello,
First off, thank you for this project. So far I have found it to be extremely useful.
I'm using:

SOCI 3.2.3
PostgreSQL 9.6
Microsoft Visual Studio 2010
Windows 10

I am attempting to store a binary file in a PostgreSQL database using the bytea type. I'm stuck because the following query is fine via pgAdmin:
INSERT INTO bytea_test ( contents ) values ( decode( '‡ÓÀ¤Jb#á‡ ', 'escape' ) );

This is fine: Query returned successfully: one row affected
Here is what I have using SOCI:
sql << "INSERT INTO bytea_test ( contents ) values ( decode( '‡ÓÀ¤Jb#á‡ ', 'escape' ) )";

However, this causes an error: Cannot execute query. ERROR:  invalid byte sequence for encoding "UTF8": 0x87
This error comes from PostgreSQL but the "same" query works from pgAdmin. I have tried a number of different things, but I keep coming back to this error. Could it be caused by a difference in encoding for pgAdmin vs Visual Studio? Does the encoding even matter for the bytea type?

Quick response: perhaps it will help if look at the bytea test as an example:
https://github.com/SOCI/soci/blob/master/tests/postgresql/test-postgresql.cpp#L544-L589

Thanks for your reply.
The example using 0x0A0B0C0D works. However, try something like 0xFAFBFCFD and the same error is created: Cannot execute query. ERROR: invalid byte sequence for encoding "UTF8".
This query is fine in pgAdmin:
INSERT INTO bytea_test ( contents ) VALUES ( 'ýüûú' )

Any additional ideas regarding this issue? I dug through the Postgres logs and found this:
SOCI
...
2016-09-07 12:51:30 EDT STATEMENT:  BEGIN
2016-09-07 12:51:30 EDT DEBUG:  00000: CommitTransactionCommand
2016-09-07 12:51:30 EDT LOCATION:  finish_xact_command, postgres.c:2457
2016-09-07 12:51:30 EDT STATEMENT:  BEGIN
2016-09-07 12:51:32 EDT ERROR:  22021: invalid byte sequence for encoding "UTF8": 0x87
2016-09-07 12:51:32 EDT LOCATION:  report_invalid_encoding, wchar.c:2017
...

pgAdmin
...
2016-09-07 12:58:46 EDT STATEMENT:  INSERT INTO bytea_test ( contents ) values ( decode('‡ÓÀ¤Jb#á‡ ', 'escape') );
2016-09-07 12:58:46 EDT DEBUG:  00000: CommitTransactionCommand
2016-09-07 12:58:46 EDT LOCATION:  finish_xact_command, postgres.c:2457
2016-09-07 12:58:46 EDT STATEMENT:  INSERT INTO bytea_test ( contents ) values ( decode('‡ÓÀ¤Jb#á‡ ', 'escape') );
2016-09-07 12:58:46 EDT DEBUG:  00000: CommitTransaction
2016-09-07 12:58:46 EDT LOCATION:  ShowTransactionState, xact.c:4953
...

This might not be a fix but would using a parameter instead of a literal query be a workaround?

Thanks for the suggestion.
The parameter and literal produce the same error.
I have tried all sorts of things. I stepped through the SOCI source several times. When I used a parameter, I noticed that some exchange functions were used to insert the parameter into the query. Those exchange functions had type information about what was being exchanged. In this case, an x_stdstring. I thought maybe Postgres was incorrectly handling that string as a regular string (UTF8 in my case). However, using a literal has the same effect. Casting the value to a bytea doesn't help either.
Is there some escape function I'm missing? I tried all sorts of combinations of convert_to and decode. Or is there a fundamental difference between how pgAdmin queries are handled vs. SOCI. The logs seem to indicate some difference, but I don't know that it is significant.

Additionally, I had trouble getting the Postgres logs to show the erroneous query. I feel like that might shed some light on the issue.

I guess (but it's just a guess) that if PostgreSQL server expects all its input to be UTF-8 encoded, this query might not even reach the layer doing the logging...
It's really weird that it should apply to the parameters however. Surely there must be a way to pass arbitrary binary data?

Surely there must be a way to pass arbitrary binary data?

My thoughts exactly! I still feel like I'm missing something. It's strange that my example query above works using pgAdmin and not using SOCI.

Here is my new SOCI query. In UTF8, E280A1 is hex for the double dagger symbol ‡.
sql << "INSERT INTO bytea_test ( contents ) values ( '\\xE280A1' )";

And from pgAdmin:
SELECT convert_from( contents, 'UTF8' ) FROM bytea_test

Returns ‡.
Progress?
Do I really have to convert all of the characters in a file (or other binary string) to UTF8 octets? By hand? Surely there is a better way.

I was looking at automatic bytea support a while ago, but gave up. The problem was the current way prepared statements are handled as switching to bytea encoding for std::string if strlen(s.data)  != s.size() can't work. For now, I have settled to encoding strings to hex manually and decoding them on the server side via SQL. The inverse problem is somewhat simpler, I am using code like the following for the decoding as needed:
static const unsigned char hex_convert[256] = {
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
    255, 255, 255, 0,   1,   2,   3,   4,   5,   6,   7,   8,   9,   255, 255,
    255, 255, 255, 255, 255, 10,  11,  12,  13,  14,  15,  255, 255, 255, 255,
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
    255, 255, 255, 255, 255, 255, 255, 10,  11,  12,  13,  14,  15,  255, 255,
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
    255, 255, 255, 255, 255, 255, 255, 255,

    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
    255, 255, 255, 255, 255, 255, 255, 255,
};

void unescape_bytea(std::string &str) {
  if (str.empty())
    return;
  const unsigned char *buf =
      reinterpret_cast<const unsigned char *>(str.c_str());
  auto outpos(str.begin());
  if (buf[0] == '\\' && buf[1] == 'x') {
    buf += 2;
    while (*buf) {
      if (*buf == ' ') {
        ++buf;
        continue;
      }
      unsigned char d1 = hex_convert[buf[0]];
      unsigned char d2 = hex_convert[buf[1]];
      if (d1 == 255 || d2 == 255)
        throw soci::soci_error("Invalid bytea encoding found.");
      *outpos++ = char(d1 * 16 + d2);
      buf += 2;
    }
    str.resize(outpos - str.begin());
    return;
  }
  while (*buf) {
    if (*buf != '\\') {
      *outpos++ = char(*buf++);
      continue;
    }
    ++buf;
    if (*buf == '\\') {
      *outpos++ = char(*buf++);
      continue;
    }
    if (buf[0] < '0' || buf[0] > '3' || buf[1] < '0' || buf[1] > '7' ||
        buf[2] < '0' || buf[2] > '7')
      throw soci::soci_error("Invalid bytea encoding found.");
    *outpos++ = char(buf[0] * 64 + buf[1] * 8 + buf[2]);
    buf += 3;
  }
}


Added docs for .apply()in basic usage of systemState

Objective
Fixes #5940
Solution
Added the suggested comment.

bors r+

bors retry

bors r+


JavaSerializableSerializer cuts off the length of serialized object at 16 bit

bytes.length is an int, not a short. Deserialization will otherwise not work, as too few data will be passed into the ObjectInputStream.

Sorry I somehow missed this and just noticed the comment in your repo :-)


:zap: Collection of optimizations and a bug fix for charge_distribution_surface

Description
This PR introduces a collection of optimisations, mainly with regard to charge_distribution_surface.
The commit messages describe the changes that are made.
Most prominently, we have:

Fixed a bug where if the charge index is changed from i to i', and i' has more leading zeroes than i, then there would be cells that stay unchanged that need to be assigned a negative charge state.
The system energy is now by default only recomputed for physically valid charge distributions.
The validity_check function now returns as soon as a verdict can be made.
Functions that modify the private storage object can be made const apparently. This may be applicable in other files as well. Currently I applied the change in charge_distribution_surface.hpp and cell_level_layout.hpp.
Removed an unnecessary mutex lock in quicksim.hpp. Also the update_after_charge_change() call before calling the threads can be omitted, since in each thread we first make such a call before checking physical validity. Hence also we have a proper initialisation of the local potentials and system energy before calling adjacent_search.

Checklist:

[x] The pull request only contains commits that are related to it.
[x] I have added appropriate tests and documentation.
[ ] I have made sure that all CI jobs on GitHub pass.
[x] The pull request introduces no new warnings and follows the project's style guidelines.

Looks like I missed some tests still. Probably just some silliness

@wlambooy Thank you for your efforts! As soon as it passes the tests, I will take a closer look at it. Please note that const indicates to the compiler that the function is a read-only operation.

@wlambooy Thank you for your efforts! As soon as it passes the tests, I will take a closer look at it. Please note that const indicates to the compiler that the function is a read-only operation.

I missed some consequences of making the empty layout physically valid, hopefully everything passes now.
My intuition is to use keywords like const as much as possible to help the compiler, since the typing system makes sure you can't overdo it. Yet I would think that a function that modifies a private object cannot be const, yet it is accepted. Do you understand why?

I see what you mean, but this is not the best style. Using the keyword const when the member function obviously changes the logical state of the object violates semantic clarity and logical constness. I would ask you to only use/add const where it is really appropriate. Thank you!

I see what you mean, but this is not the best style. Using the keyword const when the member function obviously changes the logical state of the object violates semantic clarity and logical constness. I would ask you to only use/add const where it is really appropriate. Thank you!

My assumption that the C++ compiler catches this turns out to be incorrect, and our example in which a dereferenced pointer to a object is changed show this. I made sure to verify the logical constness in a new commit.
While trying to improve the code coverage, I stumbled on a layout that generates no charge distributions for ExGS, but two for QuickExact. The test looks as follows:
TEMPLATE_TEST_CASE(
    "ExGS simulation of two SiDBs placed directly next to each other with non-realistic relative permittivity", "[exhaustive-ground-state-simulation]",
    (cell_level_layout<sidb_technology, clocked_layout<cartesian_layout<siqad::coord_t>>>),
    (charge_distribution_surface<cell_level_layout<sidb_technology, clocked_layout<cartesian_layout<siqad::coord_t>>>>))
{
    TestType lyt{};
    lyt.assign_cell_type({1, 3, 0}, TestType::cell_type::NORMAL);
    lyt.assign_cell_type({2, 3, 0}, TestType::cell_type::NORMAL);

    const quickexact_params<TestType> params{sidb_simulation_parameters{2, -0.32, 1.0e-3}};

    const auto simulation_results = quickexact<TestType>(lyt, params);

    CHECK(simulation_results.charge_distributions.empty());
}

A degenerate charge distribution is returned by QuickExact with a system energy of -3472.6959461051524. Perhaps QuickExact is not defined on such non-realistic relative permittivity values?

I see what you mean, but this is not the best style. Using the keyword const when the member function obviously changes the logical state of the object violates semantic clarity and logical constness. I would ask you to only use/add const where it is really appropriate. Thank you!

My assumption that the C++ compiler catches this turns out to be incorrect, and our example in which a dereferenced pointer to a object is changed show this. I made sure to verify the logical constness in a new commit.
While trying to improve the code coverage, I stumbled on a layout that generates no charge distributions for ExGS, but two for QuickExact. The test looks as follows:
TEMPLATE_TEST_CASE(
    "ExGS simulation of two SiDBs placed directly next to each other with non-realistic relative permittivity", "[exhaustive-ground-state-simulation]",
    (cell_level_layout<sidb_technology, clocked_layout<cartesian_layout<siqad::coord_t>>>),
    (charge_distribution_surface<cell_level_layout<sidb_technology, clocked_layout<cartesian_layout<siqad::coord_t>>>>))
{
    TestType lyt{};
    lyt.assign_cell_type({1, 3, 0}, TestType::cell_type::NORMAL);
    lyt.assign_cell_type({2, 3, 0}, TestType::cell_type::NORMAL);

    const quickexact_params<TestType> params{sidb_simulation_parameters{2, -0.32, 1.0e-3}};

    const auto simulation_results = quickexact<TestType>(lyt, params);

    CHECK(simulation_results.charge_distributions.empty());
}

A degenerate charge distribution is returned by QuickExact with a system energy of -3472.6959461051524. Perhaps QuickExact is not defined on such non-realistic relative permittivity values?

Thank you for your efforts! 🙏
That's a good example, even though it's not realistic. You are right. I found the problem and will fix it as soon as possible.
Just for your information: Be aware of this additional parameter, which can also lead to deviations between both simulators, but not here.
    const quickexact_params<TestType> params{sidb_simulation_parameters{2, -0.32, 1.0e-3},
                                             quickexact_params<TestType>::automatic_base_number_detection::OFF};

@wlambooy Thank you very much for your effort! Just klick on re-request review when you are ready.

@wlambooy many thanks also from my side for the additions! :pray:
@Drewniok thanks to you as well for taking your time reviewing the changes! I'll have a quick scan as well and then it should be ready for merge :muscle:

@wlambooy Thanks again for your efforts! @marcelwa just asked me to check again if your changes do not increase the simulation runtimes. However, when running our recently added benchmark script (fiction -> test -> benchmark -> simulation.cpp), a careful analysis of the results shows that the runtimes increase significantly (~10%), which is unacceptable. As far as I can see, this is not caused by the bugfix, but rather by the other changes.

"Unacceptable" is maybe a bit harsh a statement. We aim for the most performant code possible for any given scenario and we indeed take pride in our achievements. @wlambooy if the benchmark code @Drewniok mentioned helps you figure out where exactly the runtime increase was caused, we'd appreciate a fix. Many thanks!

Also, @Drewniok, can I ask what your benchmark analysis process looks like so that I can replicate it? I see the simulation benchmark file contains a comment with mean, low mean and high mean columns, are these the results from 3 separate benchmark runs, or are they the mean/low/high from a set of more benchmark runs?

@wlambooy See https://github.com/catchorg/Catch2/blob/devel/docs/benchmarks.md for a definition of samples, iterations, etc. In our case, the crossing gate will be simulated 100 times due to 100 samples and only 1 iteration each.

I think @wlambooy's question was where the output comes from. It will be automatically generated by the benchmark script. Simply pass -DFICTION_BENCHMARK=ON to your CMake call and run the resulting binary after compilation in Release mode.

Also, @Drewniok, can I ask what your benchmark analysis process looks like so that I can replicate it? I see the simulation benchmark file contains a comment with mean, low mean and high mean columns, are these the results from 3 separate benchmark runs, or are they the mean/low/high from a set of more benchmark runs?

@wlambooy See https://github.com/catchorg/Catch2/blob/devel/docs/benchmarks.md for a definition of samples, iterations, etc. In our case, the crossing gate will be simulated 100 times due to 100 samples and only 1 iteration each.

I see, I was running the benchmarks from within CLion so I was getting some XML output that didn't look like the output in the comment. I have to say that on my system at least, I'm always getting quite a spread in the benchmark results, and usually the more often I run it without rebuilding the better the times will get. You can see this in the benchmark results below, which were performed directly in sequence (look at the mean values)
QuickExact
<!-- All values in nano seconds -->
<mean value="2.42783e+09" lowerBound="2.35123e+09" upperBound="2.54392e+09" ci="0.95"/>
<standardDeviation value="4.74379e+08" lowerBound="3.47914e+08" upperBound="6.37069e+08" ci="0.95"/>
<outliers variance="0.936384" lowMild="0" lowSevere="0" highMild="2" highSevere="7"/>

QuickSim
<!-- All values in nano seconds -->
<mean value="1.33811e+07" lowerBound="1.31979e+07" upperBound="1.35853e+07" ci="0.95"/>
<standardDeviation value="987767" lowerBound="835378" upperBound="1.19855e+06" ci="0.95"/>
<outliers variance="0.676348" lowMild="2" lowSevere="0" highMild="6" highSevere="1"/>

QuickExact
<!-- All values in nano seconds -->
<mean value="2.11722e+09" lowerBound="2.08929e+09" upperBound="2.15057e+09" ci="0.95"/>
<standardDeviation value="1.55694e+08" lowerBound="1.30843e+08" upperBound="1.96559e+08" ci="0.95"/>
<outliers variance="0.666639" lowMild="0" lowSevere="0" highMild="3" highSevere="0"/>

QuickSim
<!-- All values in nano seconds -->
<mean value="1.06471e+07" lowerBound="1.04801e+07" upperBound="1.08103e+07" ci="0.95"/>
<standardDeviation value="845190" lowerBound="739383" upperBound="995966" ci="0.95"/>
<outliers variance="0.707146" lowMild="2" lowSevere="0" highMild="1" highSevere="0"/>

QuickExact
<!-- All values in nano seconds -->
<mean value="2.01781e+09" lowerBound="2.00066e+09" upperBound="2.04291e+09" ci="0.95"/>
<standardDeviation value="1.04298e+08" lowerBound="7.61848e+07" upperBound="1.52602e+08" ci="0.95"/>
<outliers variance="0.494789" lowMild="0" lowSevere="0" highMild="3" highSevere="2"/>

Quicksim
<!-- All values in nano seconds -->
<mean value="9.83447e+06" lowerBound="9.68097e+06" upperBound="9.98761e+06" ci="0.95"/>
<standardDeviation value="783977" lowerBound="703335" upperBound="901620" ci="0.95"/>
<outliers variance="0.707254" lowMild="0" lowSevere="0" highMild="0" highSevere="0"/>

After doing a couple of benchmark runs with pre-built binaries in a more processor-usage sterile environement, I am able to confirm a performance difference with the following findings:
The QuickExact time is slower (+5.4% runtime on average) while QuickSim is faster (-7.1% runtime on average). All benchmark runs were consistent in the differences: each QuickExact benchmark run of the main branch was faster than each QuickExact benchmark run of this branch, and each QuickSim benchmark run of the main branch was slower than each QuickSim benchmark run of this branch.
I'll try to figure out why this is.

@wlambooy Thanks again for your efforts! I know, sometimes it is not so easy to find out why the code is slower. Take your time and don't hesitate to contact us.
Since it would be great to have this bugfix in the main branch as soon as possible, can I ask you to maybe split this PR into two - one for the bugfix and one for the other changes. What do you think about that? What do you think @marcelwa?

I was working on more pressing things the last week so I haven't gotten into a code speed investigation. I put the bugfixes in a new PR: #347

This ran out of sync and doesn't seem to be necessary anymore according to @Drewniok.


Minor improvement suggestions.

I was quite nitpicky, so don't feel obligated to accept all changes.


When there are many points, cannot scroll the line chat to view all the points.

Just make PNChart view embed into scroll view and set larger chart frame width...

@eriktelepovsky you are right


clarify refresh vs access token in the API

how to know if token is expired
how to refresh access token using refresh token

https://github.com/OpenUpSA/muni-portal-backend/pull/33/files#diff-677cbad94b1e80c085f86f0808b68ee2da7283cd8254d72f496f12654b0604cf


getting the wrong colours

hello when i type the commands as follows  incorrect colours come up
M150: Set Status LED Color - Use R-U-B for R-G-B
M150 R255       ; Turn LED red (blue)
M150 R255 U127  ; Turn LED orange
M150            ; Turn LED off
M150 R U B      ; Turn LED white
I ALSO GET PURPLE AND yellow  im using 33 for red 32 for green 12 blue

What colors do you get if you do each of the following?
M150 R
M150 U
M150 B

No response, please reopen if you're still having this issue.


Add 'unreleased version' & 'old version' warning banner to non-latest versions of docs

To make it clear to users when they are looking at unreleased or old versions of the docs, we should include a banner at the very top of the page/under the header bar indicating to the user that the version they are looking at is not 'current'.
I'm not sure what the best-practice way to do this is, we could either hook into the versioning system/plugin configuration or otherwise string match on the URL that the user is viewing.

Example from Helm docs (https://v2.helm.sh/docs/):

/priority backlog
/kind feature


[SPARK-42580][CONNECT] Scala client add client side typed APIs

What changes were proposed in this pull request?
This PR adds the client side typed API to the Spark Connect Scala Client.
Why are the changes needed?
We want to reach API parity with the existing APIs.
Does this PR introduce any user-facing change?
Yes, it adds user API.
How was this patch tested?
Added tests to ClientE2ETestSuite, and updated existing tests.

@cloud-fan can you take a look?

Merging

late LGTM


use npm package instead of git for railroad-diagrams

This request is to add railroad-diagrams via the npm package https://www.npmjs.com/package/railroad-diagrams instead of via git. Our internal system does not allow us to compile npm modules with git dependencies.
"No problem," you might say. "It's optional." It's not that easy, though. We are using a package that has Nearley as a dependency two-layers deep. styled-components -> css-to-react-native -> nearley -> railroad-diagrams, so we can't simply install without railroad-diagrams.
This isn't to spark an argument about "future-proofing," but a very practical request that will allow us to use a library that depends on Nearley.
What do you think? Might this be possible?

ps. I'm happy to submit the PR myself.

Pffffffft I thought #115 dealt with this. That was literally why I merged #115. Does the optionalDependency whatsit not work if it's a dependency of a dependency?

it does, but it's an issue of our dependency management system, which doesn't support git dependencies inside npm repos.
We have a sort of private npm repository, which makes the library available internally. The npm repo itself doesn't enforce --no-optional. That's up to the developer. So to prevent unintended consequences, all git repos are disallowed as dependencies.
There isn't (as far as I can tell) a way to enforce --no-optional as a package.json configuration.
Like I said, this is a practical, not philosophical request.
is there a reason to use a git repo in this case when it looks like the npm module is just a pointer to the git repo?

So, despite me using the feature whose purpose is to allow a package to be installed even if certain optional dependencies fail to be installed, the package isn't installing because certain optional dependencies fail to be installed? You know what, I don't even care anymore. 0591eab01c46e90d0cc26e96873d3bef5df47db8.


Feature request: termination settings when apogee is reached

A new termination setting could be added to Tudat to stop a propagation when apogee is reached.
This would be particularly useful for ascent simulations and could be triggered either when the vertical velocity becomes negative, or when the vehicle starts losing altitude.

Alternatively, this could be implemented as a dependent variable that is False when apogee is not reached, and True if apogee is reached. It could even be added as a flight condition and/or dependent variable. This way, the propagation could continue, but the user could use this flight condition to trigger some change in vehicle behavior after apogee.

Hi @gaffarelj, something I pulled out from an old Slack thread might provide a good starting point, just to point out you can call on objects states in a custom termination function in Python.
The following snippet was intended for a launch segment, and was designed to terminate the simulation when the vehicles relative speed w.r.t. Earth was greater than circular orbit velocity at the vehicles altitude. As mentioned in the thread, it was perhaps not the best solution for this design, but it worked.
def custom_termination_fn(_):
    rel_state = system_of_bodies.get("Vehicle").state - system_of_bodies.get("Earth").state
    rel_r = rel_state[:3]
    rel_v = rel_state[3:]
    rel_r_mag = np.linalg.norm(rel_r)
    rel_v_t = rel_v - np.dot(rel_v, rel_r) / np.dot(rel_r, rel_r) * rel_r
    return np.linalg.norm(rel_v_t) >= sqrt(MU_EARTH / rel_r_mag)

custom_termination = propagation_setup.propagator.custom_termination(custom_termination_fn)

Good idea! Here, an important question is: what is the exact definition of apogee? The first point where dh/dt < 0? Calculating dh/dt may be cumbersome for some shape models. Alternative is the point where the angle between position and velocity vectors becomes larger than 90 degrees (flight path angle < 0 degrees?).

Hi @geoffreygarrett, thank you for the code you just shared. I actually implemented something similar in a new tudatpy rocket ascent example that I pushed yesterday here, to terminate at apogee using a custom function.
What I wanted to address in this issue is that perhaps other users would find this apogee termination useful, and it could be implemented directly in tudat?
In a first time I think I will just put what I made for my rocket ascent example as the new example for the custom_termination function in the API docs here, since the current code snippet is more of a placeholder.

@DominicDirkx good point. I think that defining it as the moment where the angle between velocity and position becomes > 90 deg would be best.
I would be cautious about using the flight path angle directly because of the whole orientation confusion, but I don't know if the orientation of the vehicle is actually used to compute the flight path angle.
We could also just offer an option to alternatively use dh/dt < 0. I do want to test both implementations anyways, so I can compare their robustness and how they differs.

I don't know if I'm missing something but is flight path angle not simply the angle between the horizon and the velocity vector, what does the orientation confusion refer to? I think it would be a good solution. @DominicDirkx we could also add an exact termination with a root solver fairly easily for this right?

The confusion is my own: I'm still quite confused about how lots of orientations are computed and handled in tudat :)
But then indeed, if the flight path angle is computed like this, it would be perfect.

Indeed, the flight path angle does not use the body orientation, only its translational state. One possible issue is that the flight path angle becomes singular if speed is 0, which will happen at apogee.... So, using the FPA to find apogee may not be the best option. We could set it to FPA < 0, not FPA <= 0, but the angle will behave chaotically near V=0 (apogee). So, possibly not the best option.
Concerning the root finding, this is already done :) When terminating exactly on a dependent variable, the code enters a root finding algorithm.

AHH yes @DominicDirkx, I recall now it was a general implementation for any termination condition, my question was under the presupposition that it wasn't generalized to a custom one.
Regarding my previous hesitation on adding an extra dependent variable to Tudat, that came from the Zen of Python:

There should be one-- and preferably only one --obvious way to do it.

But I think in this case, it's a good addition to have as a default go-to.

I am closing this issue. It was not obvious to me at the time, but indeed using the flight path angle to determine when apogee is reached turned out to be perfect. So, no additional termination setting should be added for this. (It may still be good to describe this use case somewhere in the guide or the ascent example.)


[backport] Fix attribute name collisions in docstring

Backport of #5037

[automatic post] Jenkins, test this please.

Jenkins CI test (for commit 69333d2e1a2e7966eb4bca98ade0541a566ef613) succeeded without errors!


Sites not getting created

Category

[X] Question
[ ] Bug
[ ] Enhancement

Hi Team,
I followed the deployment steps in my tenant and after running the command
Apply-PnPTenantTemplate -Path starterkit.pnp -Parameters @{"SitePrefixUrl"="company"}
the script gets executed and i dont see any errors but when i check in my tenant site collections, no new sites are created. Only TermSets are created.
Please advise.

Could you please re-run, then provide a snapshot of what is returned in PowerShell?


Classrooms: Investigate mixed grade homerooms

Part of https://github.com/studentinsights/studentinsights/issues/1693.
This came up in feedback from an AP.  I was initially assuming this was a small number of classrooms, most of which are substantially separate special education classrooms.  I went to confirm that but looks like there's more going on:
Homeroom.all.size
class_list_homerooms = Homeroom.all.where(grade: ['KF', '1', '2', '3', '4', '5']);nil
class_list_homerooms.size

mixed_homerooms = class_list_homerooms.select {|homeroom| homeroom.students.map(&:grade).any? {|grade| grade != homeroom.grade } };nil
mixed_homerooms.size
=> 0.6241610738255033

So that shows a large fraction of classrooms have some mismatch around grade levels.  Spot checking a few, it seems this might be partially an Insights bug.

It looks like there's a method https://github.com/studentinsights/studentinsights/blob/master/app/models/homeroom.rb#L12 for updating the Homeroom grade but grepping around it seems to me like it's never called.  @alexsoble does any of this ring bells for you?  No worries if not, I can look more next week.

@kevinrobinson It's invoked as a hook here:
has_many :students, after_add: :update_grade

@alexsoble ha okay great thanks!  That's what I thought but failed at grepping :)

The root problem here is that a homeroom doesn't have a grade in the import, and there are mixed grade homerooms.  So the approach in https://github.com/studentinsights/studentinsights/blob/master/app/models/homeroom.rb#L12 won't be accurate over time.
I think ideally we'd remove the Homeroom relation altogether in favor of Sections for K8 before the rollover this summer.

Going to split this out of https://github.com/studentinsights/studentinsights/issues/1722 and leave it for later this summer.


Distance Measure

Is there any possible way to get the real world distance between two points using the ZED2 camera using ZED python API

Once you have the 2 points (3D points), you can calculate the euclidean distance like this :
import math
distance = math.sqrt( ((p1[0]-p2[0])**2)+((p1[1]-p2[1])**2)+((p1[2]-p2[2])**2) )

where p1 and p2 are your 3D points.

Once you have the 2 points (3D points), you can calculate the euclidean distance like this :
import math
distance = math.sqrt( ((p1[0]-p2[0])**2)+((p1[1]-p2[1])**2)+((p1[2]-p2[2])**2) )

where p1 and p2 are your 3D points.

Is the 3D point mean the out put of this function point_cloud.get_value(x, y) right ?

Yes. You can get P1 and P2 like this :
p1 = point_cloud.get_value(x1, y1);
p2 = point_cloud.get_value(x2, y2);
where x1,y1,x2,y2, must respect [0,Resolution]
See here : https://github.com/stereolabs/zed-examples/blob/master/tutorials/tutorial 3 - depth sensing/python/depth_sensing.py#L72


Migrate to hatch

Aligning the packaging story with the other projects: https://blog.jupyter.org/packaging-for-jupyter-in-2022-c7be64c38926
Although empack is not strictly related to Jupyter it's nice to streamline the setup to avoid fatigue over time.
One can use the hatch version command to bump version:

cc @martinRenou for review and for triggering the CI run

ping @martinRenou
I checked on my fork and CI seems to be passing: https://github.com/jtpio/empack/pull/1


issues from testing 2.0.0

setup is called for every experiment type, leading to a NotImplemented error on main
upper left and position interpreted as dict then converted to point3D - was incorrect - should fix and test for correct values
check up on double conversion when those values go from external -> internal
The positions of each crystal is specified to too many decimal places

Additionally run_artemis still claims artemis has started despite the issue in 1)


(#12): Add option for secure

All PRs should be based on an issue
WHY?
See issue #12
WHAT?
Add option for secure cookies

[x] I have considered (and possibly added) tests
[ ] I have updated the documentation

[Optional] Resolves #12

Coverage decreased (-2.4%) to 30.952% when pulling c1b68917f8bccfd4d712c5a618e6e40f55dd48dd on feature/secure into 28a5f5b45aff7b360221af8b8df1e93ab0c5496c on master.

Coverage decreased (-2.4%) to 30.952% when pulling 3d4a1ec0ead00bb88ebd98f0effb22623a4d3494 on feature/secure into 28a5f5b45aff7b360221af8b8df1e93ab0c5496c on master.


loss nan problem

this may be mish bugs, even I clip the gradient value and descend the lr to even 1e-6.
I also load the darknet weights and can only get about<EMAIL_ADDRESS>.Then I pretrain by this darknet weight also get nan quickly.

did u solve the problem? Can u share some experience?


Migration of large test suite

Hi
I try to migrate a larger test suite of 300 Arquillian Test Classes (each with their own micro deployment)   to migrate to suite extension approach, with much fewer deployments. I would like migrate this incrementally, class by class. However the migration path you suggest would be quite awkward for me since you need to move all three hundred deployments to one class and annotate each test method. Essentially you have to modify each class and each test. What I would like to do is create one deployment, then move some test classes to this deployment and see how it works.
Basically it would be great if a test class would use its own @Deployment method if it has one, otherwise it would use the suite @Deployment. Can this somehow be achieved?
Thanks!

I was thinking about that kind of solution but I couldn't make it possible without huge effort.
Guys from arquillian are working on supporting that out of the box but..
Here is discussion: http://discuss.arquillian.org/t/arquillian-core-suite-subsuite-how-to-define-the-suite/163/28
Work is in progress..
https://github.com/aslakknutsen/arquillian-core/tree/arq_suite

Maybe you can use the EmbeddedGradleImporter (if you build with gradle) or MavenResolver to create a Deployment of your whole application. Then you dont have to merge all micro diployments.
Than comment the deployment method of each test.
Most of the test should run and then you only have to look at failed one.
That save some time for me


[Mod Compat]

If this issue is related to compatibility with other mods, such as missing recipes, make sure to follow these steps before reporting

[A considerable number of stone cutting formulas ] Make sure the recipe exists in game and can be crafted
[ xks-decoration] If the mod requires JEI, make sure both EMI and JEI are installed together
[ https://modrinth.com/mod/xks-decoration] Report this issue to the mod if applicable

Only installing JEI can be viewed. Has it been fixed?


Automatic columns selector for joins function

This changes introduces an automatic column selector as discussed in #133 .
All the common columns in two datasets are used as the column selectors.

You don't have to change api.clj file since it's generated. https://github.com/scicloj/tablecloth/blob/master/src/tablecloth/api/api_template.clj#L182

thanks, should I revert the changes in that ns completely? or its ok to leave what changes are there?


Add tutorial page about upgraded domains

To explain why and when the domains are upgraded (i.e. changed from HTTP to HTTPS) and that the upgrade is done only in the client side, ZAP will still access them with HTTP.

We should also include a note about this in whatever documentation we end up building up.


[5.3] Fix concurrent operations execution in OperationQueue

To be able to run operations concurrently OperationQueue needs concurrent underlying DispatchQueue. This patch uses .concurrent attribute to create DispatchQueues with required behavior.
This matches with Darwin.
(cherry picked from commit fdb1118, original PR #2937)

@swift-ci test

@spevans should we merge this while within the 5.3.3 window?

@spevans should we merge this while within the 5.3.3 window?

@swift-ci test

@swift-ci test


Eventhub: Updating the EventHubNameParameter max length to 256

MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Contribution checklist:

[X] I commit to follow the Breaking Change Policy of “no breaking changes
[X] I have reviewed the documentation for the workflow.
[X] 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

[ ] Ensure to check this box if one of the following scenarios meet updates in the PR, so that label “WaitForARMFeedback” will be added automatically to involve ARM API Review. Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs, all “removals” and “adding a new property” no more require ARM API review.

Adding new API(s)
Adding a new API version
Adding a new service

[ ] 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 there are following updates in the PR, ensure to request an approval from API Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in stable version
[ ] Removing properties in stable version
[ ] Removing API version(s) in stable version
[ ] Updating API in stable version with Breaking Change Validation errors
[ ] Updating API(s) in preview over 1 year

Please follow the link to find more details on PR review process.

/azp run automation - sdk

Can one of the admins verify this patch?

hi @ChenTanyi , can you please merge the PR? we need to publish SDK clients fro the current changes.


Make Golomb-Rice filtering PR initial indexing faster

https://github.com/nopara73/MagicalCryptoWallet/pull/38
It takes like half a day right now. If possible, it should be made faster.

This issue is addressed by the PR https://github.com/nopara73/MagicalCryptoWallet/pull/63


Concatenated Age Mostly NA

Warren created the variable d_117249500 that gives age derived from DOB at time of user profile completion in the participants table. However, this is missing for a large majority of participants. Can you review the code for this variable? I need the age of participants for filtering purposes.

I looked into this and it seems to be unrelated to the query itself. d_117249500 is definitely missing for many participants in the Connect.participants even though d_371067537 is available. I'm don't think I'm in a position to help with this issue.

It's a concatenated variable created from the DOB variables (month, day, year of DOB). I don't know if that helps

I don't work with any code that is upstream of the participants table. This seems like it might be a dev/ops issue rather than a query/flattening issue.

Nicole advised I open this in Episphere instead and have Tony take a look at it.


tomasbjerre maintainer git-changelog-plugin

Description
https://github.com/jenkinsci/git-changelog-plugin
I talked to Paul Wellner Bau about this.
I should be the maintainer of this plugin and also be auto assigned new Jiras. The motivation for that is clear when looking at the contribution history:
https://github.com/jenkinsci/git-changelog-plugin/graphs/contributors
Submitter checklist for changing permissions
Always

[x ] Add link to plugin/component Git repository in description above

This doesn't do anything except remove the other user @paulwellnerbou. Is that what you meant to do here?

@daniel-beck, @tomasbjerre, well, I don't think you have to remove me as developer... If you don't mind I would like to keep having the possibility to jump in developing again. ;-)
I have still a few customers using the part of the plugin I developed, so it might be that I'll need to do some fixes there.
@tomasbjerre, I already gave you admin rights to the repository and added you to the new team ("git-changelog-plugin contributors"). I was not able to modify "git-changelog-plugin developers" as I have no admin rights in this team and there is no other member there).

I just want to be the default assignee of jira issues. I'm totally fine with keeping Paul as a developer :)
@daniel-beck Exactly how do I achive this?
Closing the pr, to keep Paul in the team.

@tomasbjerre File an issue in the INFRA project in Jira.

Done, https://issues.jenkins-ci.org/browse/INFRA-1586


[Question] File Upload Acceptance

When using startServerAndCreateH3Handler() to accept GraphQL requests, can I handle file uploads with multipart data?

Using multipart is not really recommended by apollo, see https://www.apollographql.com/blog/backend/file-uploads/file-upload-best-practices/. But if you want to do it nonetheless, have a look at the graphql-upload package and in particular the koa middleware should give you a good starting point for the h3 implementation. If you go along this path, it would be nice if you could share your implementation in the form of a PR against the graphql-upload repo.