Feat: Add Qwen

Got past the collator issue. Seems to run fine.
Please let me know if there's any other errors. I've set the default token ids to their EOD token. If during inference, there's unintended consequences. We may need to default bos/eos to the ones used in their qwen-chat
Reference:

https://github.com/QwenLM/Qwen/blob/main/FAQ.md#tokenizer
https://github.com/QwenLM/Qwen/blob/main/tokenization_note.md#special-tokens

I was testing this branch with an old version of transformers.
In the one we pinned, setting gradient checkpointing would cause an error QWenPreTrainedModel._set_gradient_checkpointing() got an unexpected keyword argument 'enable'. This is due to an update in transformers.
There are a few ways I see to fix this:

disable gradient checkpointing gracefully till we update transformers (easiest)
overwrite Qwen's ._set_gradient... to use official HF from newer commits

Only in main c13a43a is this fixed

I added a warning instead and updated the examples. We should remove the warning when we update past 4.35.2

Tested working in Colab. Didn't inference, but this should be a good start.

I tried to run both qlora and lora examples with your branch but I get this error: Traceback (most recent call last):
File "/opt/miniconda/envs/axolotl/lib/python3.9/runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/opt/miniconda/envs/axolotl/lib/python3.9/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/home/cheshireai/axolotl/src/axolotl/cli/train.py", line 38, in
fire.Fire(do_cli)
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/fire/core.py", line 141, in Fire
component_trace = _Fire(component, args, parsed_flag_args, context, name)
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/fire/core.py", line 475, in _Fire
component, remaining_args = _CallAndUpdateTrace(
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/fire/core.py", line 691, in _CallAndUpdateTrace
component = fn(*varargs, **kwargs)
File "/home/cheshireai/axolotl/src/axolotl/cli/train.py", line 34, in do_cli
train(cfg=parsed_cfg, cli_args=parsed_cli_args, dataset_meta=dataset_meta)
File "/home/cheshireai/axolotl/src/axolotl/train.py", line 124, in train
trainer.train(resume_from_checkpoint=resume_from_checkpoint)
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/transformers/trainer.py", line 1555, in train
return inner_training_loop(
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/transformers/trainer.py", line 1860, in _inner_training_loop
tr_loss_step = self.training_step(model, inputs)
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/transformers/trainer.py", line 2725, in training_step
loss = self.compute_loss(model, inputs)
File "/home/cheshireai/axolotl/src/axolotl/core/trainer_builder.py", line 284, in compute_loss
return super().compute_loss(model, inputs, return_outputs=return_outputs)
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/transformers/trainer.py", line 2748, in compute_loss
outputs = model(**inputs)
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
return forward_call(*args, **kwargs)
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/accelerate/utils/operations.py", line 659, in forward
return model_forward(*args, **kwargs)
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/accelerate/utils/operations.py", line 647, in call
return convert_to_fp32(self.model_forward(*args, **kwargs))
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/torch/amp/autocast_mode.py", line 14, in decorate_autocast
return func(*args, **kwargs)
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/peft/peft_model.py", line 977, in forward
return self.base_model(
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
return forward_call(*args, **kwargs)
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/peft/tuners/tuners_utils.py", line 106, in forward
return self.model.forward(*args, **kwargs)
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/accelerate/hooks.py", line 164, in new_forward
output = module._old_forward(*args, **kwargs)
File "/root/.cache/huggingface/modules/transformers_modules/Qwen/Qwen-7B/f7bc352f27bb1c02ee371a4576942a7d96c8bb97/modeling_qwen.py", line 1058, in forward
transformer_outputs = self.transformer(
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
return forward_call(*args, **kwargs)
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/accelerate/hooks.py", line 164, in new_forward
output = module._old_forward(*args, **kwargs)
File "/root/.cache/huggingface/modules/transformers_modules/Qwen/Qwen-7B/f7bc352f27bb1c02ee371a4576942a7d96c8bb97/modeling_qwen.py", line 787, in forward
token_type_ids = token_type_ids.view(-1, input_shape[-1])
RuntimeError: shape '[-1, 8192]' is invalid for input of size 2158
0%|                                                                                | 0/40 [00:00<?, ?it/s]
Traceback (most recent call last):
File "/opt/miniconda/envs/axolotl/bin/accelerate", line 8, in
sys.exit(main())
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/accelerate/commands/accelerate_cli.py", line 47, in main
args.func(args)
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/accelerate/commands/launch.py", line 994, in launch_command
simple_launcher(args)
File "/opt/miniconda/envs/axolotl/lib/python3.9/site-packages/accelerate/commands/launch.py", line 636, in simple_launcher
raise subprocess.CalledProcessError(returncode=process.returncode, cmd=cmd)
subprocess.CalledProcessError: Command '['/opt/miniconda/envs/axolotl/bin/python', '-m', 'axolotl.cli.train', 'examples/qwen/lora.yml']' returned non-zero exit status 1.

Hey @CheshireAI , this error is most likely due to sample packing. The dataset you used is too small or you can turn off sample_packing

Do you have a working example? Neither of the examples are working for me.

Do you have a working example? Neither of the examples are working for me.

For future ref, following discussions on discord, it was due to flash attn incompatible with adapters for Qwen.


[#4]: Change Social Media Icon Size

feature: social media icons
bug-fix:  changed social medial icons font-size using 30px in small and media screen devices.

@goodylove  remove md:text-3xl this class is not necessary.

done


Documentation for data returned by events

Could you build upon the documentation to clarify some of the data that is returned?
Immediately, I am looking to use peerSortable but I do not know the nature of its data and if it is always present and/or reliable, and if it is always the previously connected sortable or something else.

The README.md file was updated by adding documentation about all arguments passed to events in the library.
After committing the change, I have noticed some bad formatting on the list of arguments of each event. Will fix this in the next opportunity, hopefully it can help you understand those events.
https://github.com/marcospont/agnostic-draggable/blob/main/README.md
Thanks,
Marcos


[Question] ETL Best Practices

Hi, is there any best practice, or someone who already experienced building batching ETL app for Django Oscar?
New team in my company build an app with Django Oscar, but I found something about unusual structure (data change capture) for implementing incremental batching ETL. For example on order I only find date_placed field, but no updated_at, should we add field manually with option current_timestamp() on updated?
Thank you

Hi there. We use Github only for managing bugs and feature requests, and not for support. We recommend that you ask for help on Stack Overflow using the django-oscar tag, or joining our slack workspace or mailing list and asking a question there. Thanks.


[feature] Add missing unit tests for certifyVuln

Is your feature request related to a problem? Please describe.
Currently, the certifyVuln in the in-memory database is missing unit tests.
Describe the solution you'd like
Add in unit tests for certifyVuln in in-memory database backend similar to the other (such as CertifyVex unit tests)

I would like to work on this issue.

@pxp928 Does this issue require additional attention?

I've started adding tests for this mutation on my PR https://github.com/guacsec/guac/blob/5c00687e64cbb2fad552ad9c6f71a38f1e4f6b77/pkg/assembler/backends/ent/backend/vulnerability_test.go#L24-L376


Add typed-binding-pattern suport for foreach statement

Add typed-binding-pattern support for foreach statement
Add capture-binding-pattern support for typed-binding-pattern
Add list-binding-pattern support for typed-binding-pattern
Closes #22938
Closes #23079
Check List

[ ] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

@m36dot I think we can close this one?


Optimize the maximum upload size for font.

Optimized the maximum upload size for font.
See issue #7054
Changed the maximum upload size from  2MB to 64MB
Changed the maximum upload font size from 512MB to 32MB
This may cause a dependency if zitadel has a roadmap for using external links instead of uploading files.
Definition of Ready

[x] I am happy with the code
[x] Short description of the feature/issue is added in the pr description
[x] PR is linked to the corresponding user story
[x] Acceptance criteria are met
[ ] All open todos and follow ups are defined in a new ticket and justified
[ ] Deviations from the acceptance criteria and design are agreed with the PO and documented.
[x] No debug or dead code
[x] My code has no repetitions
[x] Critical parts are tested automatically
[ ] Where possible E2E tests are implemented
[x] Documentation/examples are up-to-date
[x] All non-functional requirements are met
[ ] Functionality of the acceptance criteria is checked manually on the dev system.

@Evsio0n sorry for the late reply. We had some internal discussions about this, resp. the proposed sizes.
While we definitely see the problem, we don't want to generally allow that big files for performance reasons (e.g. storing the file in the database, serving the file for mobile devices / networks, ...)
We'd propose changing the allowed file sizes to a runtime configuration (defaults.yaml) so it can be configured based on needs and available possibilities (hardware/usage).
What do you think about that?

My suggestion would be to place the above-mentioned content on external links (such as CDN hosting, or within the website directory). This can at least reduce the read/write operations on the database (As I’ve found, each time the login screen is loaded, it is actually a loading operation (i.e., reading the binary file from the database).) This indeed can affect performance. Therefore, I lean more toward using external URLs. I’m curious whether there has been any internal discussion or thoughts about Zitadel utilizing external resources?

Hey @Evsio0n sorry for the late reply.
Yes we talked about serving those assets (incl. user avatars) from CDN / external sources as well.
We then need to look into how to handle that correctly in the content security policy for the login UI and console. Have not done so yet, but we're up for a proposal.

Hi, Any proposal for the content resouces?

I will close this PR since the increment of the upload size is not handleable at the moment.


Is there any way to get RTM events (not the messages) history

Hi. Can you please describe if there is any way to get not-handled events in the bot application? For example, if I have an application that listens through the web sockets to the Slack events (like channel created/deleted, the message created, reaction added/removed). When the application is not running there will be some events that are not handled. I want to recover all the events when I run the application again. Is it possible to do it with Slack API?
P.S. Yes, I understand that ideally, we should have a reliable queue like Redis or another that will store all the events inside.

Hi @BootGenius, thanks for asking the question!
When your server is not responding, the Slack server-side does three retries at maximum in the exponential backoff manner. But, unfortunately, there is no mean to know unhandled requests after the retries. Also, the lost events won't be delivered any more.
I hope this was helpful to you!

@seratch. Thanks for the answer. Then I have 2 related questions:

Can we query the deleted messages/reactions/channels using Slack API?
Can we query modified messages/reactions/channels using Slack API?

@BootGenius Unfortunately, three is no way to do 1. and 2. both. If a message is modified, the message object has edited attribute, but your app cannot access its historical data using APIs.

ok. Got it. Thanks for the answer


"Ichimeni ", "Panaitoaia" , "Tudor Vladimirescu " and "Timuș" are listed in the drop-down menu

Description:
"Ichimeni ", "Panaitoaia" , "Tudor Vladimirescu " and "Timuș" are listed in the drop-down menu alongside its corresponding county and commune, according to the law
Precondition:
The website is up an running.

Step 1
Type "Ichimeni " in the search bar.

Expected results
The location is listed in the drop-down menu as "Ichimeni , Botoșani (Avrămeni)".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Type "Panaitoaia" in the search bar.

Expected results
The location is listed in the drop-down menu as "Panaitoaia, Botoșani (Avrămeni)".

Step 4
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 5
Type "Tudor Vladimirescu" in the search bar.

Expected results
The location is listed in the drop-down menu as "Tudor Vladimirescu, Botoșani (Avrămeni)".

Step 7
Type "Timuș" in the search bar.

Expected results
The location is listed in the drop-down menu as "Timuș, Botoșani (Avrămeni)".

ATTENTION:
STEP1:
Request - "Ichimeni , Botoșani (Avrămeni)"
In dropbox, the request is displayed correctly. - "Ichimeni , Botoșani (Avrămeni)"
After you click on the text, what is displayed in the window this is different - "Ichimeni, BOTOȘANI (Avrămeni)"
STEP3:
Request - "Panaitoaia, Botoșani (Avrămeni)"
In dropbox, the request is displayed correctly. - "Panaitoaia, Botoșani (Avrămeni)"
After you click on the text, what is displayed in the window this is different - "Panaitoaia, BOTOȘANI (Avrămeni)"
STEP5:
Request - "Tudor Vladimirescu, Botoșani (Avrămeni)"
In dropbox, the request is displayed correctly. - "Tudor Vladimirescu, Botoșani (Avrămeni)"
After you click on the text, what is displayed in the window this is different - "Tudor Vladimirescu, BOTOȘANI (Avrămeni)"
STEP7:
Request - "Timuș, Botoșani (Avrămeni)"
In dropbox, the request is displayed correctly. - "Timuș, Botoșani (Avrămeni)"
After you click on the text, what is displayed in the window this is different - "Timuș, BOTOȘANI (Avrămeni)"


Bug: Pulling out Ocarina (from D-Pad down) and putting away in Bombchu Bowling (in OOT) crashes the game

Pretty self-explanatory title. Since there's no restriction for D-pad Ocarina, you are able to pull it out inside the Bombchu Bowling building and when you do so if you put it away (or hell, maybe if you even try to warp out, I didn't try) it crashes immediately. The solution to this issue is to just restrict the Ocarina in there like in the Treasure Chest Game. Not sure how this one even went missed as a restriction, nor how no one else ran into this crash (I guess most players just leave the building to warp away). This is a vanilla crash because even for OOTR when the restriction was lifted temporarily (a very short time) players ran into crashes so it was re-restricted lol.

Fixed by 294da26


Working with ATtinyx61

Updates for issue #39, tested working on an ATtiny861.
Had to merge PCINT0_vect and PCINT1_vect into the single available interrupt callback, PCINT_vect. I did this by merging the PCINT1 code into PCINT0 and only enabling it on the x61. Probably not the best way to do this as it duplicates code between PinChangeInterrupt0.cpp and PinChangeInterrupt1.cpp.
Added an initialization method to clear out interrupts in both PCMSK0 and PCMSK1 on ATtinyx61 as interrupts on all pins are enabled by default. It's really just a #define and does nothing on other devices.
The split between PCIE0 and PCIE1 isn't even, 0 does PCINT 8-11 and 1 does PCINT 0-7 and 12-15. In enablePinChangeInterruptHelper a manual range check is done so that PCIE0 is only used for the first 4 pins of port 1.
I left the digitalPinToPCINT method as is which means it will still not work. I tested using the pin definitions from ATtinyCore (PIN_PA0, ..., PIN_PB7) which can be used as inputs to attachPinChangeInterrupt directly.
My working test code:
#include <PinChangeInterrupt.h>

void pulse() {
  digitalWrite(PIN_PA7, !digitalRead(PIN_PA7));
}

void setup() {
  initPinChangeInterrupt();
  pinMode(PIN_PB3, INPUT_PULLUP);
  attachPCINT(PIN_PB3, pulse, CHANGE);

  pinMode(PIN_PA7, OUTPUT);
  digitalWrite(PIN_PA7, HIGH);
}

void loop() {
}

With this simple circuit:

Wait waaat? This looks super weird. I've seen the datasheet and it seems to be super weird. However I am not sure if your solution will properly work. I think you are only capturing the states of 8 bits, but you code can be used for way more pins. That looks incorrect.
Now my big question is: If there is only one interrupt vector for two ports, how can you tell which port caused the interrupt? And furthermore why did the code compile until now? It think it should not even compile.
I might missunderstand, but I think we need to dig deeper into that one. Thanks for sharing your solution.

I don't think there's anything that would cause it to not compile previously but the ISR methods would not actually connect to anything. They would end up no different than any other user created method.
In the interrupt vector you can still examine the separate PCINT registers to determine which set of pins caused the interrupt. There's just no real shortcut anymore, you have to examine both registers.

Now looking closer at this PR it is a huge WTF, but looks very "clean" (as clean as it can get) to support all pins for this attiny.
Now beside the fact that this PR works, did you ever think of only enabling PCINT 0-7? Cause the other PCINTs are on pins used for clock, int0, reset etc, which are very likely never used anyways. So it might make sense to remove that boilerplate, which will cause a lot faster interrupt handling and less flash size.

did you ever think of only enabling PCINT 0-7?

I considered this but wanted to make this as generic as possible, which meant allowing all pins to be used. I've tried to make the logic in the new commits so that it will allow PORT 1 to be disabled but left it always enabled on x61 devices.

Since I've merged the other PR you need to resolve some conflicts. If you are not very familiar with git, you can continue to work on this PR like you are used to, and I can fix that for you, once it is ready to merge.


Warning: Illegal string offset 'search', Warning: Illegal string offset 'column'

I got the same error. Symfony has stopped rendering tables.

I got the same error. Symfony has stopped rendering tables.

I think it's complicated to make the information shorter...
If you want the issue to go forward you're going to have to give more information and context about the warning.

I think it's complicated to make the information shorter...
If you want the issue to go forward you're going to have to give more information and context about the warning.

I also ran into that problem, but I was able to fix is by downgrading to 0.5.1
symfony composer require 'omines/datatables-bundle:0.5.1

I also ran into that problem, but I was able to fix is by downgrading to 0.5.1
symfony composer require 'omines/datatables-bundle:0.5.1

I could trace down the error to DataTableState.php to the code accessing $parameters->all(....). We are using Symfony 4.4.18 in our projects and symfony/http-foundation in 4.4.18 and the ParameterBag.php function all() does not support an optional parameter to all of the specified key.

I could trace down the error to DataTableState.php to the code accessing $parameters->all(....). We are using Symfony 4.4.18 in our projects and symfony/http-foundation in 4.4.18 and the ParameterBag.php function all() does not support an optional parameter to all of the specified key.

We had a discussion about a problem recently:
https://github.com/omines/datatables-bundle/commit/5ccdc1283ff1931c8259796447b8e69f48ea5302#r45847066

We had a discussion about a problem recently:
https://github.com/omines/datatables-bundle/commit/5ccdc1283ff1931c8259796447b8e69f48ea5302#r45847066

@curry684 Is the active support of Symfony LTS 4.4 going to stop or do you plan on reverting to ParameterBag::get()?

@curry684 Is the active support of Symfony LTS 4.4 going to stop or do you plan on reverting to ParameterBag::get()?

https://github.com/omines/datatables-bundle/releases/tag/0.5.3

https://github.com/omines/datatables-bundle/releases/tag/0.5.3

Let me know if it also fixes this specific issue.

Let me know if it also fixes this specific issue.

I just updated to v0.5.3, ordering no longer fails on Symfony 4.4.18. I can't confirm the same thing for searching right now, but I don't see why not.

I just updated to v0.5.3, ordering no longer fails on Symfony 4.4.18. I can't confirm the same thing for searching right now, but I don't see why not.

👍

👍


Following example - I get an error

Describe the bug
When I followed the first example, pasting the curl with the binary events I get a response:
{"detail":[{"loc":["body"],"msg":"value is not a valid dict","type":"type_error.dict"}]}
When I tried the second curl command, the one with a structured event it worked.
To Reproduce
Steps to reproduce the behavior:
I installed and followed the instructions as per the readme.
I installed using poetry.
Expected behavior
I expected to see both structured and binary methods work as specified by the documentation.
Screenshots
If applicable, add screenshots to help explain your problem.
System Details (please complete the following information):
name = "cloudevents" version = "1.6.1"
name = "fastapi" version = "0.85.0"
name = "fastapi-cloudevents" version = "1.0.2"
name = "pydantic" version = "1.10.2"
Additional context
Add any other context about the problem here.

@avilior Thank you for the bug report!
Looking into it right now

Seems that this is a problem introduced in fastapi>=0.66.0.
Working on a fix. Meanwhile you can downgrade it to fastapi<0.66.0 as a workaround.

Released as part of 1.0.3
https://github.com/sasha-tkachev/fastapi-cloudevents/releases/tag/v1.0.3


CI: Split e2e test cases to reduce overall time consumption

Currently, it takes more than an hour to run a complete e2e test case, which is a bad experience both for the developer experience and for the development progress.
Although we can specify to run specific test cases before submitting code, in a CI environment, we want to run all cases in full to ensure the quality of our code.
I suggest that we can split and run the current test cases to reduce the overall time-consuming.

We can refer to this PR.

We can refer to this PR.

@fgksgf Great! This is exactly what I expected

Ok, i will have a try. Assign it to me, pls.


make logger pluggable

Padrino::Logger has some drawbacks (eg. writing to a single file from multiple instances)
it would be nice if the logger would be pluggable and e.g lumberjack or log4r could
be used

Not tested but I think you can:
Padrino.logger = Lumberjack::Logger.new("logs/application.log")

Can you confirm this?

AFAIK, there are 2 problems: Padrino.logger has to #respond_to #sync= and #devel. I had that problem when using SyslogLogger.

yep, had the same problems as @skade
i  tried monkeypatches to make it work but its all ugly.
is there any real reason for a self rolled logger or would a patch be acceptable? (with possibly depreciating #devel)

I wouldn't want to deprecate devel, as it has a very special role. But there should be a fallback for Loggers that do not implement #devel or the concept of syncing.

I am currently in process of trying to fix this. Just as confirmation: Padrino currently heavily relies on the behaviour of Padrino::Logger, so I would be surprised if any other logger works currently.
I am aiming for Lumberjack as a test case.

I have a working branch here:
https://github.com/skade/padrino-framework/tree/issue728
Its definitely not done and tested yet, but runs one of my apps in development mode using Lumberjack. Basically, it splits the logger into generic extensions and reuses some of them for other loggers like lumberjack. It also needs to be cleaned up.


Create and populate the Map Tool page

Play around with adding button components, search bars, radial buttons, a retractable side bar

Styling the page will come later; first focus on getting a page up and working

Make routes in /routes.jsx and link the routes in main.jsx


improvement support glibc <2.21 for system call eventfd

Proposed changes
support lower version eventfd function
The definition of function event in be/src/glibc-compatibility/musl/eventfd.c currently only supports >=glibc2.21 declarations.
It does not support lower version declarations. Modify the eventfd.c code to also support <glibc2.21 declarations.

run buildall

run buildall
------------------ 原始邮件 ------------------
发件人:                                                                                "apache/doris"                                                                                @.>;
发送时间: 2024年4月8日(星期一) 中午12:20
@.>;
<EMAIL_ADDRESS>主题: Re: [apache/doris] improvement support glibc <2.21 for system call eventfd (PR #33218)
run buildall
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>


Redundancy of public keys uploaded to or generated within Azure Portal

The documentation doesn't state how the public SSH key is stored. Is they key replicated globally in Azure?
To clarify, I understand that I generate an SSH key in region A, it looks like it's possible to use that when creating a VM in region B.
So

is SSH key geo-redundant? If region A becomes unavailable, can I still provision VMs in region B using the SSH key
is SSH key zone-redundant? If region A uses Availability Zones, could an outage of a single zone make the SSH key inaccessible?

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

ID: c0c5a806-41a2-f4a6-6888-329f7f362a53
Version Independent ID: a5a2789c-5462-c041-54ea-d18754172dda
Content: Create SSH keys in the Azure portal - Azure Virtual Machines
Content Source: articles/virtual-machines/ssh-keys-portal.md
Service: virtual-machines
GitHub Login: @cynthn
Microsoft Alias: cynthn

@DavidVivash Thank you for sharing feedback. We are actively validating it. We will get back to you soon.

@DavidVivash Thanks for the question. Github forum is dedicated for docs related issues. For any technical queries or clarifications, we encourage to utilise Microsoft Q & A platform. Kindly raise your query on Microsoft Q&A Platform

@ShaikMaheer-MSFT thank you for responding. Just to clarify, what I'm asking is for the redundancy to be documented. For keys / secrets etc. uploaded to key vault, the redundancy is known, because it is documented. See, for example: https://docs.microsoft.com/en-us/azure/key-vault/general/disaster-recovery-guidance
What I'm suggesting is the current documentation with respect to public SSH keys is lacking, and the documentation should be updated to provide the necessary information.
If the redundancy is not guaranteed, I believe this should be documented, even if it's just something like "Note: a local copy of keys should be kept, as in the event of a regional Azure outage, keys uploaded to the portal may become unavailable."

@cynthn Could you please validate and update document as appropriate? Thank you

@DavidVivash Sorry it has taken so long for me to respond!
For new deployments, if there is a full regional outage and the SSH key resource is in the affected region, it won’t be accessible until the outage is resolved. For a single zone outage, the public key should be available.
A copy of the public key is transferred to VM when it is created. So for just accessing the VM using the key, the keys are as geo and zone redundant as the VM itself.
I hope this helps! If you have more questions, you can reopen this issue or create a new one.
#please-close


Make GID and UID readable from dockerfile env variables

Please make it possible that spottube gets the gid and UID from the env Docker variables

closed with 9ac9579ab2b0a8b7380ae337b3ad3762f432af76


Search for "transaction" intermittently returns a blank results page

Screenshots of results from https://www.cockroachlabs.com/docs/search.html?q=transaction in both Chrome and Firefox below.  A few minutes prior, I was seeing a blank results page in Firefox as well.
I was able to save a HAR file from the page via Firefox - the one I tried to save from Chrome was an empty file (I don't know if this is helpful, sorry, not a web dev).
Archive 18-03-23 14-47-42.har.zip

This appears to be working as expected since https://github.com/cockroachdb/docs/pull/2774, closing.


Another tests

Feature request
bla bla bla
Motivation
bla bla
Your contribution
bla bla bla

Thanks for the report @amyeroberts! I will look into it ASAP! (I'm a bot).


[improve][misc] Optimize TLS performance by omitting extra buffer copies

Motivation
In Pulsar, there has been a long time workaround (#2464) for a Netty SslHandler issue where the input ByteBuf instances get mutated. After Netty 4.1.111.Final, it's no longer necessary to make buffer copies when TLS is enabled. This change on Netty side https://github.com/netty/netty/pull/14086 contains the fix.
Modifications
Since the Pulsar client might get used with an older Netty version, it's necessary to detect that the Netty version contains the fix. The simplest way to detect Netty 4.1.111.Final is by checking for existence of the class io.netty.handler.ssl.SslHandlerCoalescingBufferQueue since that class was extracted from an inner class in 4.1.111.Final.
Instead of referencing ByteBufPair.ENCODER and ByteBufPair.COPYING_ENCODER directly, use ByteBufPair.getEncoder(tlsEnabled) to choose the correct encoder. The COPYING_ENCODER will only be used if an older Netty version is detected. This could be the case when a client application uses the pulsar-client-original maven dependency and the application uses an older Netty version.
Documentation

[ ] doc
[ ] doc-required
[x] doc-not-needed
[ ] doc-complete

Codecov Report
Attention: Patch coverage is 72.72727% with 3 lines in your changes missing coverage. Please review.

Project coverage is 73.44%. Comparing base (bbc6224) to head (937b3e3).
Report is 486 commits behind head on master.

Files
Patch %
Lines

...org/apache/pulsar/common/protocol/ByteBufPair.java
57.14%
2 Missing and 1 partial :warning:

Additional details and impacted files

@@             Coverage Diff              @@
##             master   #23115      +/-   ##
============================================
- Coverage     73.57%   73.44%   -0.13%
- Complexity    32624    33229     +605
============================================
  Files          1877     1919      +42
  Lines        139502   144113    +4611
  Branches      15299    15746     +447
============================================
+ Hits         102638   105844    +3206
- Misses        28908    30158    +1250
- Partials       7956     8111     +155

Flag
Coverage Δ

inttests
27.83% <72.72%> (+3.24%)
:arrow_up:

systests
24.73% <72.72%> (+0.40%)
:arrow_up:

unittests
72.52% <72.72%> (-0.32%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Files
Coverage Δ

...ulsar/broker/service/PulsarChannelInitializer.java
95.00% <100.00%> (ø)

...e/pulsar/client/impl/PulsarChannelInitializer.java
91.26% <100.00%> (+0.08%)
:arrow_up:

...org/apache/pulsar/common/protocol/ByteBufPair.java
78.84% <57.14%> (-21.16%)
:arrow_down:

... and 519 files with indirect coverage changes


Feature: Reload Config on signal

I'd love caddy to reload the config file when receiving a signal,
I would use caddy paired with consul and hashicorp/consul-template to generate the config file and when something changes in consul the config file is regenerated, i would like to be able to tell caddy that it's config file changed and to reload it when this happens.
Use case:

Consul in a docker container
Consul template running and generating a Caddyfile
Caddy in a docker container running with some proxy sites up (to other docker conainers)

Then:

A new service gets up
Consul-template updates the caddyfile
Consul-template sends signal to caddy
Caddy reload the config

Other service discovery tools have similar processes to configure services automatically, i think reloading the config file from a signal is a nice portable way to do it

Glad you brought this up. Planning has already begun for this feature, including an automatic failsafe: Caddy will roll back to the last working configuration if the new one fails to start for some reason.
I like the signal idea - but which signal would be used that would work cross-platform? SIGINT and SIGKILL are the only two that are guaranteed to be present on any OS, and those terminate the process. My other thought was to open a high port on the loopback interface so that a new Caddyfile could be streamed into that any time from the local machine.
We're also working on a RESTful API that can make both incremental and major changes to the server's configuration on-the-fly. You can see its progress on the api branch of this repo.

I don't know how they handle it with other web servers, would need to poke in code, or they communicate through an api (listening on another port with an external tool) or they send a signal.
Apache: https://httpd.apache.org/docs/2.2/programs/apachectl.html (graceful option)
Nginx: http://nginx.org/en/docs/beginners_guide.html
From wikipedia
SIGHUP:

The SIGHUP signal is sent to a process when its controlling terminal is closed ...
... Many daemons will reload their configuration files and reopen their logfiles instead of exiting when receiving this signal....

I can check this a little, but the rest api to control Caddy is also a good plan

In apache from ./include/mpm_common.h
/* Signal used to gracefully restart */
#define AP_SIG_GRACEFUL SIGUSR1

From mod_so.c
 * This module is used to load Apache modules at runtime. This means that the
 * server functionality can be extended without recompiling and even without
 * taking the server down at all. Only a HUP or AP_SIG_GRACEFUL signal
 * needs to be sent to the server to reload the dynamically loaded modules.
 *

So I guess those 2 signals (HUP and USR1) are used. I've seen occurences where in windows they use something else
But i also like the idea of the rest api to control the server

Would an API be compatible with the etcd/consul workflow? Or possibly a port where a file could be piped in? (I'm not a consul/etcd user so I have no idea.)

An API would indeed be compatible, consul, etcd have a lot of programs (consul-template , kelseyhightower/confd) permit to run a command after a config file has been generated, so would be easy to run something like curl to reload or send the config.
API would also permit new types of interractions, so i kinda like this way.
But signal is always more standard way to reload config. So having both would really be nice. If this is something you think easy to do I would even lend a hand

I'm making really good progress on the API - almost ready to "mass-produce" the endpoints for all the middleware.
As for reloading config, what do you mean by "more standard way"? Is there a way to get the signal to work on Windows?

i was meaning : SIGHUP is standard on unix systems to reload config.
For windows systems, I really don't know since normally there is a windows service involved.I don't know how reload is handled. I've just started digging go programs on windows.

Okay. Well, I'm not opposed to a quick-and-easy way to reload config, but it does have to be cross-platform. That's why I'm leaning more toward opening a port on loopback and letting a new Caddyfile be piped in through there. But at that point, it's a network request, which is like what the API does anyway, so... it just depends if we want to be required to use HTTP to reload config. The port could just listen for raw bytes, but I'm still not convinced this is necessary since the API will be able to do this.

I'm seeing that even apache doesn't support windows graceful reloading without restarting the server completely :confused: So, that is up to you if you want to do the same (unix only graceful reloading) or using the api, which i find a good idea (the api).

so if we rely on a socket rather than signal trapping we should probably have a caddyctl binary or something that speaks api to the socket. then we could accomplish hot reloads from the cli via caddyctl -s reload or something

That's basically what the API will do. If we speak HTTP, then any HTTP client (like curl) can interact with Caddy, no special binaries needed (without precluding others from writing Caddy-specific API clients.)

personally i feel like we should ship a cli for the api with caddy, that does basic things like reload. The are must haves to use caddy as a server process in any sort of production environment.

@j-mcnally Sure, anyone is welcome to write clients for the Caddy API when it is ready.
Question for you. I'm starting the API endpoint that will do a reload of the config without killing the process. The big question is Where does it get the config from? Sure, it's easy if Caddy's input happens to be from a Caddyfile - just reload the Caddyfile and use it as input. But what about input that gets piped into Caddy? I guess in that case we can just return an error code and say that the original input is no longer available. -or- we could just restart all the servers using the same configuration as was piped in, but that's inconsistent with loading from the file.
Then we need to remember that the API can make other incremental (or major) changes to the server configuration, altering it from what the Caddyfile had when the server first started. Do we reload the server with its current, mutated configuration or use the Caddyfile from disk?
Of course, if a reload does fail, it will roll back to last working configuration.
I can make this happen, but I need some help figuring out these details. Maybe the request could specify what kind of reload to do? How would that look?

After giving it some more thought, I think I've cleared some things up in my head. Here is what will probably happen, feel free to comment if I missed something:
If you use the API to invoke a reload, it only succeeds if Caddy was started with a Caddyfile. When you reload, it just reloads the same Caddyfile, and if it fails, it rolls back. Any changes made to Caddy by the API since it was started would be discarded, since if you invoke a reload, that must mean that you've updated the Caddyfile and want to use that now.

:+1:

I have a similar use-case except that I want to integrate it with Chef outside of docker.
But the whole idea is that a change in machine metadata will trigger chef to recreate Caddyfile and will issue a signaling for reload configuration.
Caddy has the potential to became the "go to" reverse proxy alternative for the DevOps era.
(Thanks for the hard work)

This is almost done.

Okay, this just landed in the le-graceful branch. You can trigger graceful reload with SIGUSR1. This change will soon be merged into the letsencrypt branch, which will then be merged into the master branch when nearing release. But if this is something you're very interested to try, go ahead by cloning it down.
If the new configuration is invalid and the child fails to start successfully, the parent process will not terminate and will keep listening. (This is not bulletproof yet: if a startup functions returns an error, for example, the parent may still terminate... same with trying to bind to new ports... I need to work that out later. But if the Caddyfile is invalid, it should failover properly.)
Keep in mind that startup functions will execute on restarts, but shutdown functions will not execute on SIGUSR1.

nice ! good job :+1:

Is this in the v0.8 beta?

@coolaj86 Yep

@mholt
If I understood the thread - currently, caddy has an API, at which I can fire Caddyfiles with an updated configuration.  If I got something wrong, the new config will not take.
Is that right?
Is there an established way to use Caddy with Docker across multiple hosts?
Many thanks
-Jake

Caddy does not have an API, but it is being worked on.
You cannot pass a new Caddyfile to caddy yet but you can update the existing Caddyfile and send USR1 signal to get caddy to restart with new config.

Is there an established way to use Caddy with Docker across multiple hosts?

I'm assuming you mean as a reverse proxy/load balancer. None yet but there's a work in progress specifically for proxy here with demonstration video here.

If I got something wrong, the new config will not take.

If you got something wrong that prevents Caddy from using the new Caddyfile, the new config will not take. So you could misspell a value and it would still work, but Caddy would not reload if the Caddyfile was malformed or something.

@abiosoft @mholt
Yes, as an RP/LB, you got it.  I'll check out the repo and demo.  I think I'll take a second and tell about my pans, so that if caddy isn't the right tool, you can let me know.  Basically, I want to use caddy to act as the RP for many docker containers across many hosts because I love what it's got going on with let's encrypt.  Is that reason enough?  I mean-- it is certainly not a feature I have seen elsewhere.  Thanks guys.
@mholt okay, that is what I figured.
Thanks guys!  BTW..... CADDY IS GREAT!

Glad you like it :) And see #564 for a relevant PR for what you're wanting. I think.

there should be a CLI flag to tell caddy just dry check the config file syntax then print out errors and warnings

@myguidingstar You could just start another instance of Caddy with that Caddyfile and it will tell you if there are problems.

I thought that will be a bit noisy with unavailable ports (used by running instance) and HTTPS may take some time or even impossible in local machine if public ip is not available. But maybe that's  just fine.

Well, if the Caddyfile has problems, it won't even get to that point. If the Caddyfile is good, it will just fail to bind the needed ports and abort anyway.

@mholt would you mind putting this comment in a more public location, perhaps in the documentation itself?  Perhaps point me to the ideal place and I can submit a pull request.

@martindale It's on the CLI page already. :wink:

For future reference:
pkill -USR1 caddy

Reloads the configuration file, then gracefully restarts the server.

https://caddyserver.com/docs/cli#signal

Why not use SIGHUP signal, I know nginx use SIGHUP for hot reload signal.

@codeskyblue Because Caddy doesn't "hang up" when doing a reload. :wink:

@mholt perfect answer

For people who don't know how to send SIGNAL.
sudo pkill -USR1 caddy

For future reference:
pkill -USR1 caddy

Reloads the configuration file, then gracefully restarts the server.

https://caddyserver.com/docs/cli#signal

@hickford What about caddyv2? This signal doesn’t work there.

You run caddy reload instead, which under the hood makes a request to the config API.
Please don't comment on years-old issues. Please instead ask your questions on the forums https://caddy.community


Added: Paragraph Selector & Model Selector

Added OpenAI placeholder to env example

Summary of Changes
This pull request introduces significant enhancements to both the frontend and backend, aimed at providing users with the ability to select the desired OpenAI model and specify the number of paragraphs for script generation. These changes are designed to give users more control over the content creation process and to address issues with excessive video length due to too many paragraphs being generated. Backend Changes (Backend/gpt.py)
Enhanced generate_script Functionality Modified the generate_script function to respect the number of paragraphs specified by the user, preventing the generation of overly lengthy scripts.
AI Model Selection Updated the generate_response and related functions to accommodate the selection of different AI models, allowing for flexibility in choosing between models like GPT-3.5 and GPT-4.
Frontend Changes
AI Model Selection UI Implemented a new feature in the frontend that allows users to select from available OpenAI models. This selection is then passed to the backend to determine which model is used for content generation.
Paragraph Selector Added a paragraph selector to the frontend, giving users the ability to define the number of paragraphs they want to generate for their video scripts.
Testing and Validation
Performed end-to-end testing to ensure that the frontend selections for AI models and paragraph numbers are correctly passed to and handled by the backend. Validated that the generated video scripts adhere to the user's specifications regarding length and content.
Additional Notes
Reviewers should verify that the new frontend controls are intuitive and that the backend correctly processes the inputs. It is important to ensure that the changes maintain compatibility with any existing features and that they can be extended to other language models in the future.

please reject my twitter callback on this pull lol i don't know how to not include that

Those files in __pycache__ really shouldn't be there, can you delete the whole folder? Also, it looks like you changed the line endings in a lot of files this will make this hard to merge with other changes, maybe you can fix that two before this will be reviewed.
@FujiwaraChoki I will make a pr to make sure that the cache in sub folders are also excluded in the .gitignore file, they are easy to generated by simply starting python from the wrong folder.

Amazing PR, really. I will merge once the issues mentioned by Arne are solved, and I have tested everything. Thank you!

probably best to add __pycache__ to .gitignore

The amount of paragraphs could be changed to amount of sentences. As i find that a pragraph for a short is allready too much.

The amount of paragraphs could be changed to amount of sentences. As i find that a pragraph for a short is allready too much.

Agree here, I've had great success with the following:
The script is to be returned as a string. Keep it concise, so a maximum of 5 sentences.

(See PR https://github.com/FujiwaraChoki/MoneyPrinter/pull/120/files, but could be added here)

Amazing PR, really. I will merge once the issues mentioned by Arne are solved, and I have tested everything. Thank you!

Love It! But those files in __pycache__ really shouldn't be there, can you delete the whole folder? Honestly not sure how you added the files, all __pycache__ folders should be ignored by git. Also, it looks like you changed the line endings in a lot of files this will make this hard to merge with other changes, maybe you can fix that two before this will be reviewed.

Hey I'm so happy you all liked my changes. I am new to OSS contributions, this is my first. I'm kinda redacted when it comes to this hence my patchwork changes I made to comply with these requests. I don't know how I messed up the formatting so I just copied your code over again, and manually made my edits. I did compile and test on my end and everything does appear to still work. Got a video done with the correct AI model and paragraphs selected. Enjoy, so happy I could contribute in less than 24 hours since using this project.
I have a couple more ideas I'll hopefully get to soon ;)
Cheers,
Joe


update broken link and add more details about docker data volumns for resolving #406

In respond to issue #406

Once again, thank you, but could you resubmit the PR to the dev branch?  It would be awesome if Github allowed me to "redirect" a merge, but I don't think that is possible.


Revert std feature behavior in casper-types

This PR fixes the broken std feature on casper-types, reverting to the behavior from 1.4.0 onwards.
It also includes a version bump for casper-types so that 1.4.3 can be published and 1.4.2 yanked.
Closes #2363.

bors merge


refactor intro page

Description

Add wonderful images and layout from new designer to intro page :100:
Related issues/PRs

Todos

[ ] Tests
[ ] Documentation
[ ] Release note

Release Note

None required

Deploy preview for calico ready!
Built with commit 007aacfe59ebc981f08c237dca3d059262a1f30a
https://deploy-preview-2783--calico.netlify.com

Got offline approval from @lxpollitt . @projectcalico/core-maintainers can someone fet it the rest of the way through?


Clone Deployment doesn't seem to work (v.0.1.249)

Describe the bug
Attempting to clone a deployment stays "spinning" forever in v.0.1.249
To Reproduce

Deploy something
Go to /my-deployments/
Click "Clone Deployment"
You'll see the prompt confirming if you want to do this action (with correct DSEQ)
Accept and see it spin forever

https://user-images.githubusercontent.com/19495789/226004001-09452900-d25f-4ba4-980c-fc3e745c0d48.mp4

Thanks @mspilimbergo - would be great if you looked at fixing this. Will assign to you now.

On it - thanks!

hey there @mspilimbergo - just checking in to see how things are going on this?


Standardize repository structure

Closes #2

Maybe it could optimized a bit, but for npw it is ok, let's move it forward
:)
On Wed, Dec 28, 2022, 08:59 Sandro Loch @.***> wrote:

@.**** commented on this pull request.
In .github/workflows/main.yaml
https://github.com/thegraphnetwork/wave-docker-template/pull/3#discussion_r1058333491
:

   run: |

     curl -sSL https://install.python-poetry.org/ | python -

     export PATH="$HOME/.poetry/bin:$PATH"

 - name: install from poetry

   run: poetry config virtualenvs.create true && poetry install

 - name: check dir

   run: |

     pwd

     ls -la

 - name: run wave app

   run: |

     wave run app/app.py &

     sleep 5 &

@xmnlab https://github.com/xmnlab. It worked, what do you think?
Makefile:
APP ON CI
.PHONY: app-wait
app-wait:
timeout ${TIMEOUT} ./scripts/ci/status_code_check.sh
status_code_check.sh:
#!/usr/bin/env bash
echo "[I] Checking response status code from App..."
while [ "curl -i http://localhost:10101 2>/dev/null | head -n 1 | cut -d$' ' -f2" != 200 ];
do
echo "[II] Waiting for Curl..."
sleep 5;
done
echo "[III] The WaveApp is 200 OK!."
—
Reply to this email directly, view it on GitHub
https://github.com/thegraphnetwork/wave-docker-template/pull/3#discussion_r1058333491,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABHX5HLVHIIZVKSF4LMUXKLWPQ2SHANCNFSM6AAAAAATEZQOWU
.
You are receiving this because you were mentioned.Message ID:
@.***>

Thanks for your review @xmnlab!

@fccoelho, if it's ok for you, we can merge.

Maybe it could optimized a bit, but for npw it is ok, let's move it forward :)
…

Sure!


ServiceClient UserAgent and ProductInfoHeaderValue issues

Allowing consumers to provide an HttpClient was a great addition to the ServiceClient library.  Thanks for that!

While using the ServiceClient and providing a static HttpClient, I noticed https://github.com/Azure/azure-sdk-for-net/blob/81d6e36f25213143cf4b509ffb4926b610f7e946/src/SdkCommon/ClientRuntime/ClientRuntime/ServiceClient.cs#L476 adds the ProductInfoHeaderValue even if it is already present.  I made some changes to fix this: https://github.com/Azure/azure-sdk-for-net/compare/psSdkJson6...EricDahlvang:psSdkJson6  but, your checklist is somewhat extensive so I haven't submitted a PR.

The MergeUserAgentInfo method assumes every ProductInfoHeaderValue has a Product.  However, if a ProductInfoHeaderValue was created using the comment constructor, it will not have a Product and MergeUserAgentInfo will throw a null reference exception.

Thank you for your assistance with these two issues.

Thanks for fixing the first issue mentioned.
Note:
https://github.com/Azure/azure-sdk-for-net/blob/master/src/SdkCommon/ClientRuntime/ClientRuntime/ServiceClient.cs#L568
Will still potentially throw a null reference exception if the existing ProductInfoHeaderValues were created using the comment constructor (no product): https://docs.microsoft.com/en-us/dotnet/api/system.net.http.headers.productinfoheadervalue.-ctor?view=netframework-4.7.2#System_Net_Http_Headers_ProductInfoHeaderValue__ctor_System_String_
Unit Test:
        /// <summary>
        /// This is to verify if a HttpClient is passed that contains ProductInfoHeaderValues with comments in
        /// userAgent information, no exception occurs while merging
        /// </summary>
        [Fact]
        public void IgnoreProductInfoHeaderValueCommentsDuringMerge()
        {
            const string comment = "(comment)";
            HttpClient hc = new HttpClient(new ContosoMessageHandler());
            hc.DefaultRequestHeaders.UserAgent.Add(new ProductInfoHeaderValue(comment));
            ContosoServiceClient contosoClient = new ContosoServiceClient(hc, false);
            HttpResponseMessage response = contosoClient.DoSyncWork();

            HttpHeaderValueCollection<ProductInfoHeaderValue> userAgentValueCollection = contosoClient.HttpClient.DefaultRequestHeaders.UserAgent;
            contosoClient.Dispose();
            var productInfos = userAgentValueCollection.Where<ProductInfoHeaderValue>((p) => p.Product == null && p.Comment.Equals(comment, StringComparison.OrdinalIgnoreCase));
            Assert.Single(productInfos);
        }

Maybe if the above is addressed, this catch all can be removed:
https://github.com/Azure/azure-sdk-for-net/blob/master/src/SdkCommon/ClientRuntime/ClientRuntime/ServiceClient.cs#L540

An attempt was made to prevent UserAgent headers from being added to the default headers of an HttpClient in https://github.com/Azure/azure-sdk-for-net/pull/5009, but it doesn't look right to me.
A lock object is created on the fly, for each instance of ServiceClient, so that in no way prevents two instances from updating a HttpClient at the same time. Perhaps the issue will appear slightly less often because a memory barrier was added, but I've actually seen IndexOutOfRangeExceptions because of this issue in version 2.3.18 (and newer) of Microsoft.Rest.ClientRuntime.

This has been open for over three years now.  I find this odd, considering the fix is relatively minor.
Is there anything anyone can do to help resolve this?

@EricDahlvang thank you for filing this issue. We are working on new versions of our libraries that are based on Azure.Core. Because of that, we are de-prioritizing changes to the ClientRuntime. Could you see if the features that Azure.Core provides work for your scenario?

@AlexGhiondea thank you for the update!
I'll close this issue, and review Azure.Core for our needs separately.


"…internal variables override outer variables…" but apparently don't

The third assert in /koans/AboutFunctions.js asserts message to be "Outer". Either the test is named incorrectly, some other syntax is wrong, or I have a buggy version of V8.

It only overrides within the function because in the function it's doing "var message" which is creating it's own instance of the message variable. Had it done "message = 'Inner'" then it would override it on the top level and the answer would be "Inner".
In this case though, "Outer" is the correct answer


Dialog ribbon colors not matching state

If the dialog is a danger or warning state, the top ribbon color should be red or yellow.
Currently (in Master) it is blue if I try to destroy an application and blue if I try to stop a deployment. There is a color mismatch.

Duplicate of https://github.com/mesosphere/marathon/issues/3458


Improve examples

I'm not sure if the examples should be explicitly included or excluded from the workspace, but with the originally provided Cargo.example.toml the examples can't be built.
I disabled rtt in Embed.toml for the usb examples, because they don't use this crate.
The rest is just some minor cleanup.

Thanks!
bors r+


Update FEC config library to disable dot rule

Fixes https://github.com/RedHatInsights/ocp-advisor-frontend/issues/29

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


Chapter3/homework/4

I think I understand the use of generics and covariance, though I cannot fully wrap my head around contravariance.
From your lessons, I've understood that "in" -> contravariance, is used to go from something more general to something more specific, but I'm having a hard time visualizing the practical use of this.
Nevertheless, here's what I've done for this homework.

I think I understand the use of generics and covariance, though I cannot fully wrap my head around contravariance.
From your lessons, I've understood that "in" -> contravariance, is used to go from something more general to something more specific, but I'm having a hard time visualizing the practical use of this.
Nevertheless, here's what I've done for this homework.

Refer to this example: https://github.com/csinn/CSharp-From-Zero-To-Hero/blob/Chapter3/Lesson/Generics/Src/BootCamp.Chapter/Demos/Contravariance/ContravarianceDemo.cs
Janitor is Employee
Programmer is Employee
IManager where TEmployee : Employee
Programmer can have its' own manager, Janitor can have its' own manager.
Imagine if it worked logically (like covariance).
IManager<Employee>[] = {janitorManager, programmerManager}

However let's try to consume it:
janitorManager.Manager(new Programmer());

Huh? Janitors aren't programmers, this shouldn't be allowed! But if it worked like covariance, it would be legal. Therefore, you need to specify which managers can handle Programmers or more generalized forms.
So:
IManager<Programmer>[] = {programmerManager, generalEmployeeManager}

Programmer manager can handle Programmers, because it's made for it.
GeneralEmployeeManager can handle Programmers, also Janitors and any other employee type.

This:
Imagine if it worked logically (like covariance).
IManager<Employee>[] = {janitorManager, programmerManager}

However let's try to consume it:
janitorManager.Manager(new Programmer());

So you're saying that with contravariance, I can define what kind of specific form a generic paramater can be consumed in a given context? So in:
interface IManager<in TEmployee> where TEmployee : Employee
Here, we create a generic IManager interface with TEmployee specified as contravariant. Then all the other methods which have been declared in this interface will accept TEmployee as input.
So for example:
IManager<Janitor> janitorsManager
Then I do something like:
janitorsManager.Manage(new Janitor());
Using a more "generalised" form in the above example will result in a compile time error right?
So I won't be able to do something like:
janitorsManager.Manage(new Programmer());
Covariance would allow this but since we've used the contravariant modifier in the original interface, we cannot do something like this, like in polymorphism right?

I think I get it now. I spent a huge amount of time playing with generic interfaces a couple of days ago in realtion to the next homework, and I used them there as well.
Spending hours of grinding them was definitely a plus! :)


#95 add airflow branch layout table

Closes #95 by lifting info from internal infracode. Will need maintenance as built deployments move around.

Hey @whatnick can I propose that we change this, let's change the Oregon cluster to feed from a branch called oregon and then we can leave main going to production and develop can go to dev.
Makes sense, right?

Hey @whatnick can I propose that we change this, let's change the Oregon cluster to feed from a branch called oregon and then we can leave main going to production and develop can go to dev.
Makes sense, right?


Precommit offset fix

This fix should actually be introduced in Kafka Connect framework.
The following causes a single duplicate record(last committed) to be processed in case of restarts and rebalances.

@SanchayGupta1197 @ohadbitt Please review and merge this PR.
Thanks!


Why won't there be higher level APIs on TensorFlow that support AGI?

Needed higher level APIs that support AGI on top of TensorFlow...

I suspect you meant to file an issue/ feature request. Closing the PR.


KxpContext database connection-string hardcoded

Brief bug description
When executing the Migration.Toolkit.CLI.exe it fails when trying to open a connection to the KxpContext database.
The connection-string for this context is not read from the appsettings.json but from a hardcoded connection-string in the KxpContext.cs file (line 241).
Repro steps
Build and execute the Migration.Toolkit.CLI.exe with the following command:
Migration.Toolkit.CLI.exe  migrate --sites --custom-modules --users --settings-keys --page-types --pages --attachments --contact-management --forms --media-libraries --data-protection --countries
Expected behavior
Either tell people to setup the connection-string manually in the KxpContext.cs or read the KX13 connection-string from the appsettings.json
Test environment

Platform/OS: Windows 11 Pro Version: 23H2
Build with: Microsoft Visual Studio Enterprise 2022 (64-bit) Version 17.8.3

Additional context
CLI Error message:
02:42:24.708 fail: Microsoft.EntityFrameworkCore.Database.Connection[20004] An error occurred using the connection to database 'XK29_1_0_BP' on server '.'.
02:42:24.708 fail: Microsoft.EntityFrameworkCore.Query[10100] An exception occurred while iterating over the results of a query for context type 'Migration.Toolkit.KXP.Context.KxpContext'. System.InvalidOperationException: An exception has been raised that is likely due to a transient failure. Consider enabling transient error resiliency by adding 'EnableRetryOnFailure' to the 'UseSqlServer' call.  ---> Microsoft.Data.SqlClient.SqlException (0x80131904)

Add any other context about the problem here.
Screenshots

I have the same problem here, I had to comment out the code in the screenshot to get it working.

I wasn't quite sure what that context is for, so I added my connection string to the KX13 source database there and executed the CLI.

Thank you for bringing this to our attention. We will investigate and keep you informed of our progress.


avoid ctime race conditions in reverse signatures

r? @maxtaco @mlsteele

Compare units here: https://github.com/keybase/client/blob/00e7c0723638c2af9d760c866c6f12ea9559b30e/go/libkb/kbsig.go#L289-L292

Cool, thanks


fix: Namespaced deployment overlay generation

fix: Namespaced deployment overlay generation

Remove dnshealthcheckprobes CRD for namespaced deployments
Add crd to cluster kustomization
Improve dns provider generation, avoid calling a base that requires a local file.

bump kustomize version v5.5.0
fix: Multi record test
Test was incorrectly checking for "GEO-" in the aws provider specific endpoint values.
Note: This test is executed on the e2e  but only with 1 cluster/deployment so it never uses the second geo, you can re-create the issue by running:
make local-setup DEPLOY=true DEPLOYMENT_SCOPE=namespace DEPLOYMENT_COUNT=2 CLUSTER_COUNT=2
make test-e2e-multi TEST_DNS_ZONE_DOMAIN_NAME=mn.hcpapps.net TEST_DNS_PROVIDER_SECRET_NAME=dns-provider-credentials-aws TEST_DNS_NAMESPACES=dns-operator DEPLOYMENT_COUNT=2 CLUSTER_COUNT=2

We should probably consider adding a GitHub action that executes it this way.

github action sounds good


how do you add things into a group?

Describe your problem here.
how to you add things into a group? (lua)
Are you modding a build from source or with Lua?
Lua
What is your build target?
Windows x64
Did you edit anything in this build? If so, mention or summarize your changes.
No response

u mean like this?
x = {0,1,2}


What is this character in the script?

Hey @Sponge-bink, that's an SF Symbol glyph representing the battery case. If you install Apple's SF Pro font, you should be able to see it.


Null zone_id error, missing requirement?

While following along with the pingdummy example and some of your documentation, I've been running into an issue where terraform plan and terraform apply both fail due to the error:
* variable "main" is nil, but no error was reported
I was able to determine the ambiguous error is caused by ${module.stack.zone_id} missing while defining a service.  An example portion of my terraform.tf:
module "stack" {
  source      = "github.com/segmentio/stack"
  name        = "my_clients_name"
  environment = "prod"
  key_name    = "bastion-ssh"
  region      = "us-east-1"
  availability_zones = "us-east-1c,us-east-1d,us-east-1b,us-east-1e"
}

module "my_rails_service" {
  source         = "github.com/segmentio/stack/service"
  image          = "${aws_ecr_repository.my_rails_service.repository_url}"
  port           = 3000
  environment     = "${module.stack.environment}"
  cluster         = "${module.stack.cluster}"
  iam_role        = "${module.stack.iam_role}"
  zone_id         = "${module.stack.zone_id}" <----- cause of the error
  security_groups = "${module.stack.internal_elb}"
  subnet_ids      = "${module.stack.internal_subnets}"
  log_bucket      = "${module.stack.log_bucket_id}"
  command = "bundle exec rails s -p 3000 -b '<IP_ADDRESS>'"
}

When digging down deep enough, I find that the missing field is an output of the Terraform AWS ELB Resource.  From the examples it seems like the default setup should be able to compute the zone_id, am I missing something?  (I fiddled around with the DNS module example in pingdummy for awhile as well, but no luck)

Its an output from the dns module. Weird that you are having an issue here.

Could it be because I hadn't setup a Route53 domain with the AWS account?

yes, it would make sense to close this issue

Ok, running into this issue still.
I started off with a fresh terraform plan and terraform apply to a barebones stack configuration for the defaults, I assumed I might need to execute things in a specific order due to dependencies.
provider "aws" {
  region = "us-east-1"
}

module "stack" {
  source      = "github.com/segmentio/stack"
  name        = "clientname"
  environment = "demo"
  key_name    = "bastion-ssh"
  region      = "us-east-1"
  availability_zones = "us-east-1d,us-east-1a,us-east-1b,us-east-1e"
}

All went well.
Next step I added some ECR repositories for the docker images my services will depend upon:
resource "aws_ecr_repository" "serviceone" {
  name = "serviceone"
}

resource "aws_ecr_repository_policy" "serviceonepolicy" {
  repository = "${aws_ecr_repository.serviceone.name}"
  policy = <<EOF
{
    "Version": "2008-10-17",
    "Statement": [
        {
            "Sid": "public permissions",
            "Effect": "Allow",
            "Principal": "*",
            "Action": [
                "ecr:PutImage",
                "ecr:InitiateLayerUpload",
                "ecr:UploadLayerPart",
                "ecr:CompleteLayerUpload",
                "ecr:GetDownloadUrlForLayer",
                "ecr:BatchGetImage",
                "ecr:BatchCheckLayerAvailability"
            ]
        }
    ]
}
EOF
}

Ran this, all was fine.  Decided to try and move on to adding a basic Stack Service for said image:
module "serviceone" {
  source         = "github.com/segmentio/stack/service"
  image          = "${aws_ecr_repository.serviceone.repository_url}"
  port             = 5000
  environment     = "${module.stack.environment}"
  cluster         = "${module.stack.cluster}"
  iam_role        = "${module.stack.iam_role}"
  zone_id         = "${module.stack.zone_id}"
  security_groups = "${module.stack.internal_elb}"
  subnet_ids      = "${module.stack.internal_subnets}"
  log_bucket      = "${module.stack.log_bucket_id}"
  dns_name       = "service_one"
}

It then fails, like I reported before:
Error running plan: 1 error(s) occurred:

* variable "main" is nil, but no error was reported

I intentionally chose a basic Stack Service as to avoid dealing with SSL / Domains like I had originally thought my problem was, but the problem still persists.
What am I doing wrong?

this is odd >.<, do you have a variable named main?

negative, I believe it's on Segment's side.  Like I showed above, I believe it's related to the zone_id, and likely the DNS module.  I'm curious whether it has to do with the default configurations being focused on us-west at the moment.  The DNS module defaults may not be us-east-1 friendly?  I'll look to test this theory once I get some time.

I believe this may also be related to using Terraform v0.7.  I've rolled back to v0.6.16, and am checking out Stack release v0.1.  In the process of debugging now.

Ran into several issues when rolling back, but did happen to come across this piece of information in a terraform plan on the old version:
+ module.stack.ecs_cluster.aws_ecs_cluster.main
    name: "" => "default"

May be related to my 0.7 troubles mentioned in this issue, will test theory by manually specifying Terraform configs specified in modules.

Went full circle after applying several updates to the core modules themselves, and ended up back at the same "variable main is nil" error.  I'm stumped.  Moving on to something else.

@adambarthelson I had this problem too, it turned out to be caused by the name of the service module. That value is reused as a ELB name which may only contain alphanumeric characters and hyphens. The stack code only replaces '/' by a hyphen. But if there's let's say a dot in the name of your service then this happens.

@adambarthelson did you try planning/applying with env: TF_LOG=debug?

@adambarthelson i think @erikhh is correct, stack will implicitly try to convert the service image= name into a ECS service name, you can try adding name= and it might solve the issue.

I'll give this a try.

That did resolve my problem! All of my kudos to you sir.


Support Set-Cookie headers in endpoints

Describe the problem
If your endpoint returns a Headers object that contains Set-Cookie header(s), you get an error:
https://github.com/sveltejs/kit/blob/2d6f0d2d49d4505112bdc6f2f0ef1b8ce1d1fb40/packages/kit/src/runtime/server/page/load_node.js#L498-L503
because, as was pointed out in the PR adding this, dealing with Set-Cookie headers is a PITA, and headers.get("Set-Cookie") returns some monstrosity
Describe the proposed solution
Since Kit is using node-fetch v3, if headers is the output of a fetch, you can call headers.getAll("Set-Cookie") to get a nice array of Set-Cookie headers. Instead of erroring, it would be nice if Kit could just do this automatically--that way, as a user you can make a fetch inside your endpoint and simply pass along the result's headers object without having to deal with this manually.
Note that there's an open PR that might remove this getAll method in node-fetch v4: https://github.com/node-fetch/node-fetch/pull/1484 In this case, the implementation would be changed to use this package: https://www.npmjs.com/package/fetch-headers which also provides a way of extracting multiple Set-Cookie headers--when iterating over the headers object, each Set-Cookie will appear as its own header. Details are on the npm page.
Alternatives considered
Users can use headers.getAll themselves to manually forward the Set-Cookie headers:
let response = await fetch(someUrl);
let cookies = response.headers.getAll("set-cookie");
return {
  headers: {
    "set-cookie": cookies,
  },
};

This works fine but isn't very discoverable & could break if SvelteKit updates its node-fetch version.
Importance
would make my life easier
Additional Information
No response

Yeah, this is annoying, especially considering not all adapters use the node-fetch polyfill. I don't have any ideas other than requiring adapters to provide a polyfill with a getAll() implementation or making sure the platform does (such as Cloudflare).

Given that different platforms workaround this issue in different ways, there's really nothing we can do — we can't monkey-patch the Headers provided by Cloudflare and Deno to act the same way. We must direct our anger at the people responsible for the relevant standards, who say things like "the spec is written for browser environments" and dismiss good faith attempts to come up with solutions.
Unless and until consensus among platforms is reached, it will continue to be necessary to return a POJO with an array for set-cookie, I'm afraid.

Well, we'd need to replace the global Headers with our own thing. Assuming that's even possible in all environments, it would involve a lot of nastiness and would probably be a bug farm. But I've reopened this in case you think there's a sensible route forward

Closing as this stuff is now handled by event.cookies


Resume training

Is it possible to resume training for a certain amount of additional steps?

Rerunning training and increasing --train_steps was enough.


Fix typo in initial size comment

Fixes typo in the initial size comment when discussing the etcd discovery URL.

thanks!


Better scheduling with low-priority pods

Description
What problem are you trying to solve?
We're trying to migrate gpu workloads to karpenter. We have also deployed a daemonset called cost-placeholder. The idea is to deploy low-priority pods for better cost attribution of idle cost. And the spec looks as below:
    spec:
      affinity:
        nodeAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
            nodeSelectorTerms:
            - matchExpressions:
              - key: nodepool
                operator: In
                values:
                - gpu-p5-48-llm

       resources:
          limits:
            cpu: "191"
            memory: 1995G
            nvidia.com/gpu: "8"
          requests:
            cpu: "191"
            memory: 1995G
            nvidia.com/gpu: "8"
      priorityClassName: low-priority
      restartPolicy: Always
      schedulerName: default-scheduler

But Karpenter is unable to schedule pods onto those gpu nodes because it counts the low-priority pod into workload thus the requested resources is over capacity:
daemonset overhead={"cpu":"191250m","memory":"1995268435456","nvidia.com/gpu":"8","pods":"7"},
no instance type satisfied resources
{"cpu":"271250m","memory":"1995268437456","nvidia.com/gpu":"16","pods":"8"} and
requirements karpenter.sh/capacity-type In [on-demand],
karpenter.sh/nodepool In [gpu-p5-48-llm],
kubernetes.io/arch In [amd64],
kubernetes.io/os In [linux],
node.kubernetes.io/instance-type In [p5.48xlarge],
nodepool In [gpu-p5-48-llm],
nvidia.com/gpu In [true] (no instance type has enough resources)

Related issue: https://github.com/aws/karpenter-provider-aws/issues/6507
How important is this feature to you?
This is really important for our cost attribution.
GPU machines are expansive and have low availability and we use ODCR to reserve them. That means sometimes the machines can be empty and it's hard to attribute the (idle) cost since no workloads are running.
So, we launch low-priority pods for this purpose. Without this feature, low-priority placeholder pods will block any pods to schedule onto those machines.

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Can you share all of the DaemonSet manifests, workload pods, and NodePool/NodeClass configuration that you have on your cluster? Ideally, we can repro this behavior as well as see all of the scheduling constraints for the manifests that you have so we can see if Karpenter is thinking all of the DS are compatible for some reason when they shouldn't be.

Can you share all of the DaemonSet manifests, workload pods, and NodePool/NodeClass configuration that you have on your cluster? Ideally, we can repro this behavior as well as see all of the scheduling constraints for the manifests that you have so we can see if Karpenter is thinking all of the DS are compatible for some reason when they shouldn't be.

You can see the specs in https://github.com/aws/karpenter-provider-aws/issues/6507.

@WxFang that issue does not seem to include DaemonSet pods, and only the low priority pod, no?


ARMA example running failed

🐛 Bug
Dear @rusty1s , thanks for this amazing repo! However, I have some trouble running the official ARMAConv example.
I'm using pytorch 1.5.0 and torch_geometric 1.6.0, ubuntu 16.04, cuda 10.0
The error message is IndexError: index 0 is out of bounds for dimension 0 with size 0.
Could you please check this for me? Thanks!
To Reproduce
Steps to reproduce the behavior:
git clone https://github.com/rusty1s/pytorch_geometric.git
cd examples
python arma.py

Expected behavior
This code can run report result normally.
Environment

OS: ubuntu 16.04
Python version: 3.6.10
PyTorch version: 1.5.0
CUDA/cuDNN version: 10.2
GCC version:
Any other relevant information:

Thanks for letting me know. It is now fixed in master.


Add ResultReuseConfiguration parameter to Athena query

Is your idea related to a problem? Please describe.
I would like to enable cache feature in Athena however, there is no option to pass "ResultReuseConfiguration"
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/athena/client/start_query_execution.html

Hey,
We have our own implementation of reusing Athena queries, which you can find an example of here. The reason we have our own implementation is that it precedes the ResultReuseConfiguration option, which boto3 introduced with version 1.26.4.
However, now that boto3 has its own implementation, we will look into refactoring our implementation to make use of ResultReuseConfiguration behind the scenes.
Thanks for bringing this to our attention!
Cheers,
Leon

@LeonLuttenberger
Any update on this?


Custom Hotkeys

Something worthwhile to do would be porting the hotkeys into the context menu. Sometimes, I (personally, but I don't think I am singled out in this instance), tend to use my mouse and context menus to navigate around in preference to keyboard hotkeys.
For example: At the moment, from my explorations at least - unless I am missing it and it is staring me in the face - the only way to return to a previous location or "go back" is via ESC on the keyboard.

Navigation in particular we have a different plan for. At some point we want to have all hotkeys controlled via the advanced config (#126)

Updating for 1.2 and renamed to describe our plans for a custom hotkey system that supports:
[ ] user customizable hotkeys
[ ] hotkeys for navigation
[ ] hotkeys for plugins

Part of #803

This feature will also include a command palette where hotkeys and other commands can be discovered as is mentioned in #481

Added in build 1457. Currently controlled by a json file (see help documentation for examples). A UI for setting hotkeys will be added in the future.


Invite Button Direct Copy

Directly copy invite link to clipboard with the Invite Button.

No more invite.


The results of FILTERBindJoin can be incomplete when the size of input solution mappings is huge

In the example below, the first plan is semantically the same as the second one, but the first one produces 0 results while the second plan returns 14 solutions.
One probable cause is that the first plan executes the triple pattern with only variables first, which produces a large number of intermediate results, and thus fails to process and output any results when joining with the other triple pattern for some reason.
> FILTERBindJoin> bgpAdd[502103914, -888509131] ( (bgp (triple   http://www4.wiwiss.fu-berlin.de/drugbank/resource/drugs/DB00201 @owl:sameAs ?caff)  ), SPARQL endpoint at http://drugbank/sparql )
    > binaryUnion
      > binaryUnion
        > binaryUnion
          > req[1822972284,<PHONE_NUMBER>] ( { (bgp (triple ?caff @?predicate ?object)  ) }, SPARQL endpoint at http://dbpedia/sparql )
          > req[1822972284,<PHONE_NUMBER>] ( { (bgp (triple ?caff @?predicate ?object)  ) }, SPARQL endpoint at http://kegg/sparql )
        > req[1822972284, -888509131] ( { (bgp (triple ?caff @?predicate ?object)  ) }, SPARQL endpoint at http://drugbank/sparql )
      > req[1822972284, 145539566] ( { (bgp (triple ?caff @?predicate ?object)  ) }, SPARQL endpoint at http://chebi/sparql )

> binaryUnion
    > binaryUnion
      > UNIONBindJoin> tpAdd[-1527237584,<PHONE_NUMBER>] ( (triple ?caff @?predicate ?object) , SPARQL endpoint at http://kegg/sparql )
        > req[502103914, -888509131] ( { (bgp (triple http://www4.wiwiss.fu-berlin.de/drugbank/resource/drugs/DB00201 @owl:sameAs ?caff)  ) }, SPARQL endpoint at http://drugbank/sparql )
      > UNIONBindJoin> tpAdd[-1527237584,<PHONE_NUMBER>] ( (triple ?caff @?predicate ?object) , SPARQL endpoint at http://dbpedia/sparql )
        > req[383509150, -888509131] ( { (triple http://www4.wiwiss.fu-berlin.de/drugbank/resource/drugs/DB00201 @owl:sameAs ?caff)  }, SPARQL endpoint at http://drugbank/sparql ).
    > binaryUnion
      > UNIONBindJoin> bgpAdd[1822972284, 145539566] ( (bgp (triple ?caff @?predicate ?object)  ), SPARQL endpoint at http://chebi/sparql )
        > req[383509150, -888509131] ( { (triple http://www4.wiwiss.fu-berlin.de/drugbank/resource/drugs/DB00201 @owl:sameAs ?caff)  }, SPARQL endpoint at http://drugbank/sparql )
      > req[-451338490, -888509131] ( { { ?caff  ?predicate  ?object .
         <http://www4.wiwiss.fu-berlin.de/drugbank/resource/drugs/DB00201> <http://www.w3.org/2002/07/owl#sameAs>  ?caff } }, SPARQL endpoint at http://drugbank/sparql )

Just adding some random thoughts here for the moment:

The hypothesis here is that some of the individual requests (SPARQL queries) to the SPARQL endpoint for the FILTER-based bind join become to big and the SPARQL endpoint cannot or does not process them. In this particular example, the join should be on IRIs (because ?caff is in the subject position of the inner triple patterns). So, at least, we are not trying to ship potentially huge literals in the bind join requests (in this particular example, but there may also be other examples!). However, IRIs can be quite long as well. In any case, we should investigate whether the hypothesis is indeed true.
It is currently not clear what exactly happens in such cases: Does the SPARQL endpoint simply return an empty result? In this case, we wouldn't even notice that something has gone wrong :-(   ...or does the SPARQL endpoint return some error message. In this case, where does this error message surface inside HeFQUIN (or the Jena code that we rely on for processing requests to SPARQL endpoints) and how can we turn it into an exception that raises awareness for the issue during the query execution process?
Does the problem exist only for the FILTER-based version of bind join or also for the UNION-based one and the VALUES-based one?
A possible workaround to avoid this issue is to split up the IntermediateResultBlock that is input to the corresponding executable operators.
The following paper was talking about these variations of bind joins. We should look into it to see whether they have encountered similar issues.
Carlos Buil Aranda, Axel Polleres, Jürgen Umbrich: Strategies for Executing Federated Queries in SPARQL1.1. ISWC 2014 https://doi.org/10.1007/978-3-319-11915-1_25


handle chunked parts across multiple reads

fixes https://redmine.lighttpd.net/issues/2554
where Happstack performs multiple writes to send HTTP chunked header,
HTTP chunked body, and CRLF ending HTTP chunked body
supercedes https://github.com/lighttpd/weighttp/pull/8

Fixed.  Good catch.  Thank you @stbuehler

Added another commit to detect and error out if CR is not followed by LF, and deferring the check if the char after CR has not yet been received.  Note that this does not catch the malicious case where a naked '\0' was sent.  For that I could check if buffer_offset is ahead of parser_offset instead of checking if the char is '\0'.

Added a patch to handle NIL in stream even though NIL "should not" occur in either HTTP response header or chunked header.
FYI: this is already handled in my experimental rewrite at https://github.com/gstrauss/weighttp/tree/rewrite


Update measurement.js

Add conversion to gallons for non EV

Added Comma

Fixed missing break. Thanks for the contribution!


[backport] spectral: 2018-09-24 -> 2019-03-03

Motivation for this change
I think after the qt 5.12 update the program stopped working due to the qml path problem.
This update fixes the issue so it should be backported.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS)
Built on platform(s)

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

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change (none)
[x] Tested execution of all binary files
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@timokau Done.

Sorry for the delay, missed the notification email.

No problem, thank you.


Also copy local path-dependencies

Hello!
I'm trying to use naersk to build a patched cargo from source, and in the process of doing so I hit #133.
Here is a PR that partially fixes the issue, and allows setting copySources to the dependencies that might still be missed by this non-recursive algorithm.
What do you think about this? It has as drawbacks that path-dependency crates will be compiled twice (once in the “prebuild the deps” phase and once in the “build the code” phase), and also that only direct path-dependencies are (currently) being handled.
What do you think about this approach to #133? Should I try to improve on it, or just to make copySources available?
Anyway, thank you for naersk, I'm using it only since recently but it feels really nice to use :)

Coming back to my code from yesterday night, I see four ways forward with this diff:

Keep both the path auto-detection logic and the copySources escape hatch, in which case we can land this PR as is and then try to improve on the path auto-detection logic
Keep the path auto-detection logic but not the copySources escape hatch, in which case I'd have to improve on the path auto-detection logic before landing
Keep the copySources escape hatch but not the path auto-detection logic, in which case I'd have to remove the path auto-detection logic before landing
Keep none of those features and explicitly state that naersk doesn't support path dependencies and there is no escape hatch (though that'd make me sad)

Is there one that'd have your favor?

Coming back to my code from yesterday night, I see four ways forward with this diff:

Keep both the path auto-detection logic and the copySources escape hatch, in which case we can land this PR as is and then try to improve on the path auto-detection logic
Keep the path auto-detection logic but not the copySources escape hatch, in which case I'd have to improve on the path auto-detection logic before landing
Keep the copySources escape hatch but not the path auto-detection logic, in which case I'd have to remove the path auto-detection logic before landing
Keep none of those features and explicitly state that naersk doesn't support path dependencies and there is no escape hatch (though that'd make me sad)

Is there one that'd have your favor?

Hmmmmm using more my fork of naersk with these changes, it looks like the current path logic may also happen to detect path dependencies in workspaces, thus losing all the benefits of two-step compilation (though I'm kind of surprised, as it's supposed to only use the root cargo.toml… but maybe this function is called multiple times for virtual manifests? not sure, haven't investigated more yet).
I thus feel like this road may be more full of ambush than the copySource escape hatch, especially as the current implementation of auto-following path dependencies is already broken as in it doesn't recursively follow all paths.
So I'd tend towards just adding copySource as an argument for now, documenting that it's the expected way to handle non-workspaced path dependencies, and eventually coming back to handling path dependencies actually correctly.
What do you think about this?

Hmmmmm using more my fork of naersk with these changes, it looks like the current path logic may also happen to detect path dependencies in workspaces, thus losing all the benefits of two-step compilation (though I'm kind of surprised, as it's supposed to only use the root cargo.toml… but maybe this function is called multiple times for virtual manifests? not sure, haven't investigated more yet).
I thus feel like this road may be more full of ambush than the copySource escape hatch, especially as the current implementation of auto-following path dependencies is already broken as in it doesn't recursively follow all paths.
So I'd tend towards just adding copySource as an argument for now, documenting that it's the expected way to handle non-workspaced path dependencies, and eventually coming back to handling path dependencies actually correctly.
What do you think about this?

I'm going to close this as I've just pushed https://github.com/nmattia/naersk/pull/136 that does not have the “breaks caching” behavior — it may make sense to come back to the fuller implementation of path-dependency handling, but as “expose copySources” and “handle path dependencies outside of workspaces” are two mostly independent changes, they'd most likely better not be mixed together in a single PR

I'm going to close this as I've just pushed https://github.com/nmattia/naersk/pull/136 that does not have the “breaks caching” behavior — it may make sense to come back to the fuller implementation of path-dependency handling, but as “expose copySources” and “handle path dependencies outside of workspaces” are two mostly independent changes, they'd most likely better not be mixed together in a single PR


Add priorityClassName to filebeat chart

This adds the support for priorityClassName on the filebeat chart, the same way that got added to the elasticsearch and kibana charts in #109. As in the other PR, it defaults to no priorityClassName to avoid breaking anything.

[x] Chart version not bumped (the versions are all bumped and released at the same time)
[x] README.md updated with any new values or changes
[x] Updated template tests in ${CHART}/tests/*.py
[ ] Updated integration tests in ${CHART}/examples/*/test/goss.yaml

Since this is a community submitted pull request, a Jenkins build has not been kicked off automatically. Can an Elastic organization member please verify the contents of this patch and then kick off a build manually?

jenkins test this please


Swaybar launched applications can't be killed

Describe the bug
When launching an application with swaybar we can't kill it using mod+q.
This means that part of the screen is occupied until it is manually killed from the terminal.
To Reproduce

Launch sway
Click on a swaybar app (eg wifi)
See the settings menu
mod+q the menu when having focus

Expected behavior
The application should be killed
Additional context
This mostly is a problem with sway. So it might be interesting to watch that project and see if they have a solution or if it is a config issue.

After some experimentatio I have deduced that the issue is not waybar related. It however only occurs with pavucontrol and no other application. This issue also happens without waybar. Further investigation is needed to know what the issue is

The problem was due to not calling kill directly in the config file. This bu g has now been fixed.
The selector was broken for all gtk3 apps and not only for pavucontrol


Fix Foundation extensions to Substring

When a substring gets bridged to NSString, it loses the initial offset,
therefore APIs that accept or return StringIndex ranges should handle
this case explicitly by adding/subtracting the substring start offset.
Similar to https://github.com/apple/swift/pull/12151

@swift-ci Please test


Add UDF compiler skeleton

This change adds a udf-compiler plugin without detailed compiler
implementations
To keep previous commit history and for a better review, this change
removes the detailed compiler implementation based on previous commits
This change keeps the unit test framework but removes test cases.
Compiler implementations will come in next MR

@wjxiz1992 for me I do want to keep history, but I think it can be squashed. There's a lot of repetition that can be made into a single commit by that same author. If others think history is not as important here, that's fine we can go with a simpler approach.
Note there are some commits at the beginning of this PR that need to be removed all-together.

Ok I do see what happened here, so there were a number of commits, and then a new one that basically redo's everything. Yeah this is a tough one, and I am not sure we can preserve anything. At this stage @wjxiz1992 I think what would work best is to squash all commits and have a single one to introduce the skeleton.
When you think one of the commits was a collaborative effort between other authors, perhaps we can use: https://docs.github.com/en/enterprise/2.13/user/articles/creating-a-commit-with-multiple-authors.
Thoughts?

Ok I do see what happened here, so there were a number of commits, and then a new one that basically redo's everything. Yeah this is a tough one, and I am not sure we can preserve anything. At this stage @wjxiz1992 I think what would work best is to squash all commits and have a single one to introduce the skeleton.
When you think one of the commits was a collaborative effort between other authors, perhaps we can use: https://docs.github.com/en/github/committing-changes-to-your-project/creating-a-commit-with-multiple-authors#creating-co-authored-commits-on-the-command-line
Thoughts?

I've squashed the huge commits and leave only one to describe this PR with coauthors added. I'll wait for Sean @seanprime7 to confirm if he think it's fine.

Ok I do see what happened here, so there were a number of commits, and then a new one that basically redo's everything. Yeah this is a tough one, and I am not sure we can preserve anything. At this stage @wjxiz1992 I think what would work best is to squash all commits and have a single one to introduce the skeleton.
When you think one of the commits was a collaborative effort between other authors, perhaps we can use: https://docs.github.com/en/github/committing-changes-to-your-project/creating-a-commit-with-multiple-authors#creating-co-authored-commits-on-the-command-line
Thoughts?

I've squashed the huge commits and leave only one to describe this PR with coauthors added. I'll wait for Sean @seanprime7 to confirm if he think it's fine.

I think it is okay to squash commits in the MR.

build

The changes look good, but the build appears to be failing for no fault of your own.  Could you please upmerge to the latest code so we can get a clean build?

build

The changes look good, but the build appears to be failing for no fault of your own. Could you please upmerge to the latest code so we can get a clean build?

Thanks for Alessandro's help, rebased to latest codes. CI passed.

thanks @wjxiz1992


Change MQTT state topic names

Is it possible to break up the page and box number portion of the mqtt topic string?
from: hasp/plate01/state/p[1].b[1]
to: hasp/plate01/state/p[1]/b[1]
This would allow simplifying several of the automatons in home assistant so that they can do something like this rather than specifying each trigger manually per page
- alias: hasp_down_plate_p0_PageButton1Action
    trigger:
    - platform: mqtt
      topic: 'hasp/down_plate/state/+/.b[1]'
      payload: 'ON'
    action:
    - service: input_number.set_value
      data_template:
        entity_id: 'input_number.hasp_down_plate_activepage'
        value: '{{states.input_number.hasp_down_plate_pagebutton1page.state|int}}'

This looks like it should be fairly simple to change in the arduino code. Any objects @aderusha if I give this a shot?

I have serious reservations about this, as it runs against a general principle at work here.  My goal is that the Arduino code should be, as much as possible, a simple gateway between MQTT and the Nextion instruction set.  I certainly recognize the advantage for subscriptions when splitting apart the Nextion component naming, but doing so runs counter to that basic principle as you're now splitting up Nextion commands to be parsed by the Arduino sketch.


ci: Add dist job for Apple M1

Resolves #102
Still need to move this job to a different file & add a changelog entry

Closing in favor of #136


Using multivariate Elo rating system

We can use mELO to better rank warriors.
See:

https://dclaz.github.io/mELO/
https://arxiv.org/abs/1806.02643

The lowest dimension count we can use is 2. So for each warrior we would have 1 rating score and 2 number vector.
I don't quite understand what this 2-vector represents and how to present it in the UI. Can we call it "playstyle"?

implemented and deplyed ;) however we should maybe provide some visualization for it?

displayed on the top 100 leaderboard