BFCL April 19th Release (Dataset & Pipeline)

This PR is for the BFCL April 19th Release. In this release:

Bug fix for the evaluation dataset in the executable test categories. This includes updates to both prompts and function docs.
The evaluation_result field has been removed to accommodate the variability in API execution results across different evaluation runs. Instead, a human-verified ground_truth is now included for the executable test categories. During each evaluation run, evaluation_result is generated anew using the ground_truth, and then compared against the model output.
A stricter metric has been adopted when using the structural_match (aka. type match) evaluation criteria ---- For list results, the lengths are compared; for dict results, the keys are matched. This is to account for the fast-changing nature of some of the real-time API results while ensuring the evaluation remains meaningful.
Added another evaluation criterion real_time_match for the executable category, which is a looser form of exact_match specifically for numerical execution results. The execution result must be within a certain percentage threshold (20%) from the expected result to accommodate the live updates of API responses. Users can change this threshold value in eval_checker_constant.py.
Added support to distinguish Cohere's optimized score vs. original score.
Resolved #363

This PR DOES change the leaderboard score. We will update the leaderboard shortly, in a different PR.
We will also update our HuggingFace dataset accordingly.

Co-authored-by: Charlie Cheng-Jie Ji<EMAIL_ADDRESS>Co-authored-by: Fanjia Yan<EMAIL_ADDRESS>

WIP: Undergoing thorough testing

Fully tested on model-generated results

API sanity check (Non-REST and REST)
python ./eval_runner.py on all categories (i.e. ast and executable)

Action Taken:

improved Rapid API stability during both sanity check and real-time execution to allow max_retry during the function calls.


Paper 1.20.6 Support

The latest beta release of both paper and cloud do not work together

https://github.com/Incendo/cloud-minecraft/commit/4bfb8797dd59053ab24dcd402e266f3a7b8bedd0
this was resolved in that commit - you'd currently have to depend on cloud-paper 2.0.0-SNAPSHOT to be able to use cloud on 1.29.5/1.20.6

thanks you are right, totally missed that


I want to add a visualization, who can tell me how to implement it

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

I'm using the master branch


Add NodeJS support. Fixes #31

Fixes #31.
Use a direct binding of fetch that is now available in NodeJS >= v18.0

Hey @emilk, I'd really appreciate your thoughts when you have a chance to take a look. If anything needs clarification or changes, I'm happy to address them.
Thanks in advance for your review! 😊

Thanks for the work, checkouted your brunch into my pet project. Hoping maintainers will merge soon


Sharding JDBC, errors caused by case, database oracle

#Configuration information:
shard column name # shard column name
spring.shardingsphere.sharding.tables.order_item.table-strategy.inline.sharding-column=order_id
#Line expressions for the sharding algorithm, with groovy syntax
spring.shardingsphere.sharding.tables.order_item.table-strategy.inline.algorithm-expression=order_item_$->{order_id % 2 + 1}
#The primary key id
spring.shardingsphere.sharding.tables.order_info.key-generator.column=order_id
#Primary key generation strategy snowflake algorithm
spring.shardingsphere.sharding.tables.order_info.key-generator.type=SNOWFLAKE
#oracle insert
@Insert("insert into order_info(ORDER_ID,ORDER_PRICE,ORDER_INVENTORY) VALUES (#{orderId},#{orderPrice},#{orderInventory})")
int insert(@Param("orderId")Long orderId, @Param("orderPrice") int orderPrice, @Param("orderInventory") int orderInventory);
#error message
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException:
Error updating database.  Cause: java.lang.NullPointerException: Cannot invoke method mod() on null object
The error may exist in com/sharding/jdbc/jdbc/kuakuguanlianquery/TOrderInfoDao.java (best guess)
The error may involve com.sharding.jdbc.jdbc.kuakuguanlianquery.TOrderInfoDao.insert-Inline
The error occurred while setting parameters
SQL: insert into order_info(ORDER_ID,ORDER_PRICE,ORDER_INVENTORY) VALUES (?,?,?)
Cause: java.lang.NullPointerException: Cannot invoke method mod() on null object
#The solution
@Insert("insert into order_info(order_id,ORDER_PRICE,ORDER_INVENTORY) VALUES (#{orderId},#{orderPrice},#{orderInventory})")
int insert(@Param("orderId")Long orderId, @Param("orderPrice") int orderPrice, @Param("orderInventory") int orderInventory);
This problem is too pit!!

 <!-- https://mvnrepository.com/artifact/io.shardingjdbc/sharding-jdbc-core -->
    <dependency>
        <groupId>org.apache.shardingsphere</groupId>
        <artifactId>sharding-jdbc-spring-boot-starter</artifactId>
        <version>4.0.0-RC1</version>
    </dependency>

@itxiaole Could you please try 4.0.0-RC3 version?

@SteNicholas  I cut to version 3 and got a direct error. I'll see what's wrong
error message:
2019-12-27 11:54:13.052  INFO 31084 --- [           main] o.a.s.core.util.ConfigurationLogger      : Properties
{}
2019-12-27 11:54:13.454  WARN 31084 --- [           main] s.c.a.AnnotationConfigApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'shardingDataSource' defined in class path resource [org/apache/shardingsphere/shardingjdbc/spring/boot/SpringBootConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [javax.sql.DataSource]: Factory method 'shardingDataSource' threw exception; nested exception is java.sql.SQLException: 无法转换为内部表示
2019-12-27 11:54:13.461  INFO 31084 --- [           main] ConditionEvaluationReportLoggingListener :
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2019-12-27 11:54:13.470 ERROR 31084 --- [           main] o.s.boot.SpringApplication               : Application run failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'shardingDataSource' defined in class path resource [org/apache/shardingsphere/shardingjdbc/spring/boot/SpringBootConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [javax.sql.DataSource]: Factory method 'shardingDataSource' threw exception; nested exception is java.sql.SQLException: 无法转换为内部表示
There is something wrong with version 3. Let me see if I have updated something

This problem is too pit!!

Hi, we are just doing a open source project, can you remove your moody words?
Let's talk about how to improve the project, is it OK?

The title cannot summary your problem, can you change the title to make it for search friendly?

@terrymanu  I'm very sorry. I'll pay attention next time. My English is not very good and my translation is not very accurate


Map a single key to a shortcut or multiple keys (as a macro)

Description of the new feature / enhancement
Basically just a way to, for instance, map [Insert] to [CTRL] + V + [Enter].
I think this would be quite easy to pull off, while making the remapping of keys even more useful!
Also maybe a way of delaying certain keys if possible, would be nice.
Scenario when this would be used?
filling in multiple lines with text, spamming chats (lol), remapping keys to be more useful and go on.
Supporting information
No response

/dup #10087


Updates to Section 5.3.2

Fix potential wording of first sentence... @dtmcg may have some ideas
Add QR code and specify encoding or any details visual/display.

This is done


Delayed::DeserializationError: Job failed to load: undefined class/module Spree::AccountSalesRecordMailer

@albus522: We are using delayed_job_active_record (4.1.3), Rails 5.2.3, and Ruby 2.6.3.
The job is created for sending account sales record emails. The strange part is that some emails are going perfectly without any issue but some emails in the job, are throwing below exception.
Delayed::DeserializationError: Job failed to load: undefined class/module Spree::AccountSalesRecordMailer. Handler: "--- !ruby/object:Delayed::PerformableMailer\nobject: !ruby/class
I also tried by changing the argument before we are passing the whole active record object and now I am using only the I'd of the active record object and pass it as an argument but still issue is not resolved.
Can anyone suggest a solution here? How can I resolve the issue?
Thanks in advance!

Your worker process and queuing process are most likely out of sync code wise. You likely have an old worker lingering somewhere that does not have the new mailer class. In development code reloading within the worker process is automatic, but code reloading does not occur within production environments.

Your worker process and queuing process are most likely out of sync code wise. You likely have an old worker lingering somewhere that does not have the new mailer class. In development code reloading within the worker process is automatic, but code reloading does not occur within production environments.

@albus522: Thanks for your response!
In my server, multiple instances are running of the delayed job so each instance points to a different codebase and some of the instances are not loaded properly. This is the only reason I start facing the issue.
I have killed all instances of the delayed job and restarted a new instance also restarted everything on the server and now it's working fine. I have performed the below steps.
Check the delayed job processes on the server using
ps -aux | grep \delayed_job
Kill all process of the delayed job using
sudo kill -9 PROCESS_ID
Restart the fresh delayed job instance using
bin/delayed_job start
Then restart the server. Now everything works fine.

@albus522: Thanks for your response!
In my server, multiple instances are running of the delayed job so each instance points to a different codebase and some of the instances are not loaded properly. This is the only reason I start facing the issue.
I have killed all instances of the delayed job and restarted a new instance also restarted everything on the server and now it's working fine. I have performed the below steps.
Check the delayed job processes on the server using
ps -aux | grep \delayed_job
Kill all process of the delayed job using
sudo kill -9 PROCESS_ID
Restart the fresh delayed job instance using
bin/delayed_job start
Then restart the server. Now everything works fine.


FAQ - update 'ENerror13' entry

Changelog:

less paragraphs
slight improvement on wording

left new version is show.

LGTM
Thanks to  @heinezen @Ein-Tim .


Inference support for GPTQ (llama + falcon tested) + Quantization script

Let's start discussing implementation.

Need to expose the quantization scripts (either included here or add doc on how to use https://github.com/qwopqwop200/GPTQ-for-LLaMa)
Make sure GPTQ works for multiple models (priority to Falcon).

Currently it means that every place we use get_{tensor|sharded} to check for quantization.
My idea is to reintegrate as much as possible into utils/layer.py by expanding load_multi to be a bit more generic.
This might require some thinking, but ultimately the qweight,qzeros,scales,g_idx should be in a single place, and independant of bias presence.
What does this PR do?

Fixes # (issue)
Before submitting

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

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

Hi @Narsil amazing work!
I tried your branch with https://huggingface.co/huggingface/falcon-40b-gptq today and was able to get 44ms per token on 4 x A10G, as opposed to 180ms per token I previously got with falcon-40b-instruct + bitsandbytes
Wondering when this PR will be merged and whether you will be uploading a falcon-40b-instruct-gptq as well? I think many including myself don't have access to a GPU with enough vram to quantize a 40b model

Wondering when this PR will be merged and whether you will be uploading a falcon-40b-instruct-gptq as well? I think many including myself don't have access to a GPU with enough vram to quantize a 40b model

It should technically fit even if you have a very simple GPU, as long a you can load a single layer on the GPU. I didn't go too extreme, but we're leveraging accelerate there, which should offload to CPU RAM and disk when needed, and the quantization is doing it layer per layer (You still need to fit the model in CPU RAM though + the quantized weights in order to be able to save them).

Is the act-order option supported?

Is exists in code as everything is simply pulled, but not exposed yet. Any good info of what act-order does, and implications ? (If there's now a good default we'll just use that).
For now it's False by default like in https://github.com/qwopqwop200/GPTQ-for-LLaMa

@Narsil It's slower but has better accuracy. https://github.com/lm-sys/FastChat/blob/main/docs/gptq.md

@Narsil For higher speed up of LLaMA models, you can checkout the https://github.com/turboderp/exllama project.
I tested it with two 13B models, both quantized with group size 128 and activation order enabled, and got 2.6x speed up over running the 16bit version with text-generation-inference.

@Narsil For higher speed up of LLaMA models, you can checkout the https://github.com/turboderp/exllama project. I tested it with two 13B models, both quantized with group size 128 and activation order enabled, and got 2.6x speed up over running the 16bit version with text-generation-inference.

Looks pretty sweet indeed. Will have to dig a bit deeper to see how much we can reuse (everything seems super llama focused for now)

Wondering when this PR will be merged and whether you will be uploading a falcon-40b-instruct-gptq as well? I think many including myself don't have access to a GPU with enough vram to quantize a 40b model

It should technically fit even if you have a very simple GPU, as long a you can load a single layer on the GPU. I didn't go too extreme, but we're leveraging accelerate there, which should offload to CPU RAM and disk when needed, and the quantization is doing it layer per layer (You still need to fit the model in CPU RAM though + the quantized weights in order to be able to save them).

Do you have any recommendation for running the quantizer on GPUs with smaller vrams? I managed to load the 40b model with offloading, but it looks like the working memory required to run fasterquant is larger than what I could fit in my GPU 0. I even tried reducing nsamples to 64 but still got cuda OOM

Try using options here:: https://huggingface.co/docs/accelerate/usage_guides/big_modeling
Notably device_map = infer_auto_device_map(my_model, max_memory={0: "10GiB", 1: "10GiB", "cpu": "30GiB"}) seems like a good option to reserve enough memory on GPU0 (you could say 0 on GPU0 since we're manually sending there).
Actually making that the default might be better than balanced_low_0

Try using options here:: https://huggingface.co/docs/accelerate/usage_guides/big_modeling
Notably device_map = infer_auto_device_map(my_model, max_memory={0: "10GiB", 1: "10GiB", "cpu": "30GiB"}) seems like a good option to reserve enough memory on GPU0 (you could say 0 on GPU0 since we're manually sending there).
Actually making that the default might be better than balanced_low_0

Thanks, I actually tried that, with GPU 0’s max memory set to 2GB but still no luck. Perhaps the memory required to run quantization is more than 22GB.
Another thing I noticed is that the line
layer = layers[i].to(dev)

can lead to error “ NotImplementedError: Cannot copy out of meta tensor; no data”, likely because some layers are offloaded?

That means the layers wasn't loaded at all, probably disk offloaded. I'm not familiar enough with accelerate internals, but there must be some way to fetch the information of where the weights live, so that you could fill them before sending on the GPU.

I see. Thanks! Let me dig a bit more to figure that out

Trying out the branch locally and running into this when trying to query the endpoint:
  File "/home/user/text-generation-inference/server/text_generation_server/utils/gptq/custom_autotune.py", line 90, in _bench
    return triton.testing.do_bench(
  File "/home/user/miniconda3/envs/text-generation-inference/lib/python3.9/site-packages/triton/testing.py", line 144, in do_bench
    torch.cuda.synchronize()
  File "/home/user/miniconda3/envs/text-generation-inference/lib/python3.9/site-packages/torch/cuda/__init__.py", line 688, in synchronize
    return torch._C._cuda_synchronize()
RuntimeError: CUDA error: an illegal memory access was encountered
CUDA kernel errors might be asynchronously reported at some other API call, so the stacktrace below might be incorrect.
For debugging consider passing CUDA_LAUNCH_BLOCKING=1.
Compile with `TORCH_USE_CUDA_DSA` to enable device-side assertions.

 rank=0
2023-06-19T17:52:01.967782Z ERROR batch{batch_size=1}:prefill:prefill{id=0 size=1}:prefill{id=0 size=1}: text_generation_client: router/client/src/lib.rs:33: Server error: CUDA error: an illegal memory access was encountered

Any idea? Trying it on a model I quantized using the script in this PR.

I got the following error when loading a model quantized with auto-gptq

{"timestamp":"2023-06-20T02:07:57.613035Z","level":"ERROR","fields":{"message":"Shard 0 failed to start:\nTraceback (most recent call last):\n\n  File "/opt/conda/bin/text-generation-server", line 8, in \n    sys.exit(app())\n\n  File "/opt/conda/lib/python3.9/site-packages/text_generation_server/cli.py", line 67, in serve\n    server.serve(model_id, revision, sharded, quantize, trust_remote_code, uds_path)\n\n  File "/opt/conda/lib/python3.9/site-packages/text_generation_server/server.py", line 155, in serve\n    asyncio.run(serve_inner(model_id, revision, sharded, quantize, trust_remote_code))\n\n  File "/opt/conda/lib/python3.9/asyncio/runners.py", line 44, in run\n    return loop.run_until_complete(main)\n\n  File "/opt/conda/lib/python3.9/asyncio/base_events.py", line 647, in run_until_complete\n    return future.result()\n\n  File "/opt/conda/lib/python3.9/site-packages/text_generation_server/server.py", line 124, in serve_inner\n    model = get_model(model_id, revision, sharded, quantize, trust_remote_code)\n\n  File "/opt/conda/lib/python3.9/site-packages/text_generation_server/models/init.py", line 178, in get_model\n    return FlashLlama(\n\n  File "/opt/conda/lib/python3.9/site-packages/text_generation_server/models/flash_llama.py", line 64, in init\n    model = FlashLlamaForCausalLM(config, weights)\n\n  File "/opt/conda/lib/python3.9/site-packages/text_generation_server/models/custom_modeling/flash_llama_modeling.py", line 417, in init\n    self.model = FlashLlamaModel(config, weights)\n\n  File "/opt/conda/lib/python3.9/site-packages/text_generation_server/models/custom_modeling/flash_llama_modeling.py", line 316, in init\n    [\n\n  File "/opt/conda/lib/python3.9/site-packages/text_generation_server/models/custom_modeling/flash_llama_modeling.py", line 317, in \n    FlashLlamaLayer(\n\n  File "/opt/conda/lib/python3.9/site-packages/text_generation_server/models/custom_modeling/flash_llama_modeling.py", line 248, in init\n    self.self_attn = FlashLlamaAttention(\n\n  File "/opt/conda/lib/python3.9/site-packages/text_generation_server/models/custom_modeling/flash_llama_modeling.py", line 112, in init\n    self.query_key_value = TensorParallelColumnLinear.load_multi(\n\n  File "/opt/conda/lib/python3.9/site-packages/text_generation_server/utils/layers.py", line 226, in load_multi\n    weight = weights.get_multi_weights_col(\n\n  File "/opt/conda/lib/python3.9/site-packages/text_generation_server/utils/weights.py", line 95, in get_multi_weights_col\n    w = [self.get_tensor(f"{p}.g_idx") for p in prefixes]\n\n  File "/opt/conda/lib/python3.9/site-packages/text_generation_server/utils/weights.py", line 95, in \n    w = [self.get_tensor(f"{p}.g_idx") for p in prefixes]\n\n  File "/opt/conda/lib/python3.9/site-packages/text_generation_server/utils/weights.py", line 47, in get_tensor\n    filename = self.get_filename(tensor_name)\n\n  File "/opt/conda/lib/python3.9/site-packages/text_generation_server/utils/weights.py", line 34, in get_filename\n    raise RuntimeError(f"weight {tensor_name} does not exist")\n\nRuntimeError: weight model.layers.0.self_attn.q_proj.g_idx does not exist\n\n"},"target":"text_generation_launcher"}
{"timestamp":"2023-06-20T02:07:57.613081Z","level":"INFO","fields":{"message":"Shutting down shards"},"target":"text_generation_launcher"}
Is it possible to support these models without requantization?

@psinger
Illegal access seems like a  triton bug. Which GPU are you using ? I'm guessing if it's old, triton might be creating invalid kernels
@0x1997 Absence of g_idx means it's lacking the weight. I have no idea how they called it.
Please note that we also modified our source https://github.com/qwopqwop200/GPTQ-for-LLaMa to include bits and groupsize directly in the safetensors file so that we don't need to ask the user to know in advance to specify at load time.
I don't think either method does it that way.

@Narsil I am using A100, so not old.
I tried running it locally and via generated docker image to make sure it is not an environment issue, but same issue happens in both.

@0x1997 But the error happens when it looks for g_idx. This has nothing to do with group_size=-1, has it ? (It's always defined no ?). IIUC, groupsize=-1 simply means full row. It should be relatively easy to add support back in, but I'm not sure this is the issue at hand.
@psinger cuda version ? Do you mind creating an issue with all your setup + stacktrace. It's not really possible to help without all the information (and being able to reproduce)

@Narsil If I am building the docker image, my local cuda shouldn't matter, or will it still have an impact?

@Narsil
unfortunately I also cant get it to work on a fresh H100 system due to some mismatch
I documented all the steps, please let me know if I am missing something
git clone https://github.com/huggingface/text-generation-inference.git
git checkout support_gptq

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

conda create -n text-generation-inference python=3.9
conda activate text-generation-inference

sudo apt-get install cargo
sudo apt-get install libssl-dev gcc -y

BUILD_EXTENSIONS=True make install

# ouch this takes some time...
cd server && install-flash-attention

source ~/.bashrc
conda activate text-generation-inference

# somehow those were missing
pip install texttable
pip install einops
pip install datasets

conda install cudatoolkit

text-generation-server quantize tiiuae/falcon-7b ../data/falcon-7b-gptq --tru
st-remote-code

text-generation-launcher --model-id /home/user/models/falcon-7b-gptq/ --quantize gptq --trust-remote-code --port 8080

Error in this case is different to before:
python: /project/lib/Dialect/TritonGPU/Transforms/Combine.cpp:870: int {anonymous}::{anonymous}::computeCapabilityToMMAVersion(int): Assertion false && "computeCapability > 90 not supported"' failed.`
Seems to be some cuda / package mismatch

@jgcb00 yes, switching it to "auto" will fix it
please let me know if you manage to start the endpoint with that model

This looks like A100? I managed to quantize a 7b model on a single GPU there.

But I don't get it, we cannot convert the model but then it will easily run on one signle A100 ?
I will try with the device cpu see if I can convert the model with that !

You need to fully load the model in float16 to quantize it. After quantization you will need way less memory.
Quantizing it on CPU will be too slow I am afraid.

@jgcb00 yes, switching it to "auto" will fix it

auto doesn't fix anything, since it will cram your GPU 0, and then there's not enough room to create the quantizations.
We need at least a single layer to load on GPU for everything correctly. balanced_low_mem_0 means we're keeping GPU as free as possible so we can do everything we need there (and we do need the room).
The error you're seeing is imho an accelerate bug (at least the error message should be descriptive), even if there might be better balance. When using accelerate we want to load what we can, offload the rest to CPU and whatever is left to DISK.
I don't want to add support for handling DISK atm since it requires more accelerate internal (and this PR is already huge, we need to fix later, not here, this is not what this PR is about).
We could bypasse accelerate, but that requires even more logic, which is out of scope of this PR imo.

auto definitely fixes if it fits on a single GPU - balanced_low_0 assumes there are multiple GPUs, it will not offload to CPU afaik.
But I agree that auto is also not the best default, as larger models will require offloading. That's why I suggested this could be a parameter the user can set.

No. Adding flags everywhere is not good. If you know what you're doing you can edit the code yourself.
For the vast majority, we need to figure out the sanest defaults. In this case neither auto nor  balanced_low_0 (actually maybe balanced_low_mem_0 if accelerate things it's ok to fix.

At the end of the quantization I have :
Done.
Traceback (most recent call last):

  File "/root/text-generation-inference/tgi_env/bin/text-generation-server", line 8, in <module>
    sys.exit(app())

  File "/root/text-generation-inference/server/text_generation_server/cli.py", line 174, in quantize
    quantize(

  File "/root/text-generation-inference/server/text_generation_server/utils/gptq/quantize.py", line 827, in quantize
    save_file(

  File "/root/text-generation-inference/tgi_env/lib/python3.9/site-packages/safetensors/torch.py", line 232, in save_file
    serialize_file(_flatten(tensors), filename, metadata=metadata)

  File "/root/text-generation-inference/tgi_env/lib/python3.9/site-packages/safetensors/torch.py", line 394, in _flatten
    raise RuntimeError(

RuntimeError:
            Some tensors share memory, this will lead to duplicate memory on disk and potential differences when loading them again: [{'transformer.word_embeddings.weight', 'lm_head.weight'}].
            A potential way to correctly save your model is to use `save_model`.
            More information at https://huggingface.co/docs/safetensors/torch_shared_tensors

Do you mind opening issues for everything, with all the added info ? This is a PR, it would be easier to keep it about the content of the PR directly.
And fixes will come later don't worry but currently your giving incomplete issue descriptions, which makes it impossible to reproduce.
Just specify that you're using this branch in the issue, we'll figure it out.

Thanks @Narsil so much. Do you have any idea on when this PR will be merged?

@OlivierDehaene should review and merge probably soon

Disappointed you're looking to PR GPTQ-for-LLaMa and not AutoGPTQ.  Is there a reason for that?
AutoGPTQ is much cleaner and better integrated with transformers.  It also supports more model types and has far fewer breaking changes.

Disappointed you're looking to PR GPTQ-for-LLaMa and not AutoGPTQ. Is there a reason for that?
AutoGPTQ is much cleaner and better integrated with transformers. It also supports more model types and has far fewer breaking changes.

Totally agree with that
The only problem is that autogptq with falcon is very slow, TGI with bnb is still faster, all other models are really good

Is there a reason for that?

Yes, not pulling the modeling code which we cannot use because this repo uses Flash Attention, which is a very important part of the speedup. And we need a quantize script which is as much as possible agnostic to the model under use, which autogptq isn't (afaik).
Pretty agnostic to using the cuda kernel vs the triton one to be honest.

The only problem is that autogptq with falcon is very slow

Really ? Latency should be much better with GPTQ always compared to bnb there's no question about that. What kind of latency are you seeing ?
If you could include outputs from text-generation-benchmark for both (ideally with the non quantized version too) that would be awesome.

I have no numbers at the moment, but with autogptq - falcon 7b model it was around 1 word per second only
There also was an issue in the autogptq repo where they spoke about that problem, i can search that later

l it was around 1 word per second only

On what hardware ?

RTX A600 ada lovelace

l it was around 1 word per second only

On what hardware ?

RTX A6000 ada lovelace
Are the autogptq models compatible with the actual PR ?

https://github.com/PanQiWei/AutoGPTQ/issues/130#issue-1738555663
For example that issue in AutoGPTQ Repo

Is there a new Docker container for this already or does that only come when a release is cut?


⚠ Bofrost.at has degraded performance

In 681dc90, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1238 ms

Resolved: Bofrost.at performance has improved in f7f182c.


Exception 207 On ARM Processor During Literal String Parsing

I am reading from serial interface a literal string into a ARM micro-processor running Linux. The reason to use literal string is because I am storing the result of the UART reading into a std::string. A small string sample that I may enter over the serial is for example:  "{"key1": true}" << written as: [quote][curly brace open][backslash][quote][key1][backslash][quote]...
When I display the string read from UART I get this via std::cout: {"key1": true} which is consistent with my input. Following that step I call parse on the string as follow:
json j_complete = json::parse(json_string); // with json_string holding "{"key1": true}"
If I run this code I hit exception 101 right on { complaining about the formatting not starting with ". This is inline with https://jsonlint.com/ if I paste the same Json string it is invalid. Now what I don't understand is why it is working no problem on x86 (MACOS). The library let me pass the string without " generating the object without exception. I am pre-designing code on x86 and porting back to ARM when my application is mature enough.
The next step I took is call parse on ARM platform with:
json j_complete = json::parse("""+json_string+""");
In that case I do not hit 101, so at least the input seems to be valid, but I hit another exception: 207 "cannot use key() for non-object iterators". Following the parsing I have code that retrieve the keys and value via the iterator but here again the ARM code does not work as expected compared to the x86 implementation.
What am I missing?

The solution to this issue is to define a char (byte size) static array and load it with characters available in the std::string. I believe it is kind of a prerequisite to make it work properly . The library called rapidjson suffers the same issue basically. Also another issue I found inherent to dealing with UART is that the data crossing would consider backslash as a single character and not as an escape character. It shows up when we send [backslash][quote] which would correspond to ASCII 0x22 but comes up as [backslash]+[quote] . What I have noticed is that even when we take a std::string as an input we may still have [backslash]+[quote] as ASCII 0x92 + ASCII 0x22. Anyway all of this can be mitigated with a proper string analysis made by the library and a clean buffer generation underneath the call to parse() to avoid confusion. Right now I am cleaning up the std::string() making sure I start with '{' character and remove all the escape/backslash before storing it in a statically pre-allocated buffer.


Lint issue after running “just  precommit”

After running just precommit after little code modification, the CI test on GitHub post 2 issues here:
I wonder the one with the IOS, WHAT DOES THIS MEAN in step "start simulator":
Run # the extra "(" is to avoid matching things like "iPhone 12 Pro Max Simulator (15.2) + Apple Watch Series 5 - 44mm (8.0)"
UDID=
/Users/runner/work/_temp/d5[7](https://github.com/dbsxdbsx/flutter_rust_bridge/actions/runs/3774922450/jobs/6417282735#step:3:8)90[8](https://github.com/dbsxdbsx/flutter_rust_bridge/actions/runs/3774922450/jobs/6417282735#step:3:9)d4-def6-430b-ada4-a4cf27[9](https://github.com/dbsxdbsx/flutter_rust_bridge/actions/runs/3774922450/jobs/6417282735#step:3:10)bc309.sh: line 4: UDID: No Simulator with this name found
Error: Process completed with exit code 1.

Strange, this issue doesn't happen in pr.

I guess GitHub actions may upgrade its environment somehow, and sometimes an action is executed via new env and sometimes by old env?


node tests are failing all interop tests

https://source.cloud.google.com/results/invocations/774e00b3-a1cf-44ef-a849-eab5f32ca51e/targets
There seems to be compilation error:
<EMAIL_ADDRESS>rror90m TS2304: annot find name 'Exclude'.

689        ): Exclude<TObject[TKey], undefined> | TDefault;
             ~~~~~~~

<EMAIL_ADDRESS>rror90m TS2304: annot find name 'Exclude'.

766        ): Exclude<TObject[TKey], undefined> | TDefault;
             ~~~~~~~

<EMAIL_ADDRESS>rror90m TS2304: annot find name 'Exclude'.

842        ): LoDashExplicitWrapper<Exclude<TObject[TKey], undefined> | TDefault>;
                                   ~~~~~~~

Michael can you please take a look?

Basic Tests MacOS are also failing :(

Apparently we need to upgrade Typescript version.

Thank you for the fix!


when use npx  install shadcn components, throw error such as 'no such file or directory, open<EMAIL_ADDRESS>

I have solved this problem, just modify components.json  @/styles/global.css to src/styles/global.css


do eldoc asynchronously (fix #265)

also keep around a cache to make eldoc messages show immediately where
possible, but always make a request and update the cache since we want
the Right answer as soon as we can have it without adding any
invalid-cache-complications

I'm trying this out right now. Seems great so far 👍

After running for a while, I get this in the messages buffer:
eldoc error: (wrong-type-argument wholenump nil)
Error during redisplay: (ucs-normalize-hfs-nfd-post-read-conversion 14) signaled (error "Variable binding depth exceeds max-specpdl-size")
eldoc error: (wrong-type-argument wholenump nil)
eldoc error: (error Lisp nesting exceeds ‘max-lisp-eval-depth’) [20 times]
Error while checking syntax automatically: (error "Lisp nesting exceeds ‘max-lisp-eval-depth’")

@WraithM , I haven't seen that, does it happen on any open source project I could test?
I've only tested on Emacs <IP_ADDRESS> (2:201609150251~ubuntu16.04.1 from http://ppa.launchpad.net/ubuntu-elisp/ppa/ubuntu ), if that matters.

@WraithM I saw a possible problem in the code; could you try again and see if you can still reproduce?

Okay, I pulled your change and tried to trigger the issue again. Everything works great now! As far as I can tell, you fixed the issue.
Unfortunately, I'm working on a closed source codebase. Perhaps this is relevant: my issue occurred in the test-suite. I did M-x intero-targets RET --test RET and switched to the test-suite. I'm on Emacs 25.1.1 on OS X El Capitan installed from brew, and I use evil-mode.

I cherry picked these commits onto my qualified completions PR and they work great together. I haven't done long-term testing, but this moves eldoc from effectively unusable for me (due to lag) to pretty nice. The main downside I see has nothing to do with this improvement, but the types returned can be incorrect when the file isn't type checking.

@WraithM I'll try some target-switching then :)
@acowley good to hear =D
It looks like Travis failed downloading something: https://travis-ci.org/commercialhaskell/intero/jobs/161553437 – could someone with access give it a restart?

Can I use haskell-utils-repl-response-error-status like I did in 1380cc3 or should I refrain form using functions defined in haskell-mode?

Looks very nicely put together. Merging!

Thanks! By the way, I noticed a few other REPL-responses that probably shouldn't be given eldoc messages; but maybe that stuff should go in haskell-mode? Ie.:
https://github.com/commercialhaskell/intero/compare/master...unhammer:async-eldoc?expand=1


Update markup to support responsive behavior in some images

Hi @ronaldtse,
Currently, there are many images in Metanorma website that are not responsive to the screen size (which is my fault).
This PR solves that (among other minor typos).
Thanks!

Actually, this may be an omission in open project styling.
For now I introduced a style override in https://github.com/metanorma/metanorma.com/commit/e434a2a692e98e94050d8c7080615bd1172e9666 that limits max width of images in page body to 100% on Metanorma.com, which should no longer require the attribute to be provided in AsciiDoc.

Actually, this may be an omission in open project styling.
For now I introduced a style override in https://github.com/metanorma/metanorma.com/commit/e434a2a692e98e94050d8c7080615bd1172e9666 that limits max width of images in page body to 100% on Metanorma.com, which should no longer require the attribute to be provided in AsciiDoc.

Since setting images to 100% in AsciiDoc markup should no longer be required, this PR could probably be closed without merging. I will close it when abovementioned styling changes are live (seems like there is a build failure to be addressed first). Thank you @manuel489 for bringing this issue to attention.

Since setting images to 100% in AsciiDoc markup should no longer be required, this PR could probably be closed without merging. I will close it when abovementioned styling changes are live (seems like there is a build failure to be addressed first). Thank you @manuel489 for bringing this issue to attention.

Fixed: https://www.metanorma.com/author/topics/document-format/section-terms/

Fixed: https://www.metanorma.com/author/topics/document-format/section-terms/

@manuel489 I noticed that this PR contains other changes besides image widths. Some changes seem to fix AsciiDoc syntax errors, could you resubmit those changes?

@manuel489 I noticed that this PR contains other changes besides image widths. Some changes seem to fix AsciiDoc syntax errors, could you resubmit those changes?

Thank you @strogonoff.
No problem, I'll resubmit the adoc markup changes in another PR  👍

Thank you @strogonoff.
No problem, I'll resubmit the adoc markup changes in another PR  👍


Switch property source readers from hardcoded version to service loader

This PR uses ServiceLoader to load PropertySourceReader.

Are the test failures flakey tests or unrelated?


Update/Add Valgrind

Tool information

Tool name: valgrind
Add or update? add
Desired version: >= 3.14
Approximate size:
If this is an add request:

Brief description of tool: Debugging and profiling executables
URL for tool's homepage: http://valgrind.org/

Virtual environments affected

[ ] macOS 10.14
[x] Ubuntu 16.04 LTS
[x] Ubuntu 18.04 LTS
[ ] Windows Server 2016 R2
[ ] Windows Server 2019

Can this tool be installed during the build?
Not that I am aware of, but if it is, please tell me.
Are you willing to submit a PR?
It depends on how much work it would be. I am not familiar with the underlying structure here, but if someone can guide me I'd be willing to give it a shot.

Not that I am aware of, but if it is, please tell me. -- @thoward27

in theory apt install -y valgrind and then passing configuration which is pita

Yes @Kreyren but last time I checked apt install isn't allowed in actions. Has this changed?

@thoward27 Not that i am aware of, but i don't have a way to test the contribution due to the requirement for Azure VM.

Tool can be installed in runtime using the following script:
sudo apt install -y valgrind

Installation takes about 13 seconds

Is apt install allowed inside of actions now?

@thoward27 , yep, you can install any software in runtime if needs

@thoward27 thanks for your suggestion and sorry it took so long to respond. As @maxim-lobanov mentioned, yes you should be able to install during your build. I'll close this request because I don't think it's something we need to bake into the environment but let me know if you have any questions.

Hello! Sorry to open this post again, but although "sudo apt install -y valgrind" worked in recent times, it does not since 2 days ago. This is the output of the command, any clue on how to proceed now?
Run sudo apt install -y valgrind

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

Reading package lists...
Building dependency tree...
Reading state information...
The following additional packages will be installed:
  gdb libbabeltrace1 libboost-regex1.[7](https://github.com/juanmanzanero/fastest-lap/runs/5415587068?check_suite_focus=true#step:6:7)1.0 libc6-dbg libipt2
  libsource-highlight-common libsource-highlight4v5 libxxhash0
Suggested packages:
  gdb-doc gdbserver valgrind-dbg valgrind-mpi kcachegrind alleyoop valkyrie
The following NEW packages will be installed:
  gdb libbabeltrace1 libboost-regex1.71.0 libc6-dbg libipt2
  libsource-highlight-common libsource-highlight4v5 libxxhash0 valgrind
0 upgraded, 9 newly installed, 0 to remove and 33 not upgraded.
Need to get 35.1 MB of archives.
After this operation, 1[8](https://github.com/juanmanzanero/fastest-lap/runs/5415587068?check_suite_focus=true#step:6:8)1 MB of additional disk space will be used.

Error: Process completed with exit code 100.

@juanmanzanero have you tried executing apt-get update? I would also suggest upgrading your base image as a potential option

It works!!! Thank you very much!!!

@juanmanzanero have you tried executing apt-get update? I would also suggest upgrading your base image as a potential option

Thank you. I used this:
run: sudo apt install -y valgrind
And then I got this error:
Run sudo apt install -y valgrind
... edited down ...
Err:10 http://security.ubuntu.com/ubuntu jammy-updates/main amd64 libc6-dbg amd64 2.35-0ubuntu3.1
  404  Not Found [IP: <IP_ADDRESS> 80]
Fetched 19.0 MB in 1s (29.5 MB/s)
E: Failed to fetch http://security.ubuntu.com/ubuntu/pool/main/g/glibc/libc6-dbg_2.35-0ubuntu3.1_amd64.deb  404  Not Found [IP: <IP_ADDRESS> 80]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
Error: Process completed with exit code 100.

So I updated mine to this:
run: sudo apt update && sudo apt install -y valgrind
That did the trick.


factory reset: initial redirect page/delay improvements

remove the two-staged approach, redirect to the wizard directly, put the contents of the initial welcome page into the first wizard step
reason: cannot navigate the dashboard unless the redirect kicked in, removing the wizard marker from the config

duplicates #387


Make it possible to call create_object

Fix SHP::Shapefile.create_object definition from shapefile::create_simple_object to shapefile::create_object
Fix shapefile::create_object to make it work
Add test

my CI result
https://travis-ci.org/kazufusa/shp-ruby

This is great. Thank you!

0.1.0 is live with your patch. Thanks again!


Should we define utils configuration macros in a special file ?

Is your feature request related to a problem? Please describe.
There are several common code files under the examples/platforms/utils/ directory. The codes in these files are configurable. Currently, we define the utils configuration macros in the file "openthread-core-xxxx-config.h". However, the these utils configuration macros don't belong to the openthread core. It is better to define utils configuration macros in other place.
Describe the solution you'd like
Add a new configuration file "platform-utils-config.h" to configure the examples/platforms/utils/ modules.
Describe alternatives you've considered
None
Additional context
None

#4333 covers this issue more generally.


Sanitize Database inputs

Make sure the database inputs from the .csv is sanitized.

Needs no resolution.


Comment reply notification should include link name of the the page with comments

https://una.io/page/view-discussion?id=522

Could you please include title of the page where user get reply notification (except Convos), so change email subject can be changed from:
Your comment was replied
to:
Reply to your comment on "{}"


More spacing

The space between two apps on the home screen is much more than in the app list. I prefer the large space, because I am right handed and have the apps aligned to the left. In order to launch an app, I simply click on the empty space to the right of the text.
In this way I can read the text clearly (because my hands do not cover the text) and I can easily launch any app one-handed.
I would prefer an option to increase the spacing in the app list. I personally would like the spacing to be equal to that of the home screen.

Something that might be a bit more visually coherent is very transparent horizontal rules between items at the border.... just an idea.

I don't need dividers, just more spacing.

I second the suggestion for more spacing in the "drawer". The home screen is perfect as it is, but the drawer is quite hard to use with a thumb and I find myself needing to use my finger to target the correct app.
Some nice reads on the subject:
https://www.smashingmagazine.com/2016/09/the-thumb-zone-designing-for-mobile-users/
https://www.smashingmagazine.com/2012/02/finger-friendly-design-ideal-mobile-touchscreen-target-sizes/#pixel-width-of-the-average-thumb
They are old, but human fingers did not change in the last decade. Just a quick glance could give some good pointers.

I'm against more spacing 😁
I like the tighter app drawer, it means less scrolling. But I can see where people with big thumbs have issues. However that's something that's kept me away from other apps, to much space means I waste time scrolling when all my apps could fit on the screen.
So, that advanced features page you mentioned might be the only way to make all happy — setting text size, padding, color, number of home screen apps, etc.
The problems that arise when you drop icons 🤷

How about making that an option to configure?


Inaccurate csum calculation requirement

If the TCP/IP transport sets the IsIPv4 or IsIPv6 flag, it also sets the IpHeaderChecksum, TcpChecksum, or UdpChecksum flags that are required to indicate which checksums the miniport driver should calculate for the packet.

Since there is no such thing as IPv6 checksum I think it should be stated clearly that IpHeaderChecksum flag is relevant to IPv4 only to avoid misinterpretations.

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

ID: 5f0f8051-e6e2-449a-ecb4-9bafbcef2cb3
Version Independent ID: ee070510-41ca-8f7e-f265-242fdd3ddacf
Content: _NDIS_TCP_IP_CHECKSUM_NET_BUFFER_LIST_INFO
Content Source: wdk-ddi-src/content/ndis/ns-ndis-_ndis_tcp_ip_checksum_net_buffer_list_info.md
Product: windows-hardware
GitHub Login: @windows-driver-content
Microsoft Alias: windowsdriverdev

Hi @I-gor-C, thanks for pointing this out. You're right; there is no such thing as IPv6 checksum. I've updated the wording to say this instead:
If the TCP/IP transport sets the IsIPv4 or IsIPv6 flag, it also sets the appropriate flags that are required to indicate which checksums the miniport driver should calculate for the packet. For IPv4, this includes the IpHeaderChecksum, TcpChecksum, or UdpChecksum flags. For IPv6, this includes the TcpChecksum or UdpChecksum flags.
This updated wording should be live later today.


I think we don't need to include pip in our dependencies.

pip is a system to manage our packages. See Tiffany's example repo

Removed pip from README.md. See commit  id246a176.


equiv_opt: new command, for verifying optimization passes

When writing optimization passes I heavily rely on equiv commands to verify correctness. I have a few scripts for that locally, but Yosys scripts are not very flexible, and I feel this is in general a very useful shortcut command to have. This is also quite useful for tests.

Yes please! This is awesome.

What do you prefer for easy-to fix indenting stuff like this: Shall I just merge it and fix indenting ontop of it, potentially (but unlikely) causing merge conflicts don't the road for you, or should I complain in a change request like this and let you fix it, potentially causing a bit of overhead work?

Whatever results in less work for you. I am (unfortunately) proficient with Git so any merge conflicts upstream add maybe a few seconds required to type the right rebase command. Not an issue for me at all.

In that case I'll simply merge and then commit indenting fixes ontop, and post a note like this one:
Merged with indenting fixes, see f53e19c.

Thanks!


chef-automate ssh is not working

Description
When trying to connect to any instance through chef-automate ssh --hostname automate
is not working get stuck at ssh terminal but not connecting. It was earlier working properly.
Acceptance Criteria
chef-automate ssh should work properly as it was working before

https://github.com/chef/automate/pull/6493


Test failure in Node 10

@twada Can you take a look?
https://travis-ci.org/twada/power-assert-keeper/jobs/405830174

This commit will fix it.
https://github.com/power-assert-js/power-assert/commit/170892efd02ba543028e7035775ac0dd562fb027

Nice.

@twada Only karma-espower-preprocessor analyzes spread parameters. Can you standardize the result (analyzing targets)?
https://travis-ci.org/twada/power-assert-keeper/jobs/406328262#L988


The release-executables crash on execution

Describe the bug
When I download the executable of a release and try to execute it, the application fails with the following error-message:

(node:23292) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
(Use openid-doctor-win --trace-deprecation ... to show where the warning was created)
[Nest] 23292  - 2022-07-25 16:20:05     LOG [NestFactory] Starting Nest application...
[Nest] 23292  - 2022-07-25 16:20:05   ERROR [ExceptionHandler] ENOENT: no such file or directory, open 'settings/default.json'
Error: ENOENT: no such file or directory, open 'settings/default.json'
at Object.openSync (node:fs:585:3)
at Object.openSync (pkg/prelude/bootstrap.js:796:32)
at Object.readFileSync (node:fs:453:35)
at Object.readFileSync (pkg/prelude/bootstrap.js:1082:36)
at new SettingsService (C:\snapshot\amos2022ss08-openid-connect-doctor\bundle\index.js:125427:39)
at Injector.instantiateClass (C:\snapshot\amos2022ss08-openid-connect-doctor\bundle\index.js:9097:19)
at callback (C:\snapshot\amos2022ss08-openid-connect-doctor\bundle\index.js:8815:41)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at process.runNextTicks [as _tickCallback] (node:internal/process/task_queues:65:3)
at Function.runMain (pkg/prelude/bootstrap.js:1984:13)

To Reproduce
Steps to reproduce the behavior:

Download the latest release from https://github.com/amosproj/amos2022ss08-openid-connect-doctor/releases/tag/sprint-11-release-candidate
Start the executable via your terminal of choice

Expected behavior
The application starts and opens a browser tab displaying the first page of the openid-doctor-workflow.
Screenshots

Desktop (please complete the following information):

OS: Windows 10 Professional

I was missing the necessary files mentioned in the documentation. If I create the necessary files it is working as expected. So there is no need for a fix right now.


Add chapter on neural network backpropagation.

Hey! I've been following this course online and found the 'real-valued circuit' approach to gradient computation really useful. However, the notes don't really go over using this intuitive method to derive the gradient for a full neural network.
I spent some time working out the backpropagation equations by considering the network as a circuit. The process really helped me understand the whole concept really well, so I figured I'd put together my notes and make the derivation formal.
The notes are in a file by themselves: backprop-derivation.md, and there's a live version at http://jayanthkoushik.github.io/cs231n.github.io/backprop-derivation/. I'm not sure  if you guys accept such contributions from people outside Stanford, but I though I'd share anyway in case it can be useful for someone else too.
Cheers!

Thanks! I'll be going through backprop notes in ~week or so I'll take a more closer look then. -Andrej


Release SolrTextTagger compatible with Apache Solr 6.3.0

Any plans to release SolrTextTagger version depending on Apache Solr 6.3.0, any time soon? (Its a question so should go to forum, but didn't find anything of that sort)

Hi; yes soon indeed.  There's going to be a Solr 6.4 release candidate this weekend, and so once 6.4 is official we'll release the text tagger which is expected to be compatible with both.  Note 6.3.0 was only recently supported -- #60

Awesome, will keep and eye!
Thanks,

I just finished the release: https://repo1.maven.org/maven2/org/opensextant/solr-text-tagger/2.4/

Wonderful! Thanks :+1:


test/e2e: Make sure clean test files cleaned

Signed-off-by: Kemal Akkoyun<EMAIL_ADDRESS>As it pointed out, https://github.com/thanos-io/thanos/pull/2742#issuecomment-642172122,
cleaning up e2e test files.
Fixes 2587.

[x] Change is not relevant to the end user.

Changes

Introduce a new e2e test helper to clean up the files after scenario is done.

Verification

make test-e2e

It seems github action doesn't allow us to touch those files. One workaround could be to specify where the temporary files are created. I will investigate more.

Thanks!

Tests are green 🎉 And thanks for the idea @ranjithkumar007 🙇 🙏

Looks cool! :) and no reason to run on privileged ports :+1:

:ship:


Fixed typos and translation mistakes

Fixed some typos as well as deleted some repeated words and expressions. Fixed also some translation mistakes.

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Thanks!


Add a from_template to object creation

It would be nice to be able to define an object with the formatting desired then create new objects that mirror the formatting by passing the template in as an argument.

This is implemented and just needs to be tested.


better error message for unsupported kind

Using a runtime that is not supported produces this API response.
kind 'nodejs:12' not in Set(python:3.6, php:7.1, dotnet:2.2, go:1.11, swift:4.1, nodejs:10, ballerina:0.990, ruby:2.5, nodejs:, nodejs:6, php:7.2, python:3, python, python:2, python:3.7, swift, php:7.3, swift:3.1.1)

we should format the error message better than that.

How about,
the specified runtime 'nodes:12' is not yet supported by the platform. Set(python:3.6, php:7.1, dotnet:2.2, go:1.11, swift:4.1, nodejs:10, ballerina:0.990, ruby:2.5, nodejs:, nodejs:6, php:7.2, python:3, python, python:2, python:3.7, swift, php:7.3, swift:3.1.1) shows all the valid candidates.

does that work?

the specified runtime 'nodejs:12' is not supported by this platform. Valid values are: python:3.6, php:7.1, dotnet:2.2, go:1.11, swift:4.1, nodejs:10, ballerina:0.990, ruby:2.5, nodejs:, nodejs:6, php:7.2, python:3, python, python:2, python:3.7, swift, php:7.3, swift:3.1.1.

Could also put quotes around each kind.

sounds good!

For better structure (as discussed), errorMessage for unsupported kind has been moved to ErrorResponse.scala.

Hi @rabbah,
Does this issue require more work? I see the above PR was merged which addresses the discussion here.
Thanks,
Nitika Agarwal

This is fixed. Thanks @nitikagarw for the nudge.

This is fixed. Thanks @nitikagarw for the nudge.


[BUG] Undo rendering of raw instruction bytes & other data between instruction lines

Describe the bug
At some point in recent months, the raw hexadecimal byte values of instructions began to show up between lines of assembly code in the compiler output panes. There are also additional lines of text, like the std::ios::base::etc. etc. in the example below.
To Reproduce
Just compile any program.
Expected behavior
Assembly instructions appear on consecutive lines with nothing but whitespace between lines.
Screenshots

Desktop (please complete the following information):
N/A
Additional context
It's distracting, breaks the visual sequence of lines, and can't even be changed with some preference. Please either put it on the side, or within the arrow-expandable box between lines, or at least make it default-invisible.

Hi! Sorry that this is bothering you. What you're seeing is already turned off by default - You must have "Compile to binary" checked under the "Output" dropdown

@RabsRincon : Ah, I didn't realize that's what "compile to binary" does.


Clarify Inventory#query/contains behaviour + new versions with quantity

With Minecraft 1.11 it is no longer possible to create -1 sized ItemStacks.
Additionally the current query method never actually cared about stack sizes.
This claryfies the javadocs on the existing query/contains methods
and adds a new one to query for ItemStacks matching an exact size
and one to check for inventories containing at least x amount.

This issue will resolve #1392


Does this build support TLS/SSL connections

I'm trying to configure SSL connectivity, but I get the following error:
Unrecognized option: net.ssl.mode when I try to start mongod pointing to a config file with ssl enabled.
Do you know whether the underlying mongod binary was compiled with ssl support?

Underlying mongod could not be compiled using SSL support on alpinelinux. I would like to fix it as soon as I can, but it will not be before next week.

Hi Marc,
Any idea when you'll fix this ?
Thanks.

I'm on this right, so quite soon I hope

I submitted this patch: http://lists.alpinelinux.org/alpine-aports/3514.html to alpinelinux
When applied,  I will update the docker image.


Hadoop Filesystem for C API Modular filesystem

System information

TensorFlow version (you are using): 2.2.0
Are you willing to contribute it: Yes

Describe the feature and the current behavior/state.
This issue is used to track the implementation of hadoop filesystem for c api modular filesystem
Will this change the current api? How?
No
Who will benefit with this feature?
Users
cc @mihaimaruseac

@mihaimaruseac
I can not file any suitable place so I create an issue here. Currently, the core implementation of hadoop use 2 functions:

https://github.com/tensorflow/tensorflow/blob/e82d258f17bb47ce5fe8daa5c88cbbd7fcc0924b/tensorflow/core/platform/hadoop/hadoop_file_system.cc#L73
https://github.com/tensorflow/tensorflow/blob/e82d258f17bb47ce5fe8daa5c88cbbd7fcc0924b/tensorflow/core/platform/hadoop/hadoop_file_system.cc#L38

Because we can not build libhdfs.so ( C interface using JAVA and C ), we have to load it and get the symbols inside it. This is not possible because C API does not support these functions. So we have 2 options:

Add these functions to C API.
Build our own library libhdfspp.so ( C++ interface with C++ and Proto ). I prefer this approach but converting from cmake to bazel is troublesome and will take a lot of time ( of course I will continue to work until everything is done ).

Which one do you prefer ?

I would go for the first option as it is reusable. We will need to load libraries in the future too.
Note that we have one of them already (or very similar) https://cs.opensource.google/tensorflow/tensorflow/+/master:tensorflow/c/c_api.h;l=1431-1443;drc=24f835217fd27f21141ff0254a2b93ea3cfd7b6c

@vnvo2409
Please update as per above comment.

That function return a TF_Library* https://github.com/tensorflow/tensorflow/blob/bf86c225f059bd6f8e1624001f4644cce2c18fe8/tensorflow/c/c_api.h#L1442
https://github.com/tensorflow/tensorflow/blob/bf86c225f059bd6f8e1624001f4644cce2c18fe8/tensorflow/c/c_api_internal.h#L65-L68
I would like to ask whether op_list is the list of the symbols of the library or we have to add a new function TF_GetSymbolFromLibrary into c_api.h

Hmm, no, the op_list is just the list of TF ops included in the library. It's a protobuf, not something we can use unfortunately.
Looking around, I found that TF_LoadLibrary ends up calling tensorflow::LoadLibrary which is different from tensorflow::Env::LoadLibrary that we need.
I think now that we will actually need to expose both symbols from tensorflow/core/platform/env.h into tensorflow/c/c_api.h.

I will send you a PR right now


Add Windows log collection collector

This adds a new collector that collates the results of running collect-windows-logs.ps1 on the host node.
The collector itself doesn't actually run this script. It just detects when it has been run (for a particular deployment/run of Periscope) and gathers the log files. The script is run by pods in a separate DaemonSet, which has full access to the host environment (runs in a host-process container).
Why can't Periscope itself run in a host-process container? Theoretically it can. But due to the way these are implemented in upstream Kubernetes/containerd, the container image file-system is mounted at a non-root location (from the perspective of the container processes). That means any absolute paths we use inside the container will no longer point where we expect them to. This breaks existing code (like the client-go in-cluster config retrieval), and will make it exceedingly difficult to verify we don't have subtle bugs in code paths performing file access that are infrequently executed.
Other notable changes:

FileContentReader has been renamed to FileSystem, because:

it no longer actually reads files; it now returns a reader from one of its methods
it performs other file system functions like checking file existence/size and listing directory contents

Collectors, DataProducers and Diagnosers all previously had a GetData method that returned a map of keys to string data values. The value types have all been changed to a DataValue interface exposing a function returning an io.ReadCloser. This was because holding all the Windows log contents in memory caused the application to run out of memory.

Codecov Report

Merging #191 (ab76b4a) into master (f0493e0) will increase coverage by 0.79%.
The diff coverage is 89.01%.

@@            Coverage Diff             @@
##           master     #191      +/-   ##
==========================================
+ Coverage   79.45%   80.25%   +0.79%
==========================================
  Files          13       14       +1
  Lines         740      785      +45
==========================================
+ Hits          588      630      +42
- Misses         93       95       +2
- Partials       59       60       +1

Impacted Files
Coverage Δ

pkg/collector/iptables_collector.go
80.00% <0.00%> (ø)

pkg/collector/systemlogs_collector.go
81.81% <0.00%> (ø)

pkg/collector/kubeletcmd_collector.go
76.19% <33.33%> (-3.81%)
:arrow_down:

pkg/collector/nodelogs_collector.go
91.30% <85.71%> (ø)

pkg/collector/dns_collector.go
93.33% <95.00%> (-6.67%)
:arrow_down:

pkg/collector/helm_collector.go
72.72% <100.00%> (ø)

pkg/collector/kubeobjects_collector.go
88.13% <100.00%> (ø)

pkg/collector/networkoutbound_collector.go
96.00% <100.00%> (ø)

pkg/collector/osm_collector.go
75.41% <100.00%> (ø)

pkg/collector/pdb_collector.go
60.52% <100.00%> (ø)

... and 5 more

Continue to review full report at Codecov.

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


Use actual namespace for kscript annotations

Currently, kscript annotations live in the default package, so that users don't need to import them when writing scripts (which typically don't declare a package).
But the default package has issues and is considered bad practice https://youtrack.jetbrains.com/issue/KT-21422
So we may want to simply reimplement the annotations in an actual namespace (kscript.annotations) for better design and tooling within IJ.

Won't fix for now, but let's keep it open for discussion.
So far the only usecase that would benefit from an actual namespace are scripts that live in packages themselfes. See #81 for an example

Closed, since it is unlikely that we can resolve it anytime. It's a design flaw in favor of a more streamlined usage (less typing).


Extension - Bugs related to earning feature ( Round 5)

Describe the task

[x] When submitting then disable all actions

Support earning for Shibuya => not need fix

Error auto reset data on Pool field => Resolved in issue #3001

Error page when click this pool => Related to issue : https://github.com/Koniverse/SubWallet-Extension/pull/2978

Support earning for Shibuya: Not need fix.

Error page when click this pool: his will be fixed in another issue.

Error auto reset data on Pool field: This is currently not fixed due to a conflict with another pull request.

When submitting then disable all actions: Fixed in PR of this issue.
@haiyenvu23

Version test : http://file.cdmteck.com/s/TdaRCZYwBGs4qxJ

[ ] After click Cancel on Confirmation screen
Actual : Disable All account mode
Expect : Enable All account mode

[ ] UI bugs

Version test: http://<IP_ADDRESS>:8900/s/aoygmxbdbT7y5Wo
Validation passed.

Disable all action when submitting data (Stake, Stake more)
Fix UI bug
Fix bug disable All account mode After click Cancel on Confirmation screen


OnGetIntegrationTableMappingFromCRMIDOnBeforeFindTableID, pass TableID by reference

Describe the request
Update the following publisher in GetIntegrationTableMappingFromCRMID, Codeunit 5330 "CRM Integration Management". Pass TableID as a reference (var) to allow changing the integration table. When I designed this event, I somehow missed this...The IsHandle pattern now has no usage without the ability to return a custom TableID.
Current:
    [IntegrationEvent(false, false)]
    local procedure OnGetIntegrationTableMappingFromCRMIDOnBeforeFindTableID(var IntegrationTableMapping: Record "Integration Table Mapping"; TableID: Integer; CRMID: Guid; var IsHandled: Boolean)
    begin
    end;

New:
    [IntegrationEvent(false, false)]
    local procedure OnGetIntegrationTableMappingFromCRMIDOnBeforeFindTableID(var IntegrationTableMapping: Record "Integration Table Mapping"; var TableID: Integer; CRMID: Guid; var IsHandled: Boolean)
    begin
    end;

Additional context
Without the ability to return the TableID the IsHandle pattern is not usable.
Internal work item: AB#500431

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 17295.


Exception when using pre release version - 3.0.0-rc.6

I/flutter (25078): login error: PlatformException(Unexpected Error, User not authenticated, android.security.keystore.UserNotAuthenticatedException: User not authenticated
I/flutter (25078): android.security.keystore.UserNotAuthenticatedException: User not authenticated
I/flutter (25078): 	at android.security.KeyStore.getInvalidKeyException(KeyStore.java:1497)
I/flutter (25078): 	at android.security.KeyStore.getInvalidKeyException(KeyStore.java:1539)
I/flutter (25078): 	at android.security.keystore.KeyStoreCryptoOperationUtils.getInvalidKeyExceptionForInit(KeyStoreCryptoOperationUtils.java:54)
I/flutter (25078): 	at android.security.keystore.KeyStoreCryptoOperationUtils.getExceptionForCipherInit(KeyStoreCryptoOperationUtils.java:89)
I/flutter (25078): 	at android.security.keystore.AndroidKeyStoreCipherSpiBase.ensureKeystoreOperationInitialized(AndroidKeyStoreCipherSpiBase.java:265)
I/flutter (25078): 	at android.security.keystore.AndroidKeyStoreCipherSpiBase.engineInit(AndroidKeyStoreCipherSpiBase.java:109)
I/flutter (25078): 	at javax.crypto.Cipher.tryTransformWithProvider(Cipher.java:2984)
I/flutter (25078): 	at javax.crypto.Cipher.tryCombinations(Cipher.java:2891)
I/flutter (25078): 	at javax.crypto.Cipher$SpiAndProviderUpdater.updateAndGetSpiAndProvider(Cipher.java:2796)
I/flutter (25078): 	at javax.crypto.Cipher.chooseProvider(Cipher.java:773)
I/flutter (25078): 	at javax.crypto.Cipher.init(Cipher.java:1143)
I/flutter (25078): 	at javax.crypto.Cipher.init(Cipher.java:1084)
I/flutter (25078): 	at design.codeux.biometric_storage.CryptographyManagerImpl.getInitializedCipherForEncryption(CryptographyManager.kt:94)
I/flutter (25078): 	at design.codeux.biometric_storage.BiometricStorageFile.cipherForEncrypt(BiometricStorageFile.kt:68)
I/flutter (25078): 	at design.codeux.biometric_storage.BiometricStoragePlugin$onMethodCall$4.invoke(BiometricStoragePlugin.kt:154)
I/flutter (25078): 	at design.codeux.biometric_storage.BiometricStoragePlugin$onMethodCall$8.invoke(BiometricStoragePlugin.kt:198)
I/flutter (25078): 	at design.codeux.biometric_storage.BiometricStoragePlugin$onMethodCall$8.invoke(BiometricStoragePlugin.kt:88)
I/flutter (25078): 	at design.codeux.biometric_storage.BiometricStoragePlugin$onMethodCall$3.invoke(BiometricStoragePlugin.kt:146)
I/flutter (25078): 	at design.codeux.biometric_storage.BiometricStoragePlugin.onMethodCall(BiometricStoragePlugin.kt:198)
I/flutter (25078): 	at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:233)
I/flutter (25078): 	at io.flutter.embedding.engine.dart.DartMessenger.handleMessageFromDart(DartMessenger.java:85)
I/flutter (25078): 	at io.flutter.embedding.engine.FlutterJNI.handlePlatformMessage(FlutterJNI.java:818)
I/flutter (25078): 	at android.os.MessageQueue.nativePollOnce(Native Method)
I/flutter (25078): 	at android.os.MessageQueue.next(MessageQueue.java:335)
I/flutter (25078): 	at android.os.Looper.loop(Looper.java:206)
I/flutter (25078): 	at android.app.ActivityThread.main(ActivityThread.java:8528)
I/flutter (25078): 	at java.lang.reflect.Method.invoke(Native Method)
I/flutter (25078): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602)
I/flutter (25078): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1130)
I/flutter (25078): , null) - stack: #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:597:7)
I/flutter (25078): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:158:18)

which options did you use? which android version? which device? how did you authenticate? is it reproducible with the example/?

Used the same code with the example.
Happend on Samsung galaxy A12, Android 11
Pixel 3a, Android 11.
The same code worked on previous version 2.0.3

Maybe this can help you?
https://github.com/googlearchive/android-FingerprintDialog/issues/41#issuecomment-515704555
If you need any help, don't hesitate to reach out.

https://youtu.be/osNYxH1aaTM

If you need any help, don't hesitate to reach out.

feel free to create a PR if you've get time before me 🤷♂

according to that link, you might want to try to just pass in -1 as authenticationValidityDurationSeconds .. strange though that i didn't see that error.. but it makes kind of sense..

Yes, passing -1 solved the issue.

But regarding This issue
Is it possible to avoid authentication when deleting? (Only authenticate when reading + writing)
Or this should be a feature request?

Check this out:
E/flutter (15575): [ERROR:flutter/lib/ui/ui_dart_state.cc(199)] Unhandled Exception: PlatformException(Unexpected Error, per-operation authentication is not supported (UserAuthenticationValidityDurationSeconds must be >0), java.lang.IllegalArgumentException: per-operation authentication is not supported (UserAuthenticationValidityDurationSeconds must be >0)
E/flutter (15575): java.lang.IllegalArgumentException: per-operation authentication is not supported (UserAuthenticationValidityDurationSeconds must be >0)
E/flutter (15575): 	at androidx.security.crypto.MasterKeys.validate(MasterKeys.java:128)
E/flutter (15575): 	at androidx.security.crypto.MasterKeys.getOrCreate(MasterKeys.java:95)
E/flutter (15575): 	at androidx.security.crypto.MasterKey$Builder.buildOnM(MasterKey.java:357)
E/flutter (15575): 	at androidx.security.crypto.MasterKey$Builder.build(MasterKey.java:314)
E/flutter (15575): 	at design.codeux.biometric_storage.BiometricStorageFile.(BiometricStorageFile.kt:56)
E/flutter (15575): 	at design.codeux.biometric_storage.BiometricStoragePlugin.onMethodCall(BiometricStoragePlugin.kt:189)
E/flutter (15575): 	at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:233)
E/flutter (15575): 	at io.flutter.embedding.engine.dart.DartMessenger.handleMessageFromDart(DartMessenger.java:85)
E/flutter (15575): 	at io.flutter.embedding.engine.FlutterJNI.handlePlatformMessage(FlutterJNI.java:818)
E/flutter (15575): 	at android.os.MessageQueue.nativePollOnce(Native Method)
E/flutter (15575): 	at android.os.MessageQueue.next(MessageQueue.java:335)
E/flutter (15575): 	at android.os.Looper.loop(Looper.java:206)
E/flutter (15575): 	at android.app.ActivityThread.main(ActivityThread.java:8528)
E/flutter (15575): 	at java.lang.reflect.Method.invoke(Native Method)
E/flutter (15575): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602)
E/flutter (15575): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1130)
E/flutter (15575): , null)
E/flutter (15575): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:597:7)
E/flutter (15575): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:158:18)
E/flutter (15575):
E/flutter (15575): #2      MethodChannelBiometricStorage.getStorage (package:biometric_storage/src/biometric_storage.dart:309:22)

OK, sounds cool, keep us posted.
Any updates regarding deleting the storage without biometric?

fyi, i've just published 3.0.0-rc.7 .. it should now work also with authenticationValidityDurationSeconds > -1 .. but i've now also changed the default value for authenticationValidityDurationSeconds to -1 .. imho this would be the most clear way.. I've only not used it before because androidx.security didn't support it..
My hope is, that this is the most stable version of this annoying API.. imho the android KeyStore APIs are pretty broken..  If you still get 'user not authenticated' errors, try to delete it.. afterwards it always worked for me. I didn't yet quite figure out when it breaks though.
I guess it will also break when the authenticationValidityDurationSeconds of an existing Key changes.. so i guess once it is created with a setting, it's not a good idea to ever change that.


could it be possible to specify arguments only via an inline type?

like so I could write it:
@Type class Query {
  @Field test(_ : any, args : {
    tools: [String]
  }) : Boolean {
    console.log(args);
    return true;
  }
}

instead of
class TestArguments {
  @Field([String])tools : [String]
}

@Type class Query {
  @Field test(_ : any, args : TestArguments) : Boolean {
    return true;
  }
}

? Should be doable-we can just generate a name of that type from the @Field

It's not possible in this shape. Class with decorator is the simplest way to have both compile time (type) and runtime info about args. Defining the object shape type inline will result in Object type in reflection system.


HPX can't build on OSX

Expected Behavior
normal build
Actual Behavior
On Apple OSX, std::at_quick_exit() is not defined on OSX even when -std=c++11 is used
In file included from /Users/khuck/src/hpx/hpx/hpx_init.hpp:804,
                 from /Users/khuck/src/hpx/src/hpx_main_argc_argv.cpp:7:
/Users/khuck/src/hpx/hpx/hpx_init_impl.hpp: In function 'int hpx::init(hpx::util::function_nonser<int(boost::program_options::variables_map&)>&, const hpx::program_options::options_description&, int, char**, const std::vector<std::__cxx11::basic_string<char> >&, hpx::startup_function_type, hpx::shutdown_function_type, hpx::runtime_mode)':
/Users/khuck/src/hpx/hpx/hpx_init_impl.hpp:79:14: error: 'at_quick_exit' is not a member of 'std'
   79 |         std::at_quick_exit(detail::on_exit);
      |              ^~~~~~~~~~~~~

Steps to Reproduce the Problem
... Please be as specific as possible while describing how to reproduce your problem.

Configure HPX on OSX with GCC 8+ or Clang 8+ or built-in clang

Specifications
... Please describe your environment

HPX Version:  current master
Platform (compiler, OS):  GCC or Clang on Apple OSX Catalina

@khuck would you mind trying #4189 out? It seems like this just isn't available on macOS.

Closing, as this is fixed


Optionally disable JSON parsing via configuration param

As per discussed on #6, this is my simplest proposal to implement the optional JSON parsing of WS messages just passing a falsy fourth parameter to websocketConnect method.
This implementation doesn't break retrocompatibility.

JSON parsing has been removed as of 2.0.0, there is a readme entry showing how to do it using rxjs' map operator.


Is there a way to change the error message? (Card form invalid)

I would like to change the "Card form invalid" error to an especific error when the card number/cvc/expiry is invalid.
Is there a way of doing that, or should I manually add a state and use "frameValidationChanged", for example?
Thank you in advance.

Closing this issue as this package will soon be deprecated. A new version using Checkout.com Flow is currently in the works.


TS in testing

Thanks for writing your article and providing this repo. One thing I'm trying to understand is the best way of ensuring that gulp watch compiles not only my source but also my test files but does it with different config info (like in testing just have the .ts compile to the same directory
for instance whereas in src it compiles to lib). I also want to ensure the testing pipeline is run when the watcher finds a change in either tests or source code.
This isn't a bug just a question. If you could cover this in your article I bet others would be interested in this.

Sorry for the late reply on this...
So the "watch" task observes changes in app files and test files and executes the default task:
gulp.watch([ "source/**/**.ts", "test/**/*.ts"], ["default"]);

The default task generates a JS file as output so we also observe it and reload the browser:
 gulp.watch("dist/*.js").on('change', browserSync.reload);

The entire task looks like:
gulp.task("watch", ["default"], function () {

    browserSync.init({
        server: "."
    });

    gulp.watch([ "source/**/**.ts", "test/**/*.ts"], ["default"]);
    gulp.watch("dist/*.js").on('change', browserSync.reload);
});

The default task runs the "build" and "test" tasks:
gulp.task("default", function (cb) {
    runSequence("lint", "build", "test", "bundle", cb);
});

And the build task compiles both app code and test code:
gulp.task("build", function(cb) {
    runSequence(["build-app", "build-test"], cb);
});

In summary:
Change in src / test files ➜ run "default" ➜ changes in JS ➜ reload browser


[BUG] Circular indicator keeps going on even when video is ended

Describe the bug
The circular indicator for video buffering keeps going on even when video is ended.
To Reproduce
Steps to reproduce the behavior:

Play a video
Seek to a little while before end
Wait till video finishes
Indicator keeps running

Expected behavior
The buffering indicator should never show when video ends.
Screenshots

Technical Details:

Device: Android Emulator
OS: Android 10

Should fix with v7.0.0. Feel free to reopen if the issue persists.

I have this problem too, but the problem disappear if i set the autoPlay to false. I use the latest version, 7.0.0+7

Same. Still happens on the latest version, if auto play is set to true.


open list

Open list / wishes / references. Once fully defined, move them to separate issues

hack to increase the deployment size:

check that R is installed from source
install R in the normal place, but install lib in temp, e.g., /tmp/lib
create two zips, one for /tmp/lib, save both to S3
in Python, connect to lib zip (but do not save to disk), unzip in memory, write file in /tmp; then call R

speedup: check if already present in /tmp (hash?)
check /tmp is empty

pro: max usage of /tmp 512MB unzipped for R lib; con: slower starts

add option to save R lib to /tmp (let user decide)


UnknownNextPeer when some nodes are offline, even if other routes exist

Background
Three lnd nodes, A, B and C. Created channels between A - B and B - C. With both local and remote balances in both the channels. There were also some other channels created by autopilot on A and C (note, not on B).
On trying to send single payments from A to B and then from B to C, things worked fine.
When I ran queryroute from A with dest set to C and some amount that was under the balances, I got a few routes. None of the routes include just using the hops from A-B-C, i.e. all the hops are through channels set up by autopilot.
However, on trying to make a payment I got the UnknownNextPeer error.
Later, I closed all channels that were opened by autopilot and tried the payment again and it went through.
Also, now, query routes to C run from A shows direct route through B, i.e. A-B-C is now the one and only route returned by queryroutes.
Question: When running sendpayments, maybe user should be able to provide a "hint" and/or "constraints" about using routes that include a specific node?
Other notes:

bitcoind was running with txindex on all three nodes, referring to https://github.com/lightningnetwork/lnd/issues/568

Some of the channels on C opened by autopilot had to be force closed because I got the peer is offline error.

[lncli] rpc error: code = Unknown desc = unable to gracefully close channel while peer is offline (try force closing it instead): channel link not found
Your environment

version of lnd
lnd version 0.4.1-beta commit=321cc69e4e93ae5a176e6649702362bd2b7e38e8
which operating system (uname -a on *Nix)
Linux ip-172-30-4-30 4.4.0-1060-aws #69-Ubuntu SMP Sun May 20 13:42:07 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
version of btcd, bitcoind, or other backend
Bitcoin Core Daemon version v0.16.0
any other relevant environment details
txindex enabled, if that helps

Steps to reproduce
Tell us how to reproduce this issue. Please provide stacktraces and links to code in question.

setup three nodes with autopilot enabled using bitcoind
fund the three nodes to open more channels
open channels using --local_amt and --push_amt from A to B and then from B to C
try making payment from A to C, the payment fails as there is no route from A-B-C

Expected behaviour
Multi-hop payment should have successfully gone through even with some nodes were offline.
In other words, if channels opened by autopilot go offline, that should not impact the use of routes setup using channels explicitly opened by users.
Actual behaviour
If some nodes go offline for routes between nodes, even if there are other routes available, multi-hop payment fails.

A release was very recently made. Are you able to reproduce running 0.4.2?

None of the routes include just using the hops from A-B-C, i.e. all the hops are through channels set up by autopilot.

queryroutes just looks at static graph information. If the channels hadn't yet been fully advertised (6+ confs), then that information wouldn't be available to it.

However, on trying to make a payment I got the UnknownNextPeer error.

Atm, we only return the final error encountered, if you look in the log, there may have been other error encounter.

Also, now, query routes to C run from A shows direct route through B, i.e. A-B-C is now the one and only route returned by queryroutes.

If this is after all the channels have been fully advertised, then that makes sense.

bitcoind was running with txindex on all three nodes, referring to #568

This may be part of the issue. It isn't safe (atm) to run bitcoind instance that supports multiple lnd nodes unless you also configure the number of rpcthreads on the bitcoind node. The documentation briefly cover this.

I'll try 4.2 later today. But just to be sure I could replicate the problem in 4.1.
I have three nodes on three different machines, talking to separate bitcoind instances.
I close all channels on all three nodes.
Then ran node A and C with autopilot, and ran B without autopilot.
I query for a route from A to C and it get the routes in the file attached.
Then I addinvoice on C and finally sendpayment from A and I get a fair few errors. Also attaching the relevant parts from my lnd debug log on A.
I know this all might be completely useless once i upgrade to 4.2, but wanted to capture it somewhere before I upgrade.
routes-a-to-c.json.tar.gz
lng.log.tar.gz

Whoa. Upgrade to 4.2 totally fixes it. The same use case as above, resulted in a payment without errors

ubuntu@ip-172-30-4-176:~$ lncli sendpayment --pay_req=lntb1m1pd3spmjpp5fp28zz47scgjm789jfdux5nd9ukwez8n6tj2nkp6gjtxprjxakgsdqqcqzyswe5rhex7krc94tjgf84n9m374ngzrgkkusjq90006xrpv2jj3fxy5rlepsl4epwpecqq0jyj9nv2v923jzw24lfu0cxzct3sh3c9tccqyygs32
{
        "payment_error": "",
        "payment_preimage": "e206ed21ebebb1060ae09c2c297f86dcb36440e012d1c6fda4131530f73df0f7",
        "payment_route": {
                "total_time_lock": 1324482,
                "total_fees": 2,
                "total_amt": 100002,
                "hops": [
                        {
                                "chan_id":<PHONE_NUMBER>713644033,
                                "chan_capacity": 6781941,
                                "amt_to_forward": 100001,
                                "fee": 1,
                                "expiry": 1324338,
                                "amt_to_forward_msat": 100001100,
                                "fee_msat": 1100
                        },
                        {
                                "chan_id":<PHONE_NUMBER>086684161,
                                "chan_capacity": 300000,
                                "amt_to_forward": 100000,
                                "fee": 1,
                                "expiry": 1324194,
                                "amt_to_forward_msat": 100000000,
                                "fee_msat": 1100
                        },
                        {
                                "chan_id":<PHONE_NUMBER>874148864,
                                "chan_capacity": 12800000,
                                "amt_to_forward": 100000,
                                "expiry": 1324194,
                                "amt_to_forward_msat": 100000000
                        }
                ],
                "total_fees_msat": 2200,
                "total_amt_msat": 100002200
        }
}

👍


use keyword-only API

There's a new trick in Python 3 which is tailor-made for calls to the sampling functions and any functions which have lots of arguments. It is possible to require that arguments be passed by keyword.
Details: https://www.python.org/dev/peps/pep-3102/
I believe one uses it like this:
def hmc_nuts(*, iter, warmup, adapt, kwarg1, kwarg2, kwarg3, kwarg4):

Yes, it's a good way to force user be explicit.
It's also possible to allow some args if needed
def hmc_nuts(iter, warmup, *, adapt, kwarg1, kwarg2, kwarg3, kwarg4):

I'm closing this because it's a little tricky to implement in practice without having an exhaustive list of possible arguments. httpstan might have this, but I suspect pystan will not. Likely easier to raise an error (in httpstan) when the user provides an extra argument.

Reopening because (1) I'd like to make sure it gets implemented in httpstan and (2) I think there's a way to do this on the pystan side. Maybe something like myfunction(*ignore, **kwargs). I could be wrong.
Here's a link to the relevant PEP: PEP 3102 -- Keyword-Only Arguments.
This is an important one. There are many Stan functions which should be keyword-only. It would be, for example, imprudent to ever try to set adapt_delta with a position argument.

Not an issue right now since we don't support anything other than Model.sample, which already does not use positional arguments.


 It would be nice to allow an optional parameter which denotes which cooldowns to conditionally reset the bucket on by using its id

Lol so existed for long enough already it seems I just couldnt find it prior https://github.com/Skelmis/Function-Cooldowns/blob/main/cooldowns/utils.py#L138


Error reading page_length from local_storage

I have a table with popup_filtering active and state saved to local_storage. If I do a filtering that returns 0 result and after that i reload the page the next error appears in javascript console:

Uncaught TypeError: Cannot set property 'selected' of undefined

I followed this error till this function (on line 2150 is where the error happens) :
e.prototype.onChangeResultsPerPage = function() {
                var t = this.tf;
                if (this.isEnabled()) {
                    this.emitter.emit("before-page-length-change", t);
                    var e = this.resultsPerPageSlc,
                        i = e.selectedIndex,
                        s = this.pageSelectorType === f.SELECT ? this.pagingSlc.selectedIndex : parseInt(this.pagingSlc.value - 1, 10);
                    if (this.pagingLength = parseInt(e.options[i].value, 10), this.startPagingRow = this.pagingLength * s, !isNaN(this.pagingLength) && (this.startPagingRow >= t.nbFilterableRows && (this.startPagingRow = t.nbFilterableRows - this.pagingLength), this.setPagingInfo(), this.pageSelectorType === f.SELECT)) {
                        var n = this.pagingSlc.options.length - 1 <= s ? this.pagingSlc.options.length - 1 : s;
                        **this.pagingSlc.options[n].selected = !0**
                    }
                    this.emitter.emit("after-page-length-change", t, this.pagingLength)
                }
            }

I have this problem in a more complex context, if you are not able to reproduce it, I can try to give you a demo or something like that.
Thank you for your great library and sharing it with all of us.

Thanks for pointing this out @IObregon, I can easily reproduce the issue on this demo:
http://koalyptus.github.io/TableFilter/persistence.html
It seems to be related to page length selection persistence, I will investigate and fix it in the coming days.
Cheers

Starting from v0.5.4 the above bug should be fixed.
Tell me how it goes.

Thank you for the fast answer.
I have to try with the last version.
Are you going to do a new release or should I get the code from master?
Again thanks for your answer and great proyect.

No worries, you can pull master or take the latest version from npm.
Cheers

Now It works perfectly.


Add IL battle & Moon Jump features

Hi complex :D

Notes from testing:

In the menus, rename "IL Battles" -> "IL Battle"?
What would you think about removing the "Y to reset battle option" and just keeping the Stop Battle menu option? Y is kind of easy to press accidentally and reset vs. stop is kind of confusing.
Leaving the stage / GAME main mode should stop/hide the battle display if it's over (but keep running if the battle is still ongoing in case of a mismenu?)
Do you think you could add some help info to the IL battle menu, perhaps with a "Help" orange header? Something like: to start a battle, enter a stage, select "start new battle", and retry?

For your "Y to reset" comment, I added that because I was finding it annoying to repeatedly open the mod menu & sometimes navigate to the proper spot between each battle, since usually when im battling with friends we're doing lots of stages back to back & it helps to make resetting as efficient as possible. Think maybe it'd work better maybe with a hotkey of "Z" instead of Y, or some button combination?

I see. I think a single button hotkey is fine, but in that case I think the IL battle mod itself should go behind a bool preference so the hotkey can be enabled/disabled to avoid conflicts with e.g. savestates, if that makes sense

Might also makes sense to document the hotkey as "start new battle" over "reset" so it's just obvious it does the same thing as hitting the "start new battle" button in the menu

Does finishing a battle, leaving the stage, and entering a new stage show the results from the previous battle when the display comes back up? I think the time/score should be zeroed when you first enter a level.

Also, you should transition out of the buzzer beater state into the normal stopped state after leaving a stage so you're not still in that state when next entering a level


MSID: 99010 Version: 2 DOI: 10.1101/2<IP_ADDRESS>2329

MSID: 99010
Version: 2
Preprint DOI: https://doi.org/10.1101/2<IP_ADDRESS>2329
Step 1. Awaiting reviews
Editorial to post reviews via hypothesis
Useful links:

DocMap: https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v2/by-publisher/elife/get-by-manuscript-id?manuscript_id=99010
New model tracking: https://docs.google.com/spreadsheets/d/1_fHaoOy7hjyocptKtVJRijeNpUY4hBS7Ck_aVmx6ZJk/
Reviews on sciety: https://sciety.org/articles/activity/10.1101/2<IP_ADDRESS>2329

For trouble shooting (e.g. no Docmaps available):

DocMap issue addressing: https://miro.com/app/board/uXjVNCwK6EI=/
Explore DataHub DocMaps API: https://lookerstudio.google.com/reporting/4c2f0368-babb-4beb-b5b3-497e7e7b0f08/page/ejphD
Unmatched submissions and preprints: https://lookerstudio.google.com/u/0/reporting/9f86204f-3bf7-477c-9b18-5c5ef141bf69/page/p_gxi57ha93c
Unmatched manuscripts spreadsheet: https://docs.google.com/spreadsheets/d/15QcK8w-ssB7109RQEDtFpJPZ0J5HTGxoHa_2TtpMBbg/edit#gid=1336081641

Step 2. Preview reviewed preprint
Production QC content ahead of publication
Instructions:

QC preview: https://prod--epp.elifesciences.org/previews/99010v2
Update ticket with any problems (add blocked label)
When QC OK, add QC OK label to ticket and add publication date and time to https://docs.google.com/spreadsheets/d/1amAlKvdLcaDp5W8Z8g77NmkwbMF5n_u89ArSqPMO8jg
Move card to next column
(At end of the day post link in #enhanced-preprint and ask for PDF to be generated)

Useful links:

Preprint DOI :  https://doi.org/10.1101/2<IP_ADDRESS>2329
Confirm reviews returned by EPP: https://prod--epp.elifesciences.org/api/reviewed-preprints/99010/v2/reviews
To update the MECA path in the docmap: https://docs.google.com/spreadsheets/d/1mctCQuNFBjSn97Lihy7_vBO6z7-N-oqyLv4clyi6zHg

Step 3: Awaiting search reindex
This step adds the reviewed preprint to the homepage: https://elifesciences.org
The search reindex is triggered once an hour. We need the reviewed preprint to be indexed as the search application serves the journal homepage.
Useful links:

Jenkins pipeline to reindex search can be triggered sooner or monitored here: https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 4: Published! PDF requested
Waiting for PDF to be generated
Useful links:

PDF tracking: https://docs.google.com/spreadsheets/d/106_XeDjmuBae7gexOTNzg60lapeqjl2aRn9DzupGyS8/

Step 5: Introduce PDF to data folder and git repo
Upload PDF to relevent folder in git repo https://github.com/elifesciences/enhanced-preprints-data/
Step 6: Done!

[ ] Kettle is on!

Hi @acollings, just double-checking you're OK with convincing being used twice here?

Thanks @fred-atherden once is enough!

Thanks!


Enclose vsphere cloud provider properties in double quotes

This PR fixes #102.

Note that not only the password is double quoted but also all the fields, following the example at the vSphere Cloud Provider docs.


[HOLD] Update Bootstrap to v5

Summary
Update Bootstrap version from v3.4.1 to v5.
To do

[ ] Update .navbar Bootstrap classes;
[ ] Update .page-header Bootstrap classes;
[ ] Update .container Bootstrap classes;
[ ] Update .modal Bootstrap classes;
[ ] Update .modal Bootstrap JS;
[ ] Update .dropdown Bootstrap classes;
[ ] Update .navbar-nav Bootstrap classes;
[ ] Update <form> Bootstrap classes;
[ ] Update icons library (Keep using Font-Awesome or use icons from Bootstrap?)
[ ] Update <buttons>, .br-button, .btn Bootstrap classes;

@idmarjr Do you wish I buy the v5 and we go straight to it?

Closing this till we figure out if we're gonna keep or remove Bootstrap from the stack.


사이트 추가

ex)

Origin: https://stackoverflow.com/questions/16718163/jdbctemplate-set-nested-pojo-with-beanpropertyrowmapper
Copy1: https://webdevdesigner.com/q/jdbctemplate-set-nested-pojo-with-beanpropertyrowmapper-308115/
Copy2: https://bugsdb.com/_en/debug/c37f056acfe721165a84083a7c940e19

감사합니다


Will mbedtls be updated to version 3.x or above?

The mbedtls inside libspdm is version 2.28.1. It is fine for current SPDM implementation. Yet, according to mbedtls 3.0 development plan, upgrade and support for version LTS 2.x will be stopped by mid 2024.
Is there any plan to upgrade it to 3.0+ to make sure the libspdm can get continuous support and bug fix from mbedtls team.
https://lists.trustedfirmware.org/archives/list/mbed-tls-announce@lists.trustedfirmware.org/thread/SB42NEOHUIVVVTPA2H37XXUDVNEGTDRG/[](url)

From https://github.com/Mbed-TLS/mbedtls/releases

Mbed TLS 2.28 is a long-time support branch. It will be supported with bug-fixes and security fixes until end of 2024.

So yes, sounds like there should be plans to migrate to the version 3 release.

@steven-bellock
sound great!, thanks

Hi @steven-bellock
I'm working on TF-RMM project [1]. And we are in progress of integrating libspdm in RMM to provide SPDM requester side capabilities for Device Assignment use case (Trusted IO). As part of this work we have updated mbedtls in libspdm to use 3.+ version [2]. I recently saw this issue#2709 and am planning to raise a pull request for this issue. Please have a look. Thanks!
[1] https://tf-rmm.readthedocs.io/en/latest/index.html
[2] https://review.trustedfirmware.org/c/TF-RMM/tf-rmm/+/28567

@arugan02 , thanks for the work. Assign this to you.

This was completed by #2711.


bill reminder feature

check your changes in main if it is running. thanks for your commit!

It is running.