The size of tensor a (16) must match the size of tensor b (5) atnon-singleton dimension 3

The size of tensor a (16) must match the size of tensor b (5) atnon-singleton dimension 3
what's wrong

Try to set auto channels and auto sample rate in the setting

I honestly couldn't figure out what is wrong here, it might be related to the device because i tried on my mic and headphone and it is working just fine. Have you tried another mic / device ?

I have tested on other devices, also I'm using Windows 11.
When encoutering errors, I close the app, the progress seem not to be killed, and keep the GPU memory getting use.

Got the same issue.
In my case, if Whisper Translation is used, regardless keeping transcript or not. It will have the same error in the first few seconds.
The size of tensor a (x) must match the size of tensor b (y)
If I just use transcript without translation. No errors
If I use transcript in Whisper, and translate using Google translate. No errors

2023-04-21 09:13:44,485 - ERROR - The size of tensor a (13) must match the size of tensor b (5) at non-singleton dimension 3 (Record.py:720) [Thread-6 (rec_realTime)]
Traceback (most recent call last):
File "speech_translate\utils\Record.py", line 588, in rec_realTime

Some suggestion from Whisper AI community
https://github.com/openai/whisper/discussions/951
Hi, it appears that you're calling the model from different threads. The model is not equipped for that, mainly because of the kv cache logic using the hooks. I'd suggest keep using the lock, if that's not too much of a slowdown.

I guess the issue is in Record.py, you can't call two model.transcribe concurrently. It need some kind of lock between them, or have them in one thread.

Ok, I did a hacky fix using a Thread.lock acquire/release between model.transcribe in line 5xx and 7xx in Record.py
It works... you may want to implement it more elegantly

I'm having the same problem and wanted to edit record.py.
Seems I'm too dumb or just can't find the file.
I'm on Windows 10 and there is neither a utils directory nor the python file.
Can anybody help me? The online translation integration is nice but so much slower and eeven seems less accurate...

Ok, I did a hacky fix using a Thread.lock acquire/release between model.transcribe in line 5xx and 7xx in Record.py
It works... you may want to implement it more elegantly

Thanks for the help @kelvincht <3 i have added it to the code

@Dadangdut33 Unfortunately the issue is still there.
RuntimeError: The size of tensor a (12) must match the size of tensor b (5) at non-singleton dimension 3
I have also set auto channels and auto sample rate in the setting.. Nothing changed.
I am using the last version released.

@Dadangdut33 Unfortunately the issue is still there. RuntimeError: The size of tensor a (12) must match the size of tensor b (5) at non-singleton dimension 3
I have also set auto channels and auto sample rate in the setting.. Nothing changed.
I am using the last version released.

Its fixed on 1.3.0 which is not released yet. I will try to release it maybe tomorrow or the day after it

Fixed in 1.3.0 release


[Bug] llama3.1 70B v1/chat/completions error on Huawei Ascend 910B

Checklist

[X] 1. I have searched related issues but cannot get the expected help.
[X] 2. The bug has not been fixed in the latest version.
[ ] 3. Please note that if the bug-related issue you submitted lacks corresponding environment info and a minimal reproducible demo, it will be challenging for us to reproduce and resolve the issue, reducing the likelihood of receiving feedback.

Describe the bug
使用910B推理llama3.1 70B模型，对话接口 v1/chat/completions  会报错
TypeError: TextEncodeInput must be Union[TextInputSequence, Tuple[InputSequence, InputSequence]]
虽然使用 https://github.com/InternLM/lmdeploy/issues/2117#issuecomment-2249349074 这里的方法可以规避这个错误，但是感觉这个方法的推理质量存在问题，希望支持原生的 chat_teamplate。
"}
   ],
   "max_tokens": 128,
   "temperature": 1,
   "stream": true,
   "skip_special_tokens": false
 }'

Environment
root@b8eb9e7a22fa:/opt/lmdeploy# lmdeploy check_env
[W compiler_depend.ts:623] Warning: expandable_segments currently defaults to false. You can enable this feature by `export PYTORCH_NPU_ALLOC_CONF = expandable_segments:True`. (function operator())
sys.platform: linux
Python: 3.10.5 (main, Sep 24 2024, 08:21:42) [GCC 9.4.0]
CUDA available: False
MUSA available: False
numpy_random_seed:<PHONE_NUMBER>
GCC: gcc (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0
PyTorch: 2.1.0
PyTorch compiling details: PyTorch built with:
  - GCC 10.2
  - C++ Version: 201703
  - Intel(R) MKL-DNN v3.1.1 (Git Hash 64f6bcbcbab628e96f33a62c3e975f8535a7bde4)
  - OpenMP 201511 (a.k.a. OpenMP 4.5)
  - LAPACK is enabled (usually provided by MKL)
  - NNPACK is enabled
  - CPU capability usage: NO AVX
  - Build settings: BLAS_INFO=open, BUILD_TYPE=Release, CXX_COMPILER=/opt/rh/devtoolset-10/root/usr/bin/c++, CXX_FLAGS= -D_GLIBCXX_USE_CXX11_ABI=0 -fabi-version=11 -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -DNDEBUG -DUSE_KINETO -DLIBKINETO_NOCUPTI -DLIBKINETO_NOROCTRACER -DUSE_QNNPACK -DUSE_PYTORCH_QNNPACK -DUSE_XNNPACK -DSYMBOLICATE_MOBILE_DEBUG_HANDLE -O2 -fPIC -Wall -Wextra -Werror=return-type -Werror=non-virtual-dtor -Werror=bool-operation -Wnarrowing -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-unused-parameter -Wno-unused-function -Wno-unused-result -Wno-strict-overflow -Wno-strict-aliasing -Wno-stringop-overflow -Wno-psabi -Wno-error=pedantic -Wno-error=old-style-cast -Wno-invalid-partial-specialization -Wno-unused-private-field -Wno-aligned-allocation-unavailable -Wno-missing-braces -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Werror=cast-function-type -Wno-stringop-overflow, LAPACK_INFO=open, TORCH_DISABLE_GPU_ASSERTS=ON, TORCH_VERSION=2.1.0, USE_CUDA=OFF, USE_CUDNN=OFF, USE_EIGEN_FOR_BLAS=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=OFF, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=OFF, USE_NNPACK=ON, USE_OPENMP=ON, USE_ROCM=OFF,

TorchVision: 0.16.0
LMDeploy: 0.6.0+0fbb2ee
transformers: 4.44.2
gradio: Not Found
fastapi: 0.115.0
pydantic: 2.9.2
triton: Not Found
root@b8eb9e7a22fa:/opt/lmdeploy#

Error traceback
INFO:     <IP_ADDRESS>:39038 - "POST /v1/chat/completions HTTP/1.1" 500 Internal Server Error
ERROR:    Exception in ASGI application
Traceback (most recent call last):
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/uvicorn/protocols/http/h11_impl.py", line 406, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/uvicorn/middleware/proxy_headers.py", line 70, in __call__
    return await self.app(scope, receive, send)
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/fastapi/applications.py", line 1054, in __call__
    await super().__call__(scope, receive, send)
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/applications.py", line 113, in __call__
    await self.middleware_stack(scope, receive, send)
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/middleware/errors.py", line 187, in __call__
    raise exc
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/middleware/errors.py", line 165, in __call__
    await self.app(scope, receive, _send)
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/middleware/cors.py", line 85, in __call__
    await self.app(scope, receive, send)
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 62, in __call__
    await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/_exception_handler.py", line 62, in wrapped_app
    raise exc
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/_exception_handler.py", line 51, in wrapped_app
    await app(scope, receive, sender)
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/routing.py", line 715, in __call__
    await self.middleware_stack(scope, receive, send)
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/routing.py", line 735, in app
    await route.handle(scope, receive, send)
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/routing.py", line 288, in handle
    await self.app(scope, receive, send)
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/routing.py", line 76, in app
    await wrap_app_handling_exceptions(app, request)(scope, receive, send)
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/_exception_handler.py", line 62, in wrapped_app
    raise exc
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/_exception_handler.py", line 51, in wrapped_app
    await app(scope, receive, sender)
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/routing.py", line 73, in app
    response = await f(request)
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/fastapi/routing.py", line 301, in app
    raw_response = await run_endpoint_function(
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/fastapi/routing.py", line 212, in run_endpoint_function
    return await dependant.call(**values)
  File "/opt/lmdeploy/lmdeploy/serve/openai/api_server.py", line 475, in chat_completions_v1
    async for res in result_generator:
  File "/opt/lmdeploy/lmdeploy/serve/async_engine.py", line 514, in generate
    prompt_input = await self._get_prompt_input(prompt,
  File "/opt/lmdeploy/lmdeploy/serve/async_engine.py", line 458, in _get_prompt_input
    input_ids = self.tokenizer.encode(prompt, add_bos=sequence_start)
  File "/opt/lmdeploy/lmdeploy/tokenizer.py", line 600, in encode
    return self.model.encode(s, add_bos, add_special_tokens, **kwargs)
  File "/opt/lmdeploy/lmdeploy/tokenizer.py", line 366, in encode
    encoded = self.model.encode(s,
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/transformers/tokenization_utils_base.py", line 2825, in encode
    encoded_inputs = self.encode_plus(
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/transformers/tokenization_utils_base.py", line 3237, in encode_plus
    return self._encode_plus(
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/transformers/tokenization_utils_fast.py", line 601, in _encode_plus
    batched_output = self._batch_encode_plus(
  File "/usr/local/python3.10.5/lib/python3.10/site-packages/transformers/tokenization_utils_fast.py", line 528, in _batch_encode_plus
    encodings = self._tokenizer.encode_batch(
TypeError: TextEncodeInput must be Union[TextInputSequence, Tuple[InputSequence, InputSequence]]

@lvhan028 please help me solve this probelm

related issue: https://github.com/InternLM/lmdeploy/issues/2117

pls add --log-level INFO when you launch the api_server. Let's check the logs

pls add --log-level INFO when you launch the api_server. Let's check the logs

2024-09-26 08:07:25,945 - lmdeploy - INFO - model_weight_loader.py:152 - rank[2] loading weights - "model-00018-of-00030.safetensors"
2024-09-26 08:07:25,953 - lmdeploy - INFO - model_weight_loader.py:152 - rank[3] loading weights - "model-00022-of-00030.safetensors"
2024-09-26 08:07:26,069 - lmdeploy - INFO - model_weight_loader.py:152 - rank[3] loading weights - "model-00002-of-00030.safetensors"
2024-09-26 08:07:26,177 - lmdeploy - INFO - model_weight_loader.py:152 - rank[3] loading weights - "model-00017-of-00030.safetensors"
2024-09-26 08:07:26,283 - lmdeploy - INFO - model_weight_loader.py:152 - rank[3] loading weights - "model-00007-of-00030.safetensors"
/usr/local/python3.10.5/lib/python3.10/site-packages/torch_npu/distributed/distributed_c10d.py:93: UserWarning: HCCL doesn't support gather at the moment. Implemented with allgather instead.
warnings.warn("HCCL doesn't support gather at the moment. Implemented with allgather instead.")
2024-09-26 08:07:30,559 - lmdeploy - INFO - cache_engine.py:36 - build CacheEngine with config:CacheConfig(max_batches=16, block_size=64, num_cpu_blocks=204, num_gpu_blocks=2837, window_size=-1, cache_max_entry_count=0.8, max_prefill_token_num=8192, enable_prefix_caching=False)
2024-09-26 08:07:30,605 - lmdeploy - INFO - async_engine.py:168 - updated backend_config=PytorchEngineConfig(dtype='auto', tp=4, session_len=None, max_batch_size=16, cache_max_entry_count=0.8, prefill_interval=16, block_size=64, num_cpu_blocks=0, num_gpu_blocks=0, adapters=None, max_prefill_token_num=8192, thread_safe=False, enable_prefix_caching=False, device_type='ascend', eager_mode=False, custom_module_map=None, download_dir=None, revision=None)
HINT:    Please open http://<IP_ADDRESS>:23333 in a browser for detailed api usage!!!
HINT:    Please open http://<IP_ADDRESS>:23333 in a browser for detailed api usage!!!
HINT:    Please open http://<IP_ADDRESS>:23333 in a browser for detailed api usage!!!
INFO:     Started server process [11]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://<IP_ADDRESS>:23333 (Press CTRL+C to quit)
INFO:     <IP_ADDRESS>:40146 - "POST /v1/chat/completions HTTP/1.1" 500 Internal Server Error
ERROR:    Exception in ASGI application
Traceback (most recent call last):
File "/usr/local/python3.10.5/lib/python3.10/site-packages/uvicorn/protocols/http/h11_impl.py", line 406, in run_asgi
result = await app(  # type: ignore[func-returns-value]
File "/usr/local/python3.10.5/lib/python3.10/site-packages/uvicorn/middleware/proxy_headers.py", line 70, in call
return await self.app(scope, receive, send)
File "/usr/local/python3.10.5/lib/python3.10/site-packages/fastapi/applications.py", line 1054, in call
await super().call(scope, receive, send)
File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/applications.py", line 113, in call
await self.middleware_stack(scope, receive, send)
File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/middleware/errors.py", line 187, in call
raise exc
File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/middleware/errors.py", line 165, in call
await self.app(scope, receive, _send)
File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/middleware/cors.py", line 85, in call
await self.app(scope, receive, send)
File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 62, in call
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/_exception_handler.py", line 62, in wrapped_app
raise exc
File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/_exception_handler.py", line 51, in wrapped_app
await app(scope, receive, sender)
File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/routing.py", line 715, in call
await self.middleware_stack(scope, receive, send)
File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/routing.py", line 735, in app
await route.handle(scope, receive, send)
File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/routing.py", line 288, in handle
await self.app(scope, receive, send)
File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/routing.py", line 76, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/_exception_handler.py", line 62, in wrapped_app
raise exc
File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/_exception_handler.py", line 51, in wrapped_app
await app(scope, receive, sender)
File "/usr/local/python3.10.5/lib/python3.10/site-packages/starlette/routing.py", line 73, in app
response = await f(request)
File "/usr/local/python3.10.5/lib/python3.10/site-packages/fastapi/routing.py", line 301, in app
raw_response = await run_endpoint_function(
File "/usr/local/python3.10.5/lib/python3.10/site-packages/fastapi/routing.py", line 212, in run_endpoint_function
return await dependant.call(**values)
File "/opt/lmdeploy/lmdeploy/serve/openai/api_server.py", line 475, in chat_completions_v1
async for res in result_generator:
File "/opt/lmdeploy/lmdeploy/serve/async_engine.py", line 514, in generate
prompt_input = await self._get_prompt_input(prompt,
File "/opt/lmdeploy/lmdeploy/serve/async_engine.py", line 458, in _get_prompt_input
input_ids = self.tokenizer.encode(prompt, add_bos=sequence_start)
File "/opt/lmdeploy/lmdeploy/tokenizer.py", line 600, in encode
return self.model.encode(s, add_bos, add_special_tokens, **kwargs)
File "/opt/lmdeploy/lmdeploy/tokenizer.py", line 366, in encode
encoded = self.model.encode(s,
File "/usr/local/python3.10.5/lib/python3.10/site-packages/transformers/tokenization_utils_base.py", line 2825, in encode
encoded_inputs = self.encode_plus(
File "/usr/local/python3.10.5/lib/python3.10/site-packages/transformers/tokenization_utils_base.py", line 3237, in encode_plus
return self._encode_plus(
File "/usr/local/python3.10.5/lib/python3.10/site-packages/transformers/tokenization_utils_fast.py", line 601, in _encode_plus
batched_output = self._batch_encode_plus(
File "/usr/local/python3.10.5/lib/python3.10/site-packages/transformers/tokenization_utils_fast.py", line 528, in _batch_encode_plus
encodings = self._tokenizer.encode_batch(
TypeError: TextEncodeInput must be Union[TextInputSequence, Tuple[InputSequence, InputSequence]]


Enable pick up the latest version

Coverage remained the same at 97.631% when pulling 205b65f88c09c4b4281cdb4a1dec321f8946ae84 on develop into 786442b7ba7d10c110c2678a6f803cb9bede48c6 on main.


daemon not starting

Environment

OS: [Windows.]
Scrcpy version: [2.5]
Installation method: [from github]
**Device model:galaxy s22 ultra
Android version: [14]

Describe the bug

daemon not running; starting now at tcp:5037
could not read ok from ADB Server
failed to start daemon
error: cannot connect to daemon
ERROR: "adb start-server" exited unexpectedly
ERROR: Could not start adb server
ERROR: Server connection failed

Windows 7? See #4391


The Boost Version

I have Ubuntu16.04, CUDA 9.0, PCL 1.8 and c++11, and I am using the Eigen provided with the repo, I would like to ask which version of Boost is compatible?

The one provided with PCL works well for me.


cmi5 profile example

A complete cmi5 example. Some of the structure is assuming some other PRs are merged. No contexts, as they aren't finalized yet, and since document resources in profiles currently require URI identifiers, the cmi5 ones with non-URI identifiers are not modeled here.
Many of the rules for patterns of statements in cmi5 cannot be modeled because they are structural at the AU level, but registrations in cmi5 are at the course level, which can contain several AUs, so it isn't possible to handle them.

great example, very clean and easy to follow


changelog and manual updates, plus some last-minute fixes

Mostly stuff we already discussed.
Feel free to make further changes to either the manual or changelog according to taste (obviously).
The race condition in c8cf0befc6c816 was introduced in a0bf548fc56839, so it was never present in the stable branch :-p

Nice, I like most of what's in here. I may adjust some terms in the manual and all, but on the whole nice changes! Will letcha know once I've taken a proper review of it.


fix: no trigger for tkn prs with no event guid

Signed-off-by: ankitm123<EMAIL_ADDRESS>related to https://github.com/jenkins-x/lighthouse/issues/1420

/hold

/close
This wil break manual triggering, as those dont have a guid.


preconditioner Ic without the solver type

This PR makes the preconditioner IC wrapper without SolverType. It moves the solver type into the factory operator.
When we provide the solver, the SolverType is useless but we still need to put it into template.
the type requirement is the same as original.
Ic<SolverType>::build().on(exec); -> IcWrapper::build().with_l_solver_factory(IcWrapper<SolverType>(exec)).on(exec)
or any IcWrapper::build().with_l_solver_factory(linop_factory).on(exec);
It's also good for ResourceManager.
TODO:

[ ] change the explicit type as when merging SolverBase
[ ] add IluWrapper

The whole factorization preconditioner setup needs to be reworked (https://github.com/ginkgo-project/ginkgo/issues/472), do you need this urgently? I am not really happy with adding a second *Wrapper type that does the same thing and likely removing it with 2.0 again.


Option to add owner references while creating a pod

Change Overview
There is a requirement to create backup-data-stats pod with owner references. This PR adds an option that can be used to create a pod with owner references
Pull request type
Please check the type of change your PR introduces:

[x] :construction: Work in Progress
[ ] :rainbow: Refactoring (no functional changes, no api changes)
[ ] :hamster: Trivial/Minor
[ ] :bug: Bugfix
[ ] :sunflower: Feature
[ ] :world_map: Documentation
[ ] :robot: Test

Issues

#XXX

Test Plan

[ ] :muscle: Manual
[ ] :zap: Unit test
[ ] :green_heart: E2E

LGTM


Update favicon

The application was using default react favicon which needs to be updated with casbin logo. The favicon is created using the casbin logo fetched from https://casbin.org/img/casbin.svg

lgtm


Fix broken link on the docs badge

The URL http://www.kitura.io/en/api/ no longer exists.

Codecov Report

Merging #1300 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1300   +/-   ##
=======================================
  Coverage   83.19%   83.19%
=======================================
  Files          41       41
  Lines        3451     3451
=======================================
  Hits         2871     2871
  Misses        580      580

Flag
Coverage Δ

#Kitura
83.19% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Waypoint: Iterate with JavaScript For Loops - easy to cheat

Challenge http://www.freecodecamp.com/challenges/waypoint-iterate-with-javascript-for-loops has an issue. Please describe how to reproduce it, and include links to screenshots if possible.
The 2 assertions check for the letters "for" in the code, which is already there in the comment section and the second can be easily "faked" with just entering the values in the array itself. Does a better check exist? I used the for loop ofcourse as well but I sometimes check if I have a possiblity to "cheat" (why would anyone do this, but I still check it :) )
var myArray = [0,1,2,3,4];
//Push the numbers zero through four to myArray using a "for loop" like above.

This is code that worked for the waypoint!

I don't think cheating should be too big of a worry. If someone is knowledgeable enough to figure out how to cheat the tests, they probably know what a for loop is. If not, their loss. ;)


feat: add opentelemetry 1.1.0beta3 release

update opentelemetry with release 1.1.0beta3

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


strings.chomp

Removes record separator characters (ex \n) from the end of a string.
Checklist

[x] implementation
[x] tests
[x] jsdoc

Details

References

chomp (String) - APIDoc.com/ruby
String - RubyDoc.org

Added in 0.43


Installation problem

hello
I have Eufy Doorbell and I installed eufy-security-ws and everything worked great.
Yesterday I removed the and reinstalled and the integration just doesn't connect.
What did I do wrong?
Please help me to install successfully
Thanks

Same here

Same here

try unchecking then rechecking the ffmpeg logs button.  Or just leave it unchecked.  That has worked for in the past.

+1 on the above about unchecking the FFMPEG because that worked for me with a Eufy camera but, I'm also having an issue with integrating the Eufy doorbell since I got it 2 days ago. Unchecking the FFMPEG doesn't resolve it for me in this case.

Same here.

+1

@dewoert please move into bropat's version of add-on (Current version: 1.5.2)

After update to 6.3.0 with bropat's 1.5.2
`
This error originated from a custom integration.
Logger: homeassistant.config_entries
Source: custom_components/eufy_security/eufy_security_api/api_client.py:350
Integration: Eufy Security (documentation, issues)
First occurred: 07:07:28 (1 occurrences)
Last logged: 07:07:28
Error setting up entry <IP_ADDRESS> for eufy_security
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 387, in async_setup
result = await component.async_setup_entry(hass, self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/eufy_security/init.py", line 50, in async_setup_entry
await coordinator.initialize()
File "/config/custom_components/eufy_security/coordinator.py", line 39, in initialize
await self._api.connect()
File "/config/custom_components/eufy_security/eufy_security_api/api_client.py", line 73, in connect
await self._set_products()
File "/config/custom_components/eufy_security/eufy_security_api/api_client.py", line 100, in _set_products
result = await self._start_listening()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/eufy_security/eufy_security_api/api_client.py", line 147, in _start_listening
return await self._send_message_get_response(OutgoingMessage(OutgoingMessageType.start_listening))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/eufy_security/eufy_security_api/api_client.py", line 350, in _send_message_get_response
return await future
^^^^^^^^^^^^
asyncio.exceptions.CancelledError
`
I get verification code in the mail but I don't have where to put it because the integration fails

Please follow #795

@dewoert please move into bropat's version of add-on (Current version: 1.5.2)

Removed and installed the bropat add-on, and that working now.
Only left with issue with the true/false in the RTSP stream.
Looking into that issue now. Saw allready other info about it.

I do not have a solution for true/false in config window, please manually update /config/.storage/core.config_entries file carefully.


FP in trivy because of confusing sha1 info in trivy java db

I see several issues in java db that all together causes a FP in trivy and need to be handled in the trivy-java-db and in trivy...

in the latest fetched trivy java db I see that the latest version of kaml is missing in the db. version 0.53.0 was released on 18.3.2022. the question why is it missing... maybe because of next item
as you can see https://repo1.maven.org/maven2/com/charleskorn/kaml/kaml/0.52.0/kaml-0.52.0.jar.sha1 and https://repo1.maven.org/maven2/com/charleskorn/kaml/kaml/0.53.0/kaml-0.53.0.jar.sha1. The two versions have the same sha1... I wonder how can this be.... and this is leading to next item
in case we try to scan kaml-0.53.0.jar and because the only entry in the java db for the sha1 1464f167409b1df8aa89b1630f06036b71872b7a is for 0.52.0, and because the file does not have version info, we query the db for the sha1 and get version 0.52.0 and report CVE-2023-28118 for version 0.53.0 which was fixed in 0.53.0 as stated in https://nvd.nist.gov/vuln/detail/CVE-2023-28118

I wonder if the digest is wrong. Weirdly, two versions have the same digest.

@knqyf263, I told you guys on Twitter about this a few weeks ago :) I'm recreating this project to store additional metadata about the jar, such as package names, class names, etc. a better semantic comparison could be made to match packages. It's a fairly sizeable project, so collaborating would be nice.

If the digests are the same, all the information such as the class names are the same, right? Storing additional metadata doesn't help, then. But it could help if digests are wrong and we cannot trust them.

Just tested my tool and it worked correctly.
With kaml there was no difference since the jars are identical with a placeholder manifest file, so the sbom tool could rightly say kaml-0.53.0 is really kaml-0.52.0.
With kaml-jvm there is a subtle difference which got picked up.
❯ diff kaml-jvm-0.52.0.cpg.slices.json kaml-jvm-0.53.0.cpg.slices.json
155a156,171
>       "name" : "com.charleskorn.kaml.ForbiddenAnchorOrAliasException",
>       "fields" : [
>       ],
>       "procedures" : [
>         {
>           "callName" : "<init>",
>           "paramTypes" : [
>             "com.charleskorn.kaml.ForbiddenAnchorOrAliasException",
>             "java.lang.String",
>             "com.charleskorn.kaml.YamlPath"
>           ],
>           "returnType" : "void"
>         }
>       ]
>     },
>     {
1222a1239,1243
>         },
>         {
>           "name" : "allowAnchorsAndAliases",
>           "typeFullName" : "boolean",
>           "literal" : false
1324a1346,1352
>           "callName" : "getAllowAnchorsAndAliases$kaml",
>           "paramTypes" : [
>             "com.charleskorn.kaml.YamlConfiguration"
>           ],
>           "returnType" : "boolean"
>         },
>         {
1347a1376
>             "boolean",
1368c1397,1398
<             "int"
---
>             "int",
>             "boolean"
1428a1459,1465
>           "callName" : "component13$kaml",
>           "paramTypes" : [
>             "com.charleskorn.kaml.YamlConfiguration"
>           ],
>           "returnType" : "boolean"
>         },
>         {
1471c1508,1509
<             "int"
---
>             "int",
>             "boolean"
1490a1529
>             "boolean",
3397a3437,3441
>           "name" : "$path",
>           "typeFullName" : "com.charleskorn.kaml.YamlPath",
>           "literal" : false
>         },
>         {
3429a3474
>             "com.charleskorn.kaml.YamlPath",
3450a3496,3500
>           "name" : "allowAnchorsAndAliases",
>           "typeFullName" : "boolean",
>           "literal" : false
>         },
>         {
3614a3665,3671
>           "callName" : "access$getAllowAnchorsAndAliases$p",
>           "paramTypes" : [
>             "com.charleskorn.kaml.YamlNodeReader"
>           ],
>           "returnType" : "boolean"
>         },
>         {
3626c3683,3684
<             "java.lang.String"
---
>             "java.lang.String",
>             "boolean"
3635a3694
>             "boolean",

Commands and tools used to create this intermediate representation for comparison.
# Install cpggen from https://github.com/AppThreat/cpggen
cpggen -i<EMAIL_ADDRESS>--slice
cpggen -i<EMAIL_ADDRESS>--slice

If the digests are the same, all the information such as the class names are the same, right? Storing additional metadata doesn't help, then. But it could help if digests are wrong and we cannot trust them.

The logic used would be what is the lowest version of this package that is semantically similar to the version referred and downloaded for this repo. So even if kaml-0.52.0 and kaml-0.53.0 have same hash and content, the sbom tool would consider it as kaml-0.52.0.

@prabhu the problem is not with these jars
the problem is with these jars:
https://repo1.maven.org/maven2/com/charleskorn/kaml/kaml/0.52.0/kaml-0.52.0.jar.sha1 https://repo1.maven.org/maven2/com/charleskorn/kaml/kaml/0.53.0/kaml-0.53.0.jar.sha1
They are exactly the same jar with the same content (no content actually) and same sha1

Further, hashes should never be trusted.

We can discuss it, but it seems to be off-topic in this issue. The original problem is kaml-0.52.0 and kaml-0.53.0 are the same, but the advisory says CVE-2023-28118 was fixed in 0.53.0. If kaml-jvm has differences, isn't GHSA wrong?
It refers to com.charleskorn.kaml:kaml, but shouldn't it be com.charleskorn.kaml:kaml-jvm?
https://mvnrepository.com/artifact/com.charleskorn.kaml/kaml-jvm

It's one of those meta-packages where referring it would download the correct child package. https://github.com/charleskorn/kaml#referencing-kaml. GHSA could help by referring to kaml-jvm in addition to kaml, and there is a precedence with log4j-api already. But in this case, the issue is not false negatives but false positives due to tools relying only on hashes.

But in this case, the issue is not false negatives but false positives due to tools relying only on hashes.

Why...?


Writing Multiple Functions

I understand cloud functions were recently updated to 1.0. I saw the original post here and also created my own SO post, I am trying to understand how to create multiple cloud functions as I plan on having 5 - 10 in total and do not want to include all in my index.js:
I understand Cloud Functions recently updated to v1.0.
I am trying to write multiple functions from within Android Studio. I plan on having several cloud functions, and want to ensure my data structure is correct. Here is the current setup I have:

index.js
const functions = require('firebase-functions');
const trackVote = require('./trackVote')
const trendingCopy = require('./trendingCopy')
const admin = require('firebase-admin');
admin.initializeApp();

exports.trackVote = functions.firestore.document('Polls/{pollId}/responses/{userId}').onCreate(trackVoteModule.handler);
exports.trendingCopy = functions.firestore.document('Polls').onCreate(trendingCopyModule.handler);

trackVote:
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();

exports.handler = (change, context => {

       const data = change.after.data();
       const answerSelected = data.answer;

       const answerRef = admin.firestore().doc(`Polls/${event.params.pollId}/answers/${answerSelected}`);
       const voteCountRef = admin.firestore.doc(`Polls/${event.params.pollId}/vote_count`);

        return admin.firestore().runTransaction(t => {
                    return t.get(answerRef)
                        .then(doc => {
                            if (doc.data()) {
                                t.update(answerRef, { vote_count: doc.data().vote_count + 1 });
                            }
                        })
                };
          //TODO DO NOT ADD TO GIT
         return admin.firestore().runTransaction(t => {
            return t.get(voteCountRef)
                .then(doc =>){
                    if (doc.data()){
                        t.update(voteCountRef, {vote_count:doc.data().vote_count+1});
                    }
                }
         });

});

    });

Below is my console:

Error: functions predeploy error: Command terminated with non-zero exit code1

EDIT: I have seen this as a proposed solution, however it provides multiple options and unsure of best practice: https://github.com/firebase/functions-samples/issues/170

i just want some help,,,actually i just want to push a notification to two different modules in same app like notification for attendance node and notification for Result node …but i cant understand how to do this plz help me if anyone know how to do this…….Thank u :)

i just want some help,,,actually i just want to push a notification to two different modules in same app like notification for attendance node and notification for Result node …but i cant understand how to do this plz help me if anyone know how to do this…….Thank u :)

@troy21688 as you noticed, the correct thing to do is define your functions in other files and then just re-export them in index.js.  That's the correct pattern.  And you also pointed out that there's great discussion on this in #170, so going to close this.

@samtstern why isn't this solved by Firebase team? Instead we have to filter through that thread of 50 different versions of the same idea every time we want to create more than a toy project with 5 or more functions. It seems completely in line with Firebase incentives of wanting people to use their product effectively (and in volume) to handle this in official way (to benefit cold start times especially), no?
At the very least shouldn't it be documented...somewhere?
Perhaps a reference to this:
https://github.com/gramstr/better-firebase-functions

@cdock1029 just to confirm are you asking for some documentation on firebase.google.com that shows how to organize functions code into more than one file?

@cdock1029 we took your suggestion and added a new page on this topic:
https://firebase.google.com/docs/functions/organize-functions
In our opinion something like better-firebase-functions is premature optimization in most cases, although there's nothing wrong with using it!

Great, looks good!
Any ballpark figure on number of functions beyond which loading all of them effects cold starts? Just wondering if the team had measured this...

@cdock1029  you can check out this article for some benchmarks but I want to point out that there are two optimizations in better-firebase-functions:

Instead of globally loading all your dependencies and variables, only load them as needed within your functions.
Instead of globally loading all of your function entrypoints, use the GCLOUD_FUNCTION environment variable to decide at runtime which one you need to execute and only evaluate that code.

(1) can be a big help because dependencies can be very large, this is something you can do yourself without anything as complex as better-firebase-functions.  You just move your import or require statements into the function body.
  It's extremely unlikely that this is your bottleneck, you'd probably need tens of thousands of lines of JS to even notice the benefit of optimizing for this.

OK that makes sense..I think what ultimately motivates some to dynamically load specific functions is it accomplishes (1) by itself, avoiding dynamic imports (requires lose typo info I'm thinking?) and initialization code in the functions, and having to write all function imports into your main entry file. Small win, but maybe it's mostly a matter of DX vs actual performance.
I'll try the way you suggest.. probably a misplaced concern just cause I'm not used to working with dynamic imports in node.
Thanks


Add a local layer status icon in fastfetch

We use an icon in the fastfetch to show when people are on a signed image. This is great because if you see a friend's flexing screenshot and you see a red X you can help them out.

We should offer something similar for when running in pure image mode.
Before sending a pull request please pitch your idea, it doesn't need to be in your face but noticeable for a user to notice.  I think something akin to that warning light in your dashboard, but nothing too serious. It's like when my wife puts my car in comfort mode, it's not the end of the world but seriously we only drive in sport mode around here.
References:
https://github.com/ublue-os/bluefin/pull/1903/files

I feel like it should be just a little red bubble on the right of the icon indicating to the user that there is something still wrong.  Once they are on the pure image based mode they get a fancier icon instead of the lock icon, something cool, maybe image-specific (galaxy for Aurora, dino for Bluefin, controller for bazzite...).

What about 🔏 (lock with pen) when using local layers instead of 🔐 on a pure image?
Other icons which would be fitting for images with local layers imho (ordered by my preference):
🛠
🔺
🔸
♦
🧩
❗
⭕
✒
✏
⛓💥 (local layers) -> ⛓ (pure images)


Problem with requirement.txt package version handling

Bug description
Trying to install the following via requirements.txt:
pygdal=="`gdal-config --version`.*"

as per pygdal docs.
Expected behaviour
The package should build. (The pip install works fine from the command line.)
Actual behaviour
I get a quote mismatch error in the build step.
ERROR: Exception:
Traceback (most recent call last):
  File "/srv/conda/envs/notebook/lib/python3.7/site-packages/pip/_internal/cli/base_command.py",line 178, in main
    status = self.run(options, args)
  File "/srv/conda/envs/notebook/lib/python3.7/site-packages/pip/_internal/commands/install.py",line 326, in run
    self.name, wheel_cache
  File "/srv/conda/envs/notebook/lib/python3.7/site-packages/pip/_internal/cli/base_command.py",line 288, in populate_requirement_set
    use_pep517=options.use_pep517):
  File "/srv/conda/envs/notebook/lib/python3.7/site-packages/pip/_internal/req/req_file.py", line 112, in parse_requirements
    for req in req_iter:
  File "/srv/conda/envs/notebook/lib/python3.7/site-packages/pip/_internal/req/req_file.py", line 173, in process_line
    shlex.split(options_str), defaults)  # type: ignore
  File "/srv/conda/envs/notebook/lib/python3.7/shlex.py", line 305, in split
    return list(lex)
  File "/srv/conda/envs/notebook/lib/python3.7/shlex.py", line 295, in __next__
    token = self.get_token()
  File "/srv/conda/envs/notebook/lib/python3.7/shlex.py", line 105, in get_token
    raw = self.read_token()
  File "/srv/conda/envs/notebook/lib/python3.7/shlex.py", line 187, in read_token
    raise ValueError("No closing quotation")
ValueError: No closing quotation

How to reproduce
Try launching https://github.com/ouseful-testing/pygdal on MyBinder.

I don't think you can put things in a requirements.txt that need evaluating by the shell. It can only contain strings. So you will have to write the version explicitly.
The instructions on the pygdal page assume that you shell will run the command in between the ` quotes and replace it with the output of the command.

Ah, ok... so I guess that sort of package install (where the package to be installed needs to be set to a version dependent on the version of another package which is not in itself pinned) will have to be provided via a postBuild step?

Jupp.


Request Timeout per request

I've been wandering around the code a little bit and noticed there is no way of specifying a request-timeout configuration per request in the HttpClient. It is actually a global configuration that is set at the HTTP client configuration level.
Do you find this feasible?

Just to be clear, the configuration is global per connection, so depending on what you're doing, you can have different timeouts per request simply by creating a new client for each request.  I think right now that kind of workflow is a little cumbersome (since you have to manually remember to close each connection after sending the request), and it doesn't work in high-throughput situations, but it's doable.
When talking about requests being sent on the same connection having different timeouts, it's definitely something we can do but we simply haven't needed that kind of control.  On the technical side it would require some changes to how we currently check for timeouts, since right now we only have to look at the head of the queue, but I don't think it's anything insurmountable.

Correct. We have a high-throughput scenario (with HTTP Pipelining) where we need to configure a different timeout per request. However, if the timeout expires we would like the connection to be left open (right now, it seems that it closes the connection and triggers the reconnection logic).
Does it make sense? Am I overlooking something?

Yeah that's generally how things work.  A timeout can occur at two different points.  If a request is waiting to be sent and it times out, the request is essentially cancelled and the connection is unaffected.  If a request times out after it has been sent, then the connection is killed.
Your use case also sounds reasonable and is probably something we should support, it's just not one that we've had ourselves.  We have some planned upcoming work on client request processing in general so I think addressing this would fit in with that.
On that note I think it's also definitely worth re-examining that connection logic as well.  Killing the connection on a timed-out sent request makes sense sometimes but not all the time.  I'd also like to better reflect the fact (possibly through different types of exceptions) that a timed-out pending request has the guarantee that it was definitely not received by the remote host, but a timed-out sent request may have been received, which is important for non-idempotent requests.

That sounds great! Thanks for taking the time to reply and prioritize this in the upcoming changes.

Closing for now as this should be recreated as an RFC.


Cannot find definitions of List, Cons and Nil

I'm trying to run the code samples from the readme but can't because apparently Kind can't find the definitions of the List type and Cons and Nil constructors.
My code
// Applies a function to every element of a list
Map <a> <b> (list: List a) (f: a -> b) : List b
Map a b Nil              f             = Nil
Map a b (Cons head tail) f             = Cons (f head) (Map tail f)

// Black Friday Theorem. Proof that, for every Nat n: n * 2 / 2 == n.
BlackFridayTheorem (n: Nat)     : Equal Nat (Nat.half (Nat.double n)) n
BlackFridayTheorem Nat.zero     = Equal.refl
BlackFridayTheorem (Nat.succ n) = Equal.apply (x => Nat.succ x) (BlackFridayTheorem n)

But when I try to run it with kind2 run file.kind2 it gives me compile errors
   CHECKING  The file 'test.kind2'
   ERROR  Cannot find the definition 'List'.

      ┌──[test.kind2:2:20]
      │
    1 │    // Applies a function to every element of a list
    2 │    Map <a> <b> (list: List a) (f: a -> b) : List b
      │                       ┬───                  ┬───
      │                       │                     └Here!
      │                       └Here!
    3 │    Map a b Nil              f             = Nil

      Hint: Take a look at the rules for name searching at https://github.com/Kindelia/Kind2/blob/master/guide/naming.md

   ERROR  Cannot find the definition 'Cons'.

      ┌──[test.kind2:4:10]
      │
    3 │    Map a b Nil              f             = Nil
    4 │    Map a b (Cons head tail) f             = Cons (f head) (Map tail f)
      │             ┬───                            ┬───
      │             │                               └Here!
      │             └Here!

      Hint: Take a look at the rules for name searching at https://github.com/Kindelia/Kind2/blob/master/guide/naming.md

   ERROR  Cannot find the definition 'Nil'.

      ┌──[test.kind2:3:9]
      │
    2 │    Map <a> <b> (list: List a) (f: a -> b) : List b
    3 │    Map a b Nil              f             = Nil
      │            ┬──                              ┬──
      │            │                                └Here!
      │            └Here!
    4 │    Map a b (Cons head tail) f             = Cons (f head) (Map tail f)

      Hint: Take a look at the rules for name searching at https://github.com/Kindelia/Kind2/blob/master/guide/naming.md

     FAILED  Took 0s

There is also no content in the file at the URL it suggests https://github.com/Kindelia/Kind2/blob/master/guide/naming.md

Ah gotcha. Do I need to copy and paste or import the code from the other files, or is it sufficient that my code is in the same directory as the other files?

You just have to code in the same directory.

closing this as the old kind2 has been archived at Kind2-old


markdown-processor: Check for inline image classes as substrings.

Updates find_proper_insertion_index to check for the inline image classes as substrings in the element's attrib["class"] so that cases where an inline preview image has multiple classes, like YouTube video previews, will have the correct insertion index.
Fixes #26186.
Screenshots and screen captures:

Current main

After changes

Self-review checklist

[ ] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[ ] Explains differences from previous plans (e.g., issue description).
[ ] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[ ] Each commit is a coherent idea.
[ ] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[ ] Visual appearance of the changes.
[ ] Responsiveness and internationalization.
[ ] Strings and tooltips.
[ ] End-to-end functionality of buttons, interactions and flows.
[ ] Corner cases, error conditions, and easily imagined bugs.

Updates:

Updated changes to use a set operation as suggested above, and revised commit message to better describe current changes.

Merged, thanks @laurynmm!

Backported to 7.x as 920c73a64ef8443868aec28f9be149b1316508d8.


VNET IP variables do not take from user env file

The User custom VNET address space and subnets variables do not apply to the created VNET resource. The AKS pods get it however. This results in an unusable environment. I suggest forcing the user to have a VNET pre allocated for this instead of creating one in the bicep deployment

If I understand this correctly, the user wants to re-use the existing VNET, but doesn't want a new one to be created as part of the TCP to BLOB deployment. If this is the case, then the optional variables under this section of readme can help. If this is something different, we can discuss further.

I did not have an existing VNET. I wanted the script to create a VNET with the option overrides for these parameters by specifying them in my environments file but it got ignored and the VNET created were the default options shown in the readme.
AKS_VNET_ADDR_PREFIX
AKS_VNET_SUBNET_ADDR_PREFIX
LB_IP
AKS_POD_SUBNET_ADDR_PREFIX
AKS_ORBITAL_SUBNET_ADDR_PREFIX

I did not have an existing VNET. I wanted the script to create a VNET with the option overrides for these parameters by specifying them in my environments file but it got ignored and the VNET created were the default options shown in the readme.
AKS_VNET_ADDR_PREFIX AKS_VNET_SUBNET_ADDR_PREFIX LB_IP AKS_POD_SUBNET_ADDR_PREFIX AKS_ORBITAL_SUBNET_ADDR_PREFIX

So despite these parameters were supplied with custom values, the deployment still creates them with default values. Ok, that is interesting. I'll test this and get back to you.

Thanks for the feedback. These types of conversations are best tracked as
issues within Github. I created one to track this:
https://github.com/Azure/azure-orbital-integration/issues/187
On Wed, Jan 25, 2023 at 6:39 AM Karthick Narendran @.***>
wrote:

I did not have an existing VNET. I wanted the script to create a VNET with
the option overrides for these parameters by specifying them in my
environments file but it got ignored and the VNET created were the default
options shown in the readme.
AKS_VNET_ADDR_PREFIX AKS_VNET_SUBNET_ADDR_PREFIX LB_IP
AKS_POD_SUBNET_ADDR_PREFIX AKS_ORBITAL_SUBNET_ADDR_PREFIX
So despite these parameters were supplied with custom values, the
deployment still creates them with default values. Ok, that is interesting.
I'll test this and get back to you.
—
Reply to this email directly, view it on GitHub
https://github.com/Azure/azure-orbital-integration/issues/184#issuecomment-1403477371,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACRKYAT55C55MUVN5257JCTWUEGG3ANCNFSM6AAAAAAUERM7CY
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Implement method='blockwise' for Cubed

For context, the blocker here is some sort of internal support for variable chunking in Cubed?

For context, the blocker here is some sort of internal support for variable chunking in Cubed? And presumably some rechunking to regular chunking will be needed at the end?

Yes, that what I had been thinking. However, now I think it should be possible to choose the rechunk boundaries when resampling so that each output chunk has the same number of groups. For the example shown in https://flox.readthedocs.io/en/latest/implementation.html#method-blockwise, the output would have two groups per chunk, rather than (2, 2, 3, 1) groups in each chunk. (It's OK if the last chunk has fewer groups.) There is slightly more data transferred this way, but it avoids a final rechunk, which avoids a whole dataset copy, so I think it's worth a try.

The other way to think of this then is that you want cohorts with equal sized cohorts (except for the last one)


Include ManagedBuffer's methods that are missing @noescape

ManagedProtoBuffer and ManagedBufferPointer has a family of withUnsafeMutablePointer* methods
that are currently missing a @noescape attribute.

Actually, I'm not sure if these methods should be covered by this proposal — should I create a tiny separate proposal for them?

the proposal author, @jtbandes, should review this. Jacob, should this be merged?

I think it makes sense to include these methods (since they do fall under "Public Library API"). But they shouldn't be in the "stdlib" section, which specifically refers to stdlib.h. I guess we need a new section for the Swift standard library.

@phausler has been involved with this proposal too, and might have more useful guidance.

I wonder if it wouldn't make more sense for this to be a separate proposal since the affected methods should probably also be marked as rethrows and allow throwing closures. Otherwise there would have to be a second proposal for annotating these methods and alternatively adding it to this proposal doesn't seem to fit very well given the (Obj-)C focus.
At any rate, there are also an initializer for each of ManagedProtoBuffer and ManagedBufferPointer with a closure argument that should probably also be marked @noescape and (re)throws.

Please contact the author of the original proposal off-line, who can submit a pull request with these changes if appropriate.


[1.18.2] Internal Server error when using Ring of Growth. (ticking player).

Title^
When equipped, you get disconnected with Internal Server error. Server doesn't crash, just throws the player that got it equipped out.
(In the curious menu.)
Minecraft: 1.18.2
Forge: 40.1.0
ROA: 1.0.0 | https://www.curseforge.com/minecraft/mc-mods/rings-of-ascension/files/3749079
Logs/Crash Info: https://gist.github.com/Gbergz/1142c2ba9ad2b2b99bebef88d08dcad8
- Gbergz

Should be fixed in the latest version. Thanks for the report!


Use a popup window instead of site integration?

Has the possibility of using a popup window instead of injecting elements into the site been evaluated?
IMO, this would be especially useful for better compatibility (regarding UX and development effort) when other sites will be supported.

Hi @Sett17,
Thank you for reaching out! Are you referring to a classic popup or a sidebar, like the one described in the Chrome API (see Side Panel API)?
We will definitely consider the idea.
So far, we've focused on minimizing the number of clicks to keep the user interaction as simple as possible.
Best regards,
Julian


Why is the format of a scheme file not versioned?

https://github.com/base16-project/base16/blob/main/file.md
Should this not be versioned along with the rest of the spec?

yup, i think that's the must

I was referring to the spec itself. Individual schemes are a different matter.

yes, version of the spec

Actually I think most of the time we could auto-version schemes.  If a scheme has a newer feature, then it's from a newer version. This works as long as there is never ambiguity about what a key means between versions.

Arguably, this is really a part of the builder spec - maybe we should merge it into builder.md?

Probably since if it changes the builder spec also has to change

I believe this would also be fixed by #23

I'm going to close this for now - at the moment we're operating under the assumption that the "File Guidelines" are a part of the builder spec and the versioning is in line with that. We will merge the two files at some point in the near future.

If that so would it hurt to just copy the version number over?

Though if that file is about to disappear, this can wait until then. :)


Unable to calculate height of elements with images in Safari

I'm unsure whether this has been discussed before, as I see quite a few issues related to Safari, however I want to at least expand on the previous issues by reporting some findings.
This plugin is made to initialise its API using the jQuery(document).ready() function and then run the internal _update() function when jQuery(window).load() is fired. According to this article it seems that images are only fully loaded after jQuery(window).load() is fired. So this plugin is initialised too soon when calculating the height for elements containing images, but according to previous issues, this edge case should be fixed by running an _update() when the 'load' event is fired, which is apparent in the source code, but here is the issue: Safari does not update properly after the first calculation has been applied as illustrated in this Screencast video. I have to invoke matchHeight('remove') first and then reapply matchHeight to get Safari to work properly. According to further tests, it seems, that moving the initial call to $(matchHeight._applyDataApi); inside the 'load' event fixes the issue, although that approach may cause unnecessary delays for other use cases. The only fix for me right now is to remove matchHeight and then reapply in the 'load' event. However, this will cause serious "bumpyness" for the visitors if the height of the images varies too much. What to do?

Would you be able to provide a jsfiddle that demonstrates the issue and another with your fix applied? Thanks

Yes, sorry for the delay in answering your comment. I'll try and set up a jsfiddle for you, however that might not be before the week after next. I hope the issue will remain open until then. Thanks!

Btw., I must admit that I cannot get it to fail using the latest master, but it requires more testing to be sure that I did not miss anything.

My testing has concluded. I found that the issue with Safari arose when the data-mh handles was placed on sub-elements rather than sibling elements. Moving the data-mh handles to sibling elements (parents of the former mentioned sub-elements), and an upgrade to the latest master, made Safari work again. Unfortunately I am uncertain whether it was the upgrade or the moving of the attributes, that did the trick in the end. However, putting the data-mh attributes on the specific elements that should be aligned with each other - not on their sub-elements - seems to be the correct way of doing things semantically anyway.
To summarize, this does not work:

...

This works:

...

Thanks for providing an update on your progress and I'm glad you managed to resolve it. You're right that the data attributes should be used on the exact elements you wish to match (not their parents or children).


Compile debug info into executable

So that when something goes wrong, a traceback can display the source.
Simple naive approach: attach debug info (filename, line number, line text) to each machine instruction emitted.

Done!


BUG: self.selected_channel not set if widget is loaded after adding layer

Hi Guillaume,
ive been using your convpaint plugin a bit recently and like it very much. just now i noticed a bug with the widget. When loading the widget after adding a layer to napari it seems that the selected_channel attirbute of the ConvPainWidget class is not getting set.
I assume because this callback is registered after setting the comboboxes values in the constructor:
self.select_layer_widget.currentIndexChanged.connect(self.select_layer) is not triggered.
i.e. when pressing the "Add annotatoin/prediciton layer button" it results in this traceback:
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
File [c:\Users\benig\miniconda3\envs\imageanalysis\Lib\site-packages\napari_convpaint\conv_paint.py:219](file:///C:/Users/benig/miniconda3/envs/imageanalysis/Lib/site-packages/napari_convpaint/conv_paint.py:219), in ConvPaintWidget.add_annotation_layer(self)
    216 def add_annotation_layer(self):
    217     """Add annotation and prediction layers to viewer."""
--> 219     if self.viewer.layers[self.selected_channel].rgb:
    220         layer_shape = self.viewer.layers[self.selected_channel].data.shape[0:2]
    221     elif self.check_dims_is_channels.isChecked():

File [c:\Users\benig\miniconda3\envs\imageanalysis\Lib\site-packages\napari\utils\_proxies.py:144](file:///C:/Users/benig/miniconda3/envs/imageanalysis/Lib/site-packages/napari/utils/_proxies.py:144), in PublicOnlyProxy.__getitem__(self, key)
    143 def __getitem__(self, key):
--> 144     return self.create(super().__getitem__(key))

File [c:\Users\benig\miniconda3\envs\imageanalysis\Lib\site-packages\napari\utils\events\containers\_typed.py:146](file:///C:/Users/benig/miniconda3/envs/imageanalysis/Lib/site-packages/napari/utils/events/containers/_typed.py:146), in TypedMutableSequence.__getitem__(self, key)
    143     except ValueError as e:
    144         raise KeyError(str(e)) from e
--> 146 result = self._list[key]
    147 return self.__newlike__(result) if isinstance(result, list) else result

TypeError: list indices must be integers or slices, not NoneType`

if i add a self.select_layer() after self.add_connections() it solves it for me

Good catch! This should be fixed in https://github.com/guiwitz/napari-convpaint/commit/2e7edabde3e2e9c4355e42c070274ad4506edeaf. Thanks for reporting the bug!


--include/exclude-categories ignored

As far as I can tell, neither --include-categories= nor --include-categories= do anything. Given e.g.
@org.junit.experimental.categories.Category(com.example.FastTests.class)
public class ExampleTest {
  @org.junit.Test
  public void test() {
    ...
  }
}

...both test-only -- -v --include-categories=com.example.FastTests and test-only -- -v --exclude-categories=com.example.FastTests run all tests.

I think this might be fixed in 0.11.  I just experienced it in 0.10, but it went away after upgrading to 0.11

I'm using sbt 0.13.5, so perhaps this broke again, or else there could be an issue when running tests via the Typesafe activator.

sorry I should have been more clear -- I'm taking about version 0.11 of junit-interface.  I am using sbt 0.13.6.  I am not using typesafe activator, so maybe thats the issue?

Looks like that's it: With sbt 0.13.6 and junit-interface 0.11 (instead of 0.11-RC1), --include-categories works as expected.


cross-seed sometimes injects paused torrents with qbittorrent

I'm seeing on multiple injections that some are paused with a progress of 0. Forcing a rehash completes to 100%, and then I've been manually starting them. This is not on all torrents.
I'm thinking it's https://github.com/mmgoodnow/cross-seed/blob/c1b23d5dc07115de94f67730bb02e6dd98e7c03f/src/clients/QBittorrent.ts#L280 failing but I don't know for certain.

I'm still seeing this on v4. It really seems to be related to content layout.

I think qBittorrent fixed the bug that made me have to inject torrents paused and then recheck, so I might just be able to remove that workaround to get everything working again.

the one thing is that I don't know if the version that has the fix is accepted by PTs yet, or maybe it has other problems…I've heard recommendations not to use the latest version recently

I'm on qBit 4.4.3 if that helps? I was seeing the behaviour on 4.3.9 as well as 4.4.2

Looks like the bug got fixed in 4.4.3 according to https://github.com/qbittorrent/qBittorrent/discussions/16616. Given that people (on PTs especially) are slow to update their clients, I'd probably want to either do a version check or just wait a while before removing the workaround. Realistically, though, it'll take me a while to get to a potential version check-based fix because I want to get v4 released and then a big docs overhaul done, so I'll likely just wait. If you want to fork and just remove the branches under shouldManuallyEnforceContentLayout (except you'll also want to make sure you're still setting the contentLayout in the formdata), it'll probably work for you.

I'm definitely seeing this still on 4.4.3

Yeah - v4.0.1 cross-seed still has the issue with qBittorrent 4.4.3

I haven't tried to fix it yet. Hang tight

No problem. Not sure if you want a new issue for this one or not. I have auto-removal rules in qbittorrent, and it's deleting the data as expected. cross-seed is then seeing the data-less torrents, and re-adding them. Some are getting missing files as expected, I'm suspecting this is the same bug that's actually starting the downloads on these costing hundreds of GBs.

If there's anything I can do to help stop the bleeding I'm here.

Still seeing the paused injections on cross-seed 4.1.0.

Hm, missed your last comment. When in the lifecycle does the removal happen?

Is there anything more I can do to help.

this is fixed in the above PR. I'll likely hold off on merging it into master for some time as I still want to hear that qBittorrent 4.4 is stable now.


ERROR in Ng2MobxModule is not an NgModule

After upgrading all the packages in the TodoMVC example I get the error ERROR in Ng2MobxModule is not an NgModule when starting the application. As far as I can tell the most common solution to this issue is to downgrade from TypeScript 2.1 to 2.0, but that doesn't fix this issue.
Here are the versions of the packages that I am using:
"dependencies": {
  "@angular/common": "2.4.4",
  "@angular/compiler": "2.4.4",
  "@angular/core": "2.4.4",
  "@angular/forms": "2.4.4",
  "@angular/http": "2.4.4",
  "@angular/platform-browser": "2.4.4",
  "@angular/platform-browser-dynamic": "2.4.4",
  "@angular/router": "3.4.4",
  "core-js": "2.4.1",
  "mobx": "3.0.2",
  "ng2-mobx": "1.2.2",
  "rxjs": "5.0.3",
  "todomvc-app-css": "2.0.6",
  "todomvc-common": "1.0.3",
  "ts-helpers": "1.1.2",
  "zone.js": "0.7.6"
},
"devDependencies": {
  "@angular/compiler-cli": "2.4.4",
  "@types/jasmine": "2.5.41",
  "@types/node": "7.0.4",
  "angular-cli": "1.0.0-beta.26",
  "codelyzer": "2.0.0-beta.4",
  "jasmine-core": "2.5.2",
  "jasmine-spec-reporter": "3.2.0",
  "karma": "1.4.0",
  "karma-chrome-launcher": "2.0.0",
  "karma-cli": "1.0.1",
  "karma-jasmine": "1.1.0",
  "karma-remap-istanbul": "0.4.0",
  "protractor": "5.0.0",
  "ts-node": "2.0.0",
  "tslint": "4.3.1",
  "typescript": "2.0.10",
  "webdriver-manager": "11.1.1"
}

Hey,
I can't reproduce.
Using the above package json I'm actually getting a different warning but it works

It works, except the warning/error prevents auto-reloading the site. The whole repo is here. I'm using Yarn to install the packages, so I guess that should help making the error reproducible. I've switched back to TypeScript 2.1 since downgrading didn't work, and I might also have added a two peed dependencies that some package was complaining about.
https://github.com/janaagaard75/framework-investigations/tree/master/ng2-mobx-todomvc
(I hope it's okay that I copied the original files. Not too sure about how to handle these open source things correctly.)

Quick update: Upgrading the packages to the latest versions, mainly Angular bumped to v2.4.5, did not fix the issue.

Fixed in 1.2.3.
Please verify

Updated all the packages, and can confirm that error is gone now. 👍

Awesome


Mark AMPI's reduction result entry method's [nokeep]

Original issue: https://charm.cs.illinois.edu/redmine/issues/1099

ampi::reduceResult, ampi::gatherResult, and ampi::gathervResult do not write to their messages and delete them before returning.
Marking them nokeep can allow the runtime to better manage that read-only memory, especially when those methods are invoked as broadcasts from MPI_Allreduce, MPI_Allgather, and MPI_Allgatherv.

Original date: 2016-06-14 17:51:19

~~https://charm.cs.illinois.edu/gerrit/#/c/1270/~~ https://github.com/UIUC-PPL/charm/commit/b254487688c9def3a57a48a1b46b04bd447185db


bump system-upgrade-controller to v0.4.0-rc1

picks up rancher/system-upgrade-controller#48 to mitigate rancher/rancher#25882
bumps backofflimit up to 99 (whole lotta retries)

rancher issue for TTL: https://github.com/rancher/rancher/issues/25929


"Call to hunspell failed with a code of 1."

When I enable the plugin, it shows the error: Call to hunspell failed with a code of 1.
I have installed hunspell using brew and I have tried setting the path manually in linter-spell's preferences (/usr/local/bin/hunspell). The message remains the same.
There are no errors logged in the Javascript console, though linter-spell is logging the message: All dependencies installed, good to go.

OS X 10.11.6
Atom 1.12.2
Hunspell 1.5.4

Do you get the error message immediately after enabling?

Yes, immediately after enabling.
Also when opening Atom, if the plugin is enabled.

FWIW, calling hunspell from the command line works, so there is no problem with my hunspell install.

Can you try hunspell -D on the command line?

$ hunspell -D                                                                                16:04:30
SEARCH PATH:
.::/usr/share/hunspell:/usr/share/myspell:/usr/share/myspell/dicts:/Library/Spelling:/Users/caesar/.openoffice.org/3/user/wordbook:.openoffice.org2/user/wordbook:.openoffice.org2.0/user/wordbook:Library/Spelling:/opt/openoffice.org/basis3.0/share/dict/ooo:/usr/lib/openoffice.org/basis3.0/share/dict/ooo:/opt/openoffice.org2.4/share/dict/ooo:/usr/lib/openoffice.org2.4/share/dict/ooo:/opt/openoffice.org2.3/share/dict/ooo:/usr/lib/openoffice.org2.3/share/dict/ooo:/opt/openoffice.org2.2/share/dict/ooo:/usr/lib/openoffice.org2.2/share/dict/ooo:/opt/openoffice.org2.1/share/dict/ooo:/usr/lib/openoffice.org2.1/share/dict/ooo:/opt/openoffice.org2.0/share/dict/ooo:/usr/lib/openoffice.org2.0/share/dict/ooo
AVAILABLE DICTIONARIES (path is not mandatory for -d option):
Library/Spelling/en_GB
LOADED DICTIONARY:
Library/Spelling/en_GB.aff
Library/Spelling/en_GB.dic
Hunspell 1.5.4

Does not exit unless I press Ctrl+C. (I don't know if that's intended behaviour?)
Note that the en_GB dictionary files are in ~/Library/Spelling, although hunspell omits the ~/.
Also, They were previously called en-GB (with a hyphen instead of an underscore), which works fine for the OS X spell checker, but hunspell complained: Can't open affix or dictionary files for dictionary named "en_GB". so I had to rename them…

hunspell won't exit until it sees an end of file marker. Try using ctrl-d then do a echo $?. Assuming you are using a bash-like shell.

I'm using fish, so it's $status instead of $? – but anyway: the exit status is 0.

I have reproduced it. No idea why but it looks like hunspell isn't finding any dictionaries when called from inside Atom.

Interesting… how did you reproduce this? Presumably it does not apply for everybody, so what did you do to make it happen? How might my config (which seems fairly vanilla) differ from setups where it works?

Nothing in particular. The last time the CI build ran on MacOS it used hunspell v1.4.1. Since then hunspell has upgraded to v1.5.4 and CI is failing so it is probably something there.
I'll look around and see if I can find the problem.

@caesar Just pushed out a patch (v0.12.6). Give it a try.

It works! 🎉
Thanks for sorting this out so fast @yitzchak!

Awesome. Thanks for taking the time to report the issue.

Hello,
This week, exactly the same error message described in this issue appeared on my machine
I'm using version 0.12.6 and hunspell v 1.6.0 on macOS.
For me it looks like a hunspell update broke the plugin for me.

Happens to me as well, using elementary OS Loki.

Thanks for the issue notification! I'll try to reproduce it.

Also have the issue on
macOS
Hunspell 1.6.1
linter-spell 0.13
Hunspell from cli works.

Same here :-/
macOS
Hunspell 1.6.1
linter-spell 0.13.2

Have this issue as well, but my error says failed with a status code of null
macOS
Hunspell 1.6.1
linter-spell 0.13.2

Specifying full path worked.

@chapmanc I also got the same error that "call to hunspell failed with a code of null". Is hunspell automatically installed with the package? By the way, could you pls share the path since I am not sure how to find it. Btw, I'm using wins 10.

Is hunspell automatically installed with the package

No. Most, if not all, external programs are not installed by any packages.

I got it working with Hunspell from Cygwin distribution.
Install Hunspell and dictionaries from Cygwin, then create a file hunspell.bat:
@echo off
C:\cygwin64\bin\bash -c "/bin/hunspell %*"

Go to Atom, open linter-spell plugin settings, put hunspell.bat into Spell Path field. Now Ctrl-Shift-Y works, spell checking works.


Added GraphData class

Codecov Report

Merging #68 into master will increase coverage by 0.11%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #68      +/-   ##
==========================================
+ Coverage   89.91%   90.02%   +0.11%
==========================================
  Files           5        5
  Lines         337      341       +4
==========================================
+ Hits          303      307       +4
  Misses         34       34

Impacted Files
Coverage Δ

py_ai_sdk/core/shapes.py
91.52% <100%> (+0.29%)
:arrow_up:

Continue to review full report at Codecov.

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


Netlify demo

Hey there, thanks for the theme. This is more of a general question, but I notice the demo is deployed to netlify? Are you deploying an october instance to netlify? Or did you generate a static site for netlify?

Hi Larry,
The demo on netlify is a static site.


chore: update router to 3.0.0-alpha.8

Closes #75
I'm not a big fan of the current directory structure that makes routing configuration a bit harder / more centralized that it could be. Also I think that we should have a simpler example in a  seed (IMO there is no reason in showing nested routes in a seed) - but this is a separate topic.
@gdi2290 @Foxandxss PTAL

LGTM


Added small clarification about prompting with ChatGPT API if possible

Added small clarification about prompting with ChatGPT API if possible.
That's a minor addition we can also just mention that verbally in the lab.

I liked the addition.


Adding storybook environment

First pass at adding storybook
We're using the alpha build of Storybook v4 due to webpack 4 being unsupported by anything below storybook 4.0.0-alpha.x
Run the storybook with npm run storybook
Open browser and navigate to localhost:9001

Closing this because we'll put it in the component repo


test: fix tests

I'm still trying to figure out why on earth the compilation suddenly started failing. The reason for it is just ridiculous.
I found out that every module we load in languages.ts and which we call with an object, cannot use the shorthand return syntax.
wrong
import('@codemirror/lang-javascript').then((module) => module.javascript({ typescript: true }));

correct
import('@codemirror/lang-javascript').then((module) => {
  return module.javascript({ typescript: true });
});

I'll buy anyone a drink that can explain me why on earth the compiler failed on that syntax.

It was a bug in Vite and was fixed here https://github.com/vitejs/vite/pull/17479.


AutoCam does not show all cars

Hey Lenny, I have noticed that AutoCam does not show all the cars. During long races, all cars eventually dissappear from there and I have to connect second ACC Race Control if I want to use it...

2024-04-08_19-35-35.log

Interesting.
Is this something you have observed with the nordschleife update or has this happened before to?

I have experienced that even earlier (May 2023 for sure)

Any luck with this issue? Do you think you will have the time to take a look into it until the next weekend? We have big 24h event on that weekend and autocam would be extremely handy. Thanks!


Unable to resolve complex cyclic references

Issue
Resgate handles resources with simple path cyclic reference, such as:
a -> b
b -> a

It fails to resolve more complex resource references, such as:
a -> b,c
b -> d
c -> d
d -> a,b

This is due to d having two cyclic paths (d->a->d and d->b->d), while Resgate only handle single path cycle.
Whenever such multi-path cycles are encountered, the connection requesting the resource will never get a response for the request as the resources will never be considered done loading.
Solution
Resgate needs to be able to handle more than a single path when resolving cyclic references.

Recursion makes my head hurt!
Must investigate if it is possible to solve this way:
Replace Subscription.path []string with Subscription.paths [][]string, where new paths will be added for any call to wsConn.Subscribe, and not only the first, for as long as the Subscription resource is not yet Loaded.
Then, in Subscription.collectRefs in subscription.go, recursion should be checked against any of the paths to see if doneLoading may be called.
Note
Check if there is a need to have a "soft" doneLoading that is only for indirect reference, to prevent errors with racing for nested resources such as:
a -> b,c
b -> a
c ... slow responding.

Subscribing a would cause b and c to be subscribed.
When b is loaded, it would automatically call doneLoading.
If b is then subscribed directly before c is loaded, it will attempt to send a response even if a is not yet complete.

Solved in #80


Include tclh sources in zip and tar.gz download files

The current download files cannot be used out of the box because of missing tclh sources.
It would be nice to have tclh included in these distribution files.

Paul, just checked and the 2.4.b1 downloads from sourceforge do contain the tclh sources.

I used the downloads from github. Those have an empty tclh directory.
The downloads from SourceForge indeed contain the tclh sources.
BTW: File name 2.4b1 is wrong. The release is 2.0b1.

Thanks for the filename correction. Just rushing through multiple extensions and got the version numbers confused.
The github downloads are automatically generated and there is no way I can see to include git submodules (tclh) there, nor a way to stop github from generating these "pseudo releases".


New iOS 17 requestFullAccessToEvents returns always notDetermined on first run

New iOS 17 requestFullAccessToEvents returns always notDetermined on first run of an app.
@ivanvorobei @alexanderpuchta is it working to you?
We need a fix there https://github.com/sparrowcode/PermissionsKit/pull/325 but we need to have a return value in func request(completion: @escaping () -> Void) because requestFullAccessToEvents returns accessGranted = true but status or EKEventStore.authorizationStatus(for: EKEntityType.event) returns .notDetermined until you run your app again.
So this library still doesn't work well on iOS 17.

Does it matter if it’s Apple’s bug or not? The current flow doesn’t work and you’re responsible to react on it and provide a solution for it (and it exists and I told you it).
 Someone told you in July that there are changes in iOS 17 but you didn’t even think about it. So it’s better to have my own solution than always debug why PermissionKit doesn’t work :/

Not sure why you are so rude? This isn't even my package, I just provided a solution for iOS 17 which was recommended by apples migration guide. 😅

Ah, you’re different guy :D Sorry both, I was very upset and spent while day to make it work and expecting just to update the pod…

@ostatnicky I see you upset with bug, but its open source. Its just happen.

PR merged, new release pushed.

@ivanvorobei @ostatnicky
to fix the issue with initial result is always .notDetermined we could add an @available(iOS 17.0, *) func request() async -> Status to class Permission.
this could look like this:

    @available(iOS 17.0, *)
    public override func request() async -> Status {

        let eventStore = EKEventStore()

        return await withCheckedContinuation { continuation in
            switch kind {
            case .calendar(let access):
                switch access {
                case .full:
                    eventStore.requestFullAccess { (isGranted: Bool, error: Error?) in
                        continuation.resume(returning: isGranted ? .authorized : .denied)
                    }

                case .write:
                    eventStore.requestWriteOnlyAccess { (isGranted: Bool, error: Error?) in
                        continuation.resume(returning: isGranted ? .authorized : .denied)
                    }
                }

            default:
                continuation.resume(returning: .notDetermined)
            }
        }
    }

this could then be used within apps like:
let status = await Permission.calendar(access: .full).request()
helper methods for EKEventStore can clean up code, so you don't have to write those requestFullAccess or requestWriteOnlyAccess again and again.
private extension EKEventStore {

    typealias EventStoreAction = ((isGranted: Bool, error: Error?)) -> Void

    func requestFullAccess(completion: @escaping EventStoreAction) {
        if #available(iOS 17.0, *) {
            self.requestFullAccessToEvents { (accessGranted: Bool, error: Error?) in
                DispatchQueue.main.async {
                    completion((isGranted: accessGranted, error: error))
                }
            }
        } else {
            self.requestAccess(to: EKEntityType.event) { (accessGranted: Bool, error: Error?) in
                DispatchQueue.main.async {
                    completion((isGranted: accessGranted, error: error))
                }
            }
        }
    }

    func requestWriteOnlyAccess(completion: @escaping EventStoreAction) {
        if #available(iOS 17.0, *) {
            self.requestWriteOnlyAccessToEvents { (accessGranted: Bool, error: Error?) in
                DispatchQueue.main.async {
                    completion((isGranted: accessGranted, error: error))
                }
            }
        }
    }
}

the default request(completion: @escpaing () ->Void)) could then be refactored like this:
    public override func request(completion: @escaping () -> Void) {

        let eventStore = EKEventStore()

        if #available(iOS 17.0, *) {
            switch kind {
            case .calendar(let access):
                switch access {
                case .full:
                    eventStore.requestFullAccess { (isGranted: Bool, error: Error?) in
                        completion()
                    }

                case .write:
                    eventStore.requestWriteOnlyAccess { (isGranted: Bool, error: Error?) in
                        completion()
                    }
                }

            default:
                completion()
            }
        } else {
            eventStore.requestFullAccess { (isGranted: Bool, error: Error?) in
                completion()
            }
        }
    }

you can find the changes here: https://github.com/alexanderpuchta/PermissionsKit/commit/e0e9c617b47f5c4cfdc38b0fed22f641362c7de1

Yes, it looks really promising! Thanks for the effort, Alex.

yup, but this would mean an entire update of that framework. not sure if @ivanvorobei will do this at the moment

yup, but this would mean an entire update of that framework. not sure if @ivanvorobei will do this at the moment

I will check it today, I see it's important to achieve

Alex's code works well, I've tested. Let's take a look on the response:
continuation.resume(returning: isGranted ? .authorized : .denied)

I'm not sure if we should return Permission.Status. Because the status could be really different. Sometimes the access is not granted just because it's not determined and not because of it was denied.
So I suggest to have something like this:
public override func request() async -> (isGranted: Bool, error: Error?)

Yeah, the solution is not straightforward... :D

I wouldn't like that, to return a tuple.
I would recommend
func request() async throw -> Status
or change continuation.resume to
let status: Status = {
    if let error != nil {
        return .notDetermined
    }

    return isGranted ? .authorized : .denied
}()

Release 9.2.2 available.


Compatibility issue with new version 1.0.29

I have an issue while using the wavesurfer.min.js v 1.0.29. I am unable to create the instance of the wavesurfer. The backend option in wavesurfer is displaying an error. The waveform is not generating when I use backend as an option 'WebAudio'. But when I use 'WebAudioBuffer' as a backend, the waveform generates.
Which option to use as a backend?

Backend can be either WebAudio or MediaElement. There weren't any changes in this regard.
Please don't make guesses. If you want me to help you figure it out, send the exact error message and a way to reproduce (preferably a JSFiddle).


Support docker private registry API

Currently crfs supports GCR and uses GCR-specific API, so we can't use it with docker private registry(especially with local and unsecure(http) one).
Isn't it great to support private registry to make it easy to try crfs?
And also, isn't it good start point to support other OCI(docker) compliant registries, as we can focus on API-related issues and separate the auth-related issues aside?
like:
$ ls /crfs/layers/<IP_ADDRESS>:5000/
my
$ ls /crfs/layers/<IP_ADDRESS>:5000/my
ubuntu
$ ls /crfs/layers/<IP_ADDRESS>:5000/my/ubuntu
18.04  sha256-2bca06c5f3ca2402e6fd5ab82fad0c3d8d6ee18e2def29bcadaae5360d0d43d9
$ ls /crfs/layers/<IP_ADDRESS>:5000/my/ubuntu/18.04/
0       sha256-0c0ed20421e1c2fbadc7fb185d4e37348de9b39a390c09957f2b9a6b68bd4785
1       sha256-24e2698eca10208eab4c4dad0dfad485a30c8307902404ffec2da284ae848fb8
2       sha256-2b01b35b83e6609c41f1aac861cd65914934fa503f645ca17c9ebff45907b9c5
3       sha256-646be464f13960b2cd0bf3a741a42f1bf658bee676ffbc49183222bdfb79e249
bottom  top
config
$ ls /crfs/layers/<IP_ADDRESS>:5000/my/ubuntu/18.04/bottom
bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

And I have an idea of patch implementation on my branch, so if possible I'm willing to contribute.
Notice on image path format:
Currently crfs supports only <owner>/<image>-styled image path format, and this patch also intend to follow the restriction. Supporting any format of image path may be future work.
Overview of the ideas is following:
Use OCI-compliant API
Currently, crfs uses GCR specific API for following purposes:

Listing owners on a host
Listing images stored in a owner
Listing maps from tag digests to names labeled on an image

Use OCI(docker)-compliant API instead of GCR specific one for private registry, say:

Listing owners on a host: GET on /v2/_catalog (Filter the response to allow only <owner>/<image>-styled image path format, and then parse it.)
Listing images stored in a owner: GET on /v2/_catalog (Filter the response to allow only <owner>/<image>-styled image path format, and then parse it.)
Listing maps from tag digests to names labeled on an image: GET on /v2/<owner>/<image>/tags/list for getting the list of tag names, and HEAD on /v2/<owner>/<image>/manifests/<tag name> with Accept: application/vnd.docker.distribution.manifest.v2+json header for getting digests of a V2 manifest(written in Docker-Content-Digest response header).

Use appropriate schema based on the host name
As used in the current code base of crfs, it is better to select appropriate API schema based on github.com/google/go-containerregistry/pkg/name.
Say, when we request API of localhost's docker private registry, it is good to use http (not https).

This is hard to do in a broadly compatible way. OCI is dropping catalog for various reasons. We've discussed replacing it here and here. Might be worth continuing the conversation over there.
Using the catalog API seems reasonable for certain registries, but it won't work everywhere :disappointed:

I would like help implementing support for other registries. The current support for gcr.io is just because that's what I needed myself and I wanted to do something quickly for a proof of concept.
But the filesystem hierarchy was definitely designed to support others in the future. I was just short on time fleshing them all out.

Brad,
I would like to help with this project. I have extensive file system development experience starting with AT&T Unix V7. I am a Google GDE Cloud Platform and I know the Google services as a developer very well. I would like to help with supporting IBM's Container Registry (ICR), which I do not know as well as GCR. Seth Vargo (Google) @sethvargo can provide a reference about me.

@jhanley-com, great, thanks!

I will start studying your code and the IBM GCR specs this weekend. What is the best way to work with you? My Twitter is https://twitter.com/NeoPrimeAws I prefer to use email instead of public forums.

Using this bug for discussion and GitHub PRs for code review is the norm. It may not be the best, but it keeps things consistent and everybody else informed about the status and reduces duplication.


Add RulesEvaluator API

As discussed in #40 with @thecederick , it may be useful to have a rules evaluator API to be able check rules like: (RuleA and RuleB) or RuleC

You can already do this: ( ruleA.evaluate() && ruleB.evaluate() ) || ruleC.evaluate() . Do you believe Easy Rules should provide a RuleEvaluator API?

It is not always possible do it like you described, for example @Condition annotation and you do it outside of Engine.

@benas it would be cool to be able to evaluate a set of rules and get back a list containing a rule result where you can see at least which rule evaluation failed...what do you think?

Hi @pdincau
Have you seen the checkRules method ?
I think this method is what you are looking for.
Kind regards
Mahmoud

thanks @benas !

@pdincau FYI, you can try the checkRules method with version 2.3.0-SNAPSHOT which is not released yet. I'm preparing to release it soon.

@benas Yeah I was using previous tagged version and therefore i couldn't find the method neither on code nor in the docs. Thank you for your help 👍

Sorry about that, I should have gave you this detail in my first comment. You can add this repository and use the snapshot version.


Increase phone-numbers jacoco min coverage to 70%

Standardizing jacoco's min coverage to be at least 70% across packages.

Closing in favor of:
https://github.com/Azure/azure-sdk-for-java/pull/21364


Unable to open download window

Hi,
I have installed mongo-edu on my desktop computer running windows2008.
When I try to start the download, it just hang at following step without going into download prompt.

C:\1. My Office Data\New Downloads>mongo-edu -d 'C:' -u<EMAIL_ADDRESS>--cw
[ MONGO-EDU 0.2.4 ]

Any help on this will be highly appreciated.

When I click control-C it ask be below confirmation.
C:>mongo-edu -d 'C:' -u<EMAIL_ADDRESS>--cw
[ MONGO-EDU 0.2.4 ]
^CTerminate batch job (Y/N)? Y
Following are the per-requisites i had installed prior to mongo-edu installation.
C:>node -v
v0.10.35
C:>npm -v
1.4.28
C:>python -V
Python 2.7.9
C:>

win2008 is not really supported ... unfortunately I don't have any means of testing this on this OS

I have exactly same problem on windows 2007 too. It just stuck at this stage.
I tried to uninstall Python (after reading the previous threads) but that didn't work either.

Anything below win7 is not really supported as I don't have any way of testing it. You could use vmware or make an ubuntu bootable partition or usb drive ...

I agree that win2008 has problem but i am experiencing the same problem on win7 too as I mentioned above. Any idea about this?

Above you've mentioned win 2007 ( vista ) which is a predecessor of windows 7.

Hi,
Sorry for not making the environment settings clear. Can you please confirm if following environment is not supported? My colleague is having same windows and he is able to use this tool without any issues.
OS Name:                   Microsoft Windows 7 Enterprise
OS Version:                6.1.7601 Service Pack 1 Build 7601
OS Manufacturer:           Microsoft Corporation
OS Configuration:          Member Workstation

OK so we're talking about win7 then. Are you and your collegue on the same network? If not are you using the tool from home or work network?

We are on the same office network.
Infect it was working fine on my computer till two days ago when my windows was reinstalled by helpdesk and now i tried to install everything and somehow this tools is not working anymore.

Your current download path -d 'C:\' doesn't point into any directory ... just root
mongo-edu -d 'C:\' -u<EMAIL_ADDRESS>--cw

so do this instead
mongo-edu -d 'C:\videos\' -u<EMAIL_ADDRESS>--cw

It's Same result.
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.
C:\Users\farooq.khalid>mongo-edu -d 'C:\Temp' -u<EMAIL_ADDRESS>--cw
[ MONGO-EDU 0.2.4 ]
==========================

Without the quotes ...
mongo-edu -d C:\Temp\ -u<EMAIL_ADDRESS>--cw

thanks this worked now.

For the future reference if there are no spaces in the path to your directory you don't have to use any quotes e.g.
mongo-edu -d C:\my\newDirectory\ -u<EMAIL_ADDRESS>--cw

... if the path contains spaces use double quotes
mongo-edu -d "C:\my\new Directory\" -u<EMAIL_ADDRESS>--cw

Thanks I will remember this.
Btw Now I am getting following message randomly.  Yesterday I got this twice and then it was successful. Today I tried again and got following message.
C:\Users\farooq.khalid>mongo-edu -d C:\Temp\ -u<EMAIL_ADDRESS>--cw
[ MONGO-EDU 0.2.4 ]
? MongoDB Uni User Name<EMAIL_ADDRESS>? MongoDB Uni Password: ***********

Searching [====================] 100%
? Found 2 Courses. Select: M202: MongoDB Advanced Deployment and Operations
? Found 4 Lists. Select: Chapter 4: Fault Tolerance and Availability
Searching Courseware [====================] 100%
Collecting [====================] 100%
? Select From 18 Videos. Download: All
i Downloading: 1 0 Rolling maintenance-OO3tpaC4L4g.mp4 > https://youtu.be/OO3tpaC4L4g
20.91 MB [====================] 100% 0.0s
i 1 0 Rolling maintenance-OO3tpaC4L4g.mp4. Done in: 46419ms
i 17 left ...
i Downloading: rolling maintenance answer-L2tv_OC31uQ.mp4 > https://youtu.be/L2tv_OC31uQ
953.52 kB [====================] 100% 0.0s
i rolling maintenance answer-L2tv_OC31uQ.mp4. Done in: 1864ms
i 16 left ...
i Downloading: 1 1 Rolling maintenance use cases-LH22a2FATho.mp4 > https://youtu.be/LH22a2FATho
4.8 MB [====================] 100% 0.0s
i 1 1 Rolling maintenance use cases-LH22a2FATho.mp4.  Done in: 14388ms
i 14 left ...
i Downloading: 2 1 Using load balancers with sharded clusters-LW_mlmvwWDM.mp4 > https://youtu.be/LW_mlmvwWDM
15.39 MB [====================] 100% 0.0s
i 2 1 Using load balancers with sharded clusters-LW_mlmvwWDM.mp4. Done in: 32635ms
i 13 left ...
Error: : [youtube] -kzJ44CbCsM: Skipping DASH manifest: ExtractorError(u'Cannot decrypt signature without player_url; please report this issue on https://yt-dl.org/bug . Make sure you a
re using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.',)

at C:\Users\farooq.khalid\AppData\Roaming\npm\node_modules\mongo-edu\node_modules\youtube-dl\lib\youtube-dl.js:148:25
at ChildProcess.exithandler (child_process.js:656:7)
at ChildProcess.emit (events.js:98:17)
at maybeClose (child_process.js:766:16)
at Process.ChildProcess._handle.onexit (child_process.js:833:5)

===================================================

Can't replicate ... also this error looks more like youtube-dl issue not mongo-edu. By the way I'd suggest downloading the videos again as it looks like they've updated the list as I counted 14 videos now not 18 videos.

I have taken too much time of yours.
This issue is not consistent. Some time it occurs and sometime i am able to download full chapter.
I will retry if it failed with this error again.


Can Ignore Violation exitcode

add --ignore-exit-violations CLI flag to allow exit code 0 event if violation is found (will allow successfull build for CI)

PHPCS has a similar cli switch:
https://github.com/squizlabs/PHP_CodeSniffer/wiki/Configuration-Options#ignoring-errors-when-generating-the-exit-code
$ phpcs --config-set ignore_errors_on_exit 1
$ phpcs --config-set ignore_warnings_on_exit 1

So, I would prefer the switch to be --ignore-violations-on-exit.
It's also more self-explanatory.

The doc block in https://github.com/jaymoulin/phpmd/blob/9f71d9847446a6efb92ffac1b53ab53ec8d98d0c/src/main/php/PHPMD/TextUI/Command.php#L68-L71 should be updated, too.

Also adding it to the documentation, would make sense.
https://phpmd.org/documentation/index.html
I would place it under "Exit codes".
https://github.com/phpmd/phpmd/blob/master/src/site/rst/documentation/index.rst#exit-codes

@jaymoulin many thanks for your contribution. This is certainly useful.
Do you see a chance for adding a unit test, too?

Thanks for your return. I'll manage to handle that

Apart from my nitpicking, this really looks good.
Thanks again for your work!


Service

Scheduled Task:

[x] Dummy Database
[x] UserService(Update Balance & Read)
[x] MealService(Update Popularity & Read)
[x] OrderService(Manage orders pipeline & Read)
[x] UTs

Test passed
chris@DESKTOP-MEUL8MQ:~/project/TheWay2Meal/service$ go test
PASS
ok      theway2meal/service     0.064s


fix(versions): update Activiti/example-cloud-connector versions into master

UpdateBot pushed helm dependency: common to: 1.1.15

UpdateBot commands:
updatebot push-version --kind helm common 1.1.15


Enhancemet of Navbar | Service Page Redesigning | Contact Us Page Theme Issue | Name Field Occur Twice in Service Scheduling

All Tasks :

Dark Mode/Light Mode not working in Contact Us Page
Services Page Enhancement | Redesigning
Name Field Occur Twice in Service Scheduling
Addition of Hover Effect on Navbar

Contributor Information
Please check if you are a contributor from:

[X] GSSoC-ext
[X] Hacktoberfest

@Shariq2003 go for it.
And also change the font style matches with the website.
May use glass effect.

Make all these in one

okay

@jeevan10017 please review and merge my PR.

@jeevan10017 also please take a look at issue #233 for the level

@jeevan10017 also please take a look at issue #233 for the level

I will see about it while merging.

@jeevan10017 i have completed all the above-mentioned task in my PR #232, and I have added level 2.
please increase the level to 3 as you have also assigned me all the tasks that are the combined by the issues #179 #180 #181

@jeevan10017 sir ?

@jeevan10017 also please take a look at issue #233 for the level

I will see about it while merging.

@jeevan10017 sir,


Update io-package.json

Adjusting the type from iopackage to reposetory

Hello @TheBam1990,
thank you for your improvements.
I'm confused because @klein0r recently suggested changing the type to "vehicle". Issue #67

It's ok than can you Change it on the Repository.