Error(s) in loading state_dict for DataParallel:

When I download the pre_trained model and resume it. there is an error.
model.load_state_dict(checkpoint['state_dict'])
It seems that the name are not matched.(e.g. "module.features.0.weight" v.s. "features.module.0.weight")
How could I solve it if I wish to use the pre_trained model on Cifar10?
Thank you !

Traceback (most recent call last):
File "test_0.py", line 130, in
model = load_model()
File "test_0.py", line 104, in load_model
model.load_state_dict(checkpoint['state_dict'])
File "/home/cosmo/anaconda3/envs/tf8/lib/python3.6/site-packages/torch/nn/modules/module.py", line 719, in load_state_dict
self.class.name, "\n\t".join(error_msgs)))
RuntimeError: Error(s) in loading state_dict for DataParallel:
Missing key(s) in state_dict: "module.features.0.weight", "module.features.0.bias", "module.features.3.weight", "module.features.3.bias", "module.features.6.weight", "module.features.6.bias", "module.features.8.weight", "module.features.8.bias", "module.features.10.weight", "module.features.10.bias", "module.classifier.weight", "module.classifier.bias".
Unexpected key(s) in state_dict: "features.module.0.weight", "features.module.0.bias", "features.module.3.weight", "features.module.3.bias", "features.module.6.weight", "features.module.6.bias", "features.module.8.weight", "features.module.8.bias", "features.module.10.weight", "features.module.10.bias", "classifier.weight", "classifier.bias".

Hi,
The problem is the module is load with dataparallel activated and you are trying to load it without data parallel. That's why there's an extra module at the beginning of each key!
Refer to this link for more information:
https://discuss.pytorch.org/t/missing-keys-unexpected-keys-in-state-dict-when-loading-self-trained-model/22379

You can also manually updated the dic. Like this:
        state_dict =checkpoint['state_dict']
        from collections import OrderedDict
        new_state_dict = OrderedDict()

        for k, v in state_dict.items():
            if 'module' not in k:
                k = 'module.'+k
            else:
                k = k.replace('features.module.', 'module.features.')
            new_state_dict[k]=v

        model.load_state_dict(new_state_dict)

The mutiple GPUs usage in pytorch is a little difficult.
In TF, you just set the os.environ["CUDA_VISIBLE_DEVICES"]='0,1,2,3'

Am getting an error similar to this one
This is what I am running:
python cifar.py -a preresnet --depth 110 --epochs 3 --schedule 81 122 --gamma 0.1 --wd 1e-4 --checkpoint checkpoints/cifar10/preresnet-110 --resume 'checkpoint.pth.tar'
('checkpoint.pth.tar' is from the onedrive folder)

RuntimeError: Error(s) in loading state_dict for DataParallel:
Missing key(s) in state_dict: "module.bn.weight", "module.bn.bias", "module.bn.running_mean", "module.bn.running_var".
Unexpected key(s) in state_dict: "module.bn1.weight", "module.bn1.bias", "module.bn1.running_mean", "module.bn1.running_var", "module.layer1.0.conv3.weight", "module.layer1.0.bn3.weight", "module.layer1.0.bn3.bias", "module.layer1.0.bn3.running_mean", "module.layer1.0.bn3.running_var", "module.layer1.0.downsample.0.weight", "module.layer1.0.downsample.1.weight", "module.layer1.0.downsample.1.bias", "module.layer1.0.downsample.1.running_mean", "module.layer1.0.downsample.1.running_var", "module.layer1.1.conv3.weight", "module.layer1.1.bn3.weight", "module.layer1.1.bn3.bias", "module.layer1.1.bn3.running_mean", "module.layer1.1.bn3.running_var", "module.layer1.2.conv3.weight", "module.layer1.2.bn3.weight", "module.layer1.2.bn3.bias", "module.layer1.2.bn3.running_mean", "module.layer1.2.bn3.running_var", "module.layer1.3.conv3.weight", "module.layer1.3.bn3.weight", "module.layer1.3.bn3.bias", "module.layer1.3.bn3.running_mean", "module.layer1.3.bn3.running_var", "module.layer1.4.conv3.weight", "module.layer1.4.bn3.weight", "module.layer1.4.bn3.bias", "module.layer1.4.bn3.running_mean", "module.layer1.4.bn3.running_var", "module.layer1.5.conv3.weight", "module.layer1.5.bn3.weight", "module.layer1.5.bn3.bias", "module.layer1.5.bn3.running_mean", "module.layer1.5.bn3.running_var", "module.layer1.6.conv3.weight", "module.layer1.6.bn3.weight", "module.layer1.6.bn3.bias", "module.layer1.6.bn3.running_mean", "module.layer1.6.bn3.running_var", "module.layer1.7.conv3.weight", "module.layer1.7.bn3.weight", "module.layer1.7.bn3.bias", "module.layer1.7.bn3.running_mean", "module.layer1.7.bn3.running_var", "module.layer1.8.conv3.weight", "module.layer1.8.bn3.weight", "module.layer1.8.bn3.bias", "module.layer1.8.bn3.running_mean", "module.layer1.8.bn3.running_var", "module.layer1.9.conv3.weight", "module.layer1.9.bn3.weight", "module.layer1.9.bn3.bias", "module.layer1.9.bn3.running_mean", "module.layer1.9.bn3.running_var", "module.layer1.10.conv3.weight", "module.layer1.10.bn3.weight", "module.layer1.10.bn3.bias", "module.layer1.10.bn3.running_mean", "module.layer1.10.bn3.running_var", "module.layer1.11.conv3.weight", "module.layer1.11.bn3.weight", "module.layer1.11.bn3.bias", "module.layer1.11.bn3.running_mean", "module.layer1.11.bn3.running_var", "module.layer1.12.conv3.weight", "module.layer1.12.bn3.weight", "module.layer1.12.bn3.bias", "module.layer1.12.bn3.running_mean", "module.layer1.12.bn3.running_var", "module.layer1.13.conv3.weight", "module.layer1.13.bn3.weight", "module.layer1.13.bn3.bias", "module.layer1.13.bn3.running_mean", "module.layer1.13.bn3.running_var", "module.layer1.14.conv3.weight", "module.layer1.14.bn3.weight", "module.layer1.14.bn3.bias", "module.layer1.14.bn3.running_mean", "module.layer1.14.bn3.running_var", "module.layer1.15.conv3.weight", "module.layer1.15.bn3.weight", "module.layer1.15.bn3.bias", "module.layer1.15.bn3.running_mean", "module.layer1.15.bn3.running_var", "module.layer1.16.conv3.weight", "module.layer1.16.bn3.weight", "module.layer1.16.bn3.bias", "module.layer1.16.bn3.running_mean", "module.layer1.16.bn3.running_var", "module.layer1.17.conv3.weight", "module.layer1.17.bn3.weight", "module.layer1.17.bn3.bias", "module.layer1.17.bn3.running_mean", "module.layer1.17.bn3.running_var", "module.layer2.0.conv3.weight", "module.layer2.0.bn3.weight", "module.layer2.0.bn3.bias", "module.layer2.0.bn3.running_mean", "module.layer2.0.bn3.running_var", "module.layer2.0.downsample.1.weight", "module.layer2.0.downsample.1.bias", "module.layer2.0.downsample.1.running_mean", "module.layer2.0.downsample.1.running_var", "module.layer2.1.conv3.weight", "module.layer2.1.bn3.weight", "module.layer2.1.bn3.bias", "module.layer2.1.bn3.running_mean", "module.layer2.1.bn3.running_var", "module.layer2.2.conv3.weight", "module.layer2.2.bn3.weight", "module.layer2.2.bn3.bias", "module.layer2.2.bn3.running_mean", "module.layer2.2.bn3.running_var", "module.layer2.3.conv3.weight", "module.layer2.3.bn3.weight", "module.layer2.3.bn3.bias", "module.layer2.3.bn3.running_mean", "module.layer2.3.bn3.running_var", "module.layer2.4.conv3.weight", "module.layer2.4.bn3.weight", "module.layer2.4.bn3.bias", "module.layer2.4.bn3.running_mean", "module.layer2.4.bn3.running_var", "module.layer2.5.conv3.weight", "module.layer2.5.bn3.weight", "module.layer2.5.bn3.bias", "module.layer2.5.bn3.running_mean", "module.layer2.5.bn3.running_var", "module.layer2.6.conv3.weight", "module.layer2.6.bn3.weight", "module.layer2.6.bn3.bias", "module.layer2.6.bn3.running_mean", "module.layer2.6.bn3.running_var", "module.layer2.7.conv3.weight", "module.layer2.7.bn3.weight", "module.layer2.7.bn3.bias", "module.layer2.7.bn3.running_mean", "module.layer2.7.bn3.running_var", "module.layer2.8.conv3.weight", "module.layer2.8.bn3.weight", "module.layer2.8.bn3.bias", "module.layer2.8.bn3.running_mean", "module.layer2.8.bn3.running_var", "module.layer2.9.conv3.weight", "module.layer2.9.bn3.weight", "module.layer2.9.bn3.bias", "module.layer2.9.bn3.running_mean", "module.layer2.9.bn3.running_var", "module.layer2.10.conv3.weight", "module.layer2.10.bn3.weight", "module.layer2.10.bn3.bias", "module.layer2.10.bn3.running_mean", "module.layer2.10.bn3.running_var", "module.layer2.11.conv3.weight", "module.layer2.11.bn3.weight", "module.layer2.11.bn3.bias", "module.layer2.11.bn3.running_mean", "module.layer2.11.bn3.running_var", "module.layer2.12.conv3.weight", "module.layer2.12.bn3.weight", "module.layer2.12.bn3.bias", "module.layer2.12.bn3.running_mean", "module.layer2.12.bn3.running_var", "module.layer2.13.conv3.weight", "module.layer2.13.bn3.weight", "module.layer2.13.bn3.bias", "module.layer2.13.bn3.running_mean", "module.layer2.13.bn3.running_var", "module.layer2.14.conv3.weight", "module.layer2.14.bn3.weight", "module.layer2.14.bn3.bias", "module.layer2.14.bn3.running_mean", "module.layer2.14.bn3.running_var", "module.layer2.15.conv3.weight", "module.layer2.15.bn3.weight", "module.layer2.15.bn3.bias", "module.layer2.15.bn3.running_mean", "module.layer2.15.bn3.running_var", "module.layer2.16.conv3.weight", "module.layer2.16.bn3.weight", "module.layer2.16.bn3.bias", "module.layer2.16.bn3.running_mean", "module.layer2.16.bn3.running_var", "module.layer2.17.conv3.weight", "module.layer2.17.bn3.weight", "module.layer2.17.bn3.bias", "module.layer2.17.bn3.running_mean", "module.layer2.17.bn3.running_var", "module.layer3.0.conv3.weight", "module.layer3.0.bn3.weight", "module.layer3.0.bn3.bias", "module.layer3.0.bn3.running_mean", "module.layer3.0.bn3.running_var", "module.layer3.0.downsample.1.weight", "module.layer3.0.downsample.1.bias", "module.layer3.0.downsample.1.running_mean", "module.layer3.0.downsample.1.running_var", "module.layer3.1.conv3.weight", "module.layer3.1.bn3.weight", "module.layer3.1.bn3.bias", "module.layer3.1.bn3.running_mean", "module.layer3.1.bn3.running_var", "module.layer3.2.conv3.weight", "module.layer3.2.bn3.weight", "module.layer3.2.bn3.bias", "module.layer3.2.bn3.running_mean", "module.layer3.2.bn3.running_var", "module.layer3.3.conv3.weight", "module.layer3.3.bn3.weight", "module.layer3.3.bn3.bias", "module.layer3.3.bn3.running_mean", "module.layer3.3.bn3.running_var", "module.layer3.4.conv3.weight", "module.layer3.4.bn3.weight", "module.layer3.4.bn3.bias", "module.layer3.4.bn3.running_mean", "module.layer3.4.bn3.running_var", "module.layer3.5.conv3.weight", "module.layer3.5.bn3.weight", "module.layer3.5.bn3.bias", "module.layer3.5.bn3.running_mean", "module.layer3.5.bn3.running_var", "module.layer3.6.conv3.weight", "module.layer3.6.bn3.weight", "module.layer3.6.bn3.bias", "module.layer3.6.bn3.running_mean", "module.layer3.6.bn3.running_var", "module.layer3.7.conv3.weight", "module.layer3.7.bn3.weight", "module.layer3.7.bn3.bias", "module.layer3.7.bn3.running_mean", "module.layer3.7.bn3.running_var", "module.layer3.8.conv3.weight", "module.layer3.8.bn3.weight", "module.layer3.8.bn3.bias", "module.layer3.8.bn3.running_mean", "module.layer3.8.bn3.running_var", "module.layer3.9.conv3.weight", "module.layer3.9.bn3.weight", "module.layer3.9.bn3.bias", "module.layer3.9.bn3.running_mean", "module.layer3.9.bn3.running_var", "module.layer3.10.conv3.weight", "module.layer3.10.bn3.weight", "module.layer3.10.bn3.bias", "module.layer3.10.bn3.running_mean", "module.layer3.10.bn3.running_var", "module.layer3.11.conv3.weight", "module.layer3.11.bn3.weight", "module.layer3.11.bn3.bias", "module.layer3.11.bn3.running_mean", "module.layer3.11.bn3.running_var", "module.layer3.12.conv3.weight", "module.layer3.12.bn3.weight", "module.layer3.12.bn3.bias", "module.layer3.12.bn3.running_mean", "module.layer3.12.bn3.running_var", "module.layer3.13.conv3.weight", "module.layer3.13.bn3.weight", "module.layer3.13.bn3.bias", "module.layer3.13.bn3.running_mean", "module.layer3.13.bn3.running_var", "module.layer3.14.conv3.weight", "module.layer3.14.bn3.weight", "module.layer3.14.bn3.bias", "module.layer3.14.bn3.running_mean", "module.layer3.14.bn3.running_var", "module.layer3.15.conv3.weight", "module.layer3.15.bn3.weight", "module.layer3.15.bn3.bias", "module.layer3.15.bn3.running_mean", "module.layer3.15.bn3.running_var", "module.layer3.16.conv3.weight", "module.layer3.16.bn3.weight", "module.layer3.16.bn3.bias", "module.layer3.16.bn3.running_mean", "module.layer3.16.bn3.running_var", "module.layer3.17.conv3.weight", "module.layer3.17.bn3.weight", "module.layer3.17.bn3.bias", "module.layer3.17.bn3.running_mean", "module.layer3.17.bn3.running_var".
size mismatch for module.layer1.0.conv1.weight: copying a param with shape torch.Size([16, 16, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.1.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.2.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.3.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.4.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.5.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.6.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.7.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.8.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.9.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.10.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.11.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.12.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.13.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.14.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.15.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.16.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer1.17.conv1.weight: copying a param with shape torch.Size([16, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([16, 16, 3, 3]).
size mismatch for module.layer2.0.bn1.weight: copying a param with shape torch.Size([32]) from checkpoint, the shape in current model is torch.Size([16]).
size mismatch for module.layer2.0.bn1.bias: copying a param with shape torch.Size([32]) from checkpoint, the shape in current model is torch.Size([16]).
size mismatch for module.layer2.0.bn1.running_mean: copying a param with shape torch.Size([32]) from checkpoint, the shape in current model is torch.Size([16]).
size mismatch for module.layer2.0.bn1.running_var: copying a param with shape torch.Size([32]) from checkpoint, the shape in current model is torch.Size([16]).
size mismatch for module.layer2.0.conv1.weight: copying a param with shape torch.Size([32, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 16, 3, 3]).
size mismatch for module.layer2.0.downsample.0.weight: copying a param with shape torch.Size([128, 64, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 16, 1, 1]).
size mismatch for module.layer2.1.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.2.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.3.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.4.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.5.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.6.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.7.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.8.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.9.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.10.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.11.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.12.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.13.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.14.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.15.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.16.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer2.17.conv1.weight: copying a param with shape torch.Size([32, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([32, 32, 3, 3]).
size mismatch for module.layer3.0.bn1.weight: copying a param with shape torch.Size([64]) from checkpoint, the shape in current model is torch.Size([32]).
size mismatch for module.layer3.0.bn1.bias: copying a param with shape torch.Size([64]) from checkpoint, the shape in current model is torch.Size([32]).
size mismatch for module.layer3.0.bn1.running_mean: copying a param with shape torch.Size([64]) from checkpoint, the shape in current model is torch.Size([32]).
size mismatch for module.layer3.0.bn1.running_var: copying a param with shape torch.Size([64]) from checkpoint, the shape in current model is torch.Size([32]).
size mismatch for module.layer3.0.conv1.weight: copying a param with shape torch.Size([64, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 32, 3, 3]).
size mismatch for module.layer3.0.downsample.0.weight: copying a param with shape torch.Size([256, 128, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 32, 1, 1]).
size mismatch for module.layer3.1.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.2.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.3.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.4.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.5.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.6.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.7.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.8.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.9.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.10.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.11.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.12.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.13.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.14.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.15.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.16.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.layer3.17.conv1.weight: copying a param with shape torch.Size([64, 256, 1, 1]) from checkpoint, the shape in current model is torch.Size([64, 64, 3, 3]).
size mismatch for module.fc.weight: copying a param with shape torch.Size([100, 256]) from checkpoint, the shape in current model is torch.Size([10, 64]).
size mismatch for module.fc.bias: copying a param with shape torch.Size([100]) from checkpoint, the shape in current model is torch.Size([10]).

You can also manually updated the dic. Like this:
        state_dict =checkpoint['state_dict']
        from collections import OrderedDict
        new_state_dict = OrderedDict()

        for k, v in state_dict.items():
            if 'module' not in k:
                k = 'module.'+k
            else:
                k = k.replace('features.module.', 'module.features.')
            new_state_dict[k]=v

        model.load_state_dict(new_state_dict)

I suppose this issue can be closed as the referenced post mentions the cause of the error and offers a solution

You can also manually updated the dic. Like this:
        state_dict =checkpoint['state_dict']
        from collections import OrderedDict
        new_state_dict = OrderedDict()

        for k, v in state_dict.items():
            if 'module' not in k:
                k = 'module.'+k
            else:
                k = k.replace('features.module.', 'module.features.')
            new_state_dict[k]=v

        model.load_state_dict(new_state_dict)

life saver!

You can also manually updated the dic. Like this:
        state_dict =checkpoint['state_dict']
        from collections import OrderedDict
        new_state_dict = OrderedDict()

        for k, v in state_dict.items():
            if 'module' not in k:
                k = 'module.'+k
            else:
                k = k.replace('features.module.', 'module.features.')
            new_state_dict[k]=v

        model.load_state_dict(new_state_dict)

life saver!

您也可以手动更新 dic。像这样：
        state_dict =checkpoint['state_dict']
        from collections import OrderedDict
        new_state_dict = OrderedDict()

        for k, v in state_dict.items():
            if 'module' not in k:
                k = 'module.'+k
            else:
                k = k.replace('features.module.', 'module.features.')
            new_state_dict[k]=v

        model.load_state_dict(new_state_dict)

This is the solution!!!!

change:
model.load_state_dict(torch.load(path + '/pytorch_model.pt'))
to
model.load_state_dict(torch.load(path + '/pytorch_model.pt'), strict=False)

change: model.load_state_dict(torch.load(path + '/pytorch_model.pt')) to model.load_state_dict(torch.load(path + '/pytorch_model.pt'), strict=False)

Although it will make the RuntimeError go away, don't do this unless you know what you are doing. It will leave any parameters it can't find in the checkpoint with random values. That's not what you want if the issue is caused by a mix-up of parameter names, as was the case for the issue reporter.

Use model.module.state_dict() instead of model.state_dict() in DP mode


Include Grafana template for Pelican director dashboard

This adds a Grafana template file for visualizing various Pelican Director and federation metrics

Close this PR as the said dashboard was mostly for internal use. Will move this to Pelican Google drive instead.


Zsh completions aren't being generated

Thanks for this awesome project! Looks like the zsh completions aren't being generated. Any ideas?

What happens when you run:
 dargs generate-completions -s zsh

Also, can you paste your dargs.yml

# dargs generate-completions
FATAL File already exists: ~/.dargs/completions/bash/zzdargs_ssh
# dargs generate-completions -s zsh
 INFO Wrote ~/.dargs/completions/zsh/zzdargs_ssh

dargs.yml
imports:
  - ~/.dargs/config.d/*.yml

commands:
  - name: /usr/bin/ssh
    wrapper: ssh
    # Use fzf to fuzzy complete (must have fzf installed)
    #fzf-complete: true
    completers:
      - ec2_name
    transformers:
      - ec2_name # transforms ec2:instance_name -> instance-id (i-xxxxxxxx)
      - ec2_id # Transforms instance-id -> PrivateIpAddress

Adding a -f will override files. Dargs by default errors out instead of clobbering existing files.

Ok, but the -f switch still only overrides bash
# dargs generate-completions -f
 INFO Wrote /Users/puu562/.dargs/completions/bash/zzdargs_ssh

Ahh.. I missed this.
  -s, --shell string             shell to use (default is bash) (default "bash")

Closing.


Internal proxies/Proxy factory

Hi,
Just a quick word on how we're using this now (in case you are interested!) as we've modified your implementation to better suit us.
We've added an extra control parameter which allows us to control whether the proxy classes are created as public or internal.  This has then meant we can

Take our horrid 3rd party API and create our "ProxyInterfaces.cs" file as you have in your documentation, with all our types laid out as
[ProxyInterfaceGenerator.Proxy(typeof(SomeType), false, "internal")] public partial interface ISomeType{}

This then gives us interfaces as normal, but internal proxy types.

We then define a new interface/class "IProxyFactory/ProxyFactory" which then creates those proxies inside the same assembly - as a WIP I'm trying to get this autogenerated as well...

This is packaged up as a nuget and distributed.

Our users of the horrid 3rd party API are then forced to use ISomeType as ProxySomeType isn't actually available, therefore preventing them newing them up, they have to use the provided factory.  Obviously they've been using the horrid API for some time, so changing the behaviour is really important to us to enable our codebase built on this 3rd party API to become DI friendly/testable.

Anyway - there's not really an issue here, I mostly just wanted to thank you for creating this library and the issue fixes you've released.  they are much appreciated!  I'll raise a PR for controlling the access modifiers on the proxies, lmk what you think.

just tried to raise that PR and got an access denied error, so nvm.  let me know if you want to see the mods I've made and I'll sort some other way of getting them to you.

okay - I've stopped running out of talent, so there's a PR up to see if you like the look of it

@FatSwords See my PR https://github.com/StefH/ProxyInterfaceSourceGenerator/pull/58

PR looks good to me - enum approach is better than my string approach


Strip ? from http-client query string

! @olorin @erikd-ambiata
According to the doc of CQueryString it should be exclusive of ?. This causes problems when other transformations to CRequest don't include the ?.

LGTM 👍

👍


[Text Analytics] Migrate test recordings to assets repo

This PR migrates the test recordings using test proxy for Text Analytics SDK to the assets repo.
Migrate recordings from language repositories to assets repo
Prerequisites:

The script generate-assets-json.ps1 will execute the initial migration of your recordings from within a language repo to the assets repo as well as creating the assets.json file for those assets.

Test-proxy needs to be on the machine and in the path. Instructions for that are here.

Running the script:
The script needs to be executed inside an sdk/ or deeper and from within an up-to-date language repository. A good rule here would be look at where the ci.yml is for a service directory. In the case where each library for a given service directory has its own pipelines, at the sdk// level, it is recommended that the assets.json is created there. If the ci.yml exists deeper than the sdk// level, then it is recommended to run the script from that directory.
C:/repo/sdk-for-java/sdk/formrecognizer/azure-ai-formrecognizer> ..\..\..\eng\common\testproxy\transition-scripts\generate-assets-json.ps1 -InitialPush

Examples of current assets.json locations:

sdk/data/aztables/assets.json
sdk/keyvault/azure-keyvault-keys/assets.json

After running a script, executing a git status from within the language repo, where the script was invoked from, will reflect two primary results:

A new assets.json will be present in the directory from which they invoked the transition script.
A bunch of deleted files from where their recordings were before they were pushed to the assets repo.

Running the script without the -InitialPush option will just create the assets.json with an empty tag. No data movement.

Using test proxy going forward:
https://github.com/Azure/azure-sdk-for-java/wiki/Test-Proxy-Migration#3-using-test-proxy-going-forward

C:\repo\azure-sdk-for-java.assets\tag-ref\java\sdk\storage\azure-storage-queue\src\test\resources\session-records\QueueServiceAsyncApiTests.listQueues[3].json
locally is where you should find your local copy of recordings.

API change check
API changes are not detected in this pull request.


MRG FIX read raw curry

Reference issue
Fixes #8391
Fixes #8398
What does this implement/fix?
Fixes problem loading some Curry data files in which a Reference electrode is denoted in the list of channel labels, but that channel is not actually present in the data file.  Revised code examines the info file (DAP file for Curry 7 format), looking in CHAN_IN_FILE section for channels that are not actually saved into the corresponding raw data file.
While I was at it, I added code to populate info['meas_date'] property with the acquisition start time, which is extracted from the info file.
Additional information
I have tested only with Curry 7 format datasets.  I would be happy to test with Curry 8 format files if someone could provide them.

thanks a lot @todflak !
there are some related test failures. See: https://dev.azure.com/mne-tools/mne-python/_build/results?buildId=9609&view=logs&j=a846d25a-e32c-5640-1b53-e815fab94407&t=f8799db5-b972-5f58-516d-bc88b8357f99&l=2555
do you need help?

Thanks for checking in.
No need for help yet, I am working through the process of the automated
tests. (It took a while to resolve all the nit-picky formatting issues!
Glad I finally realized how to use the flake8 linter locally.)
I will send up a request for help if I get stuck.
On Wed, Oct 21, 2020, 5:01 PM Alexandre Gramfort<EMAIL_ADDRESS>wrote:

thanks a lot @todflak https://github.com/todflak !
there are some related test failures. See:
https://dev.azure.com/mne-tools/mne-python/_build/results?buildId=9609&view=logs&j=a846d25a-e32c-5640-1b53-e815fab94407&t=f8799db5-b972-5f58-516d-bc88b8357f99&l=2555
do you need help?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mne-tools/mne-python/pull/8400#issuecomment-713874847,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AK2C37WHLBCV5RHKUJ3V623SL5DZRANCNFSM4S2E6CDQ
.

Hi @agramfort , I am finally figuring out how to do the unit tests on my local machine instead of relying on the automated CI system.  I found a problem in the testing script (test_curry.py) which was causing some failures.
But I see now that maybe I should include some additional tests in test_curry.py, and corresponding data files, to test my revisions.  Do you agree that I should do that?

But I see now that maybe I should include some additional tests in test_curry.py, and corresponding data files, to test my revisions. Do you agree that I should do that?

If you can make some new tiny (1 sec?) test files and add them to mne-testing-data that would be great. Or alternatively if you know how you could modify some existing test file to have the information you need to test your new functionality, we can either modify an existing file in mne-testing-data or just modify it on the fly by copying to a temporary directory and inserting the line(s) where necessary, e.g.:
https://github.com/mne-tools/mne-python/blob/master/mne/io/edf/tests/test_edf.py#L136-L146

Thanks @larsoner , I understand what you are saying... there is already an example in the existing test_curry.py code that modifies test files on the fly in a temp folder.  I'll see if I can manage that.
In any event, I realize now that I must include new tests in order to hit the code coverage check.  As it is currently, some of my revised code is not executed at all in the existing tests.  So, that will be my goal for the day.
(This is the first time I've ever contributed to an open source project, so this process is a bit unfamiliar to me.  Thanks for helpin ng me through it.)

Thanks for helpin ng me through it.)

No problem, there is indeed a lot to learn, including (as you've seen) how picky our CIs are. Thanks for working through it!

I have only one failed check remaining, the "codecov".  It would be nice to be able to get an immediate check instead of waiting for the whole CI process to give me another "fail" on that one.  Is it possible for me to run the "codecov" test locally, before I push again?  Or would that be too difficult for me to set up?

Codecov just combines all coverage reports, so you can do something similar locally along these lines:
$ pytest --cov=mne --cov-report=html mne/io/curry/
...
$ google-chrome htmlcov/mne_io_curry_curry_py.html

I created a few new files to add into  mne-testing-data/curry, and I created a separate pull request on that repo for those files.
I'm not clear on how those can get added into the codebase for testing in this PR... does someone have to first allow that PR on the files and then they will be available for the CI here?

@todflak tell me when to have a look. Ideally when CIs are green

I believe I need some help now.  I'm not sure why my new tests are working on my local system, but failing on the remote during CI.  It seems likely that the failures are due to the new files I've added to the mne-testing-data/curry not being available.  I say this because I have 5 new tests; of these, 3 tests depend on the new data files, while 2 tests are using data files that were already existing in the mne-testing-data/curry --- the tests that are using the previously existing data files are not reporting errors.
I'm confused, because @larsoner executed my pull request on mne-tools/mne-testing-data, and I can see my new files listed in the repository.  So I think I am just not understanding the environment in which the CI code is executing, and why it's not seeing these files (if that is, indeed, the cause of the problem).

I think you missed the comment here to follow the rest of the steps (you're on step 5 now) here:
https://github.com/mne-tools/mne-testing-data#add-or-change-files-in-the-repo-for-use-with-mne
Basically you need to update a couple of values in mne/datasets/utils.py at this point

Thanks! A good example of RTFM ! Duh, that makes a lot of sense now.
I will do that soon and try again.
On Thu, Oct 22, 2020, 5:09 PM Eric Larson<EMAIL_ADDRESS>wrote:

I think you missed the comment here
https://github.com/mne-tools/mne-testing-data/pull/76#issuecomment-714689552
to follow the rest of the steps (you're on step 5 now) here:
https://github.com/mne-tools/mne-testing-data#add-or-change-files-in-the-repo-for-use-with-mne
Basically you need to update a couple of values in mne/datasets/utils.py
at this point
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mne-tools/mne-python/pull/8400#issuecomment-714763747,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AK2C37WIYK34S2I5RNSIX5TSMCNRJANCNFSM4S2E6CDQ
.

Finally looking good,  just still waiting for Travis CI build.  After that, should be ready for review.
(Sorry that I did not do all this in "draft mode" ... I forgot that part of the instructions.)
Should I change the topic title to "MRG" ?

(Sorry that I did not do all this in "draft mode" ... I forgot that part of the instructions.)

No problem, I often forget and it's rarely used by us so far ...

Should I change the topic title to "MRG" ?

Yes once you're happy and think it's good to go (green CIs, tests, working, etc.) it's good to do this. I'll take a look shortly!

Ok. I was thinking of one more change, so I'll let you know when ready.
On Fri, Oct 23, 2020, 7:06 AM Eric Larson<EMAIL_ADDRESS>wrote:

(Sorry that I did not do all this in "draft mode" ... I forgot that part
of the instructions.)
No problem, I often forget and it's rarely used by us so far ...
Should I change the topic title to "MRG" ?
Yes once you're happy and think it's good to go (green CIs, tests,
working, etc.) it's good to do this. I'll take a look shortly!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mne-tools/mne-python/pull/8400#issuecomment-715273297,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AK2C37XMBTUWBOLHHQV3UITSMFPSDANCNFSM4S2E6CDQ
.

I'm content with this, OK to review and merge if approved.

Thanks @todflak !

Argh I realized I forgot to ask you to update doc/changes/latest.inc -- can you open a quick PR to add an entry to the BUG section?

Other than one minor issue, LGTM! Feel free to push a commit to deal with my complaint, and I'll open a follow-up PR to ensure info['chs'] has the correct set of keys.

I'm sorry to be dense, but I don't really understand what the issue is, or how to deal with it.... or, did you already deal with it?

Argh I realized I forgot to ask you to update doc/changes/latest.inc -- can you open a quick PR to add an entry to the BUG section?

Again, sorry for my not following the instructions.  Can I do this in my current fork?  Or do I need to update my fork from the master upstream?   Or do I need to go through the process again of creating a fork, and making the modification in that?  I hate to ask such beginner questions, but I'm new to the Git-world, and I've gotten myself into hours of hell trying to undo some minor screw up with other code control systems (SVN)

I'm sorry to be dense, but I don't really understand what the issue is, or how to deal with it.... or, did you already deal with it?

Yes I just commited it directly then merged

Can I do this in my current fork? Or do I need to update my fork from the master upstream? Or do I need to go through the process again of creating a fork, and making the modification in that?

The general procedure is to keep master on your local system and master on your fork up to date with upstream/master. So something like this should work (assuming you have a clean branch / no pending changes):
git checkout master  # change to local master branch
git remote add upstream git://github.com/mne-tools/mne-python.git  # add remote ref
git fetch upstream  # fetch remote changes
git pull upstream/master  # make local copy up to date with remote changes
git push origin master  # make remote fork up to date with remote upstream
git checkout -b latest
... # hack away at latest.inc
git commit -am 'DOC: Update latest.inc [skip travis] [skip github]'
git push origin -u latest  # push "latest" branch from local to remote fork, setting it to track so "git push" just works next time


VMs created from images inside a Ceph datastore with EC_POOL_NAME are not created in that EC pool

Bug Report
Version of OpenNebula

[X] Development build

Component

[x] Storage & Images

Description
When you have an image in a Ceph datastore which has EC_POOL_NAME set and do not specify "Deploy VM in a specific datastore", the image is not necessarily created inside the correct pool.
In my case, I have the following datastores:

ID 102 ceph_data (data) and ID 103 ceph_system (system) with a single "cache tiered pool" tierpool
ID 104 ceph_ssd (system) and ID 105 ceph_ssd_data (data) with EC/replicated pool pair: rpool_ssd/ecpool_ssd
ID 107 ceph_hdd_data (data) and ID 108 ceph_hdd (system) with EC/replicated pool pair: rpool_hdd/ecpool_hdd

I have an image in ID 107. When I create a VM from it without specifying datastore, OpenNebula tries to create a COW-clone from it in datastore ID 103. It does not have "EC_POOL_NAME" option, so /var/lib/one/remotes/tm/ceph/clone does not pass it to rbd clone. But since it's a COW-child, it does not use ID 103's pool either and it ends up being created in the same pool as the original image (rpool_hdd), but without the EC pool.
Expected Behavior
VM disks created from images should reside on the same Ceph pools by default. In particular, if the original RBD image has --data-pool option, its children should also have the same --data-pool option.
I think /var/lib/one/remotes/tm/ceph/clone could take --data-pool not only from OpenNebula datastore information, but also from rbd metadata of the parent image - that would fix this issue.
Actual Behavior
VM disk RBD images are created without --data-pool option so they end up being replicated instead of erasure-coded.
How to reproduce

Create two "system" Ceph datastores: the first one (one with lesser ID) without EC_POOL_NAME and the second one with it
Create one "data" Ceph datastore with EC_POOL_NAME
Put some image inside it, create a VM template
Instantiate the template without selecting "deploy VM in a specific datastore"
Run rbd ls -p your_replicated_pool
Run rbd info your_replicated_pool/your_image and check that it has "data_pool" option
Run rbd info your_replicated_pool/your_image-24-0 and check that it doesn't have the same option

Thanks for the feedback @vitalif. We are thinking to address this as follows:

Add a new Datatastore attribute for (image datastores): COMPATIBLE_SYSTEM_DS. With this attribute you can list which system datastores can be used in combination with this image datastore.
The list of requirements will include the CLUSTER constraints the list of COMPATIBLE_SYSTEM_DS
The scheduler will pick a system DS in this list.

If the  correct combination is used, also the correct image parameters should be used. And this is enforced by the scheduler and the ACL systems.
What do you think? Would this solve your issue?

Yes, that's a nice solution, thanks :)

This is now ready for 5.6.2

In fact there's a similar issue with the snapshot script: it forgets abour the EC pool when creating a layer from old snapshot


docs: update showcase data

Motivation
As noted in #6859, some sites' source is not pointing to the website.
The following websites have been removed due to unavailability:

Amphora
OCPeasy
Wisdom

cc @xtellurian @dbrrt @jagracey If you could inspect this or provide an alternative URL we are open to add them back.
GraphQL inspector is removed because it's no longer using Docusaurus.
These websites don't seem to be open-source despite my best effort to find their sources.

Aide Jeune
Clutch
Component Kit
Gulp
TRPG Engine
Quickwit

cc @l0u1sg @danielhochman @fabiomassimo @phated @moonrailgun @fmassot If your website is actually open-source, you can open up a follow-up PR to update the source URL.
Have you read the Contributing Guidelines on pull requests?
Yes

@Josh-Cena oh right, the new link is https://github.com/quickwit-inc/quickwit and we are open source, I will open the PR.

@fmassot I saw the repo, but I couldn't find your website's source...

@Josh-Cena the Clutch site source is available in the main repo: https://github.com/lyft/clutch/tree/main/docs/_website

@danielhochman https://github.com/gulpjs/gulpjs.github.io is the gulp website source

Thanks @danielhochman @phated Sent https://github.com/facebook/docusaurus/pull/6871. Sorry that I missed them!

Hi @Josh-Cena
My website is under sub dir in my repo.
Here is source code:
https://github.com/TRPGEngine/Server/tree/master/services/Website

Thanks @moonrailgun mind sending a PR yourself?

Well, here is my repo #6875


Add Text Input for Dietary Restrictions

Need to revert changes here that removed dietaryRestrictions field, also need to double check database columns.
https://github.com/zachspiel/wedding-rsvp/pull/98/files#diff-a53c4bac73759ebf0876a1545a634d8c068b990544db12edbd842a9a63ec99d4


feat(theme-classic): allow specifying width/height in logo

Motivation
Fixes #5724
Have you read the Contributing Guidelines on pull requests?
Yes.
Test Plan
Check manually if new config works,
snapshot tests for website should not change with new config

One missing thing in this PR is the documentation change to describe config for width/height @Josh-Cena

Sure, thanks :)

I think this is good enough for now. We can try:

Allow passing arbitrary props to logo images, just like for navbar links;
Infer image sizes from files

But those can be in follow-ups. This solution is fine.

I still think there is usecase for responsive logos, I would wait for the "PlatformSpecific" feature to be implemented, and then we could add platform specific to the logo setting to support responsive logo usecase if theme supports platforms like high DPI phones. Here are examples of "responsive logos":

I still think there is usecase for responsive logos, I would wait for the "PlatformSpecific" feature to be implemented, and then we could add platform specific to the logo setting to support responsive logo usecase if theme supports platforms like high DPI phones. Here are examples of "responsive logos":

Ah, yes, we could look into that. We don't want logos to be responsive to light/dark, but screen sizes sound fine. Beware though that currently all logo usages are scaled so that their sizes are invariant on all screen sizes.

Maybe we could allow passing a className so that you can handle the responsiveness yourself with CSS?
I think lighthouse might still report an error though, and you'll need to keep the width/height

I think lighthouse might still report an error though, and you'll need to keep the width/height

width and height are needed for minimizing layout shifts (while we still have many layout shifts with other images), and I do think we should allow any props passed to the rendered image. From @cerkiewny's demo I think they actually want different images being rendered, which IMO is not necessary for now

Logo is broken when updating from beta8 to beta9 on header and footer. I tried adding width and height but it still cannot find the image that was already working in beta8.

@alex-drocks this is a different issue. If you are using a base URL you are probably experiencing #5863, which has been fixed in a canary release.

@alex-drocks this is a different issue. If you are using a base URL you are probably experiencing #5863, which has been fixed in a canary release.

Thanks Josh, yes in fact I am using a baseUrl.
For reference to other readers, it means i am not using the default localhost:port/ base but something like localhost:port/my-base-path/...


Fix typo in documentation/style.md about OptionalWhenBraces rule

Please build this locally. The build fails because detekt generates the documentation for the web page from this comment.


Mention hacktoberfest as a good period to invite your user to contribute

I would like to ...

[X] to add content

What is the section concerned ?
3. Keep your users
What is the point concerned ?
Invite users to contribute
What would you like to add or modify ?
I think we could add a mention to the Hacktoberfest as a good time of the year to encourage contribution on the project :)

👍

Agree, also adding the hacktoberfest label would help you to attract more crowd. I think this idea fits to the Keep you users section


[Announment] Welcome new committer: Le Zhang

Hi Community,
On behalf of the Apollo PMC, I am pleased to announce that Le Zhang a.k.a lepdou, has been voted in as Apollo committer.
Please join me to say congratulations to him!
@lepdou, would you please briefly introduce yourself to the community?
Best Regards,
Jason

Cool~


uninitialized constant OpenTelemetry::Instrumentation::Base

I'm trying auto-inspection on rails
Gemfile:
gem 'opentelemetry-api'
gem 'opentelemetry-sdk'
gem 'opentelemetry-exporters-jaeger'
gem 'opentelemetry-instrumentation-all'

application.rb:
require 'opentelemetry/api`
require 'opentelemetry/sdk'
require 'opentelemetry/exporters/jaeger'
require 'opentelemetry/instrumentation/all`

bin/rails server fails with the message in subject.
Looking at the stack, RubyGem gets confused:
in
opentelemetry-api-0.5.0/lib/opentelemetry.rb: require 'opentelemetry/instrumentation' (line 14)
loads
opentelemetry-instrumentation-sinatra-0.5.0/lib/opentelemetry/instrumentation.rb
instead of
opentelemetry-api-0.5.0/lib/opentelemetry/instrumentation.rb
Possibly easiest solution is to change require -> require_relative

Fix in #301. Thanks for the report! I reproduced the failure in a small test app & verified the fix. Note that your first require should be require 'opentelemetry' rather than require 'opentelemetry/api'.

Fix released in https://rubygems.org/gems/opentelemetry-api/versions/0.5.1


Ignore CHANGELOG.md in typos

Codecov Report

Merging #2572 (c47a9a3) into main (ac20fc3) will decrease coverage by 0.05%.
Report is 43 commits behind head on main.
The diff coverage is n/a.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2572      +/-   ##
==========================================
- Coverage   65.91%   65.87%   -0.05%
==========================================
  Files         133      133
  Lines       16872    16795      -77
==========================================
- Hits        11122    11063      -59
+ Misses       5750     5732      -18

I think kind/cleanup label would be better suited for this PR. Also when ready, feel free to assign me as reviewer :+1:

Hey, the changelog is failing  CI on some other PRs, so I'm going to change the label and merge this one.  If needed we can make changes later. Thanks!


Patroni logs with grafana-agent causing a lot of unrelease file and huge syslog

Steps to reproduce

install postgresql charm 14/edge, revision 425
integrate with COS
grafana-agent will keep track of all the logs files under /var/snap/charmed-postgresql/common/var/log/patroni, which causing syslog become several GB huge, spamming with logs like below:

Jun 30 00:00:03 landscapesql-new-1 grafana-agent.grafana-agent[416696]: ts=2024-06-30T00:00:03.940798064Z caller=filetargetmanager.go:181 level=info component=logs logs_config=log_file_scraper msg="received file watcher event" name=/snap/grafana-agent/16/shared-logs/patroni/patroni.log.6545 op=CREATE

running lsof -nP | grep '(deleted)' on the postgresql with grafana-agent, we can see if the patroni logs are getting rotated, grafana-agent couldn't handle it correctly and causing a lot of unrelease files.

agent     1740025 1740154 agent                root *510r      REG              252,2         488     568380 /snap/grafana-agent/16/shared-logs/patroni/patroni.log.10080 (deleted)
agent     1740025 1740154 agent                root *511r      REG              252,2         488     561238 /snap/grafana-agent/16/shared-logs/patroni/patroni.log.10080 (deleted)

Expected behavior

A smaller number of logs files, either
a.  set by default in /var/snap/charmed-postgresql/115/etc/patroni/patroni.yaml
b. have an option in charm to configure the log.file_num
Logs files are cleaned correctly

Actual behavior

You may find the logs in the summary above.
Versions

Operating system:
Ubuntu 22.04.4 LTS

Juju CLI:
3.1.8-genericlinux-amd64

Juju agent:
3.1.8

Charm revision: 425

LXD: 4.0.9
Log output

Juju debug log:

Additional context

Invited COS team into the fix implementation/coordination: https://github.com/canonical/grafana-agent-operator/issues/153


How to distinguish APLIC interrupt in MSI mode?

TOPI, CLAIMI registers used to identify APLIC interrupt to be serviced are available only in direct mode, but not in MSI mode. How is it supposed to identify interrupt in MSI mode? Scan SETIP[0..31] bits? Allocate MSI interrupt vector for each APLIC interrupt? If second, is it supposed to preallocate MSI interrupt vectors for all APLIC interrupts (maximum possible interrupt count as specified in ACPI/FDT)? If so, it looks wasteful to spend limited number of MSI interrupts to all APLIC interrupts, most of them may be unused. Also what is supposed to happen if APLIC have more interrupts than IMSIC? Maybe MSI interrupt vectors should be allocated dynamically for used APLIC interrupts? If so, it can complicate software design and need special RISC-V only handling that do not fit to generic architecture.

The mapping of APLIC interrupts to IMSIC interrupt identities at a RISC-V hart is very similar to how x86 computers map interrupts from their "I/O APIC" to a "local APIC" at an x86 core.  The RISC-V APLIC and IMSIC perform roles similar to the x86 I/O APIC and local APIC, respectively.  All of the options you listed are possible.
If you have more than one or two RISC-V harts (or you want to support that possibility in the future), I would say your best choice for utilization is to dynamically allocate IMSIC interrupt identities at each hart for the subset of APLIC interrupts that get assigned to that hart.  I don't see a reason for these allocations to change more often than about once every 100 ms, and probably less often.  But if a particular operating system written previously for x86 systems doesn't support such dynamic allocation, then I suppose you will face the same inefficiencies that the software does on x86 systems.
I can see only two reasons for needing new RISC-V-only handling that doesn't fit an existing software architecture.  First, when porting from x86-world, you might want to improve the allocation of interrupt identities on your RISC-V system compared to what was previously done for x86.  In that case, one might ask why the shared software architecture couldn't be upgraded to improve interrupt handling for both x86 and RISC-V.
Probably a more likely reason to need special RISC-V handling would be because the original software comes from a different type of system, such as an Arm machine, that does not have the same kind of MSI model.  If porting Arm-world software is the problem, all I can tell you is that the authors of the RISC-V Advanced Interrupt Architecture intentionally rejected Arm's model for handling MSIs, judging the hardware overly complex for the task.
Before the AIA was ratified, the people who port Linux to RISC-V had a couple of years to complain if the AIA's model doesn't fit well with Linux, but I heard no such complaints.  As far as I know, it hasn't been a significant obstacle for RISC-V Linux, perhaps due to Linux's origins on x86 machines.
Is there specific software you are trying to port to RISC-V that has an architecture you feel is incompatible with the RISC-V AIA?

TOPI, CLAIMI registers used to identify APLIC interrupt to be serviced are available only in direct mode, but not in MSI mode. How is it supposed to identify interrupt in MSI mode? Scan SETIP[0..31] bits? Allocate MSI interrupt vector for each APLIC interrupt? If second, is it supposed to preallocate MSI interrupt vectors for all APLIC interrupts (maximum possible interrupt count as specified in ACPI/FDT)? If so, it looks wasteful to spend limited number of MSI interrupts to all APLIC interrupts, most of them may be unused. Also what is supposed to happen if APLIC have more interrupts than IMSIC? Maybe MSI interrupt vectors should be allocated dynamically for used APLIC interrupts? If so, it can complicate software design and need special RISC-V only handling that do not fit to generic architecture.

For APLIC MSI mode, the Linux approach is to allocate a IMSIC ID for a APLIC interrupt source only when a client driver does request_irq(). In other words, APLIC interrupt source to IMSIC ID mapping is on-demand and not pre-allocated. Further, the IMSIC driver allocates ID for each CPU separately so for N CPUs and M IDs we have total NxM IDs to allocate from so the number of APLIC interrupt sources can be more than number of IDs on one CPU but it should be less than total IDs across all CPUs.
Please refer the latest Linux AIA drivers will be most likely merged in Linux-6.10.
(Link<EMAIL_ADDRESS>

(Link<EMAIL_ADDRESS>
Any Github etc. branch for it?

If you have more than one or two RISC-V harts (or you want to support that possibility in the future), I would say your best choice for utilization is to dynamically allocate IMSIC interrupt identities at each hart for the subset of APLIC interrupts that get assigned to that hart.

Further, the IMSIC driver allocates ID for each CPU separately so for N CPUs and M IDs we have total NxM IDs to allocate from

Thanks for the answers. I will try to use dynamic per-hart IMSIC interrupt allocation in my system. It will need some redesign as it was originally designed for x86 and do not have any interrupt request hooks for interrupt controller driver interface, only enable/disable interrupt hook that should be able to be called with interrupts disabled.


Switch bind and unbind in componentWillReceiveProps

I got issue : my channel and event are changing in time, and when bind method is before unbind method, subscription/unsubscription was not working correctly (there was no subscription to new channel ...)
Unbinding before binding in componentWillReceiveProps resolved this issue.

Hi! Seems your branch https://github.com/Clement-Bresson/react-pusher/commits/feature/take-update-into-account fix the problem. Thanks!

The change makes sense @Clement-Bresson! Somehow we reproduced it very late. 👍

@ziahamza @prayogoa any chance we can get those two prs merged?

fixed by https://github.com/rainforestapp/react-pusher/pull/10

Can we merge changes?

@adomrockie this has already been fixed by #10, we just need to publish the package in npm (will do that soon)


PuSH feeds for HTML without http headers don't work

I added a PuSH hub to my html feed, and was already subscribed to this html feed in monocle.  It does not appear to have made the pubsubhubbub sub after the addition.

I'm not actually sure whats going on.

I think it's working now, I just added it to mine and it says it last received a ping from you on Apr 7.

Yeah everything looks good now.


Update flyway-core to 7.11.4

Updates org.flywaydb:flyway-core from 6.5.7 to 7.11.4.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.flywaydb", artifactId = "flyway-core" } ]

labels: library-update, semver-major

Superseded by #1431.


pimatic-node-red interferes with pimatic-johnny-five on restart via UI

pimatic-node-red interferes with pimatic-johnny-five. The problem is that the the embedded version of node-red contains rpi gpio nodes. These using RPi.GPIO which does not seem to orderly shutdown. This will cause an pimatic-johnny-five initializationerror  if pimatic is restarted via pimatic-mobile-frontend. Work-around for the time being is to restart pimatic with the service wrapper.
Possible Solution: Implement a shutdown handler for node-red and implement shutdown as part of node-red-contrib-gpio

I am closing it now. As I currently cannot reporduce the issue. I may re-open it at a later stage


Type ['instanceof', TimeStub] as Infer is undefined

Report a bug
@ssalbdivad I have created a reproduction of yesterday's undefined problem Discord Discussion.

🧩 Context

ArkType version: 1.0.29-alpha
TypeScript version (4.8+): 5.4.2
Other context you think may be relevant (Node version, OS, etc.):

🧑💻 Repro
https://github.com/mmailaender/svelte5/blob/arktype/src/lib/type.d.ts
GitPod: https://gitpod.io/?autostart=true#https://github.com/mmailaender/svelte5/blob/arktype/src/lib/type.d.ts

There are a couple problems:

this is defined in a .d.ts file. If you have skipLibCheck enabled (which you should), your tsconfig will not apply to these files and they will not be checked for errors.

obfuscates issues like Infer not having been imported and const statements not being legal in .d.ts .

This is quite an unfortunate footgun TS built into the language when really what most people want is not to check files from node_modules. In general I'd recommend against using .d.ts files at all in your source. There's not really ever a good reason to use them instead of a standard .ts file and they create lots of problems.


subscribeToLocationUpdates  gets no value in android,I can't get the value, please help me

@matt-oakes

Hello 👋 Thanks for submitting this issue. To help us triage your issue, can you please resubmit this issue using the templates provided.


Support native macOS monospace font (SF Mono)

Can now set guifont to -monospace- to use the system default monospace font, which is SF Mono on recent macOS versions (but could be updated to other fonts in future macOS releases). The reason why this is necessary instead of specifying the actual font name is that Apple does not expose the SF Mono font for the user and instead only exposes an AppKit API monospacedSystemFontOfSize:weight: to access it. The actual font name (.AppleSystemUIFontMonospaced in macOS 14) is internal and subject to change in different OS versions.
In older macOS versions, setting -monospace- will just use Menlo-Regular just like the default font.
Also allow specifying the font weight for the font, e.g. -monospace-Semibold / -monospace-Light. The list of weights follows the NSFontWeight enum, but not all values yield unique fonts. E.g. "UltraLight", "Thin", "Light" will all use the "Light" version of SF Mono. The list of all font weights can be tab-completed but only if the user has already filled in -monospace- in :set guifont=. This helps prevents showing too many options when the user does tab completion just to see the list of all fonts.
Note that SF Mono is currently available to be downloaded from Apple's website as a standalone for testing. That font is mostly the same but seems to have slightly different line spacing behavior, and when using bold it uses the "Bold" font variant, whereas the system monospace font uses "Semibold" variant instead.
Also make font panel not show misc formatting options like underline as they aren't used by MacVim. Keep the background/foreground option just so the font preview colors in the panel can be adjusted.
Also fix an existing potential buffer overflow issue in the Core Text renderer in that changeFont: (when setting a new font using font panel or using font size up/down) isn't setting wideLen which could cause an unsafe memory access in Vim side.
Notes:

Known issue: When using macaction fontSizeUp:/fontSizeDown: (Cmd +/-), -monospace- will get replaced by the internal font name (e.g. .AppleSystemUIFontMonospaced-Regular) instead due to how the changeFont: currently works. This could be fixed but it's low enough priority that it's ok for now.
In the future, this may become the default font instead of Menlo, to make MacVim more consistent with Apple software like Terminal and Xcode.

Hey! This is great, but I'm seeing weird results in terms of line height/line spacing. Opening up Terminal.app using SF Mono side-by-side with MacVim, I need to change the line spacing to 0.88 to get the same results:

Put another way, there's a bit too much line spacing on MacVim, when I change from SF\ Mono\ Regular (that I get with Homebrew) to -monospace-, I can see fewer lines.

I have noticed something like this before as well, and I don't really know why. In particular, at lower font sizes (11 pts or less) they seem to have the same line heights, but at higher font sizes, the -monospace- font seems to use a line spacing.
Another discrepancy is that -monospace- seems to use a Medium weight for bolded font, but the downloaded "SF Mono" font uses the Bold weight for bolded font.
I think Apple may have just configured the default -monospace- font differently from the downloadable SF Mono font but I do think this is kind of annoying. I may have to ask on Apple Developers forum but I don't think MacVim doing anything wrong per se.


Migrate all missing source code and projects from CodePlex to GitHub

The DotSpatial project page on CodePlex states in big letters that DotSpatial "is now moved" here, to GitHub. Unfortunately, that phrase does not make it clear that code migration is not complete yet, or whether this might still be an ongoing effort.
In any case, the note says that the latest code may be found here, but some code appears to be missing on GitHub, e.g. the entire DotSpatial.Topology project. This leads to the unfortunate situation that one doesn't know where issues, pull requests etc. concerning the missing code should be posted. The CodePlex site states that discussion and new issues should be posted here on GitHub, but it doesn't seem to make much sense to post issues for code that resides in a different location.
I'd therefore like to request that all missing projects and source code be moved from CodePlex to GitHub, so that there will no longer be any ambiguity about where to post issues, discussions, or publish pull requests.
(If this is not possible or not desired by the project team for some reason, please update the note on CodePlex to make it clear how exactly the project is split between CodePlex and GitHub.)

There is no need for DotSpatial.Topology anymore. DotSpatial 2.0 is using DotSpatial.GeoApi and DotSpatial.NetTopologySuite instead. The code residing on GitHub is a complete DotSpatial project that might not be completely stable based on the fact that we might have missed some errors while switching from DotSpatial.Topology to NTS and GeoApi.
See also issue #786.

Thank you for replying so quickly. I did not realise that DotSpatial.Topology has been superseded. I'm assuming that this has happened only recently and the documentation hasn't been brought fully up to date yet?

Thank you, I understand what you're saying. I'll be closing this issue then.
I would just like to make one final suggestion, namely that the documentation be brought up to date to reflect what you are saying. For example, the GitHub Readme.md (probably the very first piece of documentation that people coming to DotSpatial will see) still links to the DotSpatial 1.9 NuGet packages (including the old DotSpatial.Topology), and does not even mention the new GeoAPI and NetTopologySuite. I can appreciate that DotSpatial 2.0 perhaps isn't quite ready yet, but it would help interested developers if the two DotSpatial project pages were a bit more explicit about what is current, and what isn't.
Thank you, in any case, for taking the time to reply!


Some javadoc fixes for the EventPayload interface.

Parts of the previous method description were written for a Tarbela producer,
and don't apply here.
This contains some text referring to the situation after #15 is merged (about business events), so it should be merged only after that one.
/cc  @wormangel

As we are refactoring the objects anyway, I'll wait until that is done.


filterOn with Function for arrays and iterables

Summary
Extend the fluent filter API for arrays and iterables with a method to filter based on a Function<? super ELEMENT, T> parameter (e.g., a method reference to a getter) and a T parameter (for matching).
The approach is similar to the extracting(Function<? super ELEMENT, V>) method. It will allow a save filtering without introspection.
Example
assertThat(fellowshipOfTheRing).filteredOn(TolkienCharacter::getRace, HOBBIT)
                                   .containsOnly(sam, frodo, pippin, merry);

assertThat(fellowshipOfTheRing).filteredOn(character -> character.getRace().getName(), "Hobbit")
                                   .containsOnly(sam, frodo, pippin, merry);

Additionally, the filterOn method could accept a FilterOperator<T> as second parameter.
Example
assertThat(employees).filteredOn(Employee::getAge, not(800))
                      .containsOnly(luke);

Have you tried using a Predicate ? as in:
assertThat(employees).filteredOn(employee -> employee.getAge() != 800)
                     .containsOnly(luke);

Yes, but at least for simple equality matching, it appears to me clearer to write
filteredOn(TolkienCharacter::getRace, value)

instead of
filteredOn(character -> Objects.equals(character.getRace(), value))

Yes but I'm not sure it is worth having another overload for filteredOn, it feels more like syntactic sugar.

It probably is nothing more than syntactic sugar (but so are lambdas in Java).
Filtering on the value of a certain property is the most common use of filterOn in my unit tests. The filteredOn(String propertyOrFieldName, Object expectedValue) method just doesn't feel right in these cases because it lacks type safety and IDE tooling support (e.g., for refactoring).

Alright, I agree it can be added


Bundler 2.1.0 doesn't work properly with private gem sources when Basic Auth is set in bundle config

My project uses private gem storage which can be accessed with Basic Auth.
With the new version of Bundler (2.1.0) I'm not able to install any gems from this source because of authorization error.
Seems that this issue is CGI-encoding related.
Let's assume that my auth username is<EMAIL_ADDRESS>password is pass and the storage origin is gems.example.com. I have my config set as
$ bundle config gems.example.com user%40example.com:pass

When I run bundle install and have the source defined in the Gemfile (source 'https://gems.example.com'), I get an error:
Retrying download gem from<EMAIL_ADDRESS>due to error (2/4): Gem::RemoteFetcher::FetchError bad response Unauthorized 401<EMAIL_ADDRESS>

Might be worth looking at %40 code turned to %2540 in the error message.
It looks like Bundler performs redundant escaping of auth credentials.
Some additional notes:

Downgrading to 2.0.2 fixed the issue.
Specifying the source right in the command line like this
bundle install --source<EMAIL_ADDRESS>"
do work in 2.1.0
When I set the config with unescaped credentials ($ bundle config gems.example.com user@example.com:pass) i get an error on bundle install:
Please CGI escape your usernames and passwords before setting them for authentication.

FYI I work with @hrabiel and also confirmed this locally. Using credentials like:
export MY_USER=my.user%40example.com
export MY_TOKEN=MyToken
bundle config artifactory.example.com ${MY_USER}:${MY_TOKEN}
bundle install

works properly with bundler versions 1.17.3, 2.0.0, 2.0.1, and 2.0.2 but fails under 2.1.0 with the errors shown above that replace %40 with %2540.

Faced same issue with update to 2.1.0

Can you try with bundler 2.1.0.pre.3 and confirm if it also happens?

Also, does it happen if you upgrade rubygems? (gem update --system)

Checked on 2.0.1.pre.3, 2.0.1.pre.2, 2.0.1.pre.1. With ruby 2.6.5p114 and rubygems 3.0.3.
The issue does not happen on any of pre versions.
Apparently it showed up only in 2.0.1.

Actually, updating rubygems to 3.1.1 (gem update --system) really helped with bundler 2.1.0 and the issue dissapeared.

That's good to hear. Which version of rubygems were you using previously? This seems related to vendoring uri inside bundler.

I had this issue with rubygems 3.0.3.

Also reporting having experienced this issue on Ruby version 2.6.5 and RubyGems version 3.0.6. Running gem update --system 3.1.1 and retrying bundle install solved the issue for me, as well.


Pagination for firebase listeners

To prepare for organizations with larger numbers of users, we need to implement pagination for our firestore listeners. With our current code, we are simply downloading and then listening for updates on all users of an organization. However with larger organizations, this will end up eating up a lot of cpu/bandwidth unnecessarily. We should therefore implement something like this:
https://medium.com/@650egor/firestore-reactive-pagination-db3afb0bf42e

I think we first need to define the behavior of the member table and how pagination will interact with it. The table should definitely be sorted (e.g. by last name or email address). However, if the users are sorted by last name, users can be inserted or deleted at any position in the table; our implementation of paginated load and update would have to take that into account.
For example, suppose that the page size is 10 and our members are named A...T (so that member A is at index 0, member B is at position 1, etc.). Our user first sees the first page consisting of users 0-9 (A, B, ..., J), then navigates to the next page consisting of users 10-19 (K...T). Then, another admin creates user Ev, which is inserted at position 5 (between E and F), and all subsequent users are bumped back one position so that user J is at position 10. Should the current page update to display users J-S or stay as K-T? If the user then navigates back to the first page, should they see A-I (the first ten users) or B-J (the ten users preceding K)? Maybe requiring the user to refresh the table in order to see updates will avoid this complexity.
Also worth considering: How often will users be added or deleted, relative to how often people will be viewing this page?

Good points/questions.

The table should definitely be sorted (e.g. by last name or email address)
Let's go with last name, by convention

As for the rest of your question, the ideal is for all the clients to be an accurate representation of database at all times (including pagination). As you point out, with users sorted by last name this creates an issue not handled in the linked Medium post, where a new user can shift the definition of the pages.
If we were to try and implement the list of listeners in a manner that accounts for this, things quickly begin to get quite complex (i.e. we might introduce page listeners that cause cascading updates to the other listeners if a user is added or deleted, causing the pages to change. But then we can expect performance issues that must be addressed to account for when the admin is looking at page 400 and user Adam Adamson is added.). OTOH if we throw away listening for real time updates entirely, we introduce complexity in keeping the frontend congruent with the data. For example any time a user setting is changed, or a user is added or deleted, etc., we would need to manually query the database in order to update the frontend. We also introduce some new awkward edge cases, such as a user who has been deleted being updated, which causes the db to update and then the user disappears.
I think we can simplify this problem significantly and keep our "one way data-flow" by making the page a global variable and attaching a single listener for that page that keeps a client-side list of all the users in that page up to date with it. Then, when we switch pages, we simply throw out the previous list and listener, and set up new ones.

Tech design decided in Slack


bot crashes

prismarine viewer causes the bot to crash, don't know the reason
running on google cloud ubuntu

for what code ?


WIP: Run github jobs using a docker-compose setup

Currently in github/gitlab we add build dependencies and/or
provide runtime configuration of the containers themselves
within the github/gitlab yaml definitions. As github actions
has far less support for templating/anchors, this results
in a significant amount of duplication.
Therefore, split runtime configuration of containers to
a docker-compose file, and build time configuration via
a Dockerfile. This then frees the github workflow to define
the remaining top level parameters via a matrix.
As a PoC demonstrate how this can be used for all existing tests,
and the no-cache overnight tests. This can be easily extended
to the overnight tests with cache present, and the randomised
tests as well.

@cs-shadow thanks very much for the feedback. If I make some changes, and take it off WIP then are you happy to have another look at it and we can look to have this merged?

Closing this in favour of #143


Setting: MM Garo Hints

Sort of related to issue #125 -- allow Garo's (the hooded enemies in Ikana Canyon) to be in the hint pool. This was an interesting way MMR allowed for there to be more hints and it's totally optional. But I think it'd be nice to have here, too. And allow them to be triggered with Tatl, no Garo Mask required.
No idea where to find this in MMR to help with its implementation, you would probably have to ask Zoey about it.

The free-garo-hints hack in MMR makes the garos triggered by talking to Tatl. The garo-hints hack changes Garo message behavior from "if player has Elegy" to "if player has defeated Igos this cycle". The message ids for the garos are given in GossipQuote.cs. Important to note that the replaced garo message must end in 19BF, not just BF in order for the game to proceed through the Garo dialogue.
Other stuff can be found in this commit https://github.com/ZoeyZolotova/mm-rando/commit/519e1a47fe44b808352328f1fec77069021080da


stdout maxBuffer length exceeded with debug flag

Hi I encountered an error when using a --debug flag with big mardkown file

##[error]RangeError [ERR_CHILD_PROCESS_STDIO_MAXBUFFER]: stdout maxBuffer length exceeded

How big is the markdown file?
Is a split possible as workaround ?
Sent from Outlook for iOShttps://aka.ms/o0ukef

From: minik42 @.>
Sent: Friday, October 14, 2022 10:19:22 AM
To: MaxMelcher/AzureDevOps.WikiPDFExport @.>
Cc: Subscribed @.***>
Subject: [MaxMelcher/AzureDevOps.WikiPDFExport] stdout maxBuffer length exceeded with debug flag (Issue #127)
Hi I encountered an error when using a --debug flag with big mardkown file
##[error]RangeError [ERR_CHILD_PROCESS_STDIO_MAXBUFFER]: stdout maxBuffer length exceeded
—
Reply to this email directly, view it on GitHubhttps://github.com/MaxMelcher/AzureDevOps.WikiPDFExport/issues/127, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAH3LN6CZCDAHJPHEYJ2WSTWDEJQVANCNFSM6AAAAAARFAAXFI.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

Currently it has: 179743 characters.
Yeah we will split it probably

That’s a book in one file 😂
But I will add a test case for this, thanks for reporting!
Sent from Outlook for iOShttps://aka.ms/o0ukef

From: minik42 @.>
Sent: Friday, October 14, 2022 11:21:41 AM
To: MaxMelcher/AzureDevOps.WikiPDFExport @.>
Cc: Max Melcher @.>; Comment @.>
Subject: Re: [MaxMelcher/AzureDevOps.WikiPDFExport] stdout maxBuffer length exceeded with debug flag (Issue #127)
Currently it has: 179743 characters.
Yeah we will split it probably
—
Reply to this email directly, view it on GitHubhttps://github.com/MaxMelcher/AzureDevOps.WikiPDFExport/issues/127#issuecomment-1278730901, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAH3LN6LK6FK3GXF2V5OHADWDEQ2LANCNFSM6AAAAAARFAAXFI.
You are receiving this because you commented.Message ID: @.***>


[DDW-646] Start of decentralisation notification

This PR implements decentralisation notification sidebar item and screen shown on storybook.
Todos

Add sidebar item
Make screen to display notification information
Show them in storybook

Screenshots

Testing Checklist

Slack QA thread
[ ] Test

Review Checklist
Basics

[ ] PR has been assigned and has appropriate labels (feature/bug/chore, release-x.x.x)
[ ] PR is updated to the most recent version of the target branch (and there are no conflicts)
[ ] PR has a good description that summarizes all changes and shows some screenshots or animated GIFs of important UI changes
[ ] CHANGELOG entry has been added to the top of the appropriate section (Features, Fixes, Chores) and is linked to the correct PR on GitHub
[ ] Automated tests: All acceptance and unit tests are passing (yarn test)
[ ] Manual tests (minimum tests should cover newly added feature/fix): App works correctly in development build (yarn dev)
[ ] Manual tests (minimum tests should cover newly added feature/fix): App works correctly in production build (yarn package / CI builds)
[ ] There are no flow errors or warnings (yarn flow:test)
[ ] There are no lint errors or warnings (yarn lint)
[ ] There are no prettier errors or warnings (yarn prettier:check)
[ ] There are no missing translations (running yarn manage:translations produces no changes)
[ ] Text changes are proofread and approved (Jane Wild / Amy Reeve)
[ ] Japanese text changes are proofread and approved (Junko Oda)
[ ] UI changes look good in all themes (Alexander Rukin)
[ ] Storybook works and no stories are broken (yarn storybook)
[ ] In case of dependency changes yarn.lock file is updated

Code Quality

[ ] Important parts of the code are properly commented and documented
[ ] Code is properly typed with flow
[ ] React components are split-up enough to avoid unnecessary re-renderings
[ ] Any code that only works in main process is neatly separated from components

Testing

[ ] New feature/change is covered by acceptance tests
[ ] New feature/change is manually tested and approved by QA team
[ ] All existing acceptance tests are still up-to-date
[ ] New feature/change is covered by Daedalus Testing scenario
[ ] All existing Daedalus Testing scenarios are still up-to-date

After Review

[ ] Merge the PR
[ ] Delete the source branch
[ ] Move the ticket to done column on the YouTrack board
[ ] Update Slack QA thread by marking it with a green checkmark

Great job, @yakovkaravelov. I added a small suggestion, to better organize the data flow and have already a working countdown.

@yakovkaravelov please, merge the latest changes from the develop branch and fix the conflict.

@yakovkaravelov please also add a CHANGELOG entry under features:
Implemented "Start of decentralisation notification" UI ([PR 1390](https://github.com/input-output-hk/daedalus/pull/1390))

@nikolaglumac
Updated/fixed issues.
Please review again.
Thanks.

@yakovkaravelov please merge the latest develop and fix the conflicts


python312Packages.adafruit-platformdetect: 3.62.0 -> 3.63.0

Changelog: https://github.com/adafruit/Adafruit_Python_PlatformDetect/releases/tag/3.63.0
Description of changes

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

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

Result of nixpkgs-review pr 310524 run on x86_64-linux 1

4 packages built:

python311Packages.adafruit-platformdetect
python311Packages.adafruit-platformdetect.dist
python312Packages.adafruit-platformdetect
python312Packages.adafruit-platformdetect.dist


Xamarin.Auth no longer maintained?

This article is relying on Xamarin.Auth that hasn't been touched for over 8 months now. No issues are being worked on & no pull requests are merged. Any created issues are just either overlooked or assigned to a guy that never replies to anything. I wonder is this still something we should rely on? https://github.com/xamarin/Xamarin.Auth

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

ID: aa8bb9e0-5898-0d11-0213-fd4d8c8d0297
Version Independent ID: 2f46e1f7-164f-2f32-70c0-f28919d16c5c
Content: AuthenticateUsers with an Identity Provider - Xamarin
Content Source: docs/xamarin-forms/data-cloud/authentication/oauth.md
Product: xamarin
Technology: xamarin-forms
GitHub Login: @davidbritch
Microsoft Alias: dabritch

Hi @JakubHolovsky
No, you shouldn't rely on Xamarin.Auth any longer. It's being replaced by authentication support in Xamarin.Essentials. If you look in the Essentials repo in GitHub, you can see an example of how to use the authentication support in Essentials.
Please bear with us while the docs get updated.


RenameContainer tests do not check UserCanRename as a pre-req

Affected tests that need the UserCanRename pre-requisite:

containers.CreateAndRenameChildContainer
containers.CreateAndRenameChildContainerAndVerifyReturnedContainerNameIsCorrectlyEncoded

Fixed by PR #58.


Generate ES Modules rather than CommonJS

Like it says in the title. There's benefits to using ES Modules over CommonJS in conjunction with tools like Webpack, mainly to do with tree shaking. It'd be great if we could make ES Modules the default for reason-scripts.

100% agree. 1.0 will have this on by default.

This was enabled by default in v0.8.


fix de-serializing for "SerializedFieldTypeInt64"

Incorrect casting fix

@googlebot I signed it!

@googlebot I signed it!

Codecov Report

Merging #432 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #432      +/-   ##
==========================================
+ Coverage   54.45%   54.45%   +<.01%
==========================================
  Files         342      342
  Lines       58450    58450
==========================================
+ Hits        31827    31829       +2
+ Misses      26623    26621       -2

Impacted Files
Coverage Δ

src/lib/support/SerializationUtils.cpp
83.41% <100%> (ø)
:arrow_up:

src/test-apps/TestCASE.cpp
96.12% <0%> (+0.22%)
:arrow_up:

src/inet/AsyncDNSResolverSockets.cpp
96.52% <0%> (+0.86%)
:arrow_up:

Continue to review full report at Codecov.

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


running error

when i run "python py_example.py", I got the error"libgio-2.0.so.0: undefined symbol: g_ref_count_inc", I don't know how to fix it
my system is ubuntu1804

Sorry haven't encountered similar issues before.
Can you make sure that your opencv is properly installed? For example, can you successfully compile and run the following c++?
#include <opencv2/imgcodecs.hpp>
#include <opencv2/highgui.hpp>

int main() {
    auto source = cv::imread("./images/forest_pruned.bmp", cv::IMREAD_COLOR);
    auto result = source;
    cv::imwrite("./images/forest_recovered.bmp", result);
    return 0;
}

I had fixed it using python3.6 instead of python 3.7


Move cdn assets to precompiled project assets

This should help with load times and reduce the effect caused by the late arrival of the CSS. This solution will be more apparent in production.

Need to update the application.html.erb to work with the latest from master


Unable to call the Agent from the Bot

Hello there and thanks for this project .
I have tested Scenario 1 (Channel to Channel ) and it worked successfully.
For Scenario 2, I have added the bot endpoint and the direct line key and I managed to install the npm, build and run the Agent UI . It runs on the http://localhost:8080 with a white screen having only Agent UI text in it. I can't seem to find where to make the request for the agents.
from the sender's side I send 'human' and no channels are aggregated so the request should be directed to the agent. How I am supposed to be calling the AgentController? or how does the bot call the Agent which uses the direct line?

I'm having the same issue.. I can only see blank screen

The agent UI polls the bot API endpoint eg:
setInterval(() =>
fetch("http://803705b8.ngrok.io/api/agent/1")
So make sure you've updated the index.ts file within the agent codebase to your endpoint.
When it's working should look like this: https://
msdnshared.blob.core.windows.net/media/2017/08/Bot-HandOff2.gif

I did that but cors is not enabled and the chat interface doesn't show.
I get a blank screen with this detected error:
No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://<IP_ADDRESS>:8080' is therefore not allowed access. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

You'll need to enable CORS.  In your webconfig.cs
Register(....)
config.EnableCors();
Agent controller already has attributes eg:
    [EnableCors("*", "*", "*")]
    public string GetAgentById(int id)

https://github.com/tompaana/intermediator-bot-sample/blob/master/IntermediatorBotSample/Controllers/AgentController.cs

Yes. I have done so ... and now the Chat screen interface appears when a request to human assistance is made but after that the messages are not forwarded between them.

What channel are you using to request the agent/human assistance?  Try using Slack.
Also, when everything is running - type "command reset" to clear down any routing state.

I have had the same problem exchanging messages between the Agent UI and Client asking for human assistance, the messages just seam to not go through.

@SamaraSara, @carlosmorgado I've put a blog post together on how to set this up with a video sample for both scenarios.  Agent UI sample includes the setup required to get this up and running.  Hopefully this helps you both: https://blogs.msdn.microsoft.com/jamiedalton/2017/08/10/microsoft-bot-framework-handing-off-to-a-human-for-agentssupervisors-with-c-and-the-botbuilder-sdk/ .  Let me know if this helps.

I followed everything you did and still can't trade messages between the Agent and the Client

Are you receiving basic echo messages back from the bot ok as an end-user?
Assuming you've definitely modified the index.ts file with the Agent code (not the index.js), built then run?
If you put a breakpoint in the AgentController - it should get hit every 3 seconds or so (polling)

@carlosmorgado, @SamaraSara any updates? or can I close this issue?

Thank you @SamaraSara, @carlosmorgado and especially @daltskin! Closing this issue - reopen if the problem persists.


created the new footer

Signed-off-by: Yash Vardhan<EMAIL_ADDRESS>Created the new-footer as per the Figma designs for getnighthawk-homepage.

Notes for Reviewers
Signed commits

[x] Yes, I signed my commits.

Oh, no. We have some miscommunication here. The expanded site footer that we currently have is an improvement on the design. Either the current footer or one like that of smp-spec.io will work.

okay, let's just keep it as it is then. I will close this PR

Oh, @Grumpyyash. Now that I look at the footer again, there is something to be done:
The copyright doesn't need to be prominent. It can be moved beneath the footer links.

@leecalcote are you talking about this PR's footer or the original one that we have? If it is about the original one, I can take that issue and fix it up and if it's about this one, it doesn't matter because I will close down this PR and keep the original footer only.

@Grumpyyash as talked over slack we are not implementing this particular design from the Figma mockup.  We are instead going with the footer that we currently have already.
The footer that we have currently requires a couple of fixes. The 2021 © Layer5, Inc. Needs to be moved one level down, similar to this image:

You can make a new PR consisting of all these changes.

okay, I'll do it


prefix_tablenames

Please offer the functionality to prefix the table names over the config?
Categories is such a commonly used table name :)

Thank you for the suggestion. This functionality is available in 5.6.0


Improve ARIA roles for accessibility

Testing accessibility with Google's Accessibility Developer Tools and there are a few ARIA roles which should be updated. Electron
Accessibilty audit failed

Error: AX_ARIA_01 (Elements with ARIA roles must use a valid, non-abstract ARIA role) failed on the following elements (1 - 4 of 4):
body > .pcr-app
body > .pcr-app > .pcr-selection > .pcr-color-palette > .pcr-palette
body > .pcr-app > .pcr-selection > .pcr-color-chooser > .pcr-hue.pcr-slider
body > .pcr-app > .pcr-selection > .pcr-color-opacity > .pcr-opacity.pcr-slider
See https://github.com/GoogleChrome/accessibility-developer-tools/wiki/Audit-Rules#ax_aria_01 for more information.

I use app.client.auditAccessibility() via Spectron but the output is the same on the web
Suggested

My opinions, there may be more valid non-abstract roles listed here: https://www.w3.org/TR/wai-aria-1.0/roles#roles_categorization

.pcr-app from role="window" to role="form"
.pcr-palette from role="widget" to role="listbox"
.pcr-opacity and .pcr-hue from role="widget" to role="slider"

My environment:
Version (see Pickr.version): 1.4.2
Used bundle (es5 or normal one): normal
Used theme (default is classic): nano
Electron 6.0.11
darwin 18.7.0

That's really nice, didn't knew there where such specific roles available :D


Fix whitespace being matched on commit cross-referencing

Changed the regex so it won't match whitespace
Screenshots
Source:
hi abc/fed@12d90af2cfe5500ec947bdefd237f2a8b6464b95 bye

Before

After

Fixes #22666

It's set as draft because I'm not sure what needs to be changed in the unit tests

I wonder why this works with all other patterns in this file. I copied the pattern issueAlphanumericPattern and modified it.

After the change I made, it's matching commits with more than 40 characters so not very good

Seeing as I'm not that good with regex I'll close this PR and wish luck to whoever is brave enough to go deep into regex territory.

The regex is right.
What you need is:
RefLocation: &RefSpan{Start: m[2], End: m[7]},

The fix:  Use correct captured group range when parsing cross-reference #22672


Restore openAPI schema for table feature when it goes public

Currently, table feature is developed under the feature flag, and we are not exposing it in swaggerUI.
created this ticket to track.

easy to do, but we don't have enough examples in the code - maybe a day