Tags for every resource show needing updates every time I run apply

So even if I do not make any changes to terraform code and expect to see 0 diffs I get this for every resource created by the module.
I must be doing something wrong because I'm sure someone would have complained by now, but can't seem to figure it out.
It looks like the Key vs Value pairs just get rotated around in the list of tags.

Here is how I pass common tags in:
module "vpc" {
  source  = "registry.terraform.io/aws-ia/vpc/aws"
  version = "= 3.2.1"

  name = "${var.name}-vpc"
  tags = local.common_tags

  cidr_block = var.cidr_block
  az_count   = var.az_count
  ...
}

And here is how they are defined (merged with top level tags):
locals {
  common_tags = merge(var.common_tags, {
    environment = var.name
  })
}

and the top level module passes these tags in:
locals {
  common_tags = {
    managed_by        = "terraform"
    terraform_project = "core_infra"
  }
}

Any help is appreciated here.

That is surprising... we have tests that execute with multiple tags...
So 1 thing I can say is that upgrading to v4 would eliminate this issue. The v4 upgrade process has commands on how to replace the awscc resources with the standard aws resources.
Background: The awscc resources accept tags as a list of maps, which is how aws defines them. The standard aws provider has logic on how to handle ordering, etc and should eliminate this issue.
Here's instructions on the upgrade https://github.com/aws-ia/terraform-aws-vpc/blob/main/UPGRADE-GUIDE-4.0.md
Note you so not have to relocate your tags to default_tags. I only mention here because that's the primary reason you're upgrading

Thank you. That helped.
are you also planning to upgrade aws-ia/network-hubandspoke/aws to use v4 of this module? That's another one that's giving me this issue now.

Yes! That is in the works atm by the one and only @pablo19sc

The upgrade went pretty smooth. No issues at all, except the resources that were created by aws-ia/network-hubandspoke/aws I had to filter those out.
One thing you could mention in the instructions is to first upgrade module version to "4.0.0" and run "terraform get" before running the terraform state commands.
I turned your instructions into a script because I had a lot of resources to update and it would take me forever.
#!/bin/zsh

# backup
tf state pull | tee tfstateV3.bak

# upgrade route tables

terraform state list | grep -e "awscc_ec2_route_table" | tee rt_to_replace.txt

cat rt_to_replace.txt |
while read res_path; do
    res_new_path=$(echo $res_path | sed 's/awscc_ec2_route_table/aws_route_table/')

    echo $res_path
    echo $res_new_path

    res_id=$(terraform state show $res_path | grep "id" | head -1 | cut -d'=' -f2 | awk '{$1=$1};1' | tr -d '"')
    echo $res_id
    terraform state rm $res_path
    terraform import $res_new_path $res_id
done

# upgrade route table associations

terraform state list | grep -e "awscc_ec2_subnet_route_table_association" | tee rta_to_replace.txt

cat rta_to_replace.txt |
while read res_path; do
    res_new_path=$(echo $res_path | sed 's/awscc_ec2_subnet_route_table_association/aws_route_table_association/')

    echo $res_path
    echo $res_new_path

    tf_state=$(terraform state show $res_path)
    rt_id=$(echo $tf_state | grep "route_table_id" | head -1 | cut -d'=' -f2 | awk '{$1=$1};1' | tr -d '"')
    subnet_id=$(echo $tf_state | grep "subnet_id" | head -1 | cut -d'=' -f2 | awk '{$1=$1};1' | tr -d '"')

    echo $rt_id
    echo $subnet_id
    terraform state rm $res_path
    terraform import $res_new_path "$subnet_id/$rt_id"
done

you can comment out terraform state rm and terraform import lines in the script for dry run.

Oh man. You're awesome. I'll see about incorpating this into the guide

this is by no means a good looking script, more like a quick throw together, but it worked for me :)
thank you for your help and prompt responses! 🍻


TypeError: can't convert cuda:0 device type tensor to numpy.

It strangely ran for me like two times (?) but now I only get the following error any time the AnimateAnyone node is reached:
Error occurred when executing [ComfyUI-3D] Animate Anyone Sampler:

can't convert cuda:0 device type tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory first.

File "E:\ComfyUI\execution.py", line 152, in recursive_execute
output_data, output_ui = get_output_data(obj, input_data_all)
File "E:\ComfyUI\execution.py", line 82, in get_output_data
return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
File "E:\ComfyUI\execution.py", line 75, in map_node_over_list
results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
File "E:\ComfyUI\custom_nodes\ComfyUI-AnimateAnyone-Evolved\nodes.py", line 152, in animate_anyone
samples = diffuser(
File "C:\Dev\Python3.10\lib\site-packages\torch\utils\_contextlib.py", line 115, in decorate_context
return func(*args, **kwargs)
File "E:\ComfyUI\custom_nodes\ComfyUI-AnimateAnyone-Evolved\src\models\main_diffuser.py", line 440, in __call__
latents = self.denoise_loop(
File "E:\ComfyUI\custom_nodes\ComfyUI-AnimateAnyone-Evolved\src\models\main_diffuser.py", line 324, in denoise_loop
self.scheduler.set_timesteps(loop_steps, device=device)
File "C:\Dev\Python3.10\lib\site-packages\diffusers\schedulers\scheduling_euler_discrete.py", line 318, in set_timesteps
sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)
File "C:\Dev\Python3.10\lib\site-packages\torch\_tensor.py", line 970, in __array__
return self.numpy()

This seems to happen when I select any other sampler than DDIM or PNDM in the "sampler_scheduler_pairs" parameter of the node.

same here
i cant seem to use some of the diffrent sampler methods in the the animate anyone smapler, mainly the DPM++ 2M Karas will result in this error:
Error occurred when executing [ComfyUI-3D] Animate Anyone Sampler:
can't convert cuda:0 device type tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory first.
File "C:\Users\thoma\Documents\ComfyUI\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\ComfyUI\execution.py", line 152, in recursive_execute
output_data, output_ui = get_output_data(obj, input_data_all)
File "C:\Users\thoma\Documents\ComfyUI\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\ComfyUI\execution.py", line 82, in get_output_data
return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
File "C:\Users\thoma\Documents\ComfyUI\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\ComfyUI\execution.py", line 75, in map_node_over_list
results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
File "C:\Users\thoma\Documents\ComfyUI\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-AnimateAnyone-Evolved\nodes.py", line 152, in animate_anyone
samples = diffuser(
File "C:\Users\thoma\Documents\ComfyUI\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\python_embeded\lib\site-packages\torch\utils_contextlib.py", line 115, in decorate_context
return func(*args, **kwargs)
File "C:\Users\thoma\Documents\ComfyUI\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-AnimateAnyone-Evolved\src\models\main_diffuser.py", line 440, in call
latents = self.denoise_loop(
File "C:\Users\thoma\Documents\ComfyUI\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-AnimateAnyone-Evolved\src\models\main_diffuser.py", line 324, in denoise_loop
self.scheduler.set_timesteps(loop_steps, device=device)
File "C:\Users\thoma\Documents\ComfyUI\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\python_embeded\lib\site-packages\diffusers\schedulers\scheduling_dpmsolver_multistep.py", line 263, in set_timesteps
sigmas = np.array(((1 - self.alphas_cumprod) / self.alphas_cumprod) ** 0.5)
File "C:\Users\thoma\Documents\ComfyUI\ComfyUI_windows_portable_nvidia_cu118_or_cpu\ComfyUI_windows_portable\python_embeded\lib\site-packages\torch_tensor.py", line 970, in array
return self.numpy()
Close
Queue size: 0⚙
Queue Prompt
CPU
0%
RAM
30%
GPU
6%
VRAM
38%
HDD
63%
ERROR
Extra options
Queue FrontView QueueView History
Save
Load
Refresh
Clipspace
Clear
Load Default
Manager
Share
TypeError 31 [ComfyUI-3D] Animate Anyone Sampler

maybe you should change the title of this issue to something more inviting like "unable to use other samplers like DPM++ 2M Karas"


[Question] Controlling knob using mouse and keyboard

Hi there! Thx for implementing interesting idea.
I opened demo page and tried to control knob using mouse and kb and I noticed following things:

knob primarily controls using Y-axis gesture. Personally I would expect it to be controllable using horizontal movement (e.g. left to decrease value and right to increase);
looks like it doesn't play well with kb's arrow keys as well as PgUp/PgDown.

So the question "Is this behavior intended"?

Hi @Nedgeva
Glad to see you here 👋🏻
Short answer: at this point, yes & yes.
Let me explain ...
(1) I started with a bare minimum, so only vertical gesture is provided at this point. Why? I created this library for my own purposes first place once I found this reusable pattern. The main inspiration for this knob is the software like Ableton, Logic Pro, Native Instruments plugins, etc. They all implement the same kind of vertical gesture and it feels like it's the most common one in audio industry in general. If you want this knob to be extended to accept horizontal direction of the gesture, I'd be happy to patch it, just let me know.
Also, in the future, I might actually decouple the gesture somehow, or make it extendable, but I don't feel like there's a real need in it (at least, for now).
(2) Yes, it doesn't provide keyboard support yet. Why? See the explanation in "Gothas" section of documentation site - https://react-knob-headless.vercel.app:

There is no keyboard interaction provided by default. This is intentional, as knob behaviours might differ significantly between use cases. To achieve keyboard interaction, you can just provide your own "onKeyDown" listener.

So, as said, you can easily provide your own onKeyDown listener and update your value for some "step" and "smaller step" values (to follow ARIA Slider pattern).
Also, I'm currently working on a refactor for one of my apps, so I'm actually thinking to introduce a hook for keyboard support in more generic way than just follow ARIA, something similar to this:
export function useKnobKeyboard(options: {
  valueStep: number;
  valueStepSmall: number;
  keysStep: KeyPair[];
  keysStepSmall: KeyPair[];
  onValueRawChange: (newValueRaw: number) => void;
}) => ReactDOMAttributes

So if you have any ideas, suggestions, welcome 🙏

Hi again @Nedgeva 👋🏻
Horizontal orientation support is released 🎛
Details:

https://github.com/satelllte/react-knob-headless/releases/tag/v0.2.0
https://react-knob-headless.vercel.app/

Hi @Nedgeva 👋🏻
Keyboard support added ⌨
New hook: useKnobKeyboardControls
Documentation: https://react-knob-headless.vercel.app/
Release notes: https://github.com/satelllte/react-knob-headless/releases/tag/v0.3.0


Update aws-java-sdk-lambda, ... to 1.12.644

About this PR
📦 Updates

com.amazonaws:aws-java-sdk-lambda
com.amazonaws:aws-java-sdk-secretsmanager

from 1.12.641 to 1.12.644
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.amazonaws" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "com.amazonaws" }
}]

labels: library-update, early-semver-patch, semver-spec-patch, commit-count:1

Superseded by #86.


Determine URL structure

see also #15

Have a branch for this here which shows how we can use history.push to update the URL when different tokens are selected.
I think the rest (i.e. deriving UI from state) is on hold for now until we have more of the components completed.


Improve documentation examples

The method-scoped Reference examples aren't very helpful and essentially just illustrate the method interface.
Perhaps we introduce a high-level examples / recipes section with some more comprehensive examples (that interact with multiple methods), i.e.

basic login / logout, detecting authenticated state
offline / refresh token stuff

I would love this. I'm really new to Vue. I'm trying to update a spreadsheet with data from Vue, and I can't really tell if this is what I need or not.

I would love this. I'm really new to Vue. I'm trying to update a spreadsheet with data from Vue, and I can't really tell if this is what I need or not.

@CynthiaBlue, sorry for the delayed response, but I hope you've learned a little bit about Vue.js since!
I just added a more comprehensive authentication example which should hopefully give you a better idea about what this library is about. We'll try to add some more examples over time, but hopefully this is helpful in the meantime.

I'm also very new to Vue and unfortunately that example didn't help a lot, especially since I'm on a Vue-CLI


rel-eng: Delete code no longer compatible with tito 0.6.0

So...I could debug this but honestly I just want an RPM.  The less we
reimplement here of what tito does the better.

+9001. Many people have been bitten by that little snippet of code.


Can you clarify "command-queue access"

Can you clarify what does "command-queue access" mean in description of cqmf ?
Does it include command queue read access and the write access of IOFENCE.C command with AV=1?
https://github.com/riscv-non-isa/riscv-iommu/blob/61026efa47a8a4fdcf301788044aba2308add3bf/iommu_registers.adoc?plain=1#L782-L786

Does it include command queue read access and the write access of IOFENCE.C command with AV=1?

Yes. It includes both.

Would be a good clarification to include - see https://github.com/riscv-non-isa/riscv-iommu/pull/243/commits/69026209b298751ad6b3ee1e7ee928262d82b222.

If the write access failure of IOFENCE.C command with AV=1 will set the cqmf to 1, the cqh will reference the IOFENCE.C command. But a IOFENCE.C command completion is determined by cqh advancing past the index of the IOFENCE.C command in the CQ and the IOMMU writes data to memory with AV=1 when the IOFENCE.C command completes. It seems that there is confusion in the description of the spec. When a write access leads a failure with AV=1, wheather the IOFENCE.C is complete?Using only cqh and cqmf does not seem to be enough; it cannot indicate both IOFENCE.C completion and memory failure.

When a write access leads a failure with AV=1, wheather the IOFENCE.C is complete?

The IOFENCE.C is not complete because it encounters a memory fault.

Thanks for your answer. And could you consider revising the sentence in the spec, as it reads very ambiguously in terms of time relationships?

If AV=1, the IOMMU writes DATA to memory at a 4-byte aligned address ADDR[63:2] * 4 as a 4-byte store when the command completes.

And in the function do_fence_c, the bit fence_w_ip will be set to 1 no matter whether the write access is successful if the AV=1. So is there an error in the c_model?

And could you consider revising the sentence in the spec, as it reads very ambiguously in terms of time relationships?

The DATA is written to the ADDR if the command completes but if the write to ADDR faults then no data is written i.e. no data is written unless the command completes and completing the command involves writing the data.

Included a clarification here https://github.com/riscv-non-isa/riscv-iommu/pull/243/commits/67b7b83556d6a87762d42dec2ef59b51b6830dbf


Combination of several topics

Hi,
When microRTPSgen can not generate multiple IDL files at the same time (#1), I have tried the following solutions.
For example, use Gen to generate each of "std_msgs::String" and "std_msgs::Bool", and create a topic called "Combination".
Then, in the serialize and deserialize functions of Combination as below, we try to call each of String, Bool topic serialize and deserialize functions. (like rosserial)
#include "std_msgs/Bool.hpp"
#include "std_msgs/String.hpp"

namespace test_msgs {

class Combination : public ros2::Topic<Combination>
{
public:
  std_msgs::String message;
  std_msgs::Bool   value;

  Combination():
    Topic("Combination", TEST_MSGS_COMBINATION_TOPIC),
    message(),
    value()
  {
  };

  virtual bool serialize(MicroBuffer* writer, const Combination* topic)
  {
      uint8_t result;

      message.serialize(writer, &topic->message);
      result = writer->error;
      value.serialize(writer, &topic->value);
      result |= writer->error;
      return result == BUFFER_OK;
  }

  virtual bool deserialize(MicroBuffer* reader, Combination* topic)
  {
      uint8_t result;

      message.deserialize(reader, &topic->message);
      result = reader->error;
      value.deserialize(reader, &topic->value);
      result |= reader->error;
      return result == BUFFER_OK;
  }

  virtual uint32_t size_of_topic(const Combination* topic)
  {
    uint32_t size = 0;

    size += message.size_of_topic(&topic->message);
    size += value.size_of_topic(&topic->value);

    return size;
  }

private:

};

} // namespace test_msgs

This works well.
Anyway, my question is: Is it ok to use serialization of multiple topics in the above way?

Hi @OpusK, this combined serialization could generate a problem with the serialization aligment (CDR protocol is used). The new version changes the size_of_topic function to accept the current size of the message, so the size_of_topic method purpose should be like follows:
virtual uint32_t size_of_topic(const Combination* topic)
  {
    uint32_t size = 0;

    size += message.size_of_topic(&topic->message, 0);
    size += value.size_of_topic(&topic->value, size);

    return size;
  }

Anyway, the feature related to #1 is now available and manage this automatically.

Hi, @lemunozm
The code I posted was from the beta version.

This is related to #1, so I will close this issue.
Thank you for answer.


replace QueryAll by JVM SDK code, close #320

@lauraluiz please review and merge

Looks good, thanks!


Table location

Maybe move "table" into the category of "text-based" materials?

Just stumbled across this. Did you already fix this or is it still an issue? I guess you mean the new_lrt.ttl vocab?


Add Expression support to BeginDialog & BeginSkill

Is your feature request related to a problem? Please describe.
Currently there's no way within composer of dynamically selecting the name of the dialog or skill you want to start.  For BeginDialog a simple fix would be to add an "Expression" entry to the drop down list composer shows:

For skills it's a little trickier as you need to give the dialog all of its host connection info. It would be nice if we could work out how to do the same with skills as well.

This requires changes to the schema. Transferring to botbuilder-dotnet


Add new component

It can be usefull to add a Badge component : http://getbootstrap.com/components/#badges

Badge already exist, it will be create a doc for this element in ui-bibz-app


Cannot pause at start of HLS live stream

Browser: Chrome 57.0.2987.98 (64-bit)
OS: Arch Linux
Clappr Version: 0.2.41
I am using Clappr for HLS streams, it works great (I have no idea how you got m3u8 ts streams to work in browser, I tried all kinds of things with the native <video> tag!) but there's a slight issue:  Which I believe is related to #871 , It's impossible to pause for a few minutes after the stream has started.
Steps to reproduce:

Start stream on server  e.g.

ffmpeg -i file.mp4 -g 60 -hls_time 3 -hls_list_size 50  -sn stream.m3u8

Quickly open up browser with clappr instance open. The stream appears as expected but the pause button won't appear for a few minutes.

I can see why seek doesn't work but is there no way to pause? Do I need to adjust the stream settings? E.g. larger chunk sizes or lists?

@TomBZombie just a thought, have you tried to customize hls_list_size  value ?


added to Reproduction log

added to Reproduction log for start-here.md(updated) ,experiments-msmarco-passage.md
Operating system: macOS Ventura version 13.2.1, processor Apple M1 Pro, Memory 16 GB
Environment: Mac Terminal
Apache Maven: 3.9.4
Python version: 3.9.12
Java version: 20.0.2
Success: everything worked

Having seen no follow-up, closing.


Msal node 2600 v2

Codecov Report

Merging #4447 (7585c6a) into dev (ee8153f) will decrease coverage by 0.05%.
The diff coverage is 12.50%.

Flag
Coverage Δ

*Carryforward flag

msal-angular
96.39% <ø> (ø)

msal-browser
87.50% <ø> (ø)

Carriedforward from ee8153f

msal-common
85.37% <ø> (ø)

Carriedforward from ee8153f

msal-core
82.65% <ø> (ø)

Carriedforward from ee8153f

msal-node
82.32% <12.50%> (-0.65%)
:arrow_down:

msal-node-extensions
76.03% <ø> (ø)

Carriedforward from ee8153f

msal-react
92.70% <ø> (ø)

*This pull request uses carry forward flags. Click here to find out more.

Impacted Files
Coverage Δ

lib/msal-common/src/client/BaseClient.ts
68.29% <ø> (ø)

lib/msal-common/src/config/ClientConfiguration.ts
100.00% <ø> (ø)

lib/msal-common/src/network/INetworkModule.ts
33.33% <ø> (ø)

lib/msal-common/src/url/UrlString.ts
91.48% <ø> (ø)

lib/msal-node/src/client/ClientApplication.ts
69.52% <ø> (ø)

lib/msal-node/src/config/Configuration.ts
100.00% <ø> (ø)

lib/msal-node/src/network/HttpClient.ts
54.16% <12.50%> (-16.43%)
:arrow_down:


Start using the pytest-saas in the new db connection pytest plugin

This is subject to completing this ticket.


Support timezone in format '+XX:XX'

As the discussions in #190, it is straight-forward to implement '+XX:XX' formatted timezones within the TimeZoneId, using the lower byte of i16 to represent the offset in quarters.

@whjpji tests_integ_date_time_functions failed locally

@whjpji and I have found that the last merge PR has broken the original meta store. Because we change the meta of BqlType...

@whjpji and I have found that the last merge PR has broken the original meta store. Because we change the meta of BqlType...

@jinmingjian One way is to split DateTime(Option<TimeZoneId>) up to DateTime and DateTimeTz(TimeZoneId) (appended to the back). Should we make this change?

@jinmingjian Further more, we might have breaking changes of the BqlType or other metadata in the future. Is there versioning support in the ser/de of the metadata?

@jinmingjian Further more, we might have breaking changes of the BqlType or other metadata in the future. Is there versioning support in the ser/de of the metadata?

Yes, but we have not now. You can propose one. We have version for whole TB. In the future, we may keep time base compatibility (i.e.,  two-year).
Note: The end users hope you have no breaking change for ever.

DateTime(Option) -> DateTime(TimeZoneId). For any DateTime, it has a TimeZoneId. The default is UTC.

But CH's behavior is that DateTime without timezone is interpreted as the server's timezone. If the user left DateTime without timezone, he or she should expect different timezones in servers with different timezone settings.
More precisely, it is the case: assume at timezone GMT-8 the user created a table and insert a datum into it,
create table test (a DateTime) ENGINE BaseStorage;
insert into test values ('2021-07-11 20:49:14');
select * from test;

The user will get '2021-07-11 20:49:14'. Then if the server is restarted as timezone 'UTC', and the user does another query. As a result, '2021-07-11 12:49:14' is returned.
I haven't tested this behavior in CH because I found it kind of difficult to setup a default storage engine for CH. Should we take such situation into consideration?

But CH's behavior is that DateTime without timezone is interpreted as the server's timezone. If the user left DateTime without timezone, he or she should expect different timezones in servers with different timezone settings.

My mistake, you're right. DateTime without tz has a default tz in current server. This is a dynamic value. So, we have two variants as your suggested above! (the current and appended new.)

@jinmingjian Basically I agree with you to store only the offset in seconds of timezone is enough. We support 'Some State/Some City' and '+XX:XX' formatted timezone as input, and support only '+XX:XX' formatted timezone as output, then this problem can be solved.

@jinmingjian Basically I agree with you to store only the offset in seconds of timezone is enough. We support 'Some State/Some City' and '+XX:XX' formatted timezone as input, and support only '+XX:XX' formatted timezone as output, then this problem can be solved.

Yes, just have this enough.

Note: The end users hope you have no breaking change forever.

@jinmingjian Yes. But we may have a breaking change before our v1.0 released, to avoid breaking changes even later.

@jinmingjian I found that the TimeZoneId(i32) might enlarge the size of BqlType in memory. Is the disk store affected?
If possible, how about storing the offset in minutes using i16 instread of i32?

I found that the TimeZoneId(i32) might enlarge the size of BqlType in memory. Is the disk store affected?

we have a show_option_size! macro in base utils. The size of BqlType in memory is 8B, which is enough for 32bits. This is the alignment side effect of #[repr(C)].

we have a show_option_size! macro in base utils. The size of BqlType in memory is 8B, which is enough for 32bits. This is the alignment side effect of #[repr(C)].

@jinmingjian I did an experiment, which shows that it is possible to compress the size of BqlType to 4 bytes (with #[repr(C, u8)]). It shows that the representation of tag value is different when using #[repr(C)] or not.

we have a show_option_size! macro in base utils. The size of BqlType in memory is 8B, which is enough for 32bits. This is the alignment side effect of #[repr(C)].

@jinmingjian I did an experiment, which shows that it is possible to compress the size of BqlType to 4 bytes (with #[repr(C, u8)]). It shows that the representation of tag value is different when using #[repr(C)] or not.

#[repr(C)] is wanted for stable layout because the default layout is UB-like. u8 is ok now, but if you have to add 256+ variants, what happened? Current 8B gives out sufficient margin.


CFE_ES_PoolCreateEx NumBlockSizes error handling

Describe the bug
In the header file of CFE_ES_PoolCreateEx, for parameter NumBlockSizes it says "If set equal to zero or if greater than 17, then default block sizes are used." In the code though if NumBLockSizes is greater than CFE_PLATFORM_ES_POOL_MAX_BUCKETS (which is set to 17) then it returns error code CFE_ES_BAD_ARGUMENT.
Expected behavior
The header and functionality should match.
Reporter Info
Alex Campbell GSFC

I would vote to make the header/documentation match what the implementation does.  Passing in a bad value should be an error.

That's fine but the implementation for when NumBLocksSizes equals 0 is weird. It will be set to the default only when BlockSizes is null, and will stay as 0 when BlockSizes isn't null.

That's fine but the implementation for when NumBLocksSizes equals 0 is weird. It will be set to the default only when BlockSizes is null, and will stay as 0 when BlockSizes isn't null.

Yeah, it is kinda weird, but I vaguely recall preserving that "feature" of the API (only use default set if the pointer is NULL, regardless of NumBlockSizes).  Didn't want to break any code that might be depending on that.
I wouldn't want to change the behavior at this point - we should keep it as being the BlockSizes pointer (NULL or not NULL) that controls whether defaults are used.
As for the case of a BlockSizes != NULL  and NumBlockSizes == 0, does this have any major issues?  Obviously its a bad config and I don't expect it to do anything useful in that case, but so long as it doesn't crash or otherwise break the system I don't see it as being a major issue.  We could consider returning BAD ARGUMENT in that case too, but I don't see it as critical (maybe others have a different opinion).

Let's just update the documentation to match the behavior for now (Caelum), feel free to open a future work issue to make the implementation make more sense.


There is no doc about how to pronounce "traefik"

When telling others about traefik, I'd like to properly pronounce it. t would be helpful if there was a short note about that in the docs.

I will add some help on this 😉
We simply say traffic, written træfɪk using the international phonetic alphabet.

Only obstacle be that not everyone have æ on their keyboard - like here in Scandinavia! (Muhahaha) 😄

Fix by #1067


game crashes when using search function

So i was trying to use the search function but the game crashes.
My version is 1.21
Reeses sodium options version is: 1.8.0 Beta 3
Fabric version: 0.16.9-1.21.1
Steps to replicate:

Go to video settings
Click search
Type stuff

My crash report:
crash-2024-11-18_20.06.16-client.txt

This was fixed in beta 4


Added List Comprehensions.py

Closing Issue/Referencing Issue
issue reference (#)
Changes Made In Pull Request

Review changes and revert the feedback


Loading sample EFG files throws an exception

Trying to load sample games in the Gambit EFG format from Gambit's documentation results in a thrown exception.
 I'll have a look tomorrow.
Agreed, the format is not well documented. I'll use their new-ish pygambit library as a reference.


Liqoctl: test network

Description
This PR adds in liqoctl a new subsets of commands "liqoctl test" used to run E2E tests using liqoctl.
In this PR the network tests command have been added ("liqoctl test network") which tests these scenarios:

Pod-to-Pod connectivity
Pod-to-Node connectivity
Pod-to-Service connectivity (cluster-ip and nodeport)
External-to-LoadBalancer connectivity
Pod-to-External connectivity
Pod-To-External (using IP resource remapping) connectivity

/merge


Nightly and Artifacts from Builds don't exist or have expired

The nightly build link isn't working and the artifacts from the other links/builds are all expired

See https://gist.github.com/JustaSqu1d/171df3ff386859da31d37534122d3b10 for up-to-date AltoClef versions.


Improve modpow test generation

Moves the modpow and % test generation into a Rust script rather than Python. I intend to move the other tests to Rust later as well.
This also improves the test coverage by including negative bases and moduli. Exponents remain positive (since it fails otherwise) and moduli must be non-zero to prevent division by zero.
Also varies the length of the bytes, as well as including more tests than previously.

It is


OFA-OCR识别微调的模型checkpoints有开源么

你好，感谢你们杰出的工作，论文《Transferring General Multimodal Pretrained Models to Text Recognition》中文本识别微调的OFA-OCR模型以及inference的脚本貌似没有找到？

We have released the multi-task finetuned checkpoints. See checkpoints_cn.md and scripts

Dose the multi-task fine-tuned model's tokenizer & model structure as same as damo/ofa_ocr-recognition_general_base_zh?
There's only one .pt file in downloaded file.


enhance(workspace): warn at startup and reload if there are notes with duplicate IDs

A somewhat common issue that can happen when people copy and paste notes is notes with duplicate IDs. This PR adds a check during initialization and Reload Index to detect and warn if there are notes with duplicate IDs.
Q: I wanted to add telemetry for this check, but I'm not sure where to add it. It looks like analytics are only available in plugin and CLI, so I can't track it from the engine. Detecting the error from the plugin is also difficult because I can't attach a special error.status or error.code to look for because these are deprecated, and I'm not sure how else to detect this error happened. Let me know if you have any thoughts.
Dendron Extended PR Checklist
Code
Basics

[x] code should follow Code Conventions
[x] circular dependency check: make sure your code is not introducing new circular dependencies in plugin-core.  See Avoiding Circular Dependencies.
[x] sticking to existing conventions instead of creating new ones

eg: if configuration for utilities are already in one module or package, add future utilities there as well

Extended

General

[x] check whether code be simplified
[x] check if similar function already exist in the codebase. if so, can it be re-used?
[x] check if this change adversely impact performance

Operations

[x] when shipping this change, will it just work or will it introduce additional operational overhead due to complicated interface or known bugs?

Architecture

[x] check if code is introducing changes on a foundational class or interface. if so, call for design review if needed

eg: making changes to DNode

Instrumentation
Basics

[x] if you are adding analytics related changes, make sure you Document changes in airtable

Extended

[x] can we track the performance of this change to know if it is successful?

eg: see usage for export pod

Tests
Basics

[ ] Write Tests
[ ] Confirm existing tests pass
[ ] Confirm manual testing
[ ] Common cases tested
[ ] 1-2 Edge cases tested
[ ] If your tests changes an existing snapshot, snapshots have been updated

Extended

[ ] If you are adding a new language feature (graphically visible in VS Code/preview/publishing), an example is included in the test workspace

CSS

[ ] display is correct for following dimensions

[ ] sm: screen ≥ 576px, eg. iphonex, (375x812)
[ ] lg: screen ≥ 992px
[ ] xxl: screen ≥ 1600px eg. mac (1600x900)

[ ] display is correct for following browsers (across the various dimensions)

[ ] safari
[ ] firefox
[ ] chrome

Docs
Basics

[ ] if your change reflects documentation changes, also submit a PR to dendron-site and mention the doc PR link in your current PR

Basics

[x] does this change introduce a new or better way of doing things that others need to be aware of? if so, an async should be created and a process added in Development or Packages

Close the Loop
Basics
Extended

[x]  is this a developer BREAKING change? if another person cloning from this branch will need to adjust their dependencies or mental model of the architecture, then it is. if this is the case, make sure this is communicated according to Close Loop

eg. breaking dev change due to new dependency

A somewhat common issue that can happen when people copy and paste notes is notes with duplicate IDs. This PR adds a check during initialization and Reload Index to detect and warn if there are notes with duplicate IDs.
Q: I wanted to add telemetry for this check, but I'm not sure where to add it. It looks like analytics are only available in plugin and CLI, so I can't track it from the engine. Detecting the error from the plugin is also difficult because I can't attach a special error.status or error.code to look for because these are deprecated, and I'm not sure how else to detect this error happened. Let me know if you have any thoughts.

i think this makes a good case of not deprecating the code field in IDendronError. it can be a no-op in cases when its not needed but its useful to have an error table to map to for custom actions like this
its also a good example of learn & adapt - http return codes already provide a rich syntax for describing errors and its valid not just for http. for example, this is a good example of a 400, a client error
The server cannot or will not process the request due to an apparent client error (e.g., malformed request syntax, size too large, invalid request message framing, or deceptive request routing).[30]

given a code + status, we can also have a lookup table to do custom actions based on errors

if code = 400 and status = ERROR_STATUS.INVALID_ID {
  track ...
}

@SeriousBug can you create an async to bring this up to the team?

Thanks, I unmarked them as deprecated and added some support functions for it. I'm taking a note to write an async once this is merged.

Why can't we just code off a special message?
if message = ERROR_MESSAGE.INVALID_ID {
  track ...
}

@jonathanyeung

Why can't we just code off a special message that's part of the general error payload?

Because the message is used for the error display already. The plugin will display the message in the error, and the message is not a static string but gets formatted based on the actual error (it's formatted to include the names and vaults of the notes that have conflicting IDs).
While we could override that and use the message field as the error code, I don't see the point why we would want that. We already have a way of passing additional data in errors in the status and code fields, and the message means the error message to be displayed to the user.
I don't have strong feelings towards the error codes (400, 500 etc.), but I think we should have a way to say "I'm looking for an error of this type" which is why I used the status field

can we add a test for this?

@SeriousBug , @kevinslin The reason I don't want us to add these fields back is because it makes it hard as a caller to understand what I'm supposed to do or check when I get a Dendron Error.  When am I supposed to check the status code? If that's not set, do I check the status string? What if both of these are set? What if none are set? These fields are both redundant for non HTTP API calls because payload has type any.
Strictly speaking for HTTP calls though, the Status Code field is important to have, and I think it's important that we set it correctly since this is a universal protocol for HTTP - this will save us work down the line as we have varied clients talking to the server.  There's a big difference from a client's perspective between INTERNAL_SERVER_ERROR and BAD_REQUEST.  The former means, something went wrong and there's probably not much I can do about it beyond retry.  The latter means, I did something wrong and I need to modify my request in order for it to work.
I think error handling on the server vs only within the client is sufficiently different that we shouldn't attempt to use the same class for both (I guess that's the motivation behind DendronServerError, but we haven't really been using that properly so far. Conflating properties between the two makes error handling harder.
For this particular situation, I think the best way to pass back the information to the client is to expand DEngineInitPayload to include a warnings field.  And on further thought, I think 200 S_OK is the appropriate HTTP code for this init() call - It shouldn't be BAD_REQUEST from the perspective of this client, because the only thing the client tried was a parameterless init call.   Also, I think we should probably reserve 500 INTERNAL_ERROR for fatal exceptions - which is also not the case here, since all of the notes still initialized fine with the exception of the ones with duped ID's.

@jonathanyeung I'm open to alternatives if you have any suggestions, let me describe my goal first.
I want to be able to handle errors depending on what the error is. In particular, I want to recognize the "note ID duplicated" error and handle it by doing analytics tracking.
Whether you call this a "minor severity error" as we do right now, or introduce a special "warnings" type is tangential to what I'm trying to do here. Whether it's an error or a warning, I need to determine if a specific kind of error (or warning) happened and take action.
Whether we should put a 200 or 400 or 500 code on this error is also tangential to this issue. Right now we do absolutely nothing with the code. We could just not set it. Or leave it deprecated. The code is not specific enough to determine what the exact error (or warning) was anyway, so I still need the status.
The caller never has to check the status. The only time you would check the status is If you want to take an action when an error happens. In that case you generally need to know what the error was. You might want to handle a missing file error, but propagate the error if it's something unexpected. You need to know what type of error it was.

In conclusion, I'm suggesting we keep the status field so we can track specific error types. I also suggest the discussion on the error code be left for later.

@SeriousBug - understand that you had a relatively simple objective with this change, and so I apologize that this has turned into a larger discussion 😅
I do want to iron out the 'error' part because this change as it stands right now unmarks fields from being deprecated, which can have snowball consequences for us later.
What do you think of my earlier suggestion?

pass back the information to the client is to expand DEngineInitPayload to include a warnings field

If we do it like this, then we can have all the resolution we need in sending back the info of which note ID's are duplicated, and we also will restrict the change to just modify the init API without having to touch any of the error code logic.

@jonathanyeung I absolutely wouldn't say "a pain in the butt", I understand the need to fix things up.
For your suggestions about warnings, we have an established way of reporting warnings: errors with the severity set to minor. These are already considered non-fatal errors by the initialization, so the initialization will continue if minor errors are present.
That being said I'm not opposed to introducing a warnings field, but if we do so I think we should include richer type information about the warning. Right now errors are just any, which is the right type for them since the API may end up returning any error if something unexpected happens. For warnings I think each endpoint should have a well-defined list of warnings it could have. For example initialization could return VaultMissingWarning and DuplicateNoteIDWarning. What do you think about that? If that sounds good, I'll roll back the un-deprecation and add the warnings instead.

So want to pre-face this by saying that error handling, like organizing information, has different convetions and there isn't one right way to do it. We just need to find a way that works for us.
@jonathanyeung, what i'm hearing from you is the following:

error handling on the server vs only within the client is sufficiently different that we shouldn't attempt to use the same class for both
adding these codes back will add complexity on the caller side
These fields are redundant for non HTTP API calls because payload has type any

My thoughts:

error handling on the server vs only within the client is sufficiently different that we shouldn't attempt to use the same class for both

I think the only difference is the addition of a code which I think would be useful in client side errors as well - its just that we don't bother with it

adding these codes back will add complexity on the caller side

I don't think it has to be. As long as these fields are optional for client errors, we can do the same check we do today (we don't do much with error body anyways)
const resp = someMethod()
if (resp.error) {
    throw resp.error
}
// continue with ahppy case

Adding code means that we can do something more useful if we want to

These fields are redundant for non HTTP API calls because payload has type any

Sorry, could you elaborate here? Not sure I follow
In general, I think errors should have the following properties:

human readable message ( maps to message)
a way of adding arbitrary metadata depending on the error (maps to payload)
a way of identifying what type of error is happening (maps to ??? - this is ambiguous today)

I'm a fan of the stripe error property (generally held as the pillar of good api design).
they have the following signature around errors (i've omitted payment specific properties):

main

type string

The type of error returned. One of api_error, card_error, idempotency_error, or invalid_request_error

code string

For some errors that could be handled programmatically, a short string indicating the error code reported.
message string
A human-readable message providing more details about the error. For card errors, these messages can be shown to your users.

param string

If the error is parameter-specific, the parameter related to the error. For example, you can use this to display a message near the correct form field.

additional attributes:

doc_url string

A URL to more information about the error code reported.

source hash

The source object for errors returned on a request involving a source.

What do you think of adopting the above?

type DendronClientError = {
    type: string
    message: string
    payload?: any
    code?: string
    ...
}

type DendronServerError = DendronClientError {
    code: string
}

My key point is that all of the things you described are relevant to server-client HTTP calls, but not all types of errors.  Keep in mind that stripe's API design is a REST API, which comes with certain constraints that they must work under:

It needs to follow HTTP protocols (i.e., mapping to a universal set of HTTP_STATUS_CODES).
The data needs to be serializable
Same as point 1, but it needs to work with all types of clients (JS, Python, C, etc.)

We have the same constraints for our express server REST API.  But we decidedly do not have any of the above constraints for our TS to TS code.
For example, say we're looking at some plugin-core code (TS) talking to one of our markdown parsing utility functions (also TS). The parsing hits an error and throws a DendronError.  If we were to adopt the proposal and have all these fields in the DendronError, I, as the developer of either the plugin-core code or the markdown parsing code, have a lot of questions:

What am I supposed to do with this code field? It's set to HTTP_500 INTERNAL_SERVER_ERROR, but there's no server here?  I'm not sure what that means.
As the markdown parsing library author, I shouldn't be concerned with creating a polished human readable message to display to an end user.  That's not the responsibility of the library.  All I'm concerned about is that the program invoking my function can understand what's going on.  That can be an enum (not technically human readable, since it usually maps to an int).

So I'm arguing that DendronError shouldn't contain these fields, because it's the base class of errors.  The proper design is to use composition / inheritance to create more complex error types that work well for our different scenarios, be it express-server, markdown-parsing lib, or whatever.
By adding all of these fields into the base class as optional, we're losing the benefits of having a type system and conflating functionality.

after some offline discussion with @jonathanyeung , we decided to go for a hybrid approach, outlined in https://docs.google.com/document/d/1F6yyHGMjf-behwhMAWyfq_I2XNu5WJCqFZ4b1IP-t1w/edit
tldr: all errors have a common interface (code/message/payload) but we will rely on subclassing to parameterize payload/code
apologies @SeriousBug for the churn

@kevinslin That's alright, so should I implement the system proposed in the document in this PR?

@kevinslin That's alright, so should I implement the system proposed in the document in this PR?

yep, to be safe, you can wait until after monday to see if anyone has amendments

I'm closing this PR and replacing it with #2879, because starting from scratch was easier.


Prisma2 generate issue

Follow up on that one: https://github.com/prisma/prisma2/issues/1371

It seems that yarn prisma2 generate (when prisma2 installed on devDependencies) doesn't generate the new PrismaClient

it doesn't generate at all, the executable stop before 1 sec of running

@yovanoc Can you please send the exact error you're getting? This will help us debug this further. I'm running into a similar problem.

I can't reproduce on the latest alpha now :/

Closing this then. Please open a new issue if this ever pops up again.


Sonnen stable bump

RE-CHECK!

Automated adapter checker
ioBroker.sonnen

[ ] :heavy_exclamation_mark: [E506] Word "IP-Address:" is not translated to russian in admin/words.js. You can use https://translator.iobroker.in/ for translations
[ ] :heavy_exclamation_mark: [E506] Word "IP-Address of your sonnen battery" is not translated to russian in admin/words.js. You can use https://translator.iobroker.in/ for translations
[ ] :heavy_exclamation_mark: [E506] Word "Poll interval (ms)" is not translated to russian in admin/words.js. You can use https://translator.iobroker.in/ for translations
[ ] :eyes: [W505] setTimeout found in "main.js", but no clearTimeout detected

Add comment "RE-CHECK!" to start check anew

RE-CHECK!

Automated adapter checker
ioBroker.sonnen

:thumbsup: No errors found

[ ] :eyes: [W505] setTimeout found in "main.js", but no clearTimeout detected

Add comment "RE-CHECK!" to start check anew

RE-CHECK!

Automated adapter checker
ioBroker.sonnen

:thumbsup: No errors found
Add comment "RE-CHECK!" to start check anew


Using lower bound python version reported by pyproject

This makes sure that the reported minimum version is actually tested.

This builds upon #15 so should be merged after that large update


Fix blocked safari scrollbar

The detectElementResize.js library has a bug in Safari in which an invisible element covers the scrollbar and prevents clicks from going through to the control.

This is documented in this issue and I got the idea for the fix from this commit.
The result:

Current coverage is 98.17% (diff: 100%)

Merging #413 into master will not change coverage

@@             master       #413   diff @@
==========================================
  Files            61         61
  Lines          4220       4220
  Methods         893        893
  Messages          0          0
  Branches        317        317
==========================================
  Hits           4143       4143
  Misses           77         77
  Partials          0          0

Powered by Codecov. Last update f7d4721...648bacc

Thanks, @fritz-c !


Update index.html

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

...


Keybindings not working on FreeBSD

I run the demos but can't quit using any of the keybindings. I tested it on a fresh install of FreeBSD. Examples work fine on linux though. Any idea?

Resolved https://github.com/nsf/termbox-go/pull/219/files

@miguelmota Any chance of another release that includes this fix?  Maybe a patch release, v3.1.1?

@xxxserxxx I recommend forking it and using your own patched version considering there's little dev activity in the project


added artifact to register new chocolatey feeds

... required if a company provides an internal feed for chocolatey packages in addition or as an replacement for the official chocolatey feed.

@markusheiliger,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Unexpected Behavior When Applying Labels Using .net Client With Null Label Overrides

Problem Summary:
When applying labels conditionally (based on environment variables), if the label string is null or empty, the last label created is applied.
Expected Outcome:
The no label value would be applied.
Actual Outcome:
The last label created is applied.
Reproduction Steps:

Create a key-value with no label
Add a value with a label
Conditionally register the label

options
.Select(KeyFilter.Any, LabelFilter.Null)
.Select(KeyFilter.Any, builder.Configuration.GetValue<string>("ConfigLabelOverride"));

Workaround:
Checking the value before applying resolved this issue, but this is not fail-safe behavior. I would not expect a labeled value to be applied if no matching label is used to select the values.
options
.Select(KeyFilter.Any, LabelFilter.Null);

var labelOverride = builder.Configuration.GetValue<string>("ConfigLabelOverride");
if (!string.IsNullOrEmpty(labelOverride))
{
   options.Select(KeyFilter.Any, labelOverride);
}

Select isn't conditional operation. It applies the specified filter. Passing null is the same as  LabelFilter.Null (valid input).
Multiple Select perform configuration composition - the last existing wins.
If you need conditional filtering, extending AzureAppConfigurationOptions is decent alternative.
static class AzureAppConfigurationOptionsExtentions
{
    public static AzureAppConfigurationOptions SelectIf(
        this AzureAppConfigurationOptions options,
        string keyFilter,
        string labelFilter,
        Func<string, string, bool> predicate)
    {
        if (predicate == null)
        {
            throw new ArgumentNullException(nameof(predicate));
        }

        if (predicate(keyFilter, labelFilter))
        {
            return options.Select(keyFilter, labelFilter);
        }

        return options;
    }
}

Usage
options
.Select(KeyFilter.Any, LabelFilter.Null)
.SelectIf(KeyFilter.Any, builder.Configuration.GetValue<string>("ConfigLabelOverride"), (keyFilter, labelFilter)=> !string.IsNullOrEmpty(labelFilter));

Hope that helps.

Yes this works - I am just surprised that the default behavior would be to return the newest label if a null selector is used. Closing the issue since there is a workaround.

Keep in mind that null is valid value for label. ``Select` composition doesn't get the newest label, but rather the last one specified in Select sequence. That's the composition I mentioned. The idea behind is to allow hierarchical setup. Something like this:
options
    .Select(KeyFilter.Any, LabelFilter.Null)
    .Select(KeyFilter.Any, "prod")
    .Select(KeyFilter.Any, "version3")

Get items that don't have label (null label) - think of common app defaults
Get items with label prod and override any existing prior - default production settings
Get items with label version3 and override any existing prior- specific settings for westus deployment

Here is an example config:
key=maxCacheSize (label: null), value=1MB
key=maxCacheSize (label: "prod"), value=5MB (production defaults)
key=maxCacheSize (label: "version2"), value=7MB (implementation improved)
key=maxCacheSize (label: "version3"), value=12MB (great implementation)
key=enableCacheEncryption(label: "version3"), value=true

@landonbass, upon further investigation we found indeed an issue related to passing empty string as label filter. Please refer to https://github.com/Azure/AppConfiguration-DotnetProvider/issues/311
Apologies for my misunderstanding.
Thanks for your feedback!


Right Click Menu Makes Dead Zones

When using the right click menu in v1.8 it causes dead zones when using it frequently and very easy to reproduce

Fixed as of V2.0.14


Fixed logo for light mode

Added respective logos for light and dark mode.
Could you please add the GSOC EXT and Hacktoberfest labels to this pull request. Thank you!

@sezallagwal
is it associated to any issue


samples: net: echo-server: Add support for multiple listeners

By default only one listener is enabled, but if user specifies
CONFIG_NET_SAMPLE_NUM_HANDLERS with value larger than 1, then
multiple threads are created, and each will be able to accept
connections.
Fixes #19374
Signed-off-by: Jukka Rissanen<EMAIL_ADDRESS>

In order to enable support for multiple listeners, one needs to set CONFIG_NET_SAMPLE_NUM_HANDLERS to some value > 1, also CONFIG_POSIX_MAX_FDS and CONFIG_NET_MAX_CONTEXTS might need adjusting to higher values. The example values in current samples/net/sockets/echo_server/prj.conf should work for 2 listeners but will probably not work if more listeners are needed.


Add Indonesian (id) translations

Add Bahasa Indonesia support

thank you tho the file doesn't seem complete, and it'd be great if you generated the mo file. thanks!

Actually the .mo file is being ignored by .gitignore, that is the reason why i don't add it. My last commit add the .mo file. Thanks @Andrew-Chen-Wang for your response!

oh thank you. sorry i'm mixing up oss projects

Never mind @Andrew-Chen-Wang. Thanks for your fast response. Done revert the commit.

sorry this is super annoying but can u revert that commit again and add back the mo file.
in the gitignore can u also remove the *.no entry. I see that the mo files are actually inside the package

It's OK. Done @Andrew-Chen-Wang

thanks again!


Ability to put 2d multimedia in 3d AR

Probably we can give it a shot.
reference -- https://twitter.com/kratist0s/status/1457634639544209411

we do generative art now


nixos/mediawiki: add nginx option

Description of changes

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

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

[x] Fits CONTRIBUTING.md.

@ofborg test mediawiki

This leads to paths like https://wiki.example.com/index.php/Main_page, where as we should probably follow what Wikipedia does, which is /wiki/Main_page. Pretty URLs and such.

Finaly nginx support. Thanks \o/
I just deployed this to an existing Mediawiki of me, and it basically works pretty well but I think I found a little problem:
When you provide services.mediawiki.uploadsDir like e.g. /srv/mediawiki you get a location block for the images which looks like this:
location /w/images/ {
    alias /srv/mediawiki;
}

This will result in all images in the wiki being broken because nginx builds a broken filepaths and you get an error in the log like this open() "/srv/mediawikid/d7/Header2023.png" failed
To make images work you need to provide services.mediawiki.uploadsDir with a trailing slash like e.g. /srv/mediawiki/. With this little change the module works perfectly from what I have seen.
Maybe a little helper like this could help us here?
withTrailingSlash = str: if hasSuffix "/" str then str else "${str}/";

(taken from services/web-apps/jirafeau.nix)

Added the helper.

Some skin resources don't seem to show up for us, e.g. /w/skins/Vector/resources/common/images/search.svg (404), could anyone else reproduce?

Seems to also do a 404 here: https://nixos-wiki.thalheim.io/w/skins/Vector/resources/common/images/search.svg
You can debug these types issues by using strace -p <nginx-pid> -e openat,stat

@McSinyx some follow up fixes: https://github.com/NixOS/nixpkgs/pull/265506


[GSSoC 23'] Fixed the file paths error

Reference issue
Issue No: 193
Description
The bug stems from the reorganized projects, where specific program features interact with a text file. This necessitates fixing the file paths used in various locations is completed.
To ensure the proper functioning of the projects, all instances of file paths are corrected.
About The Correction

The entire set of database items and files has been relocated to a distinct directory.
The paths to the file, which are referenced in various sections and modules of the code, have been recalibrated.

@HartzFrequency review your PR again , as it is giving error:-
raceback (most recent call last):
File "C:\Users\91945\OneDrive\Desktop\Folders\ApnaBharat-Bus-Booking-Reservation-System\bus-booking-system\main.py", line 17, in
Check = SignIn.Login().mainloop()
File "C:\Users\91945\OneDrive\Desktop\Folders\ApnaBharat-Bus-Booking-Reservation-System\bus-booking-system\Database\Modules\SignIn_Module\SignIn_page.py", line 37, in init
self.bg_image = customtkinter.CTkImage(Image.open("bus-booking-system\Database\Image\Background_gradient.jpg"),size=(self.width, self.height))
File "C:\Users\91945\AppData\Local\Programs\Python\Python310\lib\site-packages\PIL\Image.py", line 3131, in open
fp = builtins.open(filename, "rb")
FileNotFoundError: [Errno 2] No such file or directory: 'bus-booking-system\Database\Image\Background_gradient.jpg'

Hey @Pranjal360Agarwal please merge this PR!! So that I can raise further PR for next issues

@HartzFrequency but the the project after merging this PR is not working correctly!!
Correct the issues with this PR, I will merge it.

Hey @Pranjal360Agarwal,
I've reviewed the PR, and I wanted to clarify something. I've made changes to the file paths in the program, so I'd like to know if you're running the entire program or just the main code. The main code now includes the updated paths, and the error message indicates that the path for the sign-in image is incorrect.
Additionally, could you please check out Discord? I've made updates to the directory hierarchy there.
If the problem continues to persist, I will submit the PR again. Just let me now
Thank you!!

hey @Pranjal360Agarwal Please check the PR now I have renamed the paths according to python standards

@HartzFrequency  fp = builtins.open(filename, "rb")
FileNotFoundError: [Errno 2] No such file or directory: 'bus_booking_system\Database\Image\Background_gradient.jpg'  correct this error

@HartzFrequency  fp = builtins.open(filename, "rb")
FileNotFoundError: [Errno 2] No such file or directory: 'bus_booking_system\Database\Image\Background_gradient.jpg'  correct this error

Hey @Pranjal360Agarwal ,
I've reviewed the PR, and I wanted to clarify something. I've made changes to the file paths in the program, so I wanted to know if you're running the entire program or just the main code.
The main code now includes the updated paths, and the error message indicates that the path for the signIn image is incorrect.
Additionally, could you please check out the Discord? I've made updates to the directory hierarchy there.
If the problem continues to persist, I will submit the PR again. Just let me know
Thank you


Duplicate keybinds for: toggle enable/disable workspacer

I was wondering why the toggle enable/disable function (which is rather essential IMO) didn't work for me and found that there's a duplicate key binding in \workspacer\src\workspacer\Keybinds\KeyBindManager.cs
mod + LShift + E  is being being assigned to two actions
Line 209 -  _context.Enabled = !_context.Enabled, "toggle enable/disable");
Line 309 -  _context.Workspaces.MoveFocusedWindowToMonitor(1), "move focused window to monitor 2");
The docs on the website also claim that mod + LShift + E is used for toggling so might want to edit those as well

Good find!￼
Maybe we should also add some warnings to the logs when re-binding already bound keys to easier catch situations like these?

Yeah it definitely should show up somewhere. I'll have a look at how those are done and create a PR to include if @rickbutton agrees

No need to wait for Rick. I approve, and I can get PRs merged :smile:

So I looked through the KeyBindManager and based on my (very limited) understanding of C# it would require a bit of a rewrite. At the moment key-binds are stored in  the Dictionary _kbdSubs so there is no real way to check for duplicates as the dictionary does not allow them in the first place.  A possible workaround could be to use a list with something like this:
List<KeyValuePair<Sub, NamedBind<KeybindHandler>>> _kbdSubs = new List<KeyValuePair<Sub, NamedBind<KeybindHandler>>>();

Then it'd be easy to check for duplicates and add those to the logs as as Debug or even Fatal.
I'm happy to give this a try but not sure if there isn't an easier way or if I've missed something so any comments would be appreciated

Yeah it definitely should show up somewhere. I'll have a look at how those are done and create a PR to include if @rickbutton agrees

sounds great, please do!

So I looked through the KeyBindManager and based on my (very limited) understanding of C# it would require a bit of a rewrite. At the moment key-binds are stored in the Dictionary _kbdSubs so there is no real way to check for duplicates as the dictionary does not allow them in the first place. A possible workaround could be to use a list with something like this:

what if we made KeyBindManager throw if you attempt to bind a key that is already bound. this would mean that in order to  rebind a key, you would need to unbind it first. thoughts?


Made the matrix methods return the matrix, making them chainable, and added a test.

This commit allows stuff like m.add(x)multiply(y).print() possible, as well as for example return m.map(e => e*2) which will simplify some stuff later down the road.
The test I added does not cover all the functions so some additions may be needed.

Looks great!

Awesome!


partial class rationale

Search Terms

partial class c# google
#563, #14913
When is it appropriate to use C# partial classes? (stackoverflow) — "The biggest use of partial classes is to make life easier for code generators / designers"

Suggestion

TS already have namespace. Why it cannot have partial class only valid in namespace and in same module (like internal)?
Partial classes may be distinct from C# implementation.
One partial class may require declaration/implementation from another, otherwise compilation should fail.

Use Cases

Code generation tools: ATM there is no way to extend TypeScript compiler with custom resolvers, build hooks or anything.
Without this feature most of preconditions cannot be checked at build time and everything must be checked at boot or even worse at runtime.

Examples

There are nice examples in the wild, VS and C# can be one well known.
My specific use case will be to rendering GraphQL schema into partial classes, you will only implement resolvers. All checked :heavy_check_mark:
(Yes. Current approaches are really bad on server.)

Checklist
My suggestion meets these guidelines:

[x] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[x] This wouldn't change the runtime behavior of existing JavaScript code
[x] This could be implemented without emitting different JS based on the types of the expressions
[x] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, etc.)
[x] This feature would agree with the rest of TypeScript's Design Goals.

You found #563 already, which has plenty of information

Ok. I'm reading this as Typescript will never have partial classes

That's correct


CFFL

CFFL

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_6fx6jc07eg/clone/recipe/meta.yaml:14: pip_install_args: pip install should be run with --no-deps.
ERROR: /tmp/abs_6fx6jc07eg/clone/recipe/meta.yaml:20: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: /tmp/abs_6fx6jc07eg/clone/recipe/meta.yaml:40: missing_documentation: The recipe is missing a doc_url or doc_source_url
WARNING: /tmp/abs_6fx6jc07eg/clone/recipe/meta.yaml:40: missing_description: The recipe is missing a description
ERROR: /tmp/abs_6fx6jc07eg/clone/recipe/meta.yaml:40: missing_dev_url: The recipe is missing a dev_url
ERROR: /tmp/abs_6fx6jc07eg/clone/recipe/meta.yaml:40: http_url: http://gitea.ksol.io/karolyi/py3-validate-email is not https
ERROR: /tmp/abs_6fx6jc07eg/clone/recipe/meta.yaml:40: missing_license_family: The recipe is missing the about/license_family key.
Errors were found


Change request: (CH) Codeunit 11503

Codeunit 11503: Please Set function "PrepareEsrService" [External]
You already did it with "PrepareEsr" right above.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


#608 angular based info about cookies

You haven't resolved few issues that I point You and Travis build is failing.

Codecov Report

Merging #625 into master will decrease coverage by 0.15%.
The diff coverage is 50%.

@@            Coverage Diff            @@
##           master    #625      +/-   ##
=========================================
- Coverage   91.25%   91.1%   -0.16%
=========================================
  Files          86      87       +1
  Lines        2698    2708      +10
  Branches        4       4
=========================================
+ Hits         2462    2467       +5
- Misses        231     235       +4
- Partials        5       6       +1

Impacted Files
Coverage Δ

...p/cookie-law-banner/cookie-law-banner.component.ts
50% <50%> (ø)

Continue to review full report at Codecov.

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

@TrebuhD I'm merging this one, but next time it will not pass, if You will not provide pull request description that comply with our template.


Dockerfile cleanup and switch to ubuntu 16.04 instead of Debian

I had some issues with the shell feature and the latest mongo version as that mongoclient requires a newer version of glibc than is shipped with Debian Jessie.
I updated the Dockerfile and associated code to use Ubuntu 16.04 as base image instead, as that was a lot easier than updating the glibc included in Debian.
I also just rearranged some commands in the Dockerfile to take a better advantage of caching.
If you don't want to switch to ubuntu as base image, you can just decline this pull request, but it seems to work fine for me and the shell works as opposed to complaining about glibc :)

Hello @mhlz
thanks for the PR, I actually had no issues with the shell, but gotta try your docker file instead current one, and accept if I don't encounter anything.
Thanks again


BUG in deobfuscation

Jadx during the deobfuscation process modifies the package com.myapp.ui.activities in com.myapp.p071ui.activities . maybe ui and other packages should be whitelisted (e.g. ai, ml, ip)

ui could be a proguard generated name but we human know It's not. Maybe a blacklisting feature would be nice where you can stop certain names from being deobfuscated


revert #1962 because of failure to correctly print errors in non comp…

…iling definitions
@radumereuta please take a look but do not merge yet, I still have to test the changes to kdep.

lgtm. Tried it on my machine and now works.
#2023 should be fixed now.

@cos FYI this was your commit it's now your responsibility to fix the issue and remerge the code as well as to make sure that the merge conflicts that I created in this diff get resolved in favor of all the right things moving forward.
To summarize the issue, your code does not correctly crash the tool with an error in all cases when a parsing error occurs, which caused rules to mysteriously vanish from the definition without it being clear why.

no @dwightguth, this is not ok! That PR was essentially doing part of the refactoring you have been postponing months. If you look at the before code, most of it is yours. It is also code that the kdoc branch depends on. If you do not like, please do the refactoring yourself asap, and also merge with the kdoc-with-meta branch.
Also, it is not ok to revert a very large PR for the sake of fixing a small error propagation issue.

Yes I'm quite aware most of the code is mine, however, before this diff the tool worked and after it it did not work. There were multiple people whose progress was broken and blocked because this was not working. I opted to implement the fastest possible fix which was to isolate the code that was defective and revert it. This is fairly typical software workflow methodology when dealing with major regressions. It would have taken significantly longer for me to try to fix the regression myself and throughout that time the tool would have been in a broken state where literally nobody could safely be doing any K-language development using the latest version of K.
If you're upset that the diff is too large for the amount of code that was faulty, make smaller diffs, and test them better. If on the other hand it really is trivial to fix this error, well, it shouldn't take you much time to fix then.

@dwightguth, if the issue is that extensive, why did it escape Jenkins? Oh, because none of the caching code that you have introduced and I partially refactored has any tests?
This is not production code, nobody would have been greatly affected if you would have given me a heads up and allowed me to have a look. @radumereuta, you merged this very large PR at two hours after @dwightguth made it, and nobody mentioned me. Would it have been that hard to ask me if it's ok and give me a couple of hours before merging? It is common courtesy.
Finally, @dwightguth, I cannot make smaller PRs when the refactoring fixes one large mess.

1 blocked person is better than 2 blocked people. I'm sorry I didn't let you know this was happening before I merged the revert. That's my bad, I will try to do better in the future.
That said, yes, it is that hard to give you a couple hours in this case. 2 hours while you fix this is actually 6 hours because it's blocking a total of 3 people. That's not an insignificant amount of lost productivity. After this was merged only one person was blocked. That's why it was done as quickly as possible (in 12 minutes), so that instead of losing 6 hours we only lose 2 hours and 24 minutes.

@cos why are you taking this personal?
I spent 2-3 hours tonight trying to understand what was going on with K, and couldn't figure it out.
I searched out for @dwightguth maybe he could help. After that we had to bisect and search where the problem was. This is not something that we can wait for you to figure out when you are not in the office.
@dwightguth took the correct decision in this case, especially since we couldn't trust the tests in this case, since it slipped through. This PR needs another closer look, and some extra tests this time.
If there is something to be taken from this, is that we DESPERATELY need negative tests. Just to say that definition X should fail with error message Y.

I spent 2-3 hours tonight trying to understand what was going on with K, and couldn't figure it out.
I searched out for @dwightguth maybe he could help. After that we had to bisect and search where the problem was.

@radumereuta, I have spent 2-3 days figuring out how to split that code apart, refactoring it, and getting it merged -- I would have taken significantly less to rewrite it but then I would have had to rewrite also all the tentacles that were already depending on it.
The trickiest part of that code was caching as it was entangled with the functionality. The caching part, in the original code, did not have unit tests and that is the reason the PR passed Jenkins and failed afterwards.
Regarding urgency, that PR has been merged for 4 days and hell didn't brake loose. As I understand, the problem was that errors were reported incorrectly when something came from the cache, while the positive cases were still working. Who was truly blocked? I doubt this kind of rush was warranted. We're talking about master, not stable/production after all. As I see you're following with a revert of the AC branch. This is becoming non-trivial. All of this could have waited for another couple of hours.
@radumereuta, regarding not being in the office, even when traveling I have quite a good response time -- so let's not go there. Furthermore, you know how to get a hold of me on Google Hangouts, phone, etc. A simple message "hey we have this problem with your PR and we're going to revert it, could you have a look if you have a better solution?" would have worked. I only heard from you after the PR was already merged.
Regarding the timeline, the PR was never marked ready-for-review, I was not mentioned at all in it, and you merged it in 12 minutes after @dwightguth proposed it. Actually,@dwightguth said " please take a look but do not merge yet, I still have to test the changes to kdep", but maybe he gave you an informal ok afterwards.

@cos why are you taking this personal?

@radumereuta, I'm not taking this "personal". I take this as a disregard of both process and common courtesy which negatively affects my work. As I do care quite a bit about my work, I take this, not personally, but much worse, seriously.
And yes, there would have been alternate solutions: e.g., have a separate branch for anybody affected by this. Would this have worked for a couple of hours?

If there is something to be taken from this, is that we DESPERATELY need negative tests. Just to say that definition X should fail with error message Y.

Great. Our framework is supposed to be usable programatically. So why the desperation? Simply add a unit test that tests the negative side. If you cannot do it easily, it means we have a problem. And yes, I know you cannot do it very easily. You'll have to set up a bunch of irrelevant stuff just to get close to it. This is what the PR that was reverted was going towards. Having all features available individually programmatically so that a negative test, or any other simple use of the framework, isn't an exercise in code acrobatics.

@dwightguth, thank you for acknowledging this. Let's try to move this forward.
@radumereuta, could you branch just before this PR and try to add a negative unit test for the problem you encountered? If you cannot do it as a unit test, look at how @daejunpark added negative ktests recently. I will look into it and try to fix it tomorrow at 11am central.


support macos: use libusb instead of udev

Signed-off-by: hello<EMAIL_ADDRESS>

@notly I just tried your branch.  I don't think libusb is being cleaned up properly.  After qdl exists, and I attempt to run it again I get
qdl: libusb_claim_interface: Device or resource busy

Did some testing on this with UFS target (USB 3.0 Fedora 33).  Same flat build folder for both tests, files in question have been un-sparsed using img2img.
I've included the largest deltas.
The libusb branch should be re-based to tip of tree, and pick up the larger buffer size in case of SS.
system_a =  1,610,612,736 bytes
userdata =  1,999,998,976 bytes
modem_a =      62,558,208 bytes
dsp_a =        67,108,864 bytes

udev (master)
[PROGRAM] flashed "system_a" successfully at 12582kB/s
[PROGRAM] flashed "userdata" successfully at 12440kB/s
[PROGRAM] flashed "modem_a" successfully at 12218kB/s
[PROGRAM] flashed "dsp_a" successfully at 10922kB/s
libusb
[PROGRAM] flashed "system_a" successfully at 12098kB/s
[PROGRAM] flashed "userdata" successfully at 12056kB/s
[PROGRAM] flashed "modem_a" successfully at 15273kB/s
[PROGRAM] flashed "dsp_a" successfully at 13107kB/s

superseded by #59


AddPackage DismProgressCallback - total 1000?

Any reason why total for the Progress Callback for AddPackage is out of a total of 1000? whereas as others seem to be 100 which works better for showing percentage done?

DISM_PROGRESS_CALLBACK is defined as DismProgressCallback(UINT Current, UINT Total, PVOID UserData).
I haven't been able to find any reason why AddPackage might return "Total" out of 1000 (instead of 100), but if that is the case, all I can recommend is calculating a percentage based on Current/Total instead of implicitly trusting Current and Total will be out of 100.
My only guess is that any documentation on Current/Total being out of 1000 (or any value other than 100) is internal and based on the package state of the system and other packages--and might differ (other than X/100 or X/1000) in other DISM API functions (such as removing packages, mounting/unmounting images, etc.)

I have noticed on package it is out of a total of 1000 and it seems for unmounts it sometimes is out of 200 - so varies depending on command it seems - not a problem as you say as just set my progress bar to correct total and show value based on that

I can say that with respect to unmounting packages, I do believe that the first 100 represents committing changes--either committing them, discarding them--while the last 100 actually represents the "unmounting" process itself.
I'll look into it a bit more to see if perhaps something else could be done to make it more transparent to the caller (e.g. "Hey, during an unmount, the first 100 is committing/discarding changes, whilst the last 100 is the actual unmount operation"), but I think it may be a bit of a stumbling block in that the native API behaves this way, and to preserve the native-managed 1:1 mapping of this wrapper, modifying the DismApi code would break that 1:1 preservation. However, perhaps something in a "Utilities" class might be possible, and I just submitted a pull request (that @josemesona and I have talked about previously) to add a "DismUtilities" class, and this type of feature (and "/recurse", and others), might fit nicely in, if @josemesona approves.

that definitely makes perfect sense to me - hadn't thought of it like that :)

Yeah, it's a "gotcha" that the API isn't real forthcoming about (the native API, I mean.)
Perhaps the best solution would be to modify the managed API comments to simply explain these situations--for example, that the return "Total" value may be out of 200 (instead of 100), and if so, to handle the return progress appropriately (if the caller cares to report "committing/discarding" vs. "unmounting".)
Do you happen to know if it only returns out of 200 when unmounting an image that hasn't been "committed" or "discarded"? If it's out of 100 after committed/discarded, and out of 200 when neither has been performed, I think that would close the book on progress (at least for "unmounting.") Adding/removing Packages is another story.

just ran a quick test and it seems for /discard it is 100 and for commit it is 200 - which makes sense now

So if you make a change, and then do "unmount", it's 200?
And if you make a change, and then do either a "commit" or a "discard", and then "unmount", it's 100?

if you unmount and set commitchanges to true then it is 200
if you unmount and set commitchanges to false then it is 100
So as you say first 100 would be changes being committed and then second 100 the unmount operation perhaps

Okay, that makes sense.
If you make a change, and first call DismApi.CommitImage() (committing or discarding), and then call DismApi.UnmountImage() (committing or discarding), it should always be 100.
Can you verify that as well?

I will give that a try when I get a moment and let you know
On a separate note - something you may have answer too - do you know of a API for using DiskPart in VB / C# .NET - or an equivalent?

Sorry, I'm not familiar with a library to wrap DiskPart off the top of my head.

I'm closing this as by design.  I did some tests and it seems like the "total" is what you can expect the "count" to be when its done.  In my testing, current started at 50 while total was 1000 and current eventually got to 1000.  In other cases it started at 10 and went to 200.  I wish it was more documented.


SELECT from (JOIN to itself) doesn't work

drop table if exists t;
create table t (a Int8, val Float32) engine=Memory();
this works
SELECT a, t1.val as val1, t2.val as val2
        FROM t t1 any left join t t2 USING a

After wrapping with SELECT
it stops working
same for a View or Materialized View
SELECT
*
FROM (
  SELECT a, t1.val as val1, t2.val as val2
        FROM t t1 any left join t t2 USING a
);

Error:

Code: 179, e.displayText() = DB::Exception: Different expressions with the same alias val1: t1.val AS val1 and val AS val1 , e.what() = DB::Exception

Test for the issue #5870. It seems to be fixed.


Refactored acknowledge alerts button on Alerts by trigger dashboard page to be a modal experience.

Description
Refactored acknowledge alerts button on Alerts by trigger dashboard page to be a modal experience, and implemented unit and integration tests.
Issues Resolved
[List any issues this PR will resolve]
Screenshots

Check List

[x] New functionality includes testing.

[x] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

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

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

Codecov Report

Merging #167 (5a2e152) into main (88e2e33) will decrease coverage by 1.07%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #167      +/-   ##
==========================================
- Coverage   57.08%   56.01%   -1.08%
==========================================
  Files         194      195       +1
  Lines        4395     4490      +95
  Branches      591      599       +8
==========================================
+ Hits         2509     2515       +6
- Misses       1884     1973      +89
  Partials        2        2

Impacted Files
Coverage Δ

...s/AcknowledgeAlertsModal/AcknowledgeAlertsModal.js
1.92% <0.00%> (ø)

...nents/DashboardEmptyPrompt/DashboardEmptyPrompt.js
90.90% <0.00%> (+2.02%)
:arrow_up:

...gin/public/pages/Dashboard/containers/Dashboard.js
69.15% <0.00%> (+8.14%)
:arrow_up:

Continue to review full report at Codecov.

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


Parameters of material are not cloned (anymore)

Description
I am quite its a newer bug, in past I could clone materials with parameters, which I need for shaders.
The current implementation does not seem to try to clone parameter anyway.
Is this a bug, or a feature?
Steps to Reproduce

orgMaterial.setParameter('hello', 1);
orgMaterial.getParameter('hello') -> 1
newMaterial = orgMaterial.clone();
newMaterial.getParameter('hello') -> undefined

Workaround
sorry, removed workaround code, did not work
out of this workaround, I can try to make a fix, but first I must find out, if its expected behavior.
Greetings.

It was available last time? What was the reason it might be gone/removed?
I think part of the consideration is whether cloning parameters should be shallow vs deep copy. Obviously, this depends on your use case where deep copying might be beneficial vs shallow copying. Which convention is better? I dunno.
If parameters don't get cloned automatically, it must be done manually or via a seperate helper function. Can playcanvas team confirm that parameters aren't meant to get cloned with clone() function? I think material management is one thing many advanced users will handle manually since use cases can be different. (eg. replacing all batches with the same material without even using the cloned materials if they need to be all updated at once with the same parameters, or sharing the same parameters object, eg.)

my current work around is quite similar.
instead of using entity.clone() i clone my hand all meshes and materials.
i think what i would need is a "material-script" like a normal script is for entity, but for material.
reusing this would be much simpler :)
thanks for the feedback


Handle tempest config if public network not avail

If sanity test is not run prior to attempting to
configure tempest an excption would occur when the
tempest configuration script was called. This patch
insures that the network the config script requires
is present, if it is not then the user is instructed
to run the sanity test to create the network and
to rerun the deployment with the --tempest_config_only
flag.
Added new mutually exclusive arguments:
--tempest_config_only - helps the user
recover from error where tempest.conf could not be
generated due to the sanity test failing or not
running at all, as executing it is currently an
option.  If tempest.conf already exists it is backed
up and a new one created.
--run_tempest_only - Just run Tempest.  If no tempest.conf
is found we try to generate one then run.
Lastly, added new mutually exclusive argument group so the
user won't be able to run with both of these new args at the
same time as it will lead to confusion.
Fixes: CES-10320

OMG conflicts, sigh


tracing visible in command window where vscode was launched

I launch an .xml file from the command prompt.
Visual Studio Code starts, as expected.
What's not expected is the tracing that in leaves in the command window, such as
C:$WINDOWS.~BT\Sources>uninstall_data.xml
C:$WINDOWS.~BT\Sources>
[main 2019-10-29T16:34:02.726Z] update#setState idle
[main 2019-10-29T16:34:32.728Z] update#setState checking for updates
[main 2019-10-29T16:34:32.756Z] update#setState downloading
[main 2019-10-29T16:34:33.583Z] update#setState downloaded

Can you show me your %Path% variable?


Forgot password workflow

Would be very beneficial about now :neckbeard: haha. Something on the login page takes you to a new page that takes a username/email and sends an email with a change password token url, which will display a change password form.

Hi, in v2 of the admin user passwords are now stored in plain text and it is advisable to load them from external more secure storage before feeding them into the admin middleware. So this will eliminate the need of having a reset password workflow, sort of. Basically you will have to contact an admin, not ideal, but that workflow isn't really planned right now.


Details panel table header looks up label in all rows

Loop across all child nodes to find column labels in case first node does not have metrics (happens with stopped containers).
Fixes #891

Wicked.
LGTM.


net: tc: Priority to Traffic Class mapping improvements

This commits adds new priority to traffic class mappings and allows
users to choose which mapping to use through menuconfig.
The new mappings are recommended in 802.1 (chapter 33.5) for
time-sensitive applications supporting the credit-based sharper
algorithm.
Please review, thanks!

Codecov Report

Merging #9252 into master will increase coverage by <.01%.
The diff coverage is 50%.

@@            Coverage Diff             @@
##           master    #9252      +/-   ##
==========================================
+ Coverage   52.77%   52.78%   +<.01%
==========================================
  Files         201      201
  Lines       25288    25288
  Branches     5285     5285
==========================================
+ Hits        13346    13348       +2
+ Misses       9813     9812       -1
+ Partials     2129     2128       -1

Impacted Files
Coverage Δ

subsys/net/ip/net_tc.c
91.66% <50%> (ø)
:arrow_up:

subsys/net/ip/net_pkt.c
64.37% <0%> (+0.25%)
:arrow_up:

Continue to review full report at Codecov.

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

We also need to test these new mappings. Different combinations of the new mappings need to be added to tests/net/traffic_class/testcase.yaml file. Not sure if the actual unit test would work as is or does it need modifications.

@jukkar Thank you for your review!
The maps maps have been changed a little bit as in the previous implementation it did not take into account that there could be a different number of TX and RX TC classes. Is the current implementation ok? With it there is no need to duplicate the maps for RX and TX.
The issues you raised in your review are addressed - there is just one thing to verify - I am not sure if the PCP (vlan priority) to Packet priority conversion is still needed.
It looks like both the PCP values and Packet Priorities values are swapped (BE and BK priorities). So earlier we did fix VLAN priorities conversion, but it seems that not in a proper way. This standard is just so confusing when it comes to priorities.


Helm Install command syntax is incorrect (in instructions)

Describe the bug
The current version of Chart.yaml has the application name as "bikesharingsampleapp". However, the instructions show the Helm Install command to be "bikesharing". It should be updated to say "helm install bikesharingsampleapp [...]"

To Reproduce
Steps to follow to reproduce this issue.

Logs
Attach logs from the following directory:
For Windows: %TEMP%/Azure Dev Spaces
For OSX/Linux: $TMPDIR/Azure Dev Spaces
Environment Details
Client used (CLI/VS Code/Visual Studio):
C:\Repos\dev-spaces\samples\BikeSharingApp\charts>azds --version
Azure Dev Spaces CLI
1.0.20200204.4
API v3.2
Client's version:
Operating System: Windows 10
Additional context
Add any other outputs from the clients or context you would like to share.

@thoaingan, thank you for pointing this out. We'll get the doc updated soon.

@thoaingan thank you for the feedback. The docs have been updated:
https://docs.microsoft.com/en-us/azure/dev-spaces/quickstart-team-development#run-the-sample-application-in-kubernetes
#please-close


Specified tenant is not correct or not stated clearly

In the 2nd section, Configure Azure AD as an identity provider in your tenant,  item #1 states:
"Make sure you're using the directory that contains organizational Azure AD tenant (contoso.com) by clicking the Directory and subscription filter in the top menu and choosing the directory that contains your tenant."
"your tenant' as indicated at the top of the article refers to 'contoso.com'.  So if you choose the directory that contains your tenant, you are in the contoso.com directory.   When in that directory if you select Azure B2C, you cannot select Identity Provider, it is greyed out.  You can only create a new B2C tenant.   You must be in the Azure AD B2C tenant in order to select Identity Provider.
So to be clear, these instructions should read:
"Make sure you're using the directory that contains your  Azure AD B2C tenant (fabrikamb2c.onmicrosoft.com) by clicking the Directory and subscription filter in the top menu and choosing the directory that contains your Azure AD B2C tenant."

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

ID: bac6db2d-bff9-cbcf-d522-966ed17ea27f
Version Independent ID: 91e3eeb7-8602-9e26-21c3-1fa70d03a354
Content: Set up sign-in Azure Active Directory accounts a built-in policy in Azure Active Directory B2C
Content Source: articles/active-directory-b2c/active-directory-b2c-setup-oidc-azure-active-directory.md
Service: active-directory
GitHub Login: @davidmu1
Microsoft Alias: davidmu

@JamesTerHark Thanks for your feedback! We will investigate and update as appropriate.

@JamesTerHark Thank you for your feedback. Yes, the first step under Configure Azure AD as an identity provider in your tenant should be 'Make sure you're using the directory that contains your Azure AD B2C tenant (fabrikamb2c.onmicrosoft.com) by clicking the Directory and subscription filter in the top menu and choosing the directory that contains your tenant.'
@MarileeTurscak-MSFT Thank you for creating the PR.

What was your findings on this?  Was I correct?
From: SaurabhSharma-MSFT<EMAIL_ADDRESS>Sent: Friday, September 28, 2018 12:15 PM
To: MicrosoftDocs/azure-docs<EMAIL_ADDRESS>Cc: James TerHark<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/azure-docs] Specified tenant is not correct or not stated clearly (#15822)
@JamesTerHarkhttps://github.com/JamesTerHark Thanks for your feedback! We will investigate and update as appropriate.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/azure-docs/issues/15822#issuecomment-425504963, or mute the threadhttps://github.com/notifications/unsubscribe-auth/An0om9DyS_yL8QFNAJmDuWzM6ryABhgeks5uflkDgaJpZM4W-3hT.


⚠ ClamAV has degraded performance

In 5843124, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 44 ms

Resolved: ClamAV performance has improved in e943469.


hotstar do not work ,please help

Hi  ,
hotstar do not work now,please help.
D:\work\youtube-dl\youtube_dl>python2 main.py -g -v https://www.hotstar.com/tv/yeh-rishta-kya-kehlata-hai/s-43/kartik-hosts-a-divorce-party/100021
7449
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-g', u'-v', u'https://www.hotstar.com/tv/yeh-rishta-kya-kehlata-hai/s-43/kartik-hosts-a-divorce-party/1000217449']
[debug] Encodings: locale cp936, fs mbcs, out cp936, pref cp936
[debug] youtube-dl version 2018.08.04
[debug] Git HEAD: 24e0cd7
[debug] Python version 2.7.15 (CPython) - Windows-7-6.1.7601-SP1
[debug] exe versions: none
[debug] Proxy map: {}
WARNING: Failed to download m3u8 information: HTTP Error 403: Forbidden
ERROR: No video formats found; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/
update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
File "D:\work\youtube-dl\youtube_dl\YoutubeDL.py", line 792, in extract_info
ie_result = ie.extract(url)
File "D:\work\youtube-dl\youtube_dl\extractor\common.py", line 502, in extract
ie_result = self._real_extract(url)
File "D:\work\youtube-dl\youtube_dl\extractor\hotstar.py", line 102, in _real_extract
self._sort_formats(formats)
File "D:\work\youtube-dl\youtube_dl\extractor\common.py", line 1281, in _sort_formats
raise ExtractorError('No video formats found')
ExtractorError: No video formats found; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

Stop posting duplicates. I've already pointed out this is geo restricted.


Fuzzy query: Problems occurred when I used "_汉字" for fuzzy query

Since a Chinese character takes up three bytes, we cannot only return the index of the first byte of each Chinese character

Made changes according to your suggestions 🙏 @a8m


feat: add option to login via new tab, to prevent cors errors when us…

…ing for localhost developtment

I merged it to main ... in a really wired way.


Add the ability to forward services from different namespaces

Sometimes we need to interact with services in different namespaces for local development.  It'd be nice if kubefwd supports the ability to forward services from different namespaces other than the current one.
This could potentially make kubefwd forward too many services if there isn't a way to selectively forward services from other namespaces.  To remedy that, kubefwd could take a config file that specifies what services should be forwarded.
I wouldn't mind taking stab at implementing this feature if you think it's worthwhile.
Cheers,

Use -n as many times as you like. There is no limit to the number of namespaces you can forward.

ok, got it.  Thanks!