Does not compile without serde feature

There is a PR that tried to fix this, but it was not merged yet and I don't know if it is still current: #191
On the current main branch ethereum-consensus does not compile without the serde feature due to the reason stated in #191:
cargo check --no-default-features

thanks for raising this, I think the changes in #191 make sense but also make the code more dense than it already is, so if anything I'd possibly even just support removing the serde feature and having the library support it by default
are you doing something where this is blocking you?

are you doing something where this is blocking you?

No, I'm likely going to need serde anyways. Even if I don't the main downside is longer compile times.
For me --no-default-features -F serde is sufficient.
I just wanted to mention that the serde feature doesn't work as expected.

great, thanks for the message :)
I'll leave this open, and (1) if anyone runs into this as blocker please post here and (2) ill keep this in my queue to address sooner or later


Consider becoming a request handler only

in 3.x we could have:
var app = express();
app.use(....);

etc, followed by:
http.createServer(function(req, res){
  app(req, res, callback);
});

this is ideal in several ways, it removes our weird http/https prototype hacks, it removes tls ambiguity issues, removes the need for cloning, however the main drawback being that "it's ugly".
the callback would be optional, responding otherwise, so it could be as terse as:
http.createServer(app);

which in turn begins to look ok :)

done


Upgrade spring 2.0.2

Coverage remained the same at 100.0% when pulling 129bcfc478cf0f6c3c97aa33597efade1716aa2e on upgrade/spring-2.0.2 into 6499a71f1fc775813e417eea6321cc2d8433d3bb on master.


Allow login on sandbox

Change the url parameter for the login task to take the sf.server property from the build.properties
=> Allow to login to sandbox

related to issue #22

Thanks! 👍


Checklist for 2021.06

Here's what changed for the latest release
Additions:

[ ] Support generics with consumption and inheritance in roles -4b996568-6e1cfe4c
[x] Introduce done foo syntax as a shortcut for emit foo; done -452e92ed
[x] Implement pick method on Any taking HyperWhatever as an argument (.pick(**)),
which  produce all values of Foo.pick(), and then produce all values
of Foo.pick() again, and again, ad infinitum -cd4a72b6
[x] Add a repl sub to enter the REPL from within a program -4183cdaf
[x] Add Buf and Blob coercers to Blob and Buf roles -f83e5511

Changes:

[x] No longer use Unicode in REPL on Windows -5e1c97ba

I assume we need to add an introduction to generics somewhere


⚠ Samsung has degraded performance

In 638eb1a, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2620 ms

Resolved: Samsung performance has improved in 0aa329b.


Fix lantr preparation for row major matrices

No tests, but happy to add if you can direct me to the harness.
Fixes #631.
@xianyi Please take a look.

Thank you for the patch. I will re-design the test for OpenBLAS. After that, I will notice you to add the testcase.


azure-mgmt-monitor : MonitorManagementClient object has no attribute 'metric'

I am using the azure-mgmt.-monitor package in Azure runbooks (using python 2) in order to get the CPU utilization of VMs. When running my code I get the following error:

Failed
Traceback (most recent call last):  File "C:\Temp\gfk0cxyx.cab\ee7ce151-9b78-4920-aa4b-5f5e1ca6f0c5", line 150, in     main()  File "C:\Temp\gfk0cxyx.cab\ee7ce151-9b78-4920-aa4b-5f5e1ca6f0c5", line 28, in main    cpuDict = getCPU(credentials, sub_id, .....")  File "C:\Temp\gfk0cxyx.cab\ee7ce151-9b78-4920-aa4b-5f5e1ca6f0c5", line 98, in getCPU    cpuData = monitor_client.metric.list(resource_id, timespan="{}/{}".format(past,present),interval="PT1M",metric="Percentage CPU",aggregation="Average")AttributeError: 'MonitorManagementClient' object has no attribute 'metric'

This is the code that I use to get the metrics:
def getCPU(credentials, sub_id, resource_id):
    monitor_client = MonitorManagementClient(credentials, str(sub_id))
    past = datetime.now()-timedelta(hours=12)
    present = datetime.now()
    cpuData = monitor_client.metric.list(resource_id, timespan="{}/{}".format(past,present),interval="PT1M",metric="Percentage CPU",aggregation="Average")

I have no problems when using the other SDK packages such as compute and resource.
Any help is appreciated,
Thank you

Under MonitorManagementClient, the attribute is actually titled 'metrics' and not 'metric' and the parameter name is 'metricnames' instead of 'metric'. Let me know whether after you switch your final line to
cpuData = monitor_client.metrics.list(resource_id, timespan="{}/{}".format(past,present),interval="PT1M",metricnames="Percentage CPU",aggregation="Average")

your code works.

Thank you this has solved my error.

Hello, I am encountering this error now even using the correct library. Here is the code snippet throwing the error in my python 2 runbook:
incoming_metrics_data = client.metrics.list(         resource_id,         timespan="{}/{}".format(start, end),         interval='PT1H',         metricnames='IncomingMessages',         filter="EntityName eq '" + tup[1] + "'"     )
I get the error:
Traceback (most recent call last): File "junk", line 79, in <module> incoming_metrics_data = client.metrics.list(AttributeError: 'MonitorManagementClient' object has no attribute 'metrics'

@fredxfred  Me too,I did not see the attribute metrics for MonitorManagementClient

I got it working adding some python packages in the Automation Account.
azure_common - 1.1.23 - https://pypi.org/project/azure-common/
azure_mgmt_monitor - 0.7.0- https://pypi.org/project/azure-mgmt-monitor/
msrest - 0.6.10 - https://pypi.org/project/msrest/
msrestazure - 0.6.2 - https://pypi.org/project/msrestazure/
typing - <IP_ADDRESS> - https://pypi.org/project/typing/


readme.md - update additional info to Learn & Support

Hi Ken,
I updated the Additional Information section in the readme to point to the Learn & Support page. This page doesn't require an access code, but it still has links to the Help Center, etc.
Thanks,
Will

Need to make an additional update to the README, so closing this and going to open a separate one with both changes

Need to make an additional update to the README, so closing this and going to open a separate one with both changes


How to deal with Segmentation fault（core dumped）？

Hello！ each time when I tried to run main.py at 2 servers, I always met this problem,I nearly get crazy to this problem,can you tell me how to deal with it？
the debug info shows as follow：
#0  0x00007fff6938a496 in cudnnSetTensorNdDescriptor ()
from /usr/local/cuda/lib64/libcudnn.so.5
#1  0x00007fff737136fc in set (stride=0x7fffafff4970, size=0x7fffafff4950,
dim=, dataType=CUDNN_DATA_FLOAT,
this=0x7ffec1d2069f <cuCtxGetDevice+207>)
at torch/csrc/cudnn/Descriptors.h:26
#2  torch::cudnn::cudnn_convolution_add_bias (state=state@entry=0x14e93f0,
handle=handle@entry=0x7ffe7c089bb0,
dataType=dataType@entry=CUDNN_DATA_FLOAT, bias=bias@entry=0x13afe70,
output=output@entry=0x7ffe7c087670,
info=info@entry=0x7ffec1d2061f <cuCtxGetDevice+79>)
at torch/csrc/cudnn/Conv.cpp:321
#3  0x00007fff73715f10 in torch::cudnn::cudnn_convolution_full_forward (
state=0x14e93f0, handle=0x7ffe7c089bb0,
dataType=dataType@entry=CUDNN_DATA_FLOAT,
input=input@entry=0x7fffb22effb0, weight=weight@entry=0x14ec1c0,
bias=bias@entry=0x13afe70, output=output@entry=0x7ffe7c087670, pad=...,
stride=..., dilation=..., groups=groups@entry=1,
benchmark=benchmark@entry=true) at torch/csrc/cudnn/Conv.cpp:411
#4  0x00007fff7371b37f in THCUDNN_cudnn_convolution_full_forward (
self=, args=, kwargs=)
at torch/csrc/cudnn/cuDNN.cpp:115
#5  0x00007ffff718e302 in _PyCFunction_FastCallDict (func_obj=0x7fff73b88af8,
---Type  to continue, or q  to quit---
args=0x7ffe7c002300, nargs=, kwargs=0x0)
at Objects/methodobject.c:231
#6  0x00007ffff7213b8c in call_function (pp_stack=0x7fffafff4f28,
oparg=, kwnames=0x0) at Python/ceval.c:4809
#7  0x00007ffff7216d40 in _PyEval_EvalFrameDefault (f=,
throwflag=) at Python/ceval.c:3295
#8  0x00007ffff7211514 in _PyFunction_FastCall (co=,
args=, nargs=4, globals=)
at Python/ceval.c:4891
#9  0x00007ffff7213c88 in fast_function (kwnames=0x0, nargs=4,
stack=, func=0x7fff3fdf1158) at Python/ceval.c:4926
#10 call_function (pp_stack=0x7fffafff5158, oparg=, kwnames=0x0)
at Python/ceval.c:4830
#11 0x00007ffff7216d40 in _PyEval_EvalFrameDefault (f=,
throwflag=) at Python/ceval.c:3295
#12 0x00007ffff7212100 in _PyEval_EvalCodeWithName (_co=0x7fff3fe6b6f0,
globals=, locals=, args=,
argcount=4, kwnames=0x0, kwargs=0x8, kwcount=0, kwstep=2,
defs=0x7fff3fde5fb0, defcount=1, kwdefs=0x0, closure=0x0,
name=0x7fff408dd688, qualname=0x7fff3fde71f0) at Python/ceval.c:4139
#13 0x00007ffff721239c in _PyFunction_FastCallDict (func=0x7fff3fdedea0,
args=0x7fffafff5390, nargs=4, kwargs=0x0) at Python/ceval.c:5042
#14 0x00007ffff7136ce6 in _PyObject_FastCallDict (func=0x7fff3fdedea0,
---Type  to continue, or q  to quit---
args=0x7fffafff5390, nargs=, kwargs=0x0)
at Objects/abstract.c:2295
#15 0x00007ffff7136f3c in _PyObject_Call_Prepend (func=0x7fff3fdedea0,
obj=0x7fffec390a08, args=0x7fffe9027990, kwargs=0x0)
at Objects/abstract.c:2358
#16 0x00007ffff7136fd6 in PyObject_Call (func=0x7fffe902c608,
args=, kwargs=) at Objects/abstract.c:2246
#17 0x00007fff7331275e in THPFunction_do_forward (self=0x7fffec390a08,
inputs=0x7fffe90279d8) at torch/csrc/autograd/python_function.cpp:447
#18 0x00007ffff718e6a9 in PyCFunction_Call (func=0x7fffe902fea0,
args=0x7fffe90279d8, kwds=) at Objects/methodobject.c:114
#19 0x00007ffff7136fd6 in PyObject_Call (func=0x7fffe902fea0,
args=, kwargs=) at Objects/abstract.c:2246
#20 0x00007ffff71af44f in slot_tp_call (self=0x7fffec390a08,
args=0x7fffe90279d8, kwds=0x0) at Objects/typeobject.c:6194
#21 0x00007ffff7136c1e in _PyObject_FastCallDict (func=0x7fffec390a08,
args=, nargs=, kwargs=0x0)
at Objects/abstract.c:2316
#22 0x00007ffff721395b in call_function (pp_stack=0x7fffafff58d8,
oparg=, kwnames=0x0) at Python/ceval.c:4833
#23 0x00007ffff7216d40 in _PyEval_EvalFrameDefault (f=,
throwflag=) at Python/ceval.c:3295
#24 0x00007ffff7212100 in _PyEval_EvalCodeWithName (_co=0x7fff3fdf6a50,
---Type  to continue, or q  to quit---
globals=, locals=, args=,
argcount=7, kwnames=0x0, kwargs=0x7fffec796b98, kwcount=0, kwstep=1,
defs=0x7fff3fde88f8, defcount=5, kwdefs=0x0, closure=0x0,
name=0x7fff3fdf4b20, qualname=0x7fff3fdf4b20) at Python/ceval.c:4139
#25 0x00007ffff7213b2a in fast_function (kwnames=, nargs=7,
stack=, func=0x7fff3fdf27b8) at Python/ceval.c:4950
#26 call_function (pp_stack=0x7fffafff5b78, oparg=,
kwnames=) at Python/ceval.c:4830
#27 0x00007ffff7216d40 in _PyEval_EvalFrameDefault (f=,
throwflag=) at Python/ceval.c:3295
#28 0x00007ffff7211514 in _PyFunction_FastCall (co=,
args=, nargs=2, globals=)
at Python/ceval.c:4891
#29 0x00007ffff7212515 in _PyFunction_FastCallDict (func=0x7fff3fd95510,
args=0x7fffafff5d40, nargs=2, kwargs=0x7fffe902ff78) at Python/ceval.c:4993
#30 0x00007ffff7136ce6 in _PyObject_FastCallDict (func=0x7fff3fd95510,
args=0x7fffafff5d40, nargs=, kwargs=0x7fffe902ff78)
at Objects/abstract.c:2295
#31 0x00007ffff7136f3c in _PyObject_Call_Prepend (func=0x7fff3fd95510,
obj=0x7fffec393358, args=0x7fffe901cac8, kwargs=0x7fffe902ff78)
at Objects/abstract.c:2358
#32 0x00007ffff7136fd6 in PyObject_Call (func=0x7fffe902c5c8,
args=, kwargs=) at Objects/abstract.c:2246
---Type  to continue, or q  to quit---
#33 0x00007ffff7217fc9 in do_call_core (kwdict=0x7fffe902ff78,
callargs=, func=0x7fffe902c5c8) at Python/ceval.c:5078
#34 _PyEval_EvalFrameDefault (f=, throwflag=)
at Python/ceval.c:3377
#35 0x00007ffff7212100 in _PyEval_EvalCodeWithName (_co=0x7fff408de930,
globals=, locals=, args=,
argcount=2, kwnames=0x0, kwargs=0x8, kwcount=0, kwstep=2, defs=0x0,
defcount=0, kwdefs=0x0, closure=0x0, name=0x7ffff7f85170,
qualname=0x7fff408df170) at Python/ceval.c:4139
#36 0x00007ffff721239c in _PyFunction_FastCallDict (func=0x7fff3fe10510,
args=0x7fffafff6130, nargs=2, kwargs=0x0) at Python/ceval.c:5042
#37 0x00007ffff7136ce6 in _PyObject_FastCallDict (func=0x7fff3fe10510,
args=0x7fffafff6130, nargs=, kwargs=0x0)
at Objects/abstract.c:2295
#38 0x00007ffff7136f3c in _PyObject_Call_Prepend (func=0x7fff3fe10510,
obj=0x7fffec393358, args=0x7fffec393240, kwargs=0x0)
at Objects/abstract.c:2358
#39 0x00007ffff7136fd6 in PyObject_Call (func=0x7fffe902c588,
args=, kwargs=) at Objects/abstract.c:2246
#40 0x00007ffff71af44f in slot_tp_call (self=0x7fffec393358,
args=0x7fffec393240, kwds=0x0) at Objects/typeobject.c:6194
#41 0x00007ffff7136c1e in _PyObject_FastCallDict (func=0x7fffec393358,
args=, nargs=, kwargs=0x0)
---Type  to continue, or q  to quit---
at Objects/abstract.c:2316
#42 0x00007ffff721395b in call_function (pp_stack=0x7fffafff6428,
oparg=, kwnames=0x0) at Python/ceval.c:4833
#43 0x00007ffff7216d40 in _PyEval_EvalFrameDefault (f=,
throwflag=) at Python/ceval.c:3295
#44 0x00007ffff7211514 in _PyFunction_FastCall (co=,
args=, nargs=2, globals=)
at Python/ceval.c:4891
#45 0x00007ffff7212515 in _PyFunction_FastCallDict (func=0x7fff3fda9950,
args=0x7fffafff65f0, nargs=2, kwargs=0x7fffe902ff30) at Python/ceval.c:4993
#46 0x00007ffff7136ce6 in _PyObject_FastCallDict (func=0x7fff3fda9950,
args=0x7fffafff65f0, nargs=, kwargs=0x7fffe902ff30)
at Objects/abstract.c:2295
#47 0x00007ffff7136f3c in _PyObject_Call_Prepend (func=0x7fff3fda9950,
obj=0x7fffec393320, args=0x7fffec80fd30, kwargs=0x7fffe902ff30)
at Objects/abstract.c:2358
#48 0x00007ffff7136fd6 in PyObject_Call (func=0x7fffe902c548,
args=, kwargs=) at Objects/abstract.c:2246
#49 0x00007ffff7217fc9 in do_call_core (kwdict=0x7fffe902ff30,
callargs=, func=0x7fffe902c548) at Python/ceval.c:5078
#50 _PyEval_EvalFrameDefault (f=, throwflag=)
at Python/ceval.c:3377
#51 0x00007ffff7212100 in _PyEval_EvalCodeWithName (_co=0x7fff408de930,
---Type  to continue, or q  to quit---
globals=, locals=, args=,
argcount=2, kwnames=0x0, kwargs=0x8, kwcount=0, kwstep=2, defs=0x0,
defcount=0, kwdefs=0x0, closure=0x0, name=0x7ffff7f85170,
qualname=0x7fff408df170) at Python/ceval.c:4139
#52 0x00007ffff721239c in _PyFunction_FastCallDict (func=0x7fff3fe10510,
args=0x7fffafff69e0, nargs=2, kwargs=0x0) at Python/ceval.c:5042
#53 0x00007ffff7136ce6 in _PyObject_FastCallDict (func=0x7fff3fe10510,
args=0x7fffafff69e0, nargs=, kwargs=0x0)
at Objects/abstract.c:2295
#54 0x00007ffff7136f3c in _PyObject_Call_Prepend (func=0x7fff3fe10510,
obj=0x7fffec393320, args=0x7fffec80fcf8, kwargs=0x0)
at Objects/abstract.c:2358
#55 0x00007ffff7136fd6 in PyObject_Call (func=0x7fffe902c508,
args=, kwargs=) at Objects/abstract.c:2246
#56 0x00007ffff71af44f in slot_tp_call (self=0x7fffec393320,
args=0x7fffec80fcf8, kwds=0x0) at Objects/typeobject.c:6194
#57 0x00007ffff7136c1e in _PyObject_FastCallDict (func=0x7fffec393320,
args=, nargs=, kwargs=0x0)
at Objects/abstract.c:2316
#58 0x00007ffff721395b in call_function (pp_stack=0x7fffafff6cd8,
oparg=, kwnames=0x0) at Python/ceval.c:4833
#59 0x00007ffff7216d40 in _PyEval_EvalFrameDefault (f=,
throwflag=) at Python/ceval.c:3295
---Type  to continue, or q  to quit---
#60 0x00007ffff7211514 in _PyFunction_FastCall (co=,
args=, nargs=3, globals=)
at Python/ceval.c:4891
#61 0x00007ffff7212515 in _PyFunction_FastCallDict (func=0x7ffec2571c80,
args=0x7fffafff6ea0, nargs=3, kwargs=0x7fffe902fee8) at Python/ceval.c:4993
#62 0x00007ffff7136ce6 in _PyObject_FastCallDict (func=0x7ffec2571c80,
args=0x7fffafff6ea0, nargs=, kwargs=0x7fffe902fee8)
at Objects/abstract.c:2295
#63 0x00007ffff7136f3c in _PyObject_Call_Prepend (func=0x7ffec2571c80,
obj=0x7fffec3932b0, args=0x7ffebfad0988, kwargs=0x7fffe902fee8)
at Objects/abstract.c:2358
#64 0x00007ffff7136fd6 in PyObject_Call (func=0x7fffe902c4c8,
args=, kwargs=) at Objects/abstract.c:2246
#65 0x00007ffff7217fc9 in do_call_core (kwdict=0x7fffe902fee8,
callargs=, func=0x7fffe902c4c8) at Python/ceval.c:5078
#66 _PyEval_EvalFrameDefault (f=, throwflag=)
at Python/ceval.c:3377
#67 0x00007ffff7212100 in _PyEval_EvalCodeWithName (_co=0x7fff408de930,
globals=, locals=, args=,
argcount=3, kwnames=0x7ffff7f82060, kwargs=0x7ffff7f82068, kwcount=0,
kwstep=2, defs=0x0, defcount=0, kwdefs=0x0, closure=0x0,
name=0x7ffff7f85170, qualname=0x7fff408df170) at Python/ceval.c:4139
#68 0x00007ffff721239c in _PyFunction_FastCallDict (func=0x7fff3fe10510,
---Type  to continue, or q  to quit---
args=0x7fffafff7290, nargs=3, kwargs=0x7fffec798318) at Python/ceval.c:5042
#69 0x00007ffff7136ce6 in _PyObject_FastCallDict (func=0x7fff3fe10510,
args=0x7fffafff7290, nargs=, kwargs=0x7fffec798318)
at Objects/abstract.c:2295
#70 0x00007ffff7136f3c in _PyObject_Call_Prepend (func=0x7fff3fe10510,
obj=0x7fffec3932b0, args=0x7ffebfad09c8, kwargs=0x7fffec798318)
at Objects/abstract.c:2358
#71 0x00007ffff7136fd6 in PyObject_Call (func=0x7fffe902c048,
args=, kwargs=) at Objects/abstract.c:2246
#72 0x00007ffff71af44f in slot_tp_call (self=0x7fffec3932b0,
args=0x7ffebfad09c8, kwds=0x7fffec798318) at Objects/typeobject.c:6194
#73 0x00007ffff7136fd6 in PyObject_Call (func=0x7fffec3932b0,
args=, kwargs=) at Objects/abstract.c:2246
#74 0x00007ffff7217fc9 in do_call_core (kwdict=0x7fffec798318,
callargs=, func=0x7fffec3932b0) at Python/ceval.c:5078
#75 _PyEval_EvalFrameDefault (f=, throwflag=)
at Python/ceval.c:3377
#76 0x00007ffff7212100 in _PyEval_EvalCodeWithName (_co=0x7fff3fdc74b0,
globals=, locals=, args=,
argcount=5, kwnames=0x7ffff7f82060, kwargs=0x7ffff7f82068, kwcount=0,
kwstep=2, defs=0x0, defcount=0, kwdefs=0x0, closure=0x0, name=0x0,
qualname=0x0) at Python/ceval.c:4139
#77 0x00007ffff7212583 in PyEval_EvalCodeEx (_co=,
---Type  to continue, or q  to quit---
globals=, locals=, args=,
argcount=, kws=, kwcount=0, defs=0x0,
defcount=0, kwdefs=0x0, closure=0x0) at Python/ceval.c:4160
#78 0x00007ffff716a1a1 in function_call (func=0x7fffe9029488,
arg=0x7fffec7fe2b0, kw=0x7fffe9027a68) at Objects/funcobject.c:604
#79 0x00007ffff7136fd6 in PyObject_Call (func=0x7fffe9029488,
args=, kwargs=) at Objects/abstract.c:2246
#80 0x00007ffff7217fc9 in do_call_core (kwdict=0x7fffe9027a68,
callargs=, func=0x7fffe9029488) at Python/ceval.c:5078
#81 _PyEval_EvalFrameDefault (f=, throwflag=)
at Python/ceval.c:3377
#82 0x00007ffff7211514 in _PyFunction_FastCall (co=,
args=, nargs=1, globals=)
at Python/ceval.c:4891
#83 0x00007ffff7213c88 in fast_function (kwnames=0x0, nargs=1,
stack=, func=0x7fff76471c80) at Python/ceval.c:4926
#84 call_function (pp_stack=0x7fffafff7a28, oparg=, kwnames=0x0)
at Python/ceval.c:4830
#85 0x00007ffff7216d40 in _PyEval_EvalFrameDefault (f=,
throwflag=) at Python/ceval.c:3295
#86 0x00007ffff7211514 in _PyFunction_FastCall (co=,
args=, nargs=1, globals=)
at Python/ceval.c:4891
---Type  to continue, or q  to quit---
#87 0x00007ffff7213c88 in fast_function (kwnames=0x0, nargs=1,
stack=, func=0x7fff76471ea0) at Python/ceval.c:4926
#88 call_function (pp_stack=0x7fffafff7c58, oparg=, kwnames=0x0)
at Python/ceval.c:4830
#89 0x00007ffff7216d40 in _PyEval_EvalFrameDefault (f=,
throwflag=) at Python/ceval.c:3295
#90 0x00007ffff7211514 in _PyFunction_FastCall (co=,
args=, nargs=1, globals=)
at Python/ceval.c:4891
#91 0x00007ffff7212515 in _PyFunction_FastCallDict (func=0x7fff76471d08,
args=0x7fffafff7e20, nargs=1, kwargs=0x0) at Python/ceval.c:4993
#92 0x00007ffff7136ce6 in _PyObject_FastCallDict (func=0x7fff76471d08,
args=0x7fffafff7e20, nargs=, kwargs=0x0)
at Objects/abstract.c:2295
#93 0x00007ffff7136f3c in _PyObject_Call_Prepend (func=0x7fff76471d08,
obj=0x7fffe901cb38, args=0x7ffff7f82048, kwargs=0x0)
at Objects/abstract.c:2358
#94 0x00007ffff7136fd6 in PyObject_Call (func=0x7fffec7e3f08,
args=, kwargs=) at Objects/abstract.c:2246
#95 0x00007ffff7264302 in t_bootstrap (boot_raw=0x7fffec37beb8)
at ./Modules/_threadmodule.c:998
#96 0x00007ffff6eb6e25 in start_thread () from /lib64/libpthread.so.0
#97 0x00007ffff62d334d in clone () from /lib64/libc.so.6

Can you run other pytorch scripts like mnist example using GPU correctly?

Can you run other pytorch scripts like mnist example using GPU correctly?

Oh, sorry, I never tried other pytorch projects, this is first pytorch project I ran.

Can you run other pytorch scripts like mnist example using GPU correctly?
Thank you for your reply！I may need to run other pytorch script to test whether is the version or dependency problem
.

Can you run other pytorch scripts like mnist example using GPU correctly?
Thank you for your reply！I may need to run other pytorch script to test whether is the version or dependency problem
.

Hi, Wentao, I can run other pytorch scripts successfully. I try to add print to find where the problem
comes, it stops at this line" output = net(data, coord)" at main.py.  I dont know why? Can you help me solve this?
By the way, I wonder how can you install the pytorch (0.1.10+ac9245a) , I can not find this version, I dont know if the version problem cause this?


修改window配置命令

Fixes #344 修正windows编译 perl config报错：Can't exec /bin/sh at config line 1.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Fixes #344 修正windows编译 perl config报错：Can't exec /bin/sh at config line 1.

请签一下 CLA


Bring Back PHP Samples (Support?!) Please

https://developers.google.com/calendar/api/quickstart/php no longer exists, and there are no Google Workspace PHP code examples/quickstart any more.  Is PHP still supported?  If it is, can you (re)post the resources please?

Still available here https://github.com/googleworkspace/php-samples/tree/main/calendar/quickstart

that's not what he meant, the quick-start documentation for PHP are all gone even if the GIT repos might be there.

it seems that PHP for google is a second citizen


404 page

A suggestion - instead of writing the 404 page yourself, throw an exception (maybe even create a custom exception type).
class NotFoundException extends Exception () { }

and where you're currently writing the 404 text:
throw new NotFoundException;

and then you wrap $route->end() in try/catch like so:
try {
  $route->end();
} catch (NotFoundException $ex) {
 // return error as json in case developer using api doesnt know how to check headers
 json_encode(array('success' => false, 'message' => 'page not found'));
}

just do something like this
$route->any('/*', function() {
    //custom error page
    json_encode(array('success' => false, 'message' => 'page not found'));
});

before $route->end();

Ah yes good idea, thanks :+1:


is there a way to pass a 'meta' object to winston through morgan?

I'm using Morgan for the HTTP logging and Winston wraps it. There is no explicit link between the two other than setting up the 'stream' option. Winston allows for a 'meta' object that can contain additional fields beyond the message and level. All of my logs except the Morgan ones contain metadata, like the username of the person triggering the leg event (or SYSTEM if not a user), and I'd like to add the same kind of thing for Morgan logs going to Winston. Any ideas?

So morgan is just a text logger and writes just a string to a stream for each log entry. I'm not sure what you're really talking about, so hard to answer more than that. Perhaps a code example would help clarify.

OK, that means there's no option. That's OK. The data is still available, I just can't parse it easily. I'll have to consider formatting as JSON. Thanks for the reply.

@rconstantine did you find a nice solution? Because I need to log objects (yes, like JS objects, not text), and I'm considering to hack Morgan to be able to specify a function that should be executed for each obtained object. If you know about other solutions it would be nice to learn :)

Actually, it's really interesting. If there was no + '\n' in https://github.com/expressjs/morgan/blob/master/index.js#L130 it could be straightforward to do object logging.

The simplest solution would be to change this one line
https://github.com/expressjs/morgan/blob/master/index.js#L130
from stream.write(line + '\n') to stream.write(line + '\n', req, res). That way additional context related to the request can be passed to the stream object if needed. Would anyone object to a fork?

Hi @tonyxiao you're certainly welcome to fork it. As far as your proposal goes, the .write function takes the values defined by the Node.js stream interface: https://nodejs.org/dist/latest-v10.x/docs/api/stream.html#stream_writable_write_chunk_encoding_callback
That is, the signature is .write(chunk[, encoding][, callback]). You would end up passing the req object as the encoding and the res object as the callback in your case.


Change std::string back to char* (PR #584) for performance reasons

Summary:
We changed from char* to std::string in #584, issue #460.
This was bad for performance. We should

[ ] revert #584
[ ] reopen #460 (C++11 should be able to do this without the performance hit)

Reproducible Steps:
Run the performance tests. No other behavior changed.
Current Version:
v2.17.0

Does anyone have an estimate of how big this regression was? I updated to 2.17.1 and saw a big decrease in runtime. Trying to figure out if this issue being fixed is a plausible solution.

I am doing the test tonight but I don’t really understand what I should be testing. Like is this only bad for models with loops and indexing for example?

It's bad pretty much everywhere functions get called.
They all pass error messages, such as the function name, to validation functions.
These were being converted back and forth with copies that were costly.  It's fixed in the current release.

Thanks @bob-carpenter!
I am not seeing a big difference on the eight schools file but I suspect this model is probably too small.

Wow ok. I am seeing closer to 3x locally so this appears to real.
Thanks for the fix and the help!


Conan Exiles: various updates

Switch to new port system, add Wine env vars, change AdminPassword setting to be user configurable, other tweaks

Now updated to set the AdminPassword via ini command line param. As a result the config download is no longer needed (keeping the config in the repo for legacy installations)

Switching back from using new ports system, given the Refresh Configuration logic may not be able to handle it

Reverted ports switch, now it has the new ports system again


Whether the extension attribute can not contain "-" ?

I get a CloudEvents via HTTP, some headers are like this:
Ce-Fc-Code-Checksum: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

I try to use go sdk to parse this event, like this:
...
evt, result := c.Request(ctx, event)
...
evt.DataAs(MyStruct)
...

but, the evt is nil. I found the following code in the source code:
https://github.com/cloudevents/sdk-go/blob/4ca23c8455477e8d1fbb76ee928909bf818ebdb4/v2/event/eventcontext_v1.go#L72-L78
https://github.com/cloudevents/sdk-go/blob/4ca23c8455477e8d1fbb76ee928909bf818ebdb4/v2/event/extensions.go#L24
It seems because of my extension attribute key Ce-Fc-Code-Checksum have -, but I can't find the description of the extension attribute key name in the specification:
https://github.com/cloudevents/spec/blob/v1.0/http-protocol-binding.md#313-metadata-headers
Can someone help me?

Hi, it's explained here:

https://github.com/cloudevents/spec/blob/v1.0/spec.md#extension-context-attributes
https://github.com/cloudevents/spec/blob/v1.0/spec.md#attribute-naming-convention

CloudEvents attribute names MUST consist of lower-case letters ('a' to 'z') or digits ('0' to '9') from the ASCII character set. Attribute names SHOULD be descriptive and terse and SHOULD NOT exceed 20 characters in length.

So it seems like the sender is sending an invalid Cloudevent and the sdk is correctly validating it


header-to-metadata: add option to apply an upstream TLS context override

Helps #17882.
Signed-off-by: Raul Gutierrez Segales<EMAIL_ADDRESS>

qq: does https://github.com/envoyproxy/envoy/pull/17995 fit your use case? it allows to use a header value for san validation.


Few questions about PHP code

Hello @MichMich
Project MagicMirror is awesome. :+1: !
[STILL EDITING MY ISSUE]\
I've few questions about PHP code here

Why you decide use include for importing css?

    <?php include('css/main.css') ?>

In my opinion better option:
 <link rel="stylesheet" type="text/css" href="css/main.css">

file: https://github.com/MichMich/MagicMirror/blob/master/index.php#L5

The same code is in hash.php file

https://github.com/MichMich/MagicMirror/blob/master/index.php#L9

I initially used this to prevent caching. I agree that this currently isn't the cleanest way.

Ok Issue edited. Please look now :smile:
@MichMich I can make PR with some changes for PHP code if you allow of course.

Make sure you throughly test everything on a raspberry Pi. I think php 5 should be supported. (Not only 7).

Can I close this issue? Or do you need more input?

I have no free time right now :(

Same problem here. ;)


How to generate virtual labels.

In SimCLR 3.2 only positive sample pairs are used, so I think the virtual label should be 1 when they belong to two different views of the same sentence, but 0 when they don't. But I still can't understand how the virtual label in (x_i, v_i) is generated.

I looked at the code that generates v_j.
 feature_q, labels_aux, lam = mixup(feature_q, alpha)  def mixup(input, alpha, share_lam=False):      ....      randind = torch.randperm(input.shape[0], device=input.device)     ....     return output, randind, lam  loss = (lam * criterion(logits, labels) + (1. - lam) * criterion(logits, labels_aux)).mean()
So can I assume that v_j is generated by randomly distorting a sequence.

I assume that your question is not limited to SimCLR but about how to generate virtual labels for all methods?
As you said, we choose a random index to mix for each label; so (i,j) is chosen as like zip(range(N), randperm(range(N)))
This choice is also aligned with the original mixup implementation:
https://github.com/facebookresearch/mixup-cifar10/blob/main/train.py#L127-L132


selectedElementIds not updated

Ids not updated (i.e. removed from the object) on who knows how many operations, e.g. removal.
Also, there's some weird thing going on: try to drag one object around. It adds some random (?) id to the object on every mouseUp. I think it's because we're creating temp objects on every pointerDowwn.

Is it still an issue after @petehunt changes?

There's still the issue of adding to the map temp elements on pointerdown, and not clearing them until selection change. It's not causing any issues that I know of right now, but it may in the future. Dunno.

I have a fix for this one. Submitting the PR (Not confident it's the correct fix though). :)

fixed via https://github.com/excalidraw/excalidraw/pull/1017


Remove deprecated python3 flag

Resolves #5110

@m4dcoder if we are going to issue a warning on the CLI and print for confirmation, could we also add a --yes or similar so that you can confirm it on the command line - to make it easier for anyone scripting the cli calls.


Add About Page and Edit code Contact Form Beauty

I add about page and fix code formatting, and edit contact us form beauty

Closing this PR due to the age and conflicts. Feel free to resolve and reopen 🙂


Refactor code to handle provenance edge-attributes for "primary knowledge" apis

When @tokebe and I were reviewing the PR for issue #463 , we noticed some issues with older code.
This code was meant to address "situation C": non-TRAPI apis that are generating knowledge/inferred-associations from data and should therefore be labeled as "primary knowledge sources". They also do not provide their edge-attributes in TRAPI format (we can then ingest their edge-attributes the same way we ingest edge-attributes from TRAPI APIs).
The desired refactoring is:

rather than using a hard-coded list of API names (which can change as the API names change), add a property to APIs listed in the config API_LIST variable that says "this is a primary knowledge source"
update the list of APIs fall under "situation C" (aka have the property in their API_LIST object mentioned above). There are only 3: LitVar, Multiomics EHR Risk, Multiomics Wellness

Note that some multiomics and text-mining APIs are NOT on this list because they provide their edge-attributes in TRAPI format: Multiomics BigGIM-DrugResponse, Multiomics ClinicalTrials, Text Mining Targeted

Change the behavior: the kgEdge.inforesCuries (is this the infores of the API?) should be put into the value of a "primary knowledge source" edge-attribute along with the kgEdge.sources. Then there's a separate "aggregator knowledge source" edge-attribute with infores:biothings-explorer as the value.

Related: we want to discuss with @andrewsu if a BioThings API of a primary knowledge source then also counts as a primary knowledge source (maybe it doesn't because of the parsing / organizing of the data that happens?). Many BioThings APIs may be in this situation, like:

BioThings BindingDB
BioThings GTRx
BioThings Rhea
BioThings SEMMEDDB
BioThings DDInter
BioThings iDISK
BioThings pfocr
DISEASES

The primary code changes would be in knowledge_graph.js, with some code in the query_graph_handler index.js to pass the API_LIST in.

@tokebe are you available to test Rohan's PRs to see if the issue is addressed?

This issue is related to the Translator priority of "having primary_knowledge_source set for each Edge". I'll review @rjawesome's PRs ASAP.
First, I'll list my review of the current main-branch behavior:

Multiomics Wellness KP API:

it's the only one that uses the current "situation C" code and still falls into the category of "situation C"
When I query it, I get Edges that are missing a primary_knowledge_source (see screenshot below). So I'll be checking if this is fixed with the PRs.

Litvar:

the current behavior is fine - it has a source property in its x-bte annotation that's assigned as the primary_knowledge_source (dbsnp) while litvar itself is listed as an aggregator_knowledge_source (see screenshot below). So I'll check the behavior with the PRs and probably remove the "primary knowledge source" tag for Litvar.

Multiomics EHR risk kp api (formerly clinical risk kp api):

because the name changed, BTE is incorrectly treating it as "not situation C". So when I query it, I get Edges that are missing a primary_knowledge_source (see screenshot below). So I'll be checking if this is fixed with the PRs.

current Multiomics Wellness KP Edge: missing primary

current Litvar Edge

current Multiomics EHR risk KP Edge: missing primary

Deployed to prod 🚀

I'm not sure that primary_knowledge_source is marked on all Edges.

If I query CTD through BTE (SmallMolecule MESH:C006303 -> Gene), I see that BTE isn't assigning CTD as the primary source. This is happening for all instances + my local instance (all main branches). This is related to this PR as well

Closing in favor of https://github.com/biothings/biothings_explorer/issues/627


docs: add section for conventional commit style #2583

Fixes Issue

Changes proposed

Check List (Check all the applicable boxes)

[x] My code follows the code style of this project.
[ ] My change requires changes to the documentation.
[x] I have updated the documentation accordingly.
[x] All new and existing tests passed.
[ ] This PR does not contain plagiarized content.
[x] The title of my pull request is a short description of the requested changes.

Screenshots

Note to reviewers

@SaraJaoude  Some of the contents are directly from  Conventional Commits. Is this fine or should I re-write my own?

We don't want to duplicate their docs.  Best to have a brief example of how they are used in EddieHub and a link to the Conventional Commits website.

Sure, I will make the changes.


Items list did not update upon trading

trading one item for one item had an issue with updating

ended showing a major infinite update loop with view, it has been fixed


JavaScript

#JavaScript
User Story
As a bootcamp student
I want the prework notes to be structured on a webpage
so that I can easily find and read information
##Acceptance Criteria
GIVEN a Prework Study Guide website
WHEN I view the study guide
THEN I can see the four topics I learned listed along with a suggestion on what I should study first

did it


Adding Hibernate 5 Project

Changes committed as per comments. Please check and revert.

I implemented the changes you asked for, but could you look for whenPersistDetached_thenThrowsException inside SaveMethodsTest.java. I am not getting to the fix for this test case. Issue seems to be with transaction commit, but not able to understand where to fix this.

Sandeep, I think it would be sufficient to change the expected exception to PersistenceException.

Please try now, I have tried by changing the type of Exception. Beside that tearDown() is throwing TransactionException, which is troubling me. I have tried by surrounding it in try-catch block. It is printing the stackTrace, please check and suggest for this issue.


Wrong handling of stake locking transactions

I run a Loki Masternode and have setup a view-only account to monitor the daily inflow of rewards.
Though I can see the daily transaction in the app, I noticed the total balance differs from the balance shown in Loki Electron Wallet 1.3.3. Looking deeper into it, It turned out that the app handles transactions related to stake locking differently.
Locking the stake has no impact on the balance in Loki Electron Wallet. But in the app the staking amount is added to the total balance, eventually resulting in a wrong balance.

Interesting, i will investigate this further

Interesting, i will investigate this further

Any news on this one?

Interesting, i will investigate this further

Any news on this one?

I think the difference in the balance is caused by the difference in wallet types.
On Android you're using a view-only account which is meant to accumulate funds, it can't tell when a transaction has left the wallet so the balance should be strictly increasing. See this Stack Exchange link for more details
The electron wallet doesn't have a view-only wallet and by default is a full wallet so the balance remains in check.

Interesting, i will investigate this further

Any news on this one?

I think the difference in the balance is caused by the difference in wallet types.
On Android you're using a view-only account which is meant to accumulate funds, it can't tell when a transaction has left the wallet so the balance should be strictly increasing. See this Stack Exchange link for more details
The electron wallet doesn't have a view-only wallet and by default is a full wallet so the balance remains in check.

Thank you for the explanation.
I'll switch over to a full wallet on Android.


Import statement missing in code generated using OTC framework

Scenario:

Created an OTCS script file with a copy-literal command to copy a given value to a field of type BigDecimal.

Executed a test project to generate the object conversion source code.

The code generated for the command mentioned above did not contain the import statement for the BigDecimal type due to which the compilation is failing.

Generated command from the etc editor as below:

metadata:
objectTypes:
source: ar.ndc_21_3_4.IATAAirShoppingRQ
target: org.iata.iata._2015._00._2018_1.airshoppingrq.AirShoppingRQ
entryClassName: IATAAirShoppingRQ__AirShoppingRQ
commands:

copy:
id: CP1
from:
values:
- 18.1
to:
objectPath: payloadAttributes.version
factoryClassName: CP1

While testing the Otcs file with the test etc-test project, an error occurred as below,
ar.ndc_21_3_4.IATAAirShoppingRQ_org.iata.iata._2015._00._2018_1.airshoppingrq.AirShoppingRQ.otcs

529 [main] INFO o.o.compiler.OtcCodeGeneratorImpl - Starting Source-Code generator. Please wait.......
560 [main] INFO o.o.compiler.OtcCodeGeneratorImpl - Source-Code generation completed in 30.689166 millis.
633 [main] INFO o.o.compiler.OtcsCompilerImpl - Completed 1/1 OTC compilation(s), Failed : 0/1. in 159.718292 millis.
633 [main] INFO o.o.compiler.OtcsCompilerImpl - Compiling source-code files. Please wait.......
//Users/sabarishr/ARR_Projects/OTC/otc/otc-home/src/AirShopping/CP1.java:28: error: cannot find symbol
payloadAttributes.setVersion(new BigDecimal("18.1"));

                                 ^

symbol: class BigDecimal
location: class AirShopping.CP1
2359 [main] ERROR o.o.compiler.OtcsCompilerImpl -
org.otcframework.compiler.exception.OtcCompilerException: Source code compilation failed.
While compiling the Otcs file, corresponding java source code is generated for each command etc, while debugging the same found the import for BigDecimal datatype missing, generated source is given below
package AirShopping;
import org.otcframework.common.engine.indexer.dto.IndexedCollectionsDto;
import org.iata.iata._2015._00._2018_1.airshoppingrq.IATAPayloadStandardAttributesType;
import ar.ndc_21_3_4.IATAAirShoppingRQ;
import java.util.Map;
import org.iata.iata._2015._00._2018_1.airshoppingrq.AirShoppingRQ;
public class CP1 {
public static void execute(IATAAirShoppingRQ iATAAirShoppingRQ, IndexedCollectionsDto sourceICD,
		AirShoppingRQ airShoppingRQ, IndexedCollectionsDto targetICD,
		Map<String, Object> data) {

	IATAPayloadStandardAttributesType payloadAttributes = airShoppingRQ.getPayloadAttributes();
	if (payloadAttributes == null) {
		payloadAttributes = new IATAPayloadStandardAttributesType();
		airShoppingRQ.setPayloadAttributes(payloadAttributes);
	}
	payloadAttributes.setVersion(new BigDecimal("18.1"));
	return ;
}

}

This issue is fixed and is available in 2.7.0 release.


Incorrectly parsing the TGT file causing the token to expire.

This address issue#: 67
This change corrects the regex expression that incorrectly parsed the TGT file and therefore the token would expire.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thank you for your contribution @fordth . We'll review it and let you know if we have any questions

@fordth We have new logic for regex, could you please resolve the merge conflicts for the Dockerfiles

@fordth , Could you please rebase your PR


target feature( self._state['features']  in code or Template image in paper) never update  during the whole tracking time?

hi guys,
great work and thanks for the code.
I read the paper and code, and notice that target feature( self._state['features']  in code or Template image in paper) never update  during the whole tracking time? did I miss something? because in some case, the object appearance (feature) changes.

@xiexie123 Your observation is right. As you mentioned, we didn't delve into the topic of model updating in our work (for this topic you can refer to papers such as  LTMU from Prof. Dong Wang's group), and the template of a typical SiamFC++ change does not update during tracking.
During training, the tracker model is fed with different pair of template & search samples whose appearance changes over time, and thus gain the ability to deal with appearance change even with a static template.
However, some heuristics are feasible to achieve this, such as doing an EMA over the template.

@xiexie123 Your observation is right. As you mentioned, we didn't delve into the topic of model updating in our work (for this topic you can refer to papers such as LTMU from Prof. Dong Wang's group), and the template of a typical SiamFC++ change does not update during tracking.
During training, the tracker model is fed with different pair of template & search samples whose appearance changes over time, and thus gain the ability to deal with appearance change even with a static template.
However, some heuristics are feasible to achieve this, such as doing an EMA over the template.

ok I see, Thanks for your quick reply.

Closed as replied. Feel free to reopen.


Should you get t1.micro instances by default?

By default, a machine resource gives you an Ubuntu ami-f1ce8bc1 m1.small instance. Would it be better to make this a t1.micro, so folks can take advantange of free tier usage?
If the user is using the default, she may likely be just experimenting with gettings things off the ground, and may not benefit from an m1.small, and may not want to spend the extra money on it.

Yes.  t1.micro should be the default.  I'm super surprised it isn't.

Possibly it should be t2.micro instead
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts_micro_instances.html

A couple of caveats with defaulting to t2.micro - if you see http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/t2-instances.html t2 instances can only be launched in a VPC - ec2-classic is not supported. They also force you to use HVM ami's.

Is there much cost difference? I can imagine defaulting everything to vpc with public ip or some such ...
Apologies for asking something I could do with a calculator and some research, but I'm out this week and shirt on research cycles :)

t2.micro is cheaper than t1.micro in most regions, and is what Amazon advertize as being in their free tier.

t1 instances are considered 'previous generation' and will likely go away altogether at some point.

Closing because master has t2.micro as default


Fix list max results

PR Checklist

[x] A description of the changes is added to the description of this PR.
[ ] If there is a related issue, make sure it is linked to this PR.
[ ] If you've fixed a bug or added code that should be tested, add tests!
[ ] If you've added or modified a feature, documentation in docs is updated

Description of changes
Added bugfix for list --max_results using PagedListingHelper as recommended here.
cc: @vikrantpuppala

Thank you! could you fix the unit tests please?

@vikrantpuppala Fixed.

thank you, however, the tutorial tests seem to be failing now, can you please check why?

The error is:

Waiting... Failed to connect to the server: HTTPConnectionPool(host='localhost', port=8081): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f66590a9100>: Failed to establish a new connection: [Errno 111] Connection refused'))

I just tested this - working fine in local. I will take a look.

Decided to just do an empty commit to retrigger the workflow - seems like it's working now. Must have been some intermittent issue.

@haogang to merge


String.format bug in SQLServerConnector

I'd expect Java String formatting  to use '%s' as a placeholder instead of {}. At least this currently breaks the SQL Server profiling part on our end.  :man_shrugging:
https://github.com/mitdbg/aurum-datadiscovery/blob/2c873c914956ca40ebfd53ac2f91ac5f635bd7b4/ddprofiler/src/main/java/inputoutput/connectors/SQLServerConnector.java#L90

nice catch. happy to merge a pull request with a fix!


Update Project Site

This closes #23, closes #25, closes #27.
Site with these changes can be viewed at  https://samuelfangjw.github.io/tp/UserGuide.html.

Codecov Report

Merging #28 (6492da0) into master (ddfd64e) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #28   +/-   ##
=========================================
  Coverage     72.15%   72.15%
  Complexity      399      399
=========================================
  Files            70       70
  Lines          1232     1232
  Branches        125      125
=========================================
  Hits            889      889
  Misses          311      311
  Partials         32       32

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 ddfd64e...6492da0. Read the comment docs.


Tag images using semantic versioning

With CSI becoming GA in Kubernetes v1.13, it would be interesting to provide CSI driver developers with a mechanism to have their sidecar images always updated without having to be aware of new builds of those images.
A common way of achieving this is to tag images using semantic versioning. While we do use some sort of semantic versioning in our images, we currently don't overwrite any major and minor tags.
This is an example of issue where this would be helpful: https://github.com/kubernetes/kubernetes/issues/71378. In this example, I could simply use v1 and make sure I'd get all backward compatible changes for my image.
In summary, these are the steps necessary to automate on every build:

Create a new patch tag (existing patch tags can never be overwritten).
Overwrite the major and minor tags.
Overwrite the latest tag.

PS: I'm opening the issue here, but this would also apply for the other sidecar containers.
CC @saad-ali, @msau42, @jsafrane, @pohly, @lpabon

I like the idea, but there is one snag: besides updating to a new container image, updating the sidecar may also imply updating the RBAC rules that the container image depends on. Theoretically the developer who updates the deployment to a new image should also check and update the RBAC rules. In practice this probably never happened unless something stopped working :-/
I'm not sure whether this can be automated - probably not, because RBAC rules must be adapted to the actual deployment.
I'm undecided whether it is a better or worse to give developers to automatically update to a new image. It's good when the new image gives them a code-only bug fix and a bad thing if they miss a fix in the RBAC file or worse, the new code depends on RBAC changes and then the deployment breaks.

@pohly, thanks for looking into this. I'd expect that in the future a helm chart would be used to install/update the sidecar containers. This would solve the problem updating the RBAC rules.
I still think that versioning the images is beneficial, though.  From my experience, when different RBAC rules were required after an image update, a log message in the container accused the problem. In the other hand, outdated images have caused random problems very hard to debug (e.g., kubernetes/kubernetes#71378).

It's good when the new image gives them a code-only bug fix and a bad thing if they miss a fix in the RBAC file or worse

Just for the record, we currently have this problem with the v1.0-canary image.

Fabio Bertinatto<EMAIL_ADDRESS>writes:

I still think that versioning the images is beneficial, though.  From
my experience, when different RBAC rules were required after an image
update, a log message in the container accused the problem.

With that approach for updating the RBAC files you may miss more subtle,
security related fixes. For example, the permissions for
external-snapshotter were made a bit more restrictive in
https://github.com/kubernetes-csi/external-snapshotter/pull/56
That's not going to show up as a problem, so developers actively have to
check for such an update.

In the other hand, outdated images have caused random problems very
hard to debug (e.g., kubernetes/kubernetes#71378).

Shouldn't the first step when running into unexpected issues be to check
whether there are more up-to-date releases of the involved components?
It might be known issue that has been fixed already.
Just playing devil's advocate here. I'm still undecided myself and would
like to hear from others.

rbac changes should be in release notes then imo, nobody has been maintaining release notes recently though. Preventing users from auto-updating their images will not force them to read release notes, much less check RBAC rule changes, it will just annoy them. Users should be able to decide if they want to get auto-updates or not, they should have their own policy for auditing releases etc., but currently all they have access to is canary releases. Keeping latest tag up-to-date to least stable release, i.e. "3. Overwrite the latest tag." is IMO needed, rest is nice to have.
e.g. there is no v1.0.1 tag yet https://quay.io/repository/k8scsi/driver-registrar?tab=tags.

Automatically pushing/tagging images based on git tag is something we're looking to improve for the next release.
Currently, we automatically tag latest and "-canary"


Broken nightly link

After e0eeb0299798ba99e88ac5b7afd97c63aa2f3c6f, the build artifacts are not available. This makes the link in the README broken: https://nightly.link/palera1n/loader/workflows/build/main/palera1n.zip. Is the FTP server public, or are there any plans to re-include the build artifacts in the workflow?

https://static.palera.in/artifacts/loader/rootful/palera1n.ipa


Add routeLinkAttr function and handle the target=_blank case

We had no way of providing custom attributes for the link in routeLink, and adding target=_blank is sometimes useful if we want to open the link in another tab, like we do in the marketing site.
I have:

[ ] Based work on latest develop branch
[ ] Looked for lint in my changes with hlint . (lint found code you did not write can be left alone)
[ ] Run the test suite: $(nix-build -A selftest --no-out-link)
[ ] (Optional) Run CI tests locally: nix-build release.nix -A build.x86_64-linux --no-out-link (or x86_64-darwin on macOS)

Is there ever a case when target blank would be used with a route-altering
link? Wouldn’t you just use a plain  with the target attribute and
not worry about routing on the page you’re leaving?
On Thu, Apr 2, 2020 at 3:09 PM Elliot Cameron<EMAIL_ADDRESS>wrote:

@3noch commented on this pull request.
In lib/route/src/Obelisk/Route/Frontend.hs
https://github.com/obsidiansystems/obelisk/pull/687#discussion_r402548217
:

(e, a) <- element "a" cfg w

setRoute $ r <$ domEvent Click e

when (not targetBlank) $ setRoute $ r <$ domEvent Click e

Is there a way to factor out the targetBlank check so we only have to do
it once? Perhaps scrollToTop could be moved into routeLinkImpl?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/obsidiansystems/obelisk/pull/687#pullrequestreview-386718182,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABYWSRSI35DED7DKQZU3XBTRKTPFLANCNFSM4LZTBDVA
.

@ali-abrar I think the answer is "yes...but". We have a policy for routeLink in that "It must be indistinguishable from <a href>. And here it definitely has surprising behavior in that it just completely ignores the target="_blank" but only after hydration! So I think the only reasonable thing to do is make it not weird....even though that itself is weird for different reasons. But at least it's consistent.

To put it differently: routeLink should not force you to think that hard about your links. It should "Just Work".


[FEATURE] Transform index name on autofollow

It would be good to be able to change the destination index name with the autofollow replication to avoir any collision with any index on the follower cluster.
A good idea will be to be able to add a prefix to the destination index

This seems really useful! Are there any additional details we can add regarding the end user experience improvement? It might help to walk through an example before and after where a user would have had a collision. Then how they used this feature (edited a config or called a specific API) to modify the index name to prevent the collision.

Currently, Autofollow initiates replication for indices under the same name.
It might be good idea to have optional param rename_pattern under the autofollow API and based on use-case, customers will be able to configure the replacement name.
This has to optional param and a deliberate action from customer - For the failover situation, when follower cluster has stopped replication on all the indices, it might not have same indices as leader cluster and client configuration has to change to send requests to the right indices.
@df-cgdm Let me know, If this addresses the concern regarding the collision of index names.

Removing v2.1.0 tag as the feature in planned in future releases.

Currently, Autofollow initiates replication for indices under the same name. It might be good idea to have optional param rename_pattern under the autofollow API and based on use-case, customers will be able to configure the replacement name.
This has to optional param and a deliberate action from customer - For the failover situation, when follower cluster has stopped replication on all the indices, it might not have same indices as leader cluster and client configuration has to change to send requests to the right indices.
@df-cgdm Let me know, If this addresses the concern regarding the collision of index names.

yes it is

I have similar use case as @df-cgdm.
The use case is: Both the leader and the follower cluster are having same indices and aliases (names) but they are collecting different data based on the region they are located in. And indices in leader cluster are to be replicated on follower cluster but the replication fails because of duplicate index, alias error. Currently we are working around it to make the index, aliases unique but its kind of a lot work with all use cases.
I went through the Elasticsearch v7.10 docs on autofollow api and found setting "follow_index_pattern" which is described as "the name of follower index. The template {{leader_index}} can be used to derive the name of the follower index from the name of the leader index."
The request with this setting goes like this:
PUT /_ccr/auto_follow/<auto_follow_pattern_name>
{
  "remote_cluster" : "<remote_cluster>",
  "leader_index_patterns" :
  [
    "<leader_index_pattern>"
  ],
  "follow_index_pattern" : "<follow_index_pattern>"
}

Also, I came across similar requirement on opensearch forum that mentions this setting.
Can we have something similar implemented in OpenSearch cross-cluster replication? It would help a lot in resolving the duplicate index errors.
In addition to that, can we also have an option to not replicate the aliases that point to the leader index? or an option to set the follower index's aliases to other aliases on follower cluster?
Thanks.

We are also interested into this feature as we have same use-case where we need to change the name of the replicated index to not have naming collision.

we are also interested in this feature , is there any progress on this feature?

any update?


chore: upgrade charts

updated chart jx3/lighthouse from 1.0.3 to 1.0.4

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign macox
You can assign the PR to them by writing /assign @macox in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@jenkins-x-bot-test: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

kube
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test kube

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

@jenkins-x-bot-test: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

kube
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test kube

gsm
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test gsm

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

@jenkins-x-bot-test: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

kube
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test kube

gsm
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test gsm

vault
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test vault

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

/retest

@jenkins-x-bot-test: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

kube
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test kube

gsm
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test gsm

vault
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test vault

gsm-kapp
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test gsm-kapp

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

/test gsm-kapp

@jenkins-x-bot-test: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

kube
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test kube

gsm
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test gsm

gsm-kapp
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test gsm-kapp

vault
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test vault

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

@jenkins-x-bot-test: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

kube
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test kube

gsm-kapp
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test gsm-kapp

vault
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test vault

gsm
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test gsm

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

@jenkins-x-bot-test: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

gsm-kapp
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test gsm-kapp

vault
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test vault

gsm
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test gsm

kube
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test kube

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

@jenkins-x-bot-test: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

vault
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test vault

gsm
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test gsm

kube
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test kube

gsm-kapp
2f4c16982c8c867f94f06c34f5294684b7159242
link
/test gsm-kapp

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.


Examples should use token authentication

The Discord API clearly states that bots should use token authentication, not user/password, in order to connect. Since the examples in this repo are bots, they should really use token authentication!
Note that the example in the readme does show token auth, but the examples (even for the same ping/pong bot) are on login auth.

The examples need cleaning up anyways... 6 months old :|


update atlassian-plugin.xml

#17 add jira data center compatible flag

Awesome, thanks for the PR!


creating NSG rule with multiple ports is not accepted

I want to create an NSG rule for port 80 and 443.
I can do that with the Azure portal web UI (it allows me to specify multiple comma-separated ports).
Then I want to do that with the az cmdline, but it refuses multiple ports :
az network nsg rule create -g rg-d03-dev-pcfwesteurope-01 --nsg-name nsg-d03-we-pcfops-01 --name allow_lb_80_443 --priority 150 --protocol TCP --access Allow --direction Inbound --source-port-ranges '' --source-address-prefixes '' --destination-port-ranges '80 443' --destination-address-prefixes <IP_ADDRESS>
Security rule has invalid Port range. Value provided: 80 443. Value should be an integer OR integer range with '-' delimiter. Valid range 0-65535.
Looking at the help of the az cmd, it tells me it should be possible ("Space-separated list of ports or port ranges between 0-65535"):
az network nsg rule create --help
Command
az network nsg rule create : Create a network security group rule.
Arguments
--name -n           [Required] : Name of the network security group rule.
--nsg-name          [Required] : Name of the network security group.
--priority          [Required] : Rule priority, between 100 (highest priority) and 4096 (lowest
priority). Must be unique for each rule in the collection.
--resource-group -g [Required] : Name of resource group. You can configure the default group
using az configure --defaults group=<name>.
--access                       : Allowed values: Allow, Deny.  Default: Allow.
--description                  : Rule description.
--direction                    : Allowed values: Inbound, Outbound.  Default: Inbound.
--protocol                     : Network protocol this rule applies to.  Allowed values: *, Tcp,
Udp.  Default: *.
Destination Arguments
--destination-address-prefixes : Space-separated list of CIDR prefixes or IP ranges.
Alternatively, specify ONE of 'VirtualNetwork',
'AzureLoadBalancer', 'Internet' or '*' to match all IPs.
Default: .
--destination-asgs             : Space-separated list of application security group names or
IDs.
--destination-port-ranges      : Space-separated list of ports or port ranges between 0-65535.
Use '' to match all ports.  Default: 80.
<<<>>>
How can I specify multiple ports using the cmdline?

Space-separated list (should work): --ports 80 443
String with space in it (will not work): --ports '80 443'

Tell me what is wrong.
Space-separated list not work.
az network nsg rule create -n TempRule --nsg-name MyNSG --priority 900 -g MyRG --protocol Tcp --destination-address-prefixes in.my.ip.addr --destination-port-ranges 80 443 --source-address-prefixes * --source-port-ranges * --access Allow

response.
Security rule has invalid Port range. Value provided: Boostnote. Value should be an integer OR integer range with '-' delimiter. Valid range 0-65535.

version.
az --version
azure-cli (2.0.50)

acr (2.1.8)
acs (2.3.11)
advisor (2.0.0)
ams (0.3.0)
appservice (0.2.6)
backup (1.2.1)
batch (3.4.1)
batchai (0.4.4)
billing (0.2.0)
botservice (0.1.1)
cdn (0.2.0)
cloud (2.1.0)
cognitiveservices (0.2.3)
command-modules-nspkg (2.0.2)
configure (2.0.19)
consumption (0.4.0)
container (0.3.8)
core (2.0.50)
cosmosdb (0.2.3)
dla (0.2.3)
dls (0.1.4)
dms (0.1.1)
eventgrid (0.2.0)
eventhubs (0.3.1)
extension (0.2.3)
feedback (2.1.4)
find (0.2.12)
hdinsight (0.1.0)
interactive (0.4.0)
iot (0.3.4)
iotcentral (0.1.3)
keyvault (2.2.6)
lab (0.1.3)
maps (0.3.2)
monitor (0.2.6)
network (2.2.8)
nspkg (3.0.3)
policyinsights (0.1.0)
profile (2.1.2)
rdbms (0.3.4)
redis (0.3.2)
relay (0.1.2)
reservations (0.4.0)
resource (2.1.6)
role (2.1.9)
search (0.1.1)
servicebus (0.3.2)
servicefabric (0.1.7)
signalr (1.0.0)
sql (2.1.5)
storage (2.2.4)
telemetry (1.0.0)
vm (2.2.7)

Python location '/opt/az/bin/python3'
Extensions directory '/home/mino_yoshinori/.azure/cliextensions'

Python (Linux) 3.6.5 (default, Nov  1 2018, 22:27:30)
[GCC 7.3.0]

Legal docs and information: aka.ms/AzureCliLegal

Judging by the weird error message and the fact that you are on Linux, my first though is you need to quote the stars "*"


Fix to the #549

This is small fix to the issue #549
Type of PR

[ #549] Bugfix

Checklist

[ ] Compiles and passes lint tests
[ ] Properly formatted
[ ] Tested on desktop

Screenshots

Thanks @ashishdawale20! But this PR needs more work. As is, it won't fix the likes of 2.00% or 0.20%. A better approach would be to trim trailing zeros after the decimal.

@shuklaayush - Done. trimmed trailing zeros

@shuklaayush  - Does it look good?


Update sdk

Several changes:

move the workflow to node18 and explicit python3
Change to devDependencies to scope the usage of the packages

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

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

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

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

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

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


Set a minApiVersion on a widget-by-widget basis

As more features get added to the plugin API, more statistics may be added to take advantage of the increased data. However, this also poses the risk of people still using older versions which cannot track these statistics. As it stands, there is no check to ensure players are using a compatible version of the plugin API.
There exists a minApiVersion when registering a plugin, but for the purposes of this project, this is not a good fit. Say, a player wishes to track time spent in parks. However, they are using the previous version of the plugin API after we updated to track a brand new statistic. Well, the player doesn't need to track that new statistic, but we are locking them out despite time tracking still having support.

The proposed solution is to make a new class: UnsupportedStatistic. It will extend Statistic so it may be returned in its place when being added to the StatController. It should have a very basic definition, where the only thing needed is the API version that needs to be supported. It should override the get widget() method to display to the player what version of OpenRCT2 is needed to track the statistic. Priority should be taken to main releases (i.e. v0.4.1 or v0.3.0), and only if there hasn't been an main release should a develop version be suggested (and for simplicity, suggesting the most recent develop version should be fine).

Hey I found this issue via the linked OpenRCT2 issue. I'd like to share that there is also a context.apiVersion, which you can use to handle different API versions from within your plugin. You can use it to have different behaviour for older clients, or to show them a message box to tell them to update (like the RideVehicleEditor does here). 🙂


Output metrics per message of a batch sent

Currently there is a standard metric for output.send.success, this is per message batch rather than per message, so it would be useful to complement this metric with something like output.parts.send.success.

Implemented: https://github.com/Jeffail/benthos/commit/42246bec5b2482b0be7cbfbcae1182654ed0c464


NodeDssSignaler: CO_GetAndProcessFromServer(): set timeSincePollMs = …

…PollTimeMs - 1f after receiving a valid message so that the next message is received asap.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: simonchiarel sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.


[Feature] syntax highlighting on code blocks

From https://github.com/mcndt/obsidian-note-sharing/discussions/2:
Code/pre block syntax highlighting would be a welcomed feature for myself and (I assume) other developers.
example: https://noteshare.space/note/cl6h0wmu1100201mmaukatezp#-EpcJipLRUrjttQiQ8Iu_UHypWLLez0wIjb2GLHkgzU
Very well-thought out service you've created here.

Solved with PR #7


codegen: fix generic input parameters

Generic parameters are not yet supported so we use the unsafe.Pointer to let the user pass any parameter it wants. We were not taking this into account on function input parameters and we were wraping the unsafe.Pointer value again in another unsafe.Pointer, which caused errors for some users.
fixes #92

@Cartermel could you please validate that this fixes your issue before we merge this PR?


Erlang/Elixir tabs not working

What happened? Describe the problem that occurred.
Go to Getting Started for Erlang. Click on Elixir tab above code example. Nothing happens
What did you expect would happen?
All or at least this one code block switched to Elixir version
What is the name + path of the page where you encountered the issue? The
https://opentelemetry.io/docs/instrumentation/erlang/getting-started/
What browser, OS, and platform were you using when you encountered the
problem?
Arc browser, macos
Additional context: looks like was already mentioned in #1772

thanks for reporting


IOTPROT-986 handle re-send in block-wise transfer.

Handle re-send in block-wise transfer.
Old block-wise implementation didn't handle re-sends, therefore the block transaction would fail unnecessarily.
Bump commons.io from 2.5 to 2.7 due to vulnerability.

Added a few more tests in https://github.com/PelionIoT/java-coap/pull/45 because I noticed that I had accidentally modified the tests so that even the old implementation passed with the tests in this PR.


Feature request: code action to add static keyword

This code action is available with Omnisharp, maybe Roslyn has the same capability?
e.g.
namespace csharp;

public class Program
{
    public void Main()
    {
        var test = Test();
        Console.WriteLine(test);
    }

    private List<int> Test()
    {
        return [];
    }
}

I have no idea🤷♂ You can maybe check the README for some options, or this: https://github.com/dotnet/vscode-csharp/blob/main/test/lsptoolshost/unitTests/configurationMiddleware.test.ts
This issue is more suited for the server itself, as I don't do anything with the code actions


eccodes: 2.12.5 -> 2.23.0

Motivation for this change
Update to eccodes 2.23.0. Perl is now required as a dependency since some version in between.
Things done

Built on platform(s)

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

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

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

[X] Fits CONTRIBUTING.md.

nixpkgs-review happy, macos 10.15 & nixos x86_64

Moved perl to nativeBuildInputs and formatted with nixpkgs-fmt, let me know if there is anything else I should do.


Howto: cause short-circuiting selects to return collected (putval) values

Summary: how can an implementation of select* get access to the collection collect-val builds?

ONLY is like ALL, except it is to complain whenever it descends into a non-singleton collection. Currently, it complains by throwing. Instead, I want it to return a special value, as that will allow a better error message (etc).
Here's an implementation that doesn't work:
(extend-type OnlyVariantType
  sp/StructurePath
  (select* [this structure next-fn]
    (cond (not (coll? structure))
          (boom! "%s is not a collection" structure)

          (not= 1 (count structure)) ; TODO: make this work for infinite collections
          :return-some-value-that-indicates-truncation
          ; (->Truncation explain/err:only-wrong-count structure))

          :else
          (next-fn (first structure))))
  (transform* [& _] (no-transform!)))

This works as you'd expect for a simple select:
user=> (select [:a ONLY] {:a [3]})
[3]
user=> (select [:a ONLY] {:a []})
:return-some-value-that-indicates-truncation

... and for a successful traversal with a select that uses putval:
user=> (select [(putval "HI!") :a ONLY] {:a [3]})
[["HI!" 3]]

However, I was initially surprised when it didn't work for a short-circuited traversal:
user=> (select [(putval "HI!") :a ONLY] {:a []})
:return-some-value-that-indicates-truncation

The reason is pretty clear: whatever is the last step in a traversal has to conj the leaf/return value onto the collected values. But for the life of me, I can't find an accessor that a select* function can call. (It would also be convenient, though not necessary, for the select* to be able to "pass" a modified collection to the rest of the selector path.)

It doesn't work because select is meant to only return what is fully navigated to – short-circuiting the navigation with your own results isn't a supported use case. Thinking through it, I'm not sure how that would even be implemented without greatly affecting the efficiency of all navigations.
 3])
user=> (select [(putval "HI!") :a (only-or-complain)] {:a []})
(["HI!" :NOT-SINGLETON])
user=> (select [(putval "HI!") :a (only-or-complain)] {:a 1})
(["HI!" :NOT-COLLECTION])

The navigation path you want following successful navigation into the singleton is specified as the argument to only-or-complain. This formulation works for transforms as well as its just the composition of other navigators.

Given that I've ended up writing my own StructurePath-extending types for everything except predicates, I've decided it makes most sense to skip the collect-val-style selector elements and do everything inside the select* functions. Those functions aren't passed values to traverse, but rather structures of my devising, like:
{:whole-value ...original structure...
:path []   ; grows as each element processes it
;leaf-value ..original-structure.. ; gets narrowed as `select*` processes elements;
}

I was previously kludging around this by preprocessing selectors with code like this:

```clojure
(defn- surround-with-index-collector [elt]
  (vector (specter/view #(map-indexed vector %))
          elt
          (specter/collect-one specter/FIRST)
          specter/LAST))

That worked OK for a while, but I hill-climbed to a local maximum that didn't give me the control I needed.
I do intend to keep working on the book, so I will eventually query you about how out-of-band collecting works. I confess I can't figure it out.

If value collection or late-bound parameterization is used, regular structure paths get lifted into a format that takes in more arguments. These "rich" paths pass along collected values as well as late-bound parameter info. See https://github.com/nathanmarz/specter/blob/master/src/clj/com/rpl/specter/impl.cljx#L299
Specter could expose that that interface directly, but I'm hesitant because it seems that should be kept as  an implementation detail. I also have no use cases for that functionality to justify it.
Good to hear you will continue working on the book. Happy explain anything you need to know about Specter, so feel free to ping me. Since you started Specter got a lot of new capabilities.


Latest update breaks  by entering unescaped sequences in the buffer.

After the latest update when I press  to select a completion the following gets entered in the buffer.
"secompe#confirm({ 'keys': '', 'select': v:true })", { expr = true })"
Did a configuration setting change?

This seems to happen if you have setup lspconfig with capabilities and then disable the nvim-lsp source in nvim-compe. So this might be a configuration problem on my part. Closing the issue.

This issue was caused by vim-endwise plugin. In case someone else encounters this problem, just disable the plugin.


Attempted import error: 'Codepen' is not exported from '@carbon-platform/icons'

https://github.com/carbon-design-system/carbon-platform/runs/6840873462?check_suite_focus=true#step:6:250
Stack trace from build:
./components/mdx-icon/mdx-icon.js
Attempted import error: 'Codepen' is not exported from '@carbon-platform/icons' (imported as 'Codepen').
Import trace for requested module:
./components/mdx-icon/index.js
./components/mdx/components.js
./components/mdx/index.js
./pages/_app.js

Hey team! Please add your planning poker estimate with ZenHub @alisonjoseph @jdharvey-ibm

https://github.com/ionic-team/ionicons/blob/main/src/svg/logo-codepen.svg


envoy consume high memory but heap profiler can't report cause

Bug Description

some application's sidecar consume high memory (300M+)

{   "allocated": "253959744",   "heap_size": "262422528",   "pageheap_unmapped": "0",   "pageheap_free": "761856",   "total_thread_cache": "3565136",   "total_physical_bytes": "266485760"  }
dump heap follow Analyzing Istio Performance,use pprof to analysis ,but can't found high memory consumption

Version
control plane:
$ istioctl version
client version: 1.10.4
control plane version: 1.10-dev-b166f0c30252e24cd97a424835556dc4b7de7b25
data plane version: none
$ kubectl version --short
Client Version: v1.18.9
Server Version: v1.18.9

data plane:
$ istioctl version
client version: 1.10.4
control plane version: 1.10-dev-b166f0c30252e24cd97a424835556dc4b7de7b25
data plane version: 1.10-dev (150 proxies)
$ kubectl version --short
Client Version: v1.18.1
Server Version: v1.18.1

Additional Information

netstat -a , find about 100 UDS
netstat.txt
curl localhost:15000/clusters ,localhost:15000/listeners. normal
clustersAndListeners.txt
the pprof file
profile.pb.gz
not all my application occur this problem
use  primary-remote deployment model

Also suffer this issue.
We're using istio 1.13.4.

Hi Did you tried with options "pprof --alloc_space"? https://www.neteye-blog.com/2019/06/go-pprof-how-to-understand-where-there-is-memory-retention/ it has different outputs for me than default in_space ones.
Also using "-c dbg" when building envoy gives you the binary named "envoy.full" that contains more info. https://github.com/envoyproxy/envoy/blob/main/bazel/README.md

Seem like have the same problem.
In my case, envoy has unexpected high memory usage, and the memory usage shown from pprof is much less than the one from top.

memory metrics

istio-proxy@xxx:/$ curl localhost:15000/memory
{
 "allocated": "14768816",
 "heap_size": "166338560",
 "pageheap_unmapped": "73752576",
 "pageheap_free": "9420800",
 "total_thread_cache": "14163152",
 "total_physical_bytes": "95993856"
}

alloc_space

inuse_space

Hi Did you try with options "pprof --alloc_space"? https://www.neteye-blog.com/2019/06/go-pprof-how-to-understand-where-there-is-memory-retention/ it has different outputs for me than default in_space ones. Also using "-c dbg" when building envoy gives you the binary named "envoy.full" that contains more info. https://github.com/envoyproxy/envoy/blob/main/bazel/README.md FYI envoyproxy/envoy#21923

I ran into the same issue, pprof show much less memory than actual usage.
We need to reopen this issue.

Heap profiler doesn't dump a snap-shot of the current memory of a process, instead, it just tracks memory allocation such as malloc, calloc, realloc, or, new. So what we see in pprof is the allocated history of each method, the size is not the same as the current memory hold by a process.


Add docker run/create support multiple volume driver

Signed-off-by: Lei Jitang<EMAIL_ADDRESS>This is a original design of support multiple volume driver on docker run/create cli and waiting for some feedback from the community.
The driver should be a part of volume identifier, I think the user should aware what driver the volume used, since different driver have different feature and store the data in different place. In this way user can use multiple volume driver in a single docker run/create cli and
different volume driver can have the same volume name.
Use the sytax name@driver:/dest as the volume identifier as @srust 's proposal.
Here is the example.
[lei@fedora ~]$ docker run -v test@convoy:/data -v test:/test busybox
[lei@fedora ~]$ docker volume ls
DRIVER              VOLUME NAME
convoy              test
local               test

If no driver specified in the volume identifier, use default driver which is specified by --volume-driver, if no, use default local
the docker volume cli should use name@driver, if no driver specified, use default local
[lei@fedora ~]$ docker volume inspect test
[
    {
        "Name": "test",
        "Driver": "local",
        "Mountpoint": "/var/lib/docker/volumes/test/_data"
    }
]
[lei@fedora ~]$ docker volume inspect test@convoy
[
    {
        "Name": "test",
        "Driver": "convoy",
        "Mountpoint": "/var/lib/convoy/devicemapper/mounts/0f1c1fc2-21e3-4f83-99b1-9c23b9be649b"
    }
]

For more information see #15997

/cc @cpuguy83 @calavera

-1 on having the driver name in the reference.

Sorry, also -1 on having the driver name appear in the reference.
To give a bit of explanation: we'd ideally like the driver to use to be part of a "late-binding" definition, potentially defined by the operator rather than by the client starting the container. For example, a volume labelled "red" would be managed by driver "square".
We may or may not pursue down this road, but we definitely would like to avoid drivers to appear here. Sorry!


jupyterhub - the sequel

Motivation for this change
@ixxie got jupyterhub 99% packaged in #31871; this just puts the finishing touches in place.
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

@disassembler - are the changes in your review still requested or do you agree with @FRidh?

This PR has to resolve conflicts with the master branch.

@disassembler, @FRidh, @orivej - I merged this PR back into mine (https://github.com/NixOS/nixpkgs/pull/31871) and made the requested changes.


Too long training time (36 hours for a single epoch on Phototourism dataset using NVIDIA V100 single GPU of 32GB)

For training on scenes of the phototourism dataset (Pantheon exterior without image downscaling) using an NVIDIA Tesla V100 GPU of 32 GB memory, it is taking me 36 hours for a single epoch. Considering the default number of 20 epochs, it would take as long as 30 days for full training.
Could you please provide the exact specification of the GPU's used in your experiments? In the paper it is mentioned that 8 NVIDIA A100 GPU's are used. How much GPU memory it has? Does it have 80GB per GPU?

Hi, the GPU we used for experiments is 8 NVIDIA A100 GPU with 40GB GPU memory. However, you do not need to run all epochs, following the training time specified in the paper is sufficient.


PSD outfiles from PhotoshopAPI cannot be composited by psd-tools

Description
When using PhotoshopAPI (psapi) to read and write a PSD file without any modifications, the resulting file shows as a black screen when composited with psd-tools, despite opening correctly in Adobe Photoshop.
Minimal Reproduction
import psapi
from psd_tools import PSDImage

# Read and immediately write with psapi
file_src = psapi.LayeredFile.read('input.psd')
file_src.write('test.psd')

# Check with psd-tools
psdt = PSDImage.open('input.psd')
result = psdt.composite()  # Shows black screen

# Compare with original
psdt_original = PSDImage.open('input.psd')
result_original = psdt_original.composite()  # Shows correctly

Expected Behavior

The PSD file written by psapi should be readable and composite correctly in both Adobe Photoshop and psd-tools
The composited image should match the original file

Actual Behavior

The written PSD file opens correctly in Adobe Photoshop
The same file shows as a black screen when composited with psd-tools
The original file composites correctly in both applications

The issue appears to be in the fundamental PSD writing functionality of psapi, as it occurs even with a simple read-and-write operation with no modifications to the file content.

Edit
I think this is a bug with psd-tools not PhotoshopAPI: https://github.com/psd-tools/psd-tools/issues/396

Maybe still an issue here
When using PhotoshopAPI (psapi) to write a PSD file, psd-tools fails to detect the alpha channel in the saved file, resulting in a black screen when composited. The file opens correctly in Adobe Photoshop, suggesting the alpha channel data is present but possibly stored in a way that psd-tools cannot interpret.
Minimal reproduction
import psapi
from psd_tools import PSDImage

# Read and immediately write with psapi
file_src = psapi.LayeredFile.read('frame.psd')
file_src.write('frame_test.psd')

# Check with psd-tools
psdt = PSDImage.open('frame_test.psd')
result = psdt.composite()
# result should show black screen

# Compare with original
psdt_original = PSDImage.open('frame.psd')
result_original = psdt_original.composite()
# this should show correctly

alpha channel:
psdt.__repr__() returns 'PSDImage(mode=3 size=1080x1080 depth=8 channels=3)'
while psdt_original.__repr__() returns 'PSDImage(mode=3 size=1080x1080 depth=8 channels=4)'
Not sure if this is a psd-tools issue, or if there's some missing compatibility in the output of psapi for multichannel outputs.

Hey @kocopelly, happy to take a look. Let me try reproducing it!

Alright step one of the image being black is fairly trivial actually and a feature and not a bug. In the PSAPI we explicitly write the merged image result to be black to compress better. To make psd-tools discard this you can pass this flag:
psdt.composite(ignore_preview=True)
Now the alpha is still full white, will investigate what thats about

Ah I see, the additional psdt.composite(ignore_preview=True, force=True) flag addresses this.
If you are curious why we are writing out a composed image data section at all that is because unfortunately this has to be present for photoshop to be able to open the file so we just fill it with black

I confirmed this works on my end, let me know if that fixes it on your end too :)

Thanks for the quick response. ignore_preview=True removes the black layer, but even with force=True I still have some kind of channel mixup, where the image has a green tint. It's interesting because photoshop has no problem reading the file.

Looks like composite is giving a GRB instead of RGB. Easy enough for me to swap these in post. Do you think this is a psapi metadata thing that psd-tools is missing?

Hmm are you sure its not BGR instead? Either way I tested with the debugger and psd-tools does in fact recognize the channels correctly (and there is no additional metadata I am aware of)
Do you mind sharing your images if possible?

I think the issue could be in my image manipulation
conversion to/from PIL/PSAPI
import numpy as np
from PIL import Image
import psapi

def pil_from_psapi(psapi_layer):
    """Convert a psapi layer's image data to a PIL Image.

    Args:
        psapi_layer: A psapi ImageLayer object

    Returns:
        PIL.Image: The converted image in RGBA mode
    """
    # Get image data from psapi layer
    layer_data = psapi_layer.get_image_data()

    # Convert the channel dict to a proper numpy array
    channels = []
    for i in range(3):  # RGB channels
        channels.append(layer_data[i])
    if -1 in layer_data:  # Alpha channel if present
        channels.append(layer_data[-1])

    image_array = np.stack(channels)  # Now in (channels, height, width) format

    # Convert to PIL-friendly format (height, width, channels)
    image_array = np.moveaxis(image_array, 0, -1)

    # Create PIL image (specify RGBA mode if we have alpha)
    mode = 'RGBA' if len(channels) == 4 else 'RGB'
    return Image.fromarray(image_array, mode=mode)

def psapi_from_pil(pil_image):
    """Convert a PIL Image to psapi format, optionally updating an existing layer.

    Args:
        pil_image (PIL.Image): The source image (will be converted to RGBA if not already)
    Returns:
        numpy.ndarray: The image data in psapi format (channels, height, width)
    """
    # Ensure we're working with RGBA
    if pil_image.mode != 'RGBA':
        pil_image = pil_image.convert('RGBA')

    # Convert PIL to numpy array and split channels
    img_array = np.array(pil_image)

    # Create the properly ordered channels array
    channels = [
        img_array[..., 0],  # R (channel 0)
        img_array[..., 1],  # G (channel 1)
        img_array[..., 2],  # B (channel 2)
        img_array[..., 3]   # A (channel -1)
    ]

    # Stack channels in psapi format (channels, height, width)
    array_for_psapi = np.stack(channels).astype(np.uint8)

    return array_for_psapi

Does that look correct to you?

^ here's an example output. the inside image "hello" has been swapped in using those utility functions. Both the inside image and template show with the wrong colors.
Swapping BGR -> RGB fixes the inside image

Swapping GRB -> RGB fixes the outside image

This might not be much to go on, but if you have any guidance for converting between psapi, PIL, and CV2 for keeping channels straight, I would greatly appreciate it

Ah yes good old cv2. psapi and PIL both are RGB while cv2 is BGR (using for example cv2.imread).
You can thankfully just swap the two using cv2 directly:
image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

Ah sorry I misread your question. I got this setup to work on my end so its likely related to the CV2 stuff in some way:
import numpy as np
from PIL import Image
import cv2
import psapi
import os

def pil_from_psapi(psapi_layer) -> Image:
    """Convert a psapi layer's image data to a PIL Image.

    Args:
        psapi_layer: A psapi ImageLayer object

    Returns:
        PIL.Image: The converted image in RGBA mode
    """
    # Get image data from psapi layer
    layer_data = psapi_layer.get_image_data()

    # Convert the channel dict to a proper numpy array
    channels = []
    for i in range(3):  # RGB channels
        channels.append(layer_data[i])
    if -1 in layer_data:  # Alpha channel if present
        channels.append(layer_data[-1])

    image_array = np.stack(channels)  # Now in (channels, height, width) format

    # Convert to PIL-friendly format (height, width, channels)
    image_array = np.moveaxis(image_array, 0, -1)

    # Create PIL image (specify RGBA mode if we have alpha)
    mode = 'RGBA' if len(channels) == 4 else 'RGB'
    return Image.fromarray(image_array, mode=mode)

def psapi_from_pil(pil_image):
    """Convert a PIL Image to psapi format, optionally updating an existing layer.

    Args:
        pil_image (PIL.Image): The source image (will be converted to RGBA if not already)
    Returns:
        numpy.ndarray: The image data in psapi format (channels, height, width)
    """
    # Ensure we're working with RGBA
    if pil_image.mode != 'RGBA':
        pil_image = pil_image.convert('RGBA')

    # Convert PIL to numpy array and split channels
    img_array = np.array(pil_image)

    # Create the properly ordered channels array
    channels = [
        img_array[..., 0],  # R (channel 0)
        img_array[..., 1],  # G (channel 1)
        img_array[..., 2],  # B (channel 2)
        img_array[..., 3]   # A (channel -1)
    ]

    # Stack channels in psapi format (channels, height, width)
    array_for_psapi = np.stack(channels).astype(np.uint8)

    return array_for_psapi

if __name__ == "__main__":
    file = os.path.join(os.path.dirname(__file__), "tmp.psd")
    file_out = os.path.join(os.path.dirname(__file__), "tmp_out.psd")
    out = os.path.join(os.path.dirname(__file__), "tmp.png")

    file = psapi.LayeredFile.read(file)
    file_new = psapi.LayeredFile_8bit(psapi.enum.ColorMode.rgb, file.width, file.height)

    for layer in file.layers:
        image = pil_from_psapi(layer)
        image.save(out)

        layer_new = psapi.ImageLayer_8bit(psapi_from_pil(image), "a", width=layer.width, height=layer.height)
        file_new.add_layer(layer_new)

    file_new.write(file_out)

After monkeying around some more, I managed to fix by changing psapi_from_pil to switch to outputing GRB, then after composite, changing everything from GRB to RGB. I think my source image being swapped in was RGB, but for some reason my psd template was outputing GRB.
Anyway, thank you for the help.

Is there a way to check the channel name keys in psapi, so I can implement some auto-checks to my script?

Sort of I suppose, on the cpp side this is a lot more expressive but due to some pybind11 limitations we cant do the same on the python side.
What we can do though is get the channels with a specific type
layer[psapi.enum.ChannelID.red]

Keep in mind that this is the same as indexing though. I.e. index 0 will always be the red channel in an rgb image


job preference bug

Description
i set captain to always, HOS and cmo to medium and HOP to low
SOMEHOW i got chosen to be hop there was no cap during that time

Do you know the round id?

ok so different bug caused this

actual bug is a timezone difference (i think). basically i am role banned from playing, cap HOS and ward it is meant to end TOMORROW but somehow it says i can play AS them today which i still cant play as them, so the game says im still banned while my game says i can


New Data Insight article not showing on landing page

Charlie uploaded a new article to Data Insights last nite. I can see it when I'm inside Data Insights but it's not showing up on the website landing page.

I have just fixed it


build(examples): use app config file as template

Issue or need
See #533

Proposed changes
Same as #533 but for standalone templates
Also:

Uses [].map() trick to shorten duplicate calls to same function to initialize two vars

Quick reminders

🤝 I will follow Code of Conduct
✅ No existing pull request already does almost same changes
👁 Contributing docs are something I've taken a look at
📝 Commit messages convention has been followed
💬 TSDoc comments have been added or updated indicating API visibility if API surface has changed.
🧪 Tests have been added if needed. For instance, if adding new features or fixing a bug. Or removed if removing features.
⚙ API Report has been updated if API surface is altered.

#541  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @davidlj95 and the rest of your teammates on  Graphite