Issue Type
Others
Modules Involved
Documentation/Tutorial/Example
Have you reproduced the bug with SPU HEAD?
Yes
Have you searched existing issues?
Yes
SPU Version
最新
OS Platform and Distribution
ubunt 22.04
Python Version
3.8
Compiler Version
gcc 11
Current Behavior?
之前成功跑通了flax-lama-7b-split的例子，但是最近找了一个1T RAM的机器想尝试一下完整版的llama 的例子。
我已经按照其中的README中步骤在里面指定的地址下载了llama并且使用EasyLM转换成了flax版本，然而在运行的时候报错：
Traceback (most recent call last):
File "/xxx/miniconda3/envs/spu/lib/python3.10/site-packages/transformers/modeling_flax_utils.py", line 441, in load_flax_weights
state = from_bytes(cls, state_f.read())
File "/xxx/miniconda3/envs/spu/lib/python3.10/site-packages/flax/serialization.py", line 425, in from_bytes
state_dict = msgpack_restore(encoded_bytes)
File "/xxx/miniconda3/envs/spu/lib/python3.10/site-packages/flax/serialization.py", line 407, in msgpack_restore
state_dict = msgpack.unpackb(
File "msgpack/_unpacker.pyx", line 201, in msgpack._cmsgpack.unpackb
msgpack.exceptions.ExtraData: unpack(b) received extra data.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/xxx/miniconda3/envs/spu/lib/python3.10/site-packages/transformers/modeling_flax_utils.py", line 445, in load_flax_weights
if f.read().startswith("version"):
File "/xxx/miniconda3/envs/spu/lib/python3.10/codecs.py", line 322, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x92 in position 0: invalid start byte
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/xxx/xxx/flax_llama7b/flax_llama7b.py", line 58, in
pretrained_model = FlaxLLaMAForCausalLM.from_pretrained(model_path, config=config)
File "/xxx/miniconda3/envs/spu/lib/python3.10/site-packages/transformers/modeling_flax_utils.py", line 909, in from_pretrained
state = cls.load_flax_weights(resolved_archive_file)
File "/xxx/miniconda3/envs/spu/lib/python3.10/site-packages/transformers/modeling_flax_utils.py", line 454, in load_flax_weights
raise EnvironmentError(f"Unable to convert {resolved_archive_file} to Flax deserializable object. ")
OSError: Unable to convert /xxx/projects/open_llama_7b/flax_model.msgpack to Flax deserializable object.

看起来用的 python 3.10? 试一下 3.8？
@Ye-D

我重新安装了一个3.8的环境，一样的错误 @anakinxc

这个错误是 easylm 转 llama 本身有点问题，建议换个环境重新再跑一下 easylm 转换的过程看看

@tpppppub 我用3.8的环境重新跑了一遍easylm还是这个问题

Traceback (most recent call last):
File "/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/transformers/modeling_flax_utils.py", line 442, in load_flax_weights
state = from_bytes(cls, state_f.read())
File "/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/flax/serialization.py", line 425, in from_bytes
state_dict = msgpack_restore(encoded_bytes)
File "/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/flax/serialization.py", line 407, in msgpack_restore
state_dict = msgpack.unpackb(
File "msgpack/_unpacker.pyx", line 201, in msgpack._cmsgpack.unpackb
msgpack.exceptions.ExtraData: unpack(b) received extra data.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/transformers/modeling_flax_utils.py", line 446, in load_flax_weights
if f.read().startswith("version"):
File "/xxx/miniconda3/envs/spu_py38/lib/python3.8/codecs.py", line 322, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x92 in position 0: invalid start byte
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "flax_llama7b/flax_llama7b.py", line 58, in
pretrained_model = FlaxLLaMAForCausalLM.from_pretrained(model_path, config=config)
File "/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/transformers/modeling_flax_utils.py", line 910, in from_pretrained
state = cls.load_flax_weights(resolved_archive_file)
File "/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/transformers/modeling_flax_utils.py", line 455, in load_flax_weights
raise EnvironmentError(f"Unable to convert {resolved_archive_file} to Flax deserializable object. ")
OSError: Unable to convert /xxx/projects/open_llama_7b/flax_model.msgpack to Flax deserializable object.

@tpppppub 重新跑的easylm：
python ./convert_hf_to_easylm.py --checkpoint_dir /home/xxx/projects/open_llama_7b/ --output_file /home/xxx/projects/open_llama_7b/flax_model.msgpack --model_size 7b --streaming
checkpoint_dir: /home/xxx/projects/open_llama_7b/
output_file: /home/xxx/projects/open_llama_7b/flax_model.msgpack
model_size: 7b
streaming: True
Start convert weight to easylm format...
Convert weight to easylm format finished...
Start to save...
Save finished!!! take time:<PHONE_NUMBER>1852722 save path: /home/xxx/projects/open_llama_7b/flax_model.msgpack

@Ye-D  ，改了之后好像可以加载模型，但是会报错：
Run on SPU
Traceback (most recent call last):
File "flax_llama7b/flax_llama7b.py", line 179, in
outputs_ids = run_on_spu()
File "flax_llama7b/flax_llama7b.py", line 169, in run_on_spu
outputs_ids = ppd.device("SPU")(text_generation, copts=copts)(input_ids, params)
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 656, in call
args, kwargs = self.device._place_arguments(*args, **kwargs)
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 429, in _place_arguments
return tree_map(place, (args, kwargs))
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/jax/_src/tree_util.py", line 210, in tree_map
return treedef.unflatten(f(*xs) for xs in zip(*all_leaves))
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/jax/_src/tree_util.py", line 210, in
return treedef.unflatten(f(*xs) for xs in zip(*all_leaves))
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 427, in place
return Device.move(obj, self)
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 450, in move
return move_fn(dest, obj)
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 1240, in PYU2SPU
share_objs = obj.device(make_shares)(
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 499, in call
self.device.node_client.run(server_fn, *args, **kwargs),
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 249, in run
return self._call(self._stub.Run, fn, *args, **kwargs)
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 238, in _call
rsp_data = rebuild_messages(rsp_itr.data for rsp_itr in rsp_gen)
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 218, in rebuild_messages
return b''.join([msg for msg in msgs])
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 218, in
return b''.join([msg for msg in msgs])
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 238, in
rsp_data = rebuild_messages(rsp_itr.data for rsp_itr in rsp_gen)
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/grpc/_channel.py", line 540, in next
return self._next()
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/grpc/_channel.py", line 966, in _next
raise self
grpc._channel._MultiThreadedRendezvous: <_MultiThreadedRendezvous of RPC that terminated with:
status = StatusCode.UNAVAILABLE
details = "Socket closed"
debug_error_string = "UNKNOWN:Error received from peer  {grpc_message:"Socket closed", grpc_status:14, created_time:"2023-12-14T16:38:41.904485087+08:00"}"
这个错误的相关3pc.json的内容如下：
{
"id": "outsourcing.3pc",
"nodes": {
"node:0": "<IP_ADDRESS>:81920",
"node:1": "<IP_ADDRESS>:81921",
"node:2": "<IP_ADDRESS>:81922",
"node:3": "<IP_ADDRESS>:81923",
"node:4": "<IP_ADDRESS>:81924"
},
"devices": {
"SPU": {
"kind": "SPU",
"config": {
"node_ids": [
"node:0",
"node:1",
"node:2"
],
"spu_internal_addrs": [
"<IP_ADDRESS>:81930",
"<IP_ADDRESS>:81930",
"<IP_ADDRESS>:81930"
],
"runtime_config": {
"protocol": "ABY3",
"field": "FM64",
"enable_pphlo_profile": true,
"enable_hal_profile": true,
"fxp_exp_mode": 0,
"fxp_exp_iters": 5
}
}
},
"P1": {
"kind": "PYU",
"config": {
"node_id": "node:0"
}
},
"P2": {
"kind": "PYU",
"config": {
"node_id": "node:0"
}
}
}
}
因为这次使用的不是example里原始的配置，因此我为原始配置，之后pdd的init也不行了
Traceback (most recent call last):
File "./flax_llama7b.py", line 45, in
ppd.init(conf["nodes"], conf["devices"])
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 1110, in init
_CONTEXT = HostContext(nodes_def, devices_def)
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 1037, in init
self.devices[name] = SPU(
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 952, in init
results = [future.result() for future in futures]
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 952, in
results = [future.result() for future in futures]
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/concurrent/futures/_base.py", line 437, in result
return self.__get_result()
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/concurrent/futures/_base.py", line 389, in __get_result
raise self._exception
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/concurrent/futures/thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 249, in run
return self._call(self._stub.Run, fn, *args, **kwargs)
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 242, in _call
raise Exception("remote exception", result)
Exception: ('remote exception', Exception('Traceback (most recent call last):\n  File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 324, in Run\n    ret_objs = fn(self, *args, **kwargs)\n  File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 543, in builtin_spu_init\n    link = libspu.link.create_brpc(desc, my_rank)\nRuntimeError: what: \n\t[external/yacl/yacl/link/transport/brpc_link.cc:131] Fail to initialize channel, host=<IP_ADDRESS>:81930, err_code=-1\nstacktrace: \n#0 yacl::link::FactoryBrpc::CreateContext()+0x7f264b2b922e\n#1 pybind11::cpp_function::initialize<>()::{lambda()#3}::_FUN()+0x7f2649e1a524\n#2 pybind11::cpp_function::dispatcher()+0x7f2649df989e\n#3 PyCFunction_Call+0x4f5572\n\n\n'))

"node:0": "<IP_ADDRESS>:81920",
"node:1": "<IP_ADDRESS>:81921",
"node:2": "<IP_ADDRESS>:81922",
"node:3": "<IP_ADDRESS>:81923",
"node:4": "<IP_ADDRESS>:81924"

这些已经不是有效端口了

@anakinxc @Ye-D
我修改了配置如下：
{
"id": "outsourcing.3pc",
"nodes": {
"node:0": "<IP_ADDRESS>:7920",
"node:1": "<IP_ADDRESS>:7921",
"node:2": "<IP_ADDRESS>:7922",
"node:3": "<IP_ADDRESS>:7923",
"node:4": "<IP_ADDRESS>:7924"
},
"devices": {
"SPU": {
"kind": "SPU",
"config": {
"node_ids": [
"node:0",
"node:1",
"node:2"
],
"spu_internal_addrs": [
"<IP_ADDRESS>:7930",
"<IP_ADDRESS>:7931",
"<IP_ADDRESS>:7932"
],
"runtime_config": {
"protocol": "ABY3",
"field": "FM64",
"enable_pphlo_profile": true,
"enable_hal_profile": true,
"fxp_exp_mode": 0,
"fxp_exp_iters": 5,
"experimental_enable_inter_op_par": true,
"experimental_enable_intra_op_par": true
}
}
},
"P1": {
"kind": "PYU",
"config": {
"node_id": "node:0"
}
},
"P2": {
"kind": "PYU",
"config": {
"node_id": "node:0"
}
}
}
}
然后大约运行了5分钟左右，报错：
Run on SPU
Traceback (most recent call last):
File "./flax_llama7b.py", line 179, in
outputs_ids = run_on_spu()
File "./flax_llama7b.py", line 169, in run_on_spu
outputs_ids = ppd.device("SPU")(text_generation, copts=copts)(input_ids, params)
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 679, in call
results = [future.result() for future in futures]
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 679, in
results = [future.result() for future in futures]
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/concurrent/futures/_base.py", line 437, in result
return self.__get_result()
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/concurrent/futures/_base.py", line 389, in __get_result
raise self._exception
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/concurrent/futures/thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 249, in run
return self._call(self._stub.Run, fn, *args, **kwargs)
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 238, in _call
rsp_data = rebuild_messages(rsp_itr.data for rsp_itr in rsp_gen)
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 218, in rebuild_messages
return b''.join([msg for msg in msgs])
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 218, in
return b''.join([msg for msg in msgs])
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/spu/utils/distributed.py", line 238, in
rsp_data = rebuild_messages(rsp_itr.data for rsp_itr in rsp_gen)
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/grpc/_channel.py", line 540, in next
return self._next()
File "/home/xxx/miniconda3/envs/spu_py38/lib/python3.8/site-packages/grpc/_channel.py", line 966, in _next
raise self
grpc._channel._MultiThreadedRendezvous: <_MultiThreadedRendezvous of RPC that terminated with:
status = StatusCode.UNAVAILABLE
details = "Socket closed"
debug_error_string = "UNKNOWN:Error received from peer  {created_time:"2023-12-14T17:17:40.609971717+08:00", grpc_status:14, grpc_message:"Socket closed"}"

@gystar 可能3pc.json写的有点问题。应该是
"P1": {
"kind": "PYU",
"config": {
"node_id": "node:3"
}
},
"P2": {
"kind": "PYU",
"config": {
"node_id": "node:4"
}
}

@Ye-D @anakinxc 跑成功了，感觉Llama这个example还是有坑啊，提个pr吗

@gystar 欢迎提 pr 啊

@anakinxc 稍等两天忙完了再提


Use optimized assembly for hardware division

This implements the hardware divider usage directly in assembler.  The result is a significant speedup in the common (no state save required) case as well as a small one when a state save is required.
In truth, I'm not sure this specific variant is the best option (see below), because blocks of assembler are always hard to maintain.  The reason I ultimately decided on this variant was simply because division is common enough that having it be as fast as possible seemed worth the tradeoff of some gnarly code.  If I could have found a way to convince the compiler to eliminate the shims/prologues from the pure Rust implementation, then that would likely be superior: it would only sacrifice some performance in the less common save/restore case.
Requirements
This PR currently requires a nightly compiler.  This is because is makes use of global asm and because it depends on a change to compiler-builtins (rust-lang/rust#93696) to allow for the __aeabi_[u]idivmod intrinsics to be defined.  I believe both of these are expected in 1.60, so it probably can't be merged until then.
__aeabi_[u]idivmod definitions
The __aeabi_[u]idivmod functions are defined with a modified AAPCS ABI: they return results in both r0 and r1.  However, this can be emulated with plain AAPCS because of how it defines returning a 64-bit result.  Basically: just return a 64-bit result with the remainder in the high order 32 bits and AAPCS guarantees the correct register assignment.
Alternatives
I also experimented with several alternatives to improve performance.

Restructuring the Rust code to make it interact with the optimizer better.  The compiler generates nearly the same code as the optimized assembly for the actual division operation.  The main problem it exhibits is how it shuffles around the prologue/epilogue and wastes a bunch of time saving registers it doesn't need to in the common case.  So this approach tries to mitigate that.
Inline assembly this is basically a prototype of the global asm version with the only advantage being that it doesn't require a global symbol for the intrinsics disabled case.  It also interacts slightly better with the optimizer at times.

Some benchmarks, taken from a simple test program.

Size Change (bytes, negative is smaller)
opt-level = 's'
opt-level = 'z'
opt-level = '2'

Baseline
0
0
0

Restructured Rust
+16
+24
-64

Inline asm
-28
-24
-200

Global asm
-8
-4
-168

Single division (cycles, includes all overhead)
opt-level = 's'
opt-level = 'z'
opt-level = '2'

Baseline
51
63
51

Restructured Rust
45
57
35

Inline asm
38
38
38

Global asm
26
26
26

Fighting the optimizer
I was not able to figure out a way to make the s and z optimization levels eliminate the shims generated for the intrinsics without also duplicating the bodies when any modulus operators are used (which defeats the point of optimizing for size).  At opt-level ≥ 2, with a minor change to the intrinsics alias generation, the shims are correctly eliminated and reduced to a direct call to the divider function.  The global asm version avoids this by declaring the intrinsics in the assembler block.
This is the main source of the problem for the pure Rust variant when optimizing for size.  The other half for the pure Rust one is the equivalent prologue on the actual division function, but that's unavoidable as long as there's no way to disable Rust generating LLVM frame pointers for ARM Thumb.
The generated shims:
10002688 <__aeabi_uidivmod>:
10002688:       b580            push    {r7, lr}
1000268a:       af00            add     r7, sp, #0
1000268c:       f7ff ffa8       bl      100025e0 <rp2040_hal::sio::divider_unsigned>
10002690:       bd80            pop     {r7, pc}

10002692 <__aeabi_uidiv>:
10002692:       b580            push    {r7, lr}
10002694:       af00            add     r7, sp, #0
10002696:       f7ff ffa3       bl      100025e0 <rp2040_hal::sio::divider_unsigned>
1000269a:       bd80            pop     {r7, pc}

Add 11 cycles and 10 bytes each, compared to 24 cycles (no state save) for the actual interior division, so this is unfortunately not a trivial overhead.
Also note that the s and z levels seem to be kind of erratic in producing these shims: sometimes I was getting call sequences that look like: __aeabi_uidiv -> __aeabi_uidivmod -> rp2040_hal::sio::divider_unsigned on z but not on s (with the prologue/epilogue generated for each one).

I'm really impressed by this detailed analysis of the pros and cons of the different alternatives. Thank you!

With 1.60 released, this now builds on stable.  So it should be able to be merged now.


AttributeError: 'ChatVertexAI' object has no attribute 'set_run_config'

[x] I have checked the documentation and related resources and couldn't resolve my bug.
Describe the bug
I tried following https://docs.ragas.io/en/stable/howtos/customisations/gcp-vertexai.html to run RAGAS with Vertex AI but it's failing with AttributeError: 'ChatVertexAI' object has no attribute 'set_run_config'.
Ragas version: 0.1.5
Python version: 3.9.13
langchain-google-vertexai version: 0.1.2
Code to Reproduce
Share code to reproduce the issue
creds, _ = google.auth.default(quota_project_id=project_id)
ragas_vertexai_llm = ChatVertexAI(credentials=creds)

metrics = [
    context_precision,
    faithfulness,
    answer_relevancy,
]

for m in metrics:
m.__setattr__("llm", ragas_vertexai_llm)

# evaluate the dataset
result = evaluate(
	  eval_data,
	  metrics = metrics
)

Error trace
Traceback (most recent call last):
  File "<path-to-script>/test.py", line 37, in <module>
    result = evaluate(
  File "<path-to-pyenv>/.pyenv/versions/3.9.13/lib/python3.9/site-packages/ragas/evaluation.py", line 179, in evaluate
    [m.init(run_config) for m in metrics]
  File "<path-to-pyenv>/.pyenv/versions/3.9.13/lib/python3.9/site-packages/ragas/evaluation.py", line 179, in <listcomp>
    [m.init(run_config) for m in metrics]
  File "<path-to-pyenv>/.pyenv/versions/3.9.13/lib/python3.9/site-packages/ragas/metrics/base.py", line 118, in init
    self.llm.set_run_config(run_config)
AttributeError: 'ChatVertexAI' object has no attribute 'set_run_config'

Expected behavior
A clear and concise description of what you expected to happen.
I expected the evaluation to succeed.
Additional context
Add any other context about the problem here.

@tagboola Please try to wrap the "ChatVertexAI" class . Below code
from ragas.llms.base import LangchainLLMWrapper

creds, _ = google.auth.default(quota_project_id=project_id)

#TODO : Wrap the ChatVertexAI as below
llm = ChatVertexAI(credentials=creds)
ragas_vertexai_llm = wrapper = LangchainLLMWrapper(llm)

metrics = [
    context_precision,
    faithfulness,
    answer_relevancy,
]

for m in metrics:
m.__setattr__("llm", ragas_vertexai_llm)

# evaluate the dataset
result = evaluate(
	  eval_data,
	  metrics = metrics
)

Hope this helps

I actually got this working by setting the llm parameter of the evaluate method.


Fix windows install

Description
This fix resolves the issue with the Windows install. From looking into the problem, I found that the default settings were causing the workflow to request the user to use securityadmin to initialize the cluster during the initOnNodeStart function. There are a few ways this could be resolved but I felt the most logical one was the one I took where I just swapped the getAsBoolean(ConfigConstants.SECURITY_ALLOW_DEFAULT_INIT_SECURITYINDEX) to default to true instead of false.
Issues Resolved
Resolves issue #2305
Testing
I ran the full workflow suite and everything worked.
Check List

[] ~New functionality includes testing~
[x] New functionality has been documented
[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Closing this because It will send a lot of notifications when making the changes. I can reopen later.


Integrations test should be part of the pytest suite

We should reimplement the tests in integration.py to run under pytest using pytest-regressions and pytest-benchmark. We also need to add markers to these tests to be able to run it only on certain environments.

related to https://github.com/rethinkpriorities/squigglepy/issues/33


Is this plugin only support the default daily note fine name format?

I installed this plugin but I couldn't run the sample code first time.
I customized the file name of daily note as " 05_28" before I installed the plugin, and then the problem fixed when I rename daily note files to the default rule "2024-05-28".
I'm not sure this is the critical reason of the problem and also I would like to know if I can use this plugin with customized daily note file name.
Thank you.

I just find out that the same question is posted on discussions section:
https://github.com/Richardsl/heatmap-calendar-obsidian/discussions/2
I'll close this post.


Fix missing object tags in the build file

So you are working on devfest-2015 website. Wow. :cool:
Where is it? Can we check it out?

Oh I see my PR is bogus now, I'll post a new one, sorry!


AttributeError: 'ClustersOperations' object has no attribute 'create_or_update'

Hello,
when I try to run the command provided for creating an Azure Data Explorer cluster and database by using Python (ref. https://docs.microsoft.com/en-us/azure/data-explorer/create-cluster-database-python), I received the following AttributeError:

'ClustersOperations' object has no attribute 'create_or_update'.  Did you mean: 'begin_create_or_update'?

Could you please advice?
Thanks
Rigo

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

ID: 8a6ac245-2ec4-1f83-6f38-c58197c3afc0
Version Independent ID: f503e255-b4c5-4c91-2187-977168fcda78
Content: Create an Azure Data Explorer cluster & DB using Python
Content Source: data-explorer/create-cluster-database-python.md
Service: data-explorer
GitHub Login: @shsagir
Microsoft Alias: shsagir

Thank you for the detailed question. We are currently investigating and will update you when we have accurate information to provide.

We do not support this SDK, so it's worth confirming with the owners of this repo, but I looked back and see that in https://github.com/Azure/azure-sdk-for-python/commit/b1d8fc67f1831ea276bc73e9f1c7fdae16a825a5 it seems create_or_update was indeed changed to begin_create_or_update.
I'll update our docs accordingly.

@rigoita  We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


Makefile: Explicitly specify the --output-dir ginkgo CLI flag

Signed-off-by: timflannagan<EMAIL_ADDRESS>
Description of the change:
Explicitly specify the --output-dir ginkgo v2 CLI flag when the ARTIFACT_DIR has been set in CI environments.
Motivation for the change:
Ensure junit reports are being correctly generated when 1.) the top-level directory in the ARTIFACT_DIR doesn't exist, and ginkgo v2 will created it for you 2.) the absolute path to the ARTIFACT_DIR already exists, but ginkgo v2 appends the nested directory structure. This seems to smooth out this experience, and we have the added benefit where we don't need to think about whether the artifact directory variable has been properly set during $(ARTIFACT_DIR)junit_e2e.xml.
Architectural changes:

Testing remarks:

Reviewer Checklist

[ ] Implementation matches the proposed design, or proposal is updated to match implementation
[ ] Sufficient unit test coverage
[ ] Sufficient end-to-end test coverage
[ ] Bug fixes are accompanied by regression test(s)
[ ] e2e tests and flake fixes are accompanied evidence of flake testing, e.g. executing the test 100(0) times
[ ] tech debt/todo is accompanied by issue link(s) in comments in the surrounding code
[ ] Tests are comprehensible, e.g. Ginkgo DSL is being used appropriately
[ ] Docs updated or added to /doc
[ ] Commit messages sensible and descriptive
[ ] Tests marked as [FLAKE] are truly flaky and have an issue
[ ] Code is properly formatted

I caught this in downstream CI environments:
  Failed to generate JUnit report:
  open /go/src/github.com/openshift/operator-framework-olm/staging/operator-lifecycle-manager/test/e2e/logs/artifacts/junit_e2e.xml: no such file or directory
  In [ReportAfterSuite] at: /go/src/github.com/openshift/operator-framework-olm/staging/operator-lifecycle-manager/vendor/github.com/onsi/ginkgo/v2/reporting_dsl.go:127

Despite CI properly exposing that ARTIFACT_DIR variable, it looks like we need to always specify the --output-directory CLI flag to make sure this works there as well.

/lgtm

Just want to double check the artifacts directory is still being populated before automation merges this.
/hold

/hold cancel


refactor(vehicle_cmd_gate): move isSteerConverged debug marker from trajectory_follower

Description

https://github.com/autowarefoundation/autoware.universe/pull/5189
Because we removed the checking if steering converged or not from controller_node, I recreated the marker publisher in vehicle_cmd_gate.
Tests performed

Tested on psim, worked well.
Effects on system behavior
No effects

Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[ ] I've confirmed the contribution guidelines.
[ ] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

Closed because of the latest discussions in main PR: https://github.com/autowarefoundation/autoware.universe/pull/5183


Text change on text review feedback

One last change recommended by Jimmy.

Codecov Report

Merging #756 into m_csr will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           m_csr    #756   +/-   ##
=====================================
  Coverage   9.77%   9.77%
=====================================
  Files        492     492
  Lines      12070   12070
=====================================
  Hits        1180    1180
  Misses     10890   10890

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 53035e7...b13c641. Read the comment docs.

Thanks Ian.


fix(qq): arraybuffer to string

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 86.93%. Comparing base (e5825f1) to head (99edb5b).
Report is 90 commits behind head on master.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #289      +/-   ##
==========================================
+ Coverage   86.88%   86.93%   +0.04%
==========================================
  Files           1        1
  Lines         549      551       +2
  Branches      111      111
==========================================
+ Hits          477      479       +2
  Misses         72       72

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Activate versions, drafts for globals in azure cosmos

Link to reproduction
cant really provide since it's on Azure cosmos
To Reproduce
Run the cms with drafts activated for a global module and run it with Azure cosmos
Describe the Bug
I have activated indexSortableFields: true and I still get this error when i set drafts true in a global module:
{"errors":[{"message":"Error=2, Details='Response status code does not indicate success: BadRequest (400); Substatus: 0; ActivityId: 26f4e527-4750-4136-bb3d-162fad36b267; Reason: (Response status code does not indicate success: BadRequest (400); Substatus: 0; ActivityId: 26f4e527-4750-4136-bb3d-162fad36b267; Reason: (Response status code does not indicate success: BadRequest (400); Substatus: 0; ActivityId: 26f4e527-4750-4136-bb3d-162fad36b267; Reason: (Message: {\"Errors\":[\"The index path corresponding to the specified order-by item is excluded.\"]}\r\nActivityId: 26f4e527-4750-4136-bb3d-162fad36b267, Request URI: /apps/d26640e5-33e4-43af-b997-dfd51c386334/services/38193864-4a08-47c7-afe7-5da9960a11c4/partitions/6b3c2b2c-c26f-46e7-a6d7-42f9e2a41635/replicas/133294059061204001s/, RequestStats: Microsoft.Azure.Cosmos.Tracing.TraceData.ClientSideRequestStatisticsTraceDatum, SDK: Windows/10.0.17763 cosmos-netstandard-sdk/3.18.0);););"}]}

example of how the global module look like:
export const MainMenu: GlobalConfig = {
  slug: "main-menu",
  access: {
    read: () => true,
    update: isAdmin,
  },
  // versioning with drafts enabled tells Payload to save documents to a separate collection in the database and allow publishing
  versions: {
    drafts: true,
  },
  fields: [
    {
      name: "navItems",
      type: "array",
      fields: [
        linkMenu({
          appearances: false,
        }),
        {
          name: "subMenu",
          type: "array",
          admin: {
            condition: (_, siblingData) => siblingData.link?.type === "subMenu",
          },
          fields: [
            linkMenu({
              appearances: false,
              description: true,
            }),
          ],
        },
      ],
    },
  ],
};

Payload Version
1.8.3

Hey @mikaelkristiansson — we'll take a look at this ASAP. I think it could be an easy one.


Metrics: Do not count duplicates as rejected

If a Transaction that is already known is received then it is better to include it in the metric for agora_transactions_received_total but not add it to the agora_transactions_rejected_total.

Can we maybe add another metric for this though ?
Usually I've seen two approaches being used:

Purely category based, and the total is the aggregation;
Both category and total are provided, with the idea that checking the aggregation provides an additional safety net;

But having an implicit category will come back to bite us.

Added agora_transactions_duplicate_total to record how many are duplicates.

Merge at will


Added WP minimum env And Fixed createPost issues in WP<5.8

Description of the Change
This PR adds WP Minimum env(WP 5.2) in GH actions and fixes below failed commands and tests in 5.2 env.

createPost
setPermalinkStructure

Closes #33
Tests are still failing for the below commands in WP minimum env and I have created the GH issues as below:

createTerm - #35
openDocumentSettingsPanel & openDocumentSettingsSidebar - #36

Checklist:

[x] I have read the CONTRIBUTING document.
[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have added tests to cover my change.
[x] All new and existing tests passed.

Changelog Entry

Added - WP minimum(5.2) env in GH actions to test with.
Changed - Made createPost and setPermalinkStructure compatible with WP minimum(5.2) env.
Credits

Props @iamdharmesh

@iamdharmesh thank you for fixing this and creating new issues related to other commands!
I can confirm that isolated tests for createPost and setPermalinkStructure commands against 5.2 and latest WordPress run successfully.
LGTM!


descw-1988 order inputs for contract -> gdx internal coding

https://apps.itsm.gov.bc.ca/jira/browse/DESCW-1988

you should remove these from the validator as well

done - ready to re-review


Add Devin Dodson to Contributors list

Hi  @trambopoline, I'm quite elated about your pull request. I wanna evolve this project to addresses various problems faced by first-time contributors. I'd love to learn about your journey in open source community, the problems, pain points you had etc.
Could you explain how you felt when you went through the tutorial, made a pull request and learned that I merged it?
We’ve recently added social share  to our web app. Could you please go to https://roshanjossey.github.io/first-contributions/#social-share and share your first contribution to open source?
Also, check out projects with easy issues while you’re there.

Hi Roshan! The tutorial was very concise and easy to follow, and I felt a nice bite-sized sense of accomplishment when I saw that you had merged my pull request :)
I'm a consumer of open source products, but I haven't really gotten involved in it up till now. I'm looking to get my foot in the door somewhere with the long term goal of becoming a proper developer, and I think it would make sense to do some open source contributions to hone my skills, contribute back to the community, and help keep my sanity.


Shout - Not working?

My code -
if (message.content.startsWith(prefix + "shout")){
    rbx.login(options)
    rbx.shout(3464814, "Testing...  Please work!!")
  }

Error - http://prntscr.com/h3i88v

You are failing to use promises to wait for the login to complete.
rbx.login(options)
.then(function () {
  rbx.shout(...);
 Instead of logging in when the command is executed just login when the bot is turned on and all the commands should be executed from that user.
// Put this at the top
rbx.login(options);

Ah, fixed (forgot to comment earlier)!


new wallet for payment

andrewmogbolu2

What type of PR is this? (check all applicable)

[ ] Adding new(s) resource(s)

Else :
[ ] Added icon to right of the link
[ ] Checking if the resource is not already written

[ ] Update About Web Monetization part
[ ] Update asset(s)

Else :
[ ] Height is 16px
[ ] Format is png

Description

Related Issues and/or Documents

No a valid PR. https://github.com/thomasbnt/awesome-web-monetization/pull/13/files#diff-a2909590e43c08038e537e990d8d23ed2be608eeda08326198c37eb6f57ede96R10-R17


Short-code of "Enter" key for #!KeyboardAccessoryViewLayout

Is there short-code for the "enter" key to put in my SSH Config File for #!KeyboardAccessoryViewLayout?
https://webssh.net/documentation/help/howtos/SSH/customise-keyboard-accessory-view-layout/
I would think it would be useful after pasting a snippet to be able to run it without the need of the full keyboard.
Originally posted by @GuillaumeHullin in https://github.com/isontheline/pro.webssh.net/discussions/1246

@GuillaumeHullin

Will be available in a few hours ;)

Now available inside the latest beta release : https://testflight.apple.com/join/QSrBK59z
Documentation has been updated as well : https://webssh.net/documentation/help/howtos/SSH/customise-keyboard-accessory-view-layout/

Yup! That works :)


Add pinned memory usage for netty metrics

We have used direct memory for netty metric, but used direct memory includes all the direct memory that netty is managing. So it doesn't reflect the amount of direct memory the application is currently using.
Adding pinned direct memory would show us that.
The difference between used direct memory and pinned direct memory might be huge.
When application tries allocate 1MB from netty, and netty would create a new pooled chunk, which is 16mb. In this case, the pinned direct memory is 1MB, but the used direct memory is 16MB.

Codecov Report

Merging #2115 (0ed8f77) into master (cd61057) will decrease coverage by 58.70%.
The diff coverage is 0.00%.

@@              Coverage Diff              @@
##             master    #2115       +/-   ##
=============================================
- Coverage     73.82%   15.11%   -58.71%
+ Complexity    10094     2287     -7807
=============================================
  Files           722      722
  Lines         54873    54879        +6
  Branches       6788     6788
=============================================
- Hits          40509     8297    -32212
- Misses        12215    46101    +33886
+ Partials       2149      481     -1668

Impacted Files
Coverage Δ

...com/github/ambry/commons/NettyInternalMetrics.java
0.00% <0.00%> (-78.34%)
:arrow_down:

.../src/main/java/com/github/ambry/router/Router.java
0.00% <0.00%> (-100.00%)
:arrow_down:

.../src/main/java/com/github/ambry/store/Message.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...rc/main/java/com/github/ambry/named/PutResult.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...rc/main/java/com/github/ambry/quota/QuotaMode.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...rc/main/java/com/github/ambry/quota/QuotaName.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...rc/main/java/com/github/ambry/rest/RestMethod.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...c/main/java/com/github/ambry/config/KMSConfig.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...c/main/java/com/github/ambry/config/SSLConfig.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...c/main/java/com/github/ambry/router/ByteRange.java
0.00% <0.00%> (-100.00%)
:arrow_down:

... and 564 more

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 cd61057...0ed8f77. Read the comment docs.


[Fix] Avoid pickling entire LLMEngine for Ray workers

self references have been inadvertently introduced into the closure used to initialize the Ray workers, which is causing the whole LLMEngine object to be pickled with it.
This fixes it to reference the lora_config and kv_cache_dtype directly.

You can implement the __reduce__ method in LLMEngine and throw an error in there so this won't happen again in the future.

Good idea @simon-mo, now added.


Research Twilio API - Email

Email sent with Amazon link for purchase.
MailChimp?

mailchimp?

Yeah, I'm not sure Twilio has a free level, but I'll look into it.

Yeah, SendGrid (Twilio) has a free level for e-mail. https://sendgrid.com/en-us/pricing
Twilio proper has no free SMS level:  https://www.twilio.com/en-us/sms/pricing/us

Signed up with MailJet. Awaiting their decision on whether we can actually send e-mails with their service. I told them we'd be sending to our own e-mail addresses.

Mailchimp or Twilio - send reminder to user at timed interval that is set by user


RT #790461 - Novaseq X 25B and 1.5B flowcell - Sequencescape options

Closes RT # 790461
Changes proposed in this pull request

Add default records, to generate data for new Novaseq X flowcell types

Instructions for Reviewers
[All PRs] - Confirm PR template filled
[Feature Branches] - Review code
[Production Merges to main]
    - Check story numbers included
    - Check for debug code
    - Check version

The changes in this PR generate the bottom two lines of data in this screenshot:

Locally, this increases the options in the "Flowcell type" dropdown from just "10B", to "1.5B", "10B", and "25B". See screenshot below:


Add forgotten plt.show() statement for 2d heatplot

plt.show() has been implemented for 1d plot but forgotten for 2d plot.

Good catch! Thanks for the contribution.


Friends&Foes 3.0.0 internal changes

Hello, i believe that you reference Glare in your project and since i did some internal changes in the 3.0.0 version it now throws an error, https://github.com/Faboslav/friends-and-foes/issues/267. Also apart from the crash, it would be probably good to prevent such a crash if the compat doesnt exists in any way

Oh hi, thanks for letting me know!
Will fix the compat soon - if I haven't already, looks like the targeted classes were just moved.

Also apart from the crash, it would be probably good to prevent such a crash if the compat doesnt exists in any way

The mixins are already non-required so they would soft-fail, but there's a piece of code that stops the current movement of the glare, which needs a reference to GlareEntity and pretty much the only way to make that not crash is to catch the NoClassDefFoundError which seems like a bad idea.
On the plus side, it'd probably have taken months to catch the broken compat otherwise.
(I have so many mods with compat code, it's basically impossible for me to test everything all the time.)
Sorry for the reports you are getting though!

Aight, compat is fixed in 1.4.3!
Took a lot longer than I thought since the way I cycled the sitting/following/independent states didn't work with the Glare, so I had to rewrite the logic.
That one piece of code also shouldn't crash anymore (it was just an instanceof, I replaced it with an id check).

I mean creating some kind of an error proof wrapper around the compat parts of the mod seems like good idea, i recently did this too, if you are interested bumblezone mod have it pretty decently handled

Will keep that in mind!
I generally prefer stuff to crash, so people tell me it's broken. Just in this case I thought it's too small of a feature to hold up the whole mod - and it did anyway, oh well... 😅

Thanks for the quick fix! Will close issue on my side too :).


[AMBARI-22996] ViewInstanceResourceProviderTest, ViewPermissionResourceProviderTest, and ViewURLResourceProviderTest fail unexpectedly

What changes were proposed in this pull request?
These tests require that a mocked ViewRegistry be used, which is set in a static initializer block. If the ViewRegistry is set after that, for example, but running a test in one of these classes, then the tests will no longer be using the correct ViewRegistry. Therefore, I have changed the set up methods of these test classes to set the ViewRegistry to the mocked version from that class.
How was this patch tested?
Patch was tested manually.
@adoroszlai @rlevas This pull request fixes an issue similar to others I have submitted in the past (https://github.com/apache/ambari/pull/176 and https://github.com/apache/ambari/pull/133).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/612/
Test FAILed.
Test FAILured.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/709/
Test FAILed.
Test FAILured.


UD-1190: Add support for plugin pod annotations and plugin service ac…

…count annotations
Description
This PR enables annotations to be provided for each plugin pod and for the plugin service account.
One use of this would be to enable access to specific IAM roles when running in EKS, for example for Trivy to access a private ECR.
Linked Issues
How has this been tested?

Creation of a private ECR, an EKS cluster and a deployment of an image from the private repo
Helm installation of zora using the following options

--set scan.plugins.annotations.eks\\.amazonaws\\.com/role-arn=arn:aws:iam::127647282379:role/undistro-test-ecr-role (annotation on the ServiceAccount, must use the role created for accessing the ECR)
--set scan.plugins.marvin.podAnnotations.marvin-annotation="marvin-value" (marvin cronjob/pod annotation)
--set scan.plugins.trivy.podAnnotations.trivy-annotation="trivy-value"

check service account for annotation
check cronjobs and executed pods for annotations
check dashboard for vulnerabilities from private repo images
check trivy pod to ensure there are no errors for the images from a private repo

Checklist

[X] I have labeled this PR with the relevant Type labels
[ ] I have documented my code (if applicable)
[ ] My changes are covered by tests

It's important to ensure all parameters are included in values.yaml for users who reference to this file to understand the available options and to ensure the consistency of auto-generated chart documentation.

@matheusfm I've added them into values.yaml, with examples to ensure the docs are generated appropriately

Thank you @knrc I think the only thing missing was commenting out the annotation examples, like in the Marvin section, right?

No, I did that originally but the generated document had each as a string.  I left the examples in there so they would generate the appropriate content.

Thank you @knrc I think the only thing missing was commenting out the annotation examples, like in the Marvin section, right?

No, I did that originally but the generated document had each as a string. I left the examples in there so they would generate the appropriate content.

Note I'm not convinced that the generated content is even correct, since the original content I added by hand is what you need to use for the helm command line.  I'll see if there's an alternative which gives the right content.

I would try set {} as default.
      podAnnotations: {}
#        trivy-annotation: trivy-value

I would try set {} as default.
      podAnnotations: {}
#        trivy-annotation: trivy-value

Yeah, this worked to change it to an object but wasn't really what I was looking for.  I was hoping there was some way of specifying examples but couldn't find it, the only examples appear to be the assumed defaults set in the values.yaml file.


Add license for string processing

ref #475

Codecov Report

Merging #476 (73501b2) into master (8e8cdea) will not change coverage.
The diff coverage is n/a.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##           master     #476   +/-   ##
=======================================
  Coverage   76.75%   76.75%
=======================================
  Files          55       55
  Lines       18921    18921
=======================================
  Hits        14522    14522
  Misses       3763     3763
  Partials      636      636


Adds getting started guide for SI GCP Pub/Sub channel adapters

Fixes #46

@meltsufin FYI

This is missing Gradle dependencies. Will try to build with Gradle next week.

@gregturn this guide doesn't show up running Sagan locally.
Is that because spring-cloud-gcp isn't in the projects list, yet?
i.e., http://projects.spring.io/spring-cloud-gcp is a 404
We do have http://cloud.spring.io/spring-cloud-gcp/ although, AFAICT, this isn't linked from anywhere in the public docs.
This seems like a chicken and egg problem, since we want to make an alpha release of the early stages of the project but for that, we need good docs. But to add the get started guide, we need an existing project.

I haven't merged it as a guide yet.
When you run Sagan, are you pointing at your userid to see it, because by default it's looking at the official set.

Yes, I followed the instructions from https://github.com/spring-guides/getting-started-guides/wiki/Run-sagan-to-test-your-own-content.
This PR merges from my fork's master, although I also just created a branch called gs-spring-cloud-gcp.
I'm not sure what the article means with "projects in my Github space", maybe that's where I'm missing something.

By default, this path Sagan looks at is this https://github.com/spring-guides/gs-uploading-files, where spring-guides is the "org". You can override org and point to where your guide currently lives.
For example, when working on a new guide in my own repo, I'll plugin gregturn for org.

Well, since I'm working on a new guide, I just forked the getting-started-guides repo and created a new repo there. So, there won't be any gs-* on my user space, because the guide hasn't been merged yet. What do I do in this case?
Also, how do I pass in the org to Sagan? I haven't seen any documentation on this. By default, shouldn't it be using the Github user ID (3290856) that I specified?

Hmm. For you, https://github.com/joaoandremartins/getting-started-guides being your link, the org would be your userid. But I'm not sure sagan can parse a guide NOT starting with gs-.
Right here, in the wiki, it says to run it as followed:
GITHUB_GUIDES_OWNER_NAME=<your github id> GITHUB_GUIDES_OWNER_TYPE=users ./gradlew clean :sagan-site:run

GITHUB_GUIDES_OWNER_NAME would be joaoandremartins. That would let you see any guide hosted in your own space. However, I fear it won't work without a gs- prefix.
IDEA: I wonder if you can rename your repo and not break the PR status nor the forked status.

I must be doing something wrong, because I've tried renaming the repo to gs-spring-cloud-gcp, using both my Github username (joaoandremartins) and user ID (3290856) and nothing works -- the shown guides are always the ones in the official set.
The log also doesn't show any error messages, so debug becomes really tricky.

I don't know about the index listing. I'd say just navigate to the target URL of that guide.
https://localhost/guides/gs/spring-cloud-gcp

Unfortunately, it doesn't work. With either username or ID.
This time, I can see something more in the log:
2017-07-18 10:23:43.302  WARN 33018 --- [nio-8080-exec-2] .m.m.a.ExceptionHandlerExceptionResolver : Resolved exception caused by Handler execution: sagan.support.ResourceNotFoundException: No getting started guide found for '/repos/spring-guides/gs-spring-cloud-gcp/zipball'
2017-07-18 10:23:45.070  WARN 33018 --- [nio-8080-exec-1] sagan.guides.support.AsciidoctorUtils    : No getting started guide found for '/repos/spring-guides/gs-spring-cloud-gcp/zipball'

org.springframework.web.client.HttpClientErrorException: 404 Not Found
	at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:91) ~[spring-web-4.3.6.RELEASE.jar:4.3.6.RELEASE]

Also, nowhere in the logs can I see that Sagan is pulling anything from Github.

/repos/spring-guides/gs-spring-cloud-gcp/zipball
This path tells me it hasn't overridden the org. It's looking in "spring-guides".
Show me your launch line when you run Sagan.

$ ./gradlew clean :sagan-site:bootRun

I'm assuming this is it, since $ ./gradlew clean :sagan-site:run, like recommended in here, doesn't exist.

You left out GITHUB_GUIDES_OWNER_NAME=<your github id> GITHUB_GUIDES_OWNER_TYPE=users  prefixing that

@gregturn thanks a lot for your patience :) That worked -- I didn't know those had to be in the same line. I was declaring them before invoking gradle.
Now I can see this in my Guides page, that leads to the correct URL

A new issue is:
2017-07-18 14:06:36.433  INFO 63613 --- [  restartedMain] sagan.SiteApplication                    : Started SiteApplication in 13.159 seconds (JVM running for 13.765)
asciidoctor: WARNING: https://raw.githubusercontent.com/spring-guides/getting-started-macros/master/hide-show-gradle.adoc: line 19: include uri not readable: https://raw.githubusercontent.com/spring-guides/spring-cloud-gcp/master/initial/build.gradle
asciidoctor: WARNING: https://raw.githubusercontent.com/spring-guides/getting-started-macros/master/hide-show-maven.adoc: line 16: include uri not readable: https://raw.githubusercontent.com/spring-guides/spring-cloud-gcp/master/initial/pom.xml
2017-07-18 14:07:18.155 ERROR 63613 --- [io-8080-exec-10] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.NullPointerException] with root cause

java.lang.NullPointerException: null
	at sagan.guides.support.AsciidoctorUtils.generateDynamicSidebar(AsciidoctorUtils.java:88) ~[sagan-common.jar:na]
	at sagan.guides.support.PrefixDocRepository.populate(PrefixDocRepository.java:103) ~[sagan-common.jar:na]
	at sagan.guides.support.PrefixDocRepository.find(PrefixDocRepository.java:53) ~[sagan-common.jar:na]

I'm guessing that the NullPointerException is because of the missing URIs in the first lines. But I don't know how how to publish to those URIs without publishing the guide. Also, I noticed the "initial" directory is being picked up, but I don't plan on having anything there?
https://raw.githubusercontent.com/spring-guides/spring-cloud-gcp/master/initial/build.gradle
https://raw.githubusercontent.com/spring-guides/spring-cloud-gcp/master/initial/pom.xml
For the record, I've removed the includes that are including those non-existing URIs, both locally and in my repo, but Sagan is still picking them up somehow, even if I completely remove them from my README.

Oh yeah, you could be pulling macros from spring-guides that point back at your guide, allegedly in "spring-guides".
Look, there's only so much you can test. Make sure those bits are there, and when the guide is published those bits will work.

It would be good to be able to stage, just to make sure things work properly. Would staging work better if the guide is published?
In that case, @meltsufin @jabubake can you please review?

@joaoandremartins What's the best way to review it right now? Just by looking at the source?

You can fork and edit the macros.

Your code fragments should be pulled from the source, and not hard coded into the guide. You can use asciidoctor tags to accomplish this.

@gregturn thanks very much once again for your patience here. I was finally able to locally stage the page. (It turns out the project in the projects: [] part must be an existing one.). Also, Sagan was listening to the master branch in my gs-* repo.
@meltsufin @jabubake this is ready for review, but I'm afraid you'll have to locally stage it yourselves, too. In order to do that, you'll need to check out Sagan and fork my fork, then run Sagan
GITHUB_GUIDES_OWNER_NAME=meltsufin/jabubake GITHUB_GUIDES_OWNER_TYPE=users ./gradlew clean :sagan-site:bootRun
Then go to localhost:8080/guides/gs/spring-cloud-gcp and it should be there.

@gregturn I'll look into using Asciidoctor to pull in specific snippets from my larger source files, if that's feasible. There should be examples in other PRs.

Actually, I'm looking at other examples and everyone seems to be hardcoding snippets into the guide.
Is there any option for including a specific set of lines from a source file, or a method, instead of the whole file?

Use asciidoctor tags like this: https://github.com/spring-guides/gs-batch-processing/blob/master/complete/src/main/java/hello/BatchConfiguration.java#L68-L88
Then..
`src/main/java/hello/BatchConfiguration.java`
[source,java]
----
include::/complete/src/main/java/hello/BatchConfiguration.java[tag=jobstep]
----

This will make your guide dynamically update itself when you update the source.
As for examples of hard coded snippets, I've tried to reduce them based on churn.

Thanks for the good tip, I've adapted our guide.
Later, it would be nice to add a parameter to the include instruction so that it omits // tag::..[] and // end::...[] from source. I suspect this doesn't exist yet, because the tags are showing in https://spring.io/guides/gs/batch-processing/.

I've spoken to Dan Allen about this but it hasn't topped his list of priorities. I wrote my previous book and present book using adciidoctor and tagged fragments.

It seems there might be a need for explicitly stating the version of the following somewhere in the dependency tree (probably not in the starter project):
        <dependency>
            <groupId>com.google.auth</groupId>
            <artifactId>google-auth-library-credentials</artifactId>
            <version>0.7.0</version>
        </dependency>

The problem only comes out in Maven. After maven clean build and java -jar target/spring-cloud-gcp-samples-0.1.0.jar I get a java.lang.ClassNotFoundException: com.google.auth.ServiceAccountSigner. The above dependency fixes it.
The maven and gradle dependency resolvers resolve the tree in different order and when the maven one finds the 0.4.0 version of google-authlibrary-credentials (pulled in by io.grpc:grpc-auth:jar:1.4.0:compile) that is what's going to be used causing the issue.
 I believe it's caused by https://github.com/spring-cloud/spring-cloud-gcp/pull/77. Can you file this in spring-cloud-gcp? Thanks!

@meltsufin, done: https://github.com/spring-cloud/spring-cloud-gcp/issues/79

The complete version won't build until a couple of spring-cloud-gcp PRs are merged but, text-wise, this should be ready for final review.
@jabubake @parkjam4 @saturnism FYI, your takes here would be great

When you're ready, squash it all and let me know. I'll take it from there.

@gregturn we thought of splitting this app into two, one sender and one receiver, but the rest of the starter talks about packaging a single application and other examples send and receive messages from the same application.
In the end, I think we'll just stick to the single app, I just need to roll back the last commit.

@gregturn it's squashed, feel free to merge.

@gregturn let me know if there is anything missing here required for the merge. Thanks!

Resolved via https://github.com/spring-guides/gs-spring-cloud-gcp/commit/8b3b2d388e3f92d039c5f992ba3cce2303d2609e.
Congrats! You're live at https://spring.io/guides/gs/spring-cloud-gcp/

I'd recommend now discarding the branch you built this on, and cloning and forking the new repo up above. You'll find all your effort nicely setup there as well.


Update performance-recommendations-for-hololens-apps.md

updated metadata, nested bullets, bold formatting, line breaks

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/performance-recommendations-for-hololens-apps.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/performance-recommendations-for-hololens-apps.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Support search file in windows

Codecov Report

Merging #20 into master will decrease coverage by 1.48%.
The diff coverage is 80.95%.

@@            Coverage Diff             @@
##           master      #20      +/-   ##
==========================================
- Coverage   99.28%   97.79%   -1.49%
==========================================
  Files          17       17
  Lines        1397     1408      +11
==========================================
- Hits         1387     1377      -10
- Misses         10       31      +21

Impacted Files
Coverage Δ

src/viztracer/main.py
95.20% <80.95%> (-3.05%)
:arrow_down:

src/viztracer/viztracer.py
94.49% <0.00%> (-5.51%)
:arrow_down:

src/viztracer/report_builder.py
95.31% <0.00%> (-4.69%)
:arrow_down:

src/viztracer/simulator.py
96.77% <0.00%> (-3.23%)
:arrow_down:

src/viztracer/flamegraph.py
97.59% <0.00%> (-2.41%)
:arrow_down:

src/viztracer/prog_snapshot.py
98.86% <0.00%> (-0.57%)
:arrow_down:

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 e9cf204...732b90a. Read the comment docs.

Thanks for the review I will fix them


Defs in repl no longer accepted

It used to be the case that I could write foo = 5 in the repl, and it would detect an incomplete def-expression and give me a … prompt so I could continue adding defs or else finish the expression.
Now instead when I put in a def, there's an immediate MISSING FINAL EXPRESSION error.
We could fix this bug, or we could go for the ambitious approach of changing the repl to allow top-level module defs instead - so if I type foo = 5 it records that as a top-level decl, leaves it in scope for the rest of the repl session, and then proceeds to ask me for another expression (or another decl).

At this moment a top level decl like foo = 5 is simply accepted in the repl:
» foo = 5
5 : Num *                  # foo
»
Does this address all concerns of this issue?

I think so, thanks for notifying us @Ivo-Balbaert :)


[BUG] winget's PowerShell module returns updates that WingetUI does not

Please confirm these before moving forward

[X] I have searched for my issue and not found a work-in-progress/duplicate/resolved issue.
[X] I have tested that this issue has not been fixed in the latest (beta or stable) release.
[X] I have checked the FAQ section for solutions
[X] This issue is about a bug (if it is not, please use the correct template)

Describe your issue
After I completed all updates with WinGetUI, one of my apps, prompted me for an update, but it wasn't listed as available in WingetUI.
Using the official Microsoft.WinGet.Client PowerShell Module has become the most convenient cli method for me, so I listed the available updates using powershell and got a list of additional packages not listed in the UI.
Things I treid to validate the issue is WinGetUI and not my actions:

Reset the winget sources, and refresh them
After changing to the system winget and restarting, WinGetUI listed some packages, but not all of them.

The Log output below is right at restart, using the internal WinGet when it returned nothing.
Interestingly enough, the Total packages entry in the log matches the count from PowerShell: 242.
Steps to reproduce the issue
Make sure you are using the latest PowerShell (not Windows PowerShell)
winget install --id Microsoft.Powershell

Launch pwsh and install the module:
Install-Module Microsoft.WinGet.Client

Simplest way would be to clean WinGetUI Software Updates view by updating everything, otherwise compare the output below to the view:
$wglist = Get-WinGetPackage; $wgupd = $wglist | Where-Object { $_.IsUpdateAvailable }
Write-Host "Packages $($wglist.Count); Updates $($wgupd.Count)"
$wgupd

WingetUI Log
🟢 Using cached lang file
🟡 Using bundled lang file (forced=True)
🔵 It took 0.04169011116027832 to load all language files
🟢 checkQueue Thread started!
🔵 Language file up-to-date
🔵 Found default chocolatey installation on expected location
---------------------------------------------------------------------------------------------------

   WingetUI version 2.2.0 (version number 2.2) log
   All modules loaded successfully and sys.stdout patched correctly, starting main script
   Translator function language set to "en"

---------------------------------------------------------------------------------------------------

 Log legend:
 🔵: Verbose
 🟢: Information
 🟡: Warning
 🟠: Handled unexpected exception
 🔴: Unhandled unexpected exception

🔴  Traceback (most recent call last):

🔴  Traceback (most recent call last):

🔴    File ".\__main__.py", line 69, in <module>

🔴    File ".\__main__.py", line 69, in <module>

🔴    File ".\PackageEngine\Classes.py", line 39, in __init__

🔴    File ".\PackageEngine\Classes.py", line 39, in __init__

🔴  AttributeError: 'NoneType' object has no attribute 'NAME'

🔴  AttributeError: 'NoneType' object has no attribute 'NAME'

🔴 Note this traceback was caught by reporter and has been added to the log ('NoneType' object has no attribute 'NAME')
🔵 Starting main application...
🔵 Looking for alive instances...
🔵 Starting API with random session authentication token e9b7762278f502f3145a9f192c39c69a7345d89b9ddfeafe1c8a1b65df3fad21
🟡 Found lock file(s), reactivating...
🔵 Loading WingetUI AUMID...
🔵 Starting update check
🟢 Downloaded latest metadata to local file from url https://raw.githubusercontent.com/marticliment/WingetUI/main/WebBasedData/screenshot-database-v2.json
🔵 Loaded metadata from local file
🔵 Starting Winget source search...
🟢 Winget source search finished with 2 sources
🔵 Reactivation signal ignored: RaiseWindow_[1704030008.678393]
🟢 Found valid aumid {6D809377-6AF0-444B-8957-A3773F02200E}\WingetUI\wingetui.exe
{'sudoFound': True, 'sudoVersion': 'gsudo v2.4.2 (Branch.tags-v2.4.2.Sha.c23b1024b4974f5d90cf82968637bdb4c8924ca7)\r', 'ScoopFound': False, 'ScoopVersion': 'Scoop is disabled', 'ChocolateyFound': False, 'ChocolateyVersion': 'Chocolatey is disabled', 'PipFound': False, 'PipVersion': 'Pip is disabled', 'NpmFound': False, 'NpmVersion': 'Npm is disabled', '.NET ToolFound': False, '.NET ToolVersion': '.NET Tool is disabled', 'PowerShellFound': False, 'PowerShellVersion': 'PowerShell is disabled', 'WingetFound': True, 'WingetVersion': 'v1.6.3482  '}
🔵 Reached main ui load milestone
🟢 Discover tab loaded successfully
🟢 Total packages: 0
🟢 Update tab loaded successfully
🟢 Searching for string ""
🔵 Reloading sources...
🔵 Reloading Winget sources...
🟢 Uninstall tab loaded successfully
🔵 Starting Winget search for installed packages
🟢 Searching for string ""
🔵 Reloading Scoop sources...
🔵 Starting Winget source search...
🔵 Starting Scoop source search...
🔵 Starting Chocolatey source search...
🟢 Winget source search finished with 2 sources
🔵 Starting PowerShell source search...
🟢 Settings tab loaded!
🟢 About tab loaded!
🟢 Main application loaded...
🟢 Total packages: 0
🟢 Chocolatey source search finished with 1 sources
Traceback (most recent call last):
  File ".\Interface\CustomWidgets\InstallerWidgets.py", line 669, in <lambda>
TypeError: 'NoneType' object is not callable
Traceback (most recent call last):
  File ".\Interface\CustomWidgets\InstallerWidgets.py", line 669, in <lambda>
TypeError: 'NoneType' object is not callable
Traceback (most recent call last):
  File ".\Interface\CustomWidgets\InstallerWidgets.py", line 669, in <lambda>
TypeError: 'NoneType' object is not callable
🟢 Scoop source search finished with 0 sources
🔵 Starting Winget search for updates
🟡 package Update for  (KB2504637) failed parsing, going for method 2...
🟢 Winget search for installed packages finished with 242 result(s)
🟢 Searching for string ""
🟢 Searching for string ""
🟢 Total packages: 242
🔵 Starting Winget source search...
🔵 Starting Scoop source search...
🔵 Starting Chocolatey source search...
Traceback (most recent call last):
  File ".\Interface\CustomWidgets\InstallerWidgets.py", line 669, in <lambda>
TypeError: 'NoneType' object is not callable
Traceback (most recent call last):
  File ".\Interface\CustomWidgets\InstallerWidgets.py", line 669, in <lambda>
TypeError: 'NoneType' object is not callable
🔵 Announcement URL: https://www.marticliment.com/resources/wingetui.announcement
🔵 Image URL: https://www.marticliment.com/resources/wingetui.png
🟢 Winget source search finished with 2 sources
🟢 Scoop source search finished with 4 sources
🟢 Chocolatey source search finished with 1 sources
🟢 Winget search for updates finished with 5 result(s)
🟡 Multiple versions of ImageMagick.ImageMagick are installed, latest version is installed. Not showing the update
🟡 Package XnSoft.XnViewMP has version <IP_ADDRESS> ignored
🟡 Package PeterDaveHello.TransmissionRemoteGUI has version 5.18.0 ignored
🟡 Package Microsoft.VCRedist.2013.x86 has version 12.0.40664.0 ignored
🟡 Package Microsoft.VCRedist.2013.x86 has version 12.0.40664.0 ignored
🟢 Searching for string ""
🟢 Searching for string ""
🟢 Total packages: 0
🟢 PowerShell source search finished with 1 sources
🔵 Announcement URL: https://www.marticliment.com/resources/wingetui.announcement
🔵 Image URL: https://www.marticliment.com/resources/wingetui.png
HTTP Error 524:
🔵 Version URL: https://versions.marticliment.com/versions/wingetui.ver
🟢 Updates not found
🔵 Loading WingetUI log...
🔵 Copying log to the clipboard...
🔵 Loading WingetUI log...

Package Managers Logs
N/A

Relevant information
No response
Screenshots and videos

Hello,
does C:\Program Files\WingetUI\PackageEngine\Managers\winget-cli_x64\winget.exe report those missing updates?

Almost, it reports something, but not everything:

I've tried with --include-unknown, and it's a bit different, but still doesn't match PowerShell output.
Then, right before I hit send here, I tried:
& "${env:LOCALAPPDATA}\Microsoft\WindowsApps\winget.exe" upgrade --include-unknown

and got the 12 packages split into 2 sections.
So it seems to be a mixture of the winget version, as well as the --include-unknown flag.

I will study this.

Thanks, it was really late yesterday, and so I didn't go through better collection, below are some additional output:
Output of: & "${env:LOCALAPPDATA}\Microsoft\WindowsApps\winget.exe" upgrade --include-unknown
Name                                                         Id                                   Version      Available    Source
----------------------------------------------------------------------------------------------------------------------------------
ImageMagick 7.1.0-62 Q16-HDRI (64-bit) (2023-02-12)          ImageMagick.ImageMagick              <IP_ADDRESS>     <IP_ADDRESS>     winget
RawTherapee version 5.8                                      RawTherapee.RawTherapee              5.8          5.9          winget
Voicemeeter, The Virtual Mixing Console                      VB-Audio.Voicemeeter.Banana          Unknown      <IP_ADDRESS>      winget
XnViewMP 1.5.5                                               XnSoft.XnViewMP                      1.5.5        <IP_ADDRESS>      winget
Transmission Remote GUI 5.18                                 PeterDaveHello.TransmissionRemoteGUI Unknown      5.18.0       winget
NAPS2                                                        Cyanfish.NAPS2                       6.1.2        7.2.2        winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.40660 Microsoft.VCRedist.2013.x86          12.0.40660.0 12.0.40664.0 winget
Python 3.12.1 (64-bit)                                       Python.Python.3.10                   > 3.10.11    3.12.1       winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.21005 Microsoft.VCRedist.2013.x86          12.0.21005.1 12.0.40664.0 winget
Microsoft Windows Desktop Runtime - 6.0.25 (x64)             Microsoft.DotNet.DesktopRuntime.7    < 7.0.0      7.0.14       winget
11 upgrades available.

The following packages have an upgrade available, but require explicit targeting for upgrade:
Name           Id              Version       Available            Source
------------------------------------------------------------------------
Microsoft Edge Microsoft.Teams 120.0.2210.91 23257.2618.2432.4374 winget

Output of: & "${env:LOCALAPPDATA}\Microsoft\WindowsApps\winget.exe" upgrade
Name                                                         Id                                Version      Available    Source
-------------------------------------------------------------------------------------------------------------------------------
ImageMagick 7.1.0-62 Q16-HDRI (64-bit) (2023-02-12)          ImageMagick.ImageMagick           <IP_ADDRESS>     <IP_ADDRESS>     winget
RawTherapee version 5.8                                      RawTherapee.RawTherapee           5.8          5.9          winget
XnViewMP 1.5.5                                               XnSoft.XnViewMP                   1.5.5        <IP_ADDRESS>      winget
NAPS2                                                        Cyanfish.NAPS2                    6.1.2        7.2.2        winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.40660 Microsoft.VCRedist.2013.x86       12.0.40660.0 12.0.40664.0 winget
Python 3.12.1 (64-bit)                                       Python.Python.3.10                > 3.10.11    3.12.1       winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.21005 Microsoft.VCRedist.2013.x86       12.0.21005.1 12.0.40664.0 winget
Microsoft Windows Desktop Runtime - 6.0.25 (x64)             Microsoft.DotNet.DesktopRuntime.7 < 7.0.0      7.0.14       winget
9 upgrades available.

The following packages have an upgrade available, but require explicit targeting for upgrade:
Name           Id              Version       Available            Source
------------------------------------------------------------------------
Microsoft Edge Microsoft.Teams 120.0.2210.91 23257.2618.2432.4374 winget
2 package(s) have version numbers that cannot be determined. Use --include-unknown to see all results.

Output of: & "C:\Program Files\WingetUI\wingetui\PackageEngine\Managers\winget-cli_x64\winget.exe" upgrade --include-unknown
Name                                                         Id                                   Version      Available    Source
----------------------------------------------------------------------------------------------------------------------------------
ImageMagick 7.1.0-62 Q16-HDRI (64-bit) (2023-02-12)          ImageMagick.ImageMagick              <IP_ADDRESS>     <IP_ADDRESS>     winget
XnViewMP 1.5.5                                               XnSoft.XnViewMP                      1.5.5        <IP_ADDRESS>      winget
Transmission Remote GUI 5.18                                 PeterDaveHello.TransmissionRemoteGUI Unknown      5.18.0       winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.40660 Microsoft.VCRedist.2013.x86          12.0.40660.0 12.0.40664.0 winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.21005 Microsoft.VCRedist.2013.x86          12.0.21005.1 12.0.40664.0 winget
5 upgrades available.

Output of: & "C:\Program Files\WingetUI\PackageManagers\winget-cli_x64\winget.exe" upgrade --include-unknown (same as above)
Name                                                         Id                                   Version      Available    Source
----------------------------------------------------------------------------------------------------------------------------------
ImageMagick 7.1.0-62 Q16-HDRI (64-bit) (2023-02-12)          ImageMagick.ImageMagick              <IP_ADDRESS>     <IP_ADDRESS>     winget
XnViewMP 1.5.5                                               XnSoft.XnViewMP                      1.5.5        <IP_ADDRESS>      winget
Transmission Remote GUI 5.18                                 PeterDaveHello.TransmissionRemoteGUI Unknown      5.18.0       winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.40660 Microsoft.VCRedist.2013.x86          12.0.40660.0 12.0.40664.0 winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.21005 Microsoft.VCRedist.2013.x86          12.0.21005.1 12.0.40664.0 winget
5 upgrades available.

Output of: & "C:\Program Files\WingetUI\wingetui\PackageEngine\Managers\winget-cli_x64\winget.exe" upgrade
Name                                                         Id                          Version      Available    Source
-------------------------------------------------------------------------------------------------------------------------
ImageMagick 7.1.0-62 Q16-HDRI (64-bit) (2023-02-12)          ImageMagick.ImageMagick     <IP_ADDRESS>     <IP_ADDRESS>     winget
XnViewMP 1.5.5                                               XnSoft.XnViewMP             1.5.5        <IP_ADDRESS>      winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.40660 Microsoft.VCRedist.2013.x86 12.0.40660.0 12.0.40664.0 winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.21005 Microsoft.VCRedist.2013.x86 12.0.21005.1 12.0.40664.0 winget
4 upgrades available.
1 package(s) have version numbers that cannot be determined. Use --include-unknown to see all results.

Hello, What does "${env:LOCALAPPDATA}\Microsoft\WindowsApps\winget.exe" --version report?

> & "${env:LOCALAPPDATA}\Microsoft\WindowsApps\winget.exe" --version
v1.6.3482

> & "C:\Program Files\WingetUI\PackageManagers\winget-cli_x64\winget.exe" --version
v1.6.2771

I reinstalled WinGetUI, now I only have a single cli_x64 winget.exe, this is the output:
> & "${env:LOCALAPPDATA}\Microsoft\WindowsApps\winget.exe" --version
v1.6.3482

> & "C:\Program Files\WingetUI\wingetui\PackageEngine\Managers\winget-cli_x64\winget.exe" --version
v1.6.3482

However, the output is still the same as reported above.
I've edited out the old winget.exe output above - probably a relic of an older version.

I reinstalled WinGetUI, now I only have a single cli_x64 winget.exe, this is the output:
> & "${env:LOCALAPPDATA}\Microsoft\WindowsApps\winget.exe" --version
v1.6.3482

> & "C:\Program Files\WingetUI\wingetui\PackageEngine\Managers\winget-cli_x64\winget.exe" --version
v1.6.3482

I've made sure Ignored Updates are clear, and now I have the following in the UI:

WingetUI Log on startup
🟢 Using cached lang file
🟡 Using bundled lang file (forced=True)
🔵 It took 0.004007101058959961 to load all language files
🟢 checkQueue Thread started!
🔵 Language file up-to-date
🔵 Found default chocolatey installation on expected location
---------------------------------------------------------------------------------------------------

   WingetUI version 2.2.0 (version number 2.2) log
   All modules loaded successfully and sys.stdout patched correctly, starting main script
   Translator function language set to "en"

---------------------------------------------------------------------------------------------------

 Log legend:
 🔵: Verbose
 🟢: Information
 🟡: Warning
 🟠: Handled unexpected exception
 🔴: Unhandled unexpected exception

🔵 Starting main application...
🔵 Looking for alive instances...
🔵 Starting API with random session authentication token 42f3ecc12761f13e0dc293d5f95bb04ede4462869eb8ee22e02506fdd512bc7b
🟡 Found lock file(s), reactivating...
🔵 Reloading Winget sources...
🔵 Loading WingetUI AUMID...
🔵 Starting update check
🔵 Version URL: https://www.marticliment.com/versions/wingetui.ver
🟢 Updates not found
🟢 Downloaded latest metadata to local file from url https://raw.githubusercontent.com/marticliment/WingetUI/main/WebBasedData/screenshot-database-v2.json
🔵 Loaded metadata from local file
🔵 Starting Winget source search...
🟢 Winget source search finished with 2 sources
🔵 Reactivation signal ignored: RaiseWindow_[1704217255.4511662]
🟢 Found valid aumid {6D809377-6AF0-444B-8957-A3773F02200E}\WingetUI\wingetui.exe
{'sudoFound': True, 'sudoVersion': 'gsudo v2.0.4 (Branch.tags-v2.0.4.Sha.506efa024af0cef6e4b0cfec42e0c8c5d0b1472c)\r', 'ScoopFound': False, 'ScoopVersion': 'Scoop is disabled', 'ChocolateyFound': False, 'ChocolateyVersion': 'Chocolatey is disabled', 'PipFound': False, 'PipVersion': 'Pip is disabled', 'NpmFound': False, 'NpmVersion': 'Npm is disabled', '.NET ToolFound': False, '.NET ToolVersion': '.NET Tool is disabled', 'PowerShellFound': False, 'PowerShellVersion': 'PowerShell is disabled', 'WingetFound': True, 'WingetVersion': 'v1.6.3482  '}
🔵 Reached main ui load milestone
🟢 Discover tab loaded successfully
🟢 Total packages: 0
🟢 Update tab loaded successfully
🟢 Searching for string ""
🔵 Reloading sources...
🔵 Reloading Winget sources...
🟢 Uninstall tab loaded successfully
🔵 Starting Winget search for installed packages
🟢 Searching for string ""
🔵 Reloading Scoop sources...
🔵 Starting Winget source search...
🔵 Starting Scoop source search...
🔵 Starting Chocolatey source search...
🔵 Starting PowerShell source search...
🟢 Settings tab loaded!
🟢 Winget source search finished with 2 sources
🟢 About tab loaded!
🟢 Scoop source search finished with 0 sources
🟢 Chocolatey source search finished with 0 sources
🟢 Main application loaded...
🟢 Total packages: 0
Traceback (most recent call last):
  File ".\Interface\CustomWidgets\InstallerWidgets.py", line 669, in <lambda>
TypeError: 'NoneType' object is not callable
Traceback (most recent call last):
  File ".\Interface\CustomWidgets\InstallerWidgets.py", line 669, in <lambda>
TypeError: 'NoneType' object is not callable
Traceback (most recent call last):
  File ".\Interface\CustomWidgets\InstallerWidgets.py", line 669, in <lambda>
TypeError: 'NoneType' object is not callable
🔵 Starting Winget search for updates
🟡 package Update for  (KB2504637) failed parsing, going for method 2...
🟢 Winget search for installed packages finished with 242 result(s)
🟢 Searching for string ""
🟢 Searching for string ""
🟢 Total packages: 242
🟢 Winget search for updates finished with 5 result(s)
🟡 Multiple versions of ImageMagick.ImageMagick are installed, latest version is installed. Not showing the update
🟢 Searching for string ""
Exception ignored in: <function BaseWindowsToaster.show_toast.<locals>.<lambda> at 0x000001CD0324B420>
Traceback (most recent call last):
  File "windows_toasts\toasters.py", line 147, in <lambda>
🟢 Searching for string ""
  File ".\Interface\CustomWidgets\GenericWidgets.py", line 738, in <lambda>
TypeError: ToastNotification.reportException() missing 1 required positional argument: 'id'
🟡 Can't get custom interval time! (got value was '')
🟢 Total packages: 4
🟢 PowerShell source search finished with 1 sources
🔵 Loading WingetUI log...
🔵 Copying log to the clipboard...
🔵 Loading WingetUI log...

Below is the output of the cli tools, system and the WinGetUI version
Output of: & "C:\Program Files\WingetUI\wingetui\PackageEngine\Managers\winget-cli_x64\winget.exe" upgrade
Name                                                         Id                          Version      Available    Source
-------------------------------------------------------------------------------------------------------------------------
ImageMagick 7.1.0-62 Q16-HDRI (64-bit) (2023-02-12)          ImageMagick.ImageMagick     <IP_ADDRESS>     <IP_ADDRESS>     winget
XnViewMP 1.5.5                                               XnSoft.XnViewMP             1.5.5        <IP_ADDRESS>      winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.40660 Microsoft.VCRedist.2013.x86 12.0.40660.0 12.0.40664.0 winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.21005 Microsoft.VCRedist.2013.x86 12.0.21005.1 12.0.40664.0 winget
4 upgrades available.
1 package(s) have version numbers that cannot be determined. Use --include-unknown to see all results.

Output of: & "C:\Program Files\WingetUI\wingetui\PackageEngine\Managers\winget-cli_x64\winget.exe" upgrade --include-unknown

Name                                                         Id                                   Version      Available    Source
----------------------------------------------------------------------------------------------------------------------------------
ImageMagick 7.1.0-62 Q16-HDRI (64-bit) (2023-02-12)          ImageMagick.ImageMagick              <IP_ADDRESS>     <IP_ADDRESS>     winget
XnViewMP 1.5.5                                               XnSoft.XnViewMP                      1.5.5        <IP_ADDRESS>      winget
Transmission Remote GUI 5.18                                 PeterDaveHello.TransmissionRemoteGUI Unknown      5.18.0       winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.40660 Microsoft.VCRedist.2013.x86          12.0.40660.0 12.0.40664.0 winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.21005 Microsoft.VCRedist.2013.x86          12.0.21005.1 12.0.40664.0 winget
5 upgrades available.

The following is a screenshot when using the System Winget under advanced settings:

WingetUI Log on startup
🟢 Using cached lang file
🟡 Using bundled lang file (forced=True)
🔵 It took 0.0040051937103271484 to load all language files
🟢 checkQueue Thread started!
🔵 Language file up-to-date
🔵 Found default chocolatey installation on expected location
---------------------------------------------------------------------------------------------------

   WingetUI version 2.2.0 (version number 2.2) log
   All modules loaded successfully and sys.stdout patched correctly, starting main script
   Translator function language set to "en"

---------------------------------------------------------------------------------------------------

 Log legend:
 🔵: Verbose
 🟢: Information
 🟡: Warning
 🟠: Handled unexpected exception
 🔴: Unhandled unexpected exception

🔵 Starting main application...
🔵 Looking for alive instances...
🔵 Starting API with random session authentication token d04fc8641130c4f31c4d324836a00c562e7fe032339d4f785cd20b6b2aed45a0
🟡 Found lock file(s), reactivating...
🔵 Reloading Winget sources...
🔵 Loading WingetUI AUMID...
🔵 Starting update check
🔵 Version URL: https://www.marticliment.com/versions/wingetui.ver
🟢 Updates not found
🟢 Downloaded latest metadata to local file from url https://raw.githubusercontent.com/marticliment/WingetUI/main/WebBasedData/screenshot-database-v2.json
🔵 Loaded metadata from local file
🔵 Starting Winget source search...
🟢 Winget source search finished with 2 sources
🔵 Reactivation signal ignored: RaiseWindow_[1704215957.8059437]
🟢 Found valid aumid {6D809377-6AF0-444B-8957-A3773F02200E}\WingetUI\wingetui.exe
{'sudoFound': True, 'sudoVersion': 'gsudo v2.0.4 (Branch.tags-v2.0.4.Sha.506efa024af0cef6e4b0cfec42e0c8c5d0b1472c)\r', 'ScoopFound': False, 'ScoopVersion': 'Scoop is disabled', 'ChocolateyFound': False, 'ChocolateyVersion': 'Chocolatey is disabled', 'PipFound': False, 'PipVersion': 'Pip is disabled', 'NpmFound': False, 'NpmVersion': 'Npm is disabled', '.NET ToolFound': False, '.NET ToolVersion': '.NET Tool is disabled', 'PowerShellFound': False, 'PowerShellVersion': 'PowerShell is disabled', 'WingetFound': True, 'WingetVersion': 'v1.6.3482  '}
🔵 Reached main ui load milestone
🟢 Discover tab loaded successfully
🟢 Total packages: 0
🟢 Update tab loaded successfully
🟢 Searching for string ""
🔵 Reloading sources...
🔵 Reloading Winget sources...
🟢 Uninstall tab loaded successfully
🔵 Starting Winget search for installed packages
🟢 Searching for string ""
🔵 Reloading Scoop sources...
🔵 Starting Winget source search...
🔵 Starting Scoop source search...
🔵 Starting Chocolatey source search...
🔵 Starting PowerShell source search...
🟢 Settings tab loaded!
🟢 Winget source search finished with 2 sources
🟢 About tab loaded!
🟢 Chocolatey source search finished with 1 sources
🟢 Scoop source search finished with 4 sources
🟢 Main application loaded...
🟢 Total packages: 0
Traceback (most recent call last):
  File ".\Interface\CustomWidgets\InstallerWidgets.py", line 669, in <lambda>
TypeError: 'NoneType' object is not callable
Traceback (most recent call last):
  File ".\Interface\CustomWidgets\InstallerWidgets.py", line 669, in <lambda>
TypeError: 'NoneType' object is not callable
Traceback (most recent call last):
  File ".\Interface\CustomWidgets\InstallerWidgets.py", line 669, in <lambda>
TypeError: 'NoneType' object is not callable
🟡 package Update for  (KB2504637) failed parsing, going for method 2...
🟢 Winget search for installed packages finished with 242 result(s)
🟢 Searching for string ""
🟢 Searching for string ""
🟢 Total packages: 242
🔵 Starting Winget search for updates
🟢 Winget search for updates finished with 116 result(s)
🟡 Multiple versions of ImageMagick.ImageMagick are installed, latest version is installed. Not showing the update
🟢 Searching for string ""
Exception ignored in: <function BaseWindowsToaster.show_toast.<locals>.<lambda> at 0x000002BE6E151EE0>
Traceback (most recent call last):
  File "windows_toasts\toasters.py", line 147, in <lambda>
🟢 Searching for string ""
  File ".\Interface\CustomWidgets\GenericWidgets.py", line 738, in <lambda>
🟡 Can't get custom interval time! (got value was '')
TypeError: ToastNotification.reportException() missing 1 required positional argument: 'id'
🟢 Total packages: 10
🟢 PowerShell source search finished with 1 sources
🔵 Starting update check
🔵 Version URL: https://www.marticliment.com/versions/wingetui.ver
🟢 Updates not found
🔵 Loading WingetUI log...
🔵 Copying log to the clipboard...
🔵 Loading WingetUI log...

Output of: & "${env:LOCALAPPDATA}\Microsoft\WindowsApps\winget.exe" upgrade
Name                                                         Id                                Version      Available    Source
-------------------------------------------------------------------------------------------------------------------------------
ImageMagick 7.1.0-62 Q16-HDRI (64-bit) (2023-02-12)          ImageMagick.ImageMagick           <IP_ADDRESS>     <IP_ADDRESS>     winget
RawTherapee version 5.8                                      RawTherapee.RawTherapee           5.8          5.9          winget
XnViewMP 1.5.5                                               XnSoft.XnViewMP                   1.5.5        <IP_ADDRESS>      winget
NAPS2                                                        Cyanfish.NAPS2                    6.1.2        7.2.2        winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.40660 Microsoft.VCRedist.2013.x86       12.0.40660.0 12.0.40664.0 winget
Python 3.12.1 (64-bit)                                       Python.Python.3.10                > 3.10.11    3.12.1       winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.21005 Microsoft.VCRedist.2013.x86       12.0.21005.1 12.0.40664.0 winget
Microsoft Windows Desktop Runtime - 6.0.25 (x64)             Microsoft.DotNet.DesktopRuntime.7 < 7.0.0      7.0.14       winget
9 upgrades available.

The following packages have an upgrade available, but require explicit targeting for upgrade:
Name           Id              Version       Available            Source
------------------------------------------------------------------------
Microsoft Edge Microsoft.Teams 120.0.2210.91 23257.2618.2432.4374 winget
2 package(s) have version numbers that cannot be determined. Use --include-unknown to see all results.

Output of: & "${env:LOCALAPPDATA}\Microsoft\WindowsApps\winget.exe" upgrade --include-unknown
Name                                                         Id                                   Version      Available    Source
----------------------------------------------------------------------------------------------------------------------------------
ImageMagick 7.1.0-62 Q16-HDRI (64-bit) (2023-02-12)          ImageMagick.ImageMagick              <IP_ADDRESS>     <IP_ADDRESS>     winget
RawTherapee version 5.8                                      RawTherapee.RawTherapee              5.8          5.9          winget
Voicemeeter, The Virtual Mixing Console                      VB-Audio.Voicemeeter.Banana          Unknown      <IP_ADDRESS>      winget
XnViewMP 1.5.5                                               XnSoft.XnViewMP                      1.5.5        <IP_ADDRESS>      winget
Transmission Remote GUI 5.18                                 PeterDaveHello.TransmissionRemoteGUI Unknown      5.18.0       winget
NAPS2                                                        Cyanfish.NAPS2                       6.1.2        7.2.2        winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.40660 Microsoft.VCRedist.2013.x86          12.0.40660.0 12.0.40664.0 winget
Python 3.12.1 (64-bit)                                       Python.Python.3.10                   > 3.10.11    3.12.1       winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.21005 Microsoft.VCRedist.2013.x86          12.0.21005.1 12.0.40664.0 winget
Microsoft Windows Desktop Runtime - 6.0.25 (x64)             Microsoft.DotNet.DesktopRuntime.7    < 7.0.0      7.0.14       winget
11 upgrades available.

The following packages have an upgrade available, but require explicit targeting for upgrade:
Name           Id              Version       Available            Source
------------------------------------------------------------------------
Microsoft Edge Microsoft.Teams 120.0.2210.91 23257.2618.2432.4374 winget

In conclusion
There is a difference between the embedded winget and the system winget, even though they are reporting the same version.
This might not be considered a bug, and if this was the case I would probably not have reported this.
Whatever was affecting my system, was some relic from previous installation.
Sorry to have wasted your time - I should have done this uninstall/reinstall first, following the first rule of IT
Should I open a  new bug/issue?
ImageMagick is still not shown in either, so there is still a minor bug if you still want to pursue this.

Sorry to have wasted your time - I should have done this uninstall/reinstall first, following

Don't worry, this bug shouldn't have occurred even if the older winget version was there.
I will investigate ImageMagick, since it should be shown on WingetUI.

I am sorry, but winget on windows 11 does not work in wingetui. If I use the above method I get in the latest PowerShell

& "${env:LOCALAPPDATA}\Microsoft\WindowsApps\winget.exe" --version
v1.6.3482
& "C:\Program Files\WingetUI\wingetui\PackageEngine\Managers\winget-cli_x64\winget.exe" --version
NO OUTPUT whatsoever

Somethging does not work. Uninstalling both and reinstalling them does not help.
It would be great if that bug could be found
Thanks.

Please try enabling "Use system Winget" from WingetUI Settings -> Experimental Features


Run generator to replace JSON with perl code in tests

exercises/rna-transcription/rna-transcription.t conflicts

Rebased.

Thanks @mienaikage /


Store head and base replay id for flakes

Without the head replay id it's impossible to find / load the correct screenshots for the flake retry

Merging to unblock


rubyfmt produces invalid ruby on wayward splats

Ruby version: 2.7.6
Rubyfmt git sha: v0.8.1

Input file
a = 1
b = 2
c = 3
*nums = [a, b, c]

p nums

N.B. - I don't know why we have that asterisk there, or what it's meant to achieve, but it is valid ruby and is the only bug I noticed when running rubyfmt on our ~400k lines of Ruby at work 😲
Rubyfmt's output
a = 1
b = 2
c = 3
*nums, = [a, b, c]

p(nums)

This breaks because
This is not valid ruby.

Thanks for the report! The good news is that it's a super quick fix, I can get a PR up for it shortly 👍

wow, so fast! 💨


Backport latest changes to uptime

Description
Backport latest changes to uptime branch
Issues Resolved
[List any issues this PR will resolve]
Check List

[ ] New functionality includes testing.

[ ] All tests pass, including unit test, integration test and doctest

[ ] New functionality has been documented.

[ ] New functionality has javadoc added
[ ] New functionality has user manual doc added

[ ] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@kavithacm Should we close this PR and create a fresh branch for Synthetics, as discussed?


🧹 Style

What does this PR do?
For some reason, # flake 8: noqa is applied in many files, which prevent ruff from fixing these files. This PR removes them.
Before submitting

[x] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[x] Did you read the contributor guideline,
Pull Request section?
[ ] Was this discussed/approved via a GitHub issue? Please add a link
to it if that's the case.
[ ] Did you make sure to update the documentation with your changes? Here are the
documentation guidelines.
[ ] Did you write any new necessary tests?

Who can review?
Anyone in the community is free to review the PR once the tests have passed. Feel free to tag
members/contributors who may be interested in your PR.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.

I don't understand why I need # flake8: noqa in __init__.py to make ruff happy. Otherwise I get something like "DPOConfig imported but not used". In transformers, they have the same structure but don't use noqa.

yeah there is an option in the ruff config to ignore this warning


VIEW COMPANY MISSION

[ ]  User should be able to see Company mission statement.

Assign me this to me


feat(AjaxObservable) : support 'PATCH' request type

Add support of the 'PATCH' request type based on the already existing 'PUT' request.

Coverage decreased (-0.01%) to 97.675% when pulling 46c954a431294fb87cbd791368d0d701a9446eba on herflis:my-fix-branch into 31dfc7324bf51b98df6678f072b7a3bd4c0b5888 on ReactiveX:master.

Coverage increased (+0.001%) to 97.678% when pulling 182151984d6654d237fae4ef989419c36dce65b2 on herflis:my-fix-branch into 3f01114a0cd916240e7f68a704acb1ca93027e3e on ReactiveX:master.

Awesome! I added a simple test as well. Thank you much!


Disable complexity check.

I am not sure that such a check is useful for the repo.
More details are here:
http://radon.readthedocs.io/en/latest/intro.html#cyclomatic-complexity
Existing code has many complexity warnings:
https://codeclimate.com/github/airbnb/caravel/issues?category=complexity&engine=
@mistercrunch - what do you think ?

i agree, i don't think this check is neccessary at this point in time.

++

LGTM

thanks !


No address in ingress

Rancher Server Setup

Rancher version: 2.6
Installation option (Docker install/Helm Chart):

If Helm Chart, Kubernetes Cluster and version (RKE1, RKE2, k3s, EKS, etc):
Helm Chart, Kubernetes Cluster bare-metal, version 1.21.4

Proxy/Cert Details:

Information about the Cluster

Kubernetes version: 1.21.4
Cluster Type (Local/Downstream):

If downstream, what type of cluster? (Custom/Imported or specify provider for Hosted/Infrastructure Provider):

Bare-metal
Describe the bug

Empty address in ingress
To Reproduce

Result
Expected Result

Screenshots

Additional context
<!--Add any other context about the problem here.—>

forgot add to anontaions:
kubernetes.io/ingress.class: nginx (or other ingress controller which deployed)