[Bug]: Inability to initiate an audit

What happened?
Hello !
I am unable to launch an audit.
Here are the steps I followed (Test with 2 different versions of PowerShell)
How to reproduce it
Steps to reproduce the behavior:
With
$PsVersionTable

Name                           Value
----                           -----
PSVersion                      5.1.19041.4291
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.19041.4291
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>

or

$PsVersionTable

Name                           Value
----                           -----
PSVersion                      7.4.2
PSEdition                      Core
GitCommitId                    7.4.2
OS                             Microsoft Windows 10.0.19045
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

PS C:\Users\XXX\Downloads\monkey365-main\monkey365-main> pwd
Path
----
C:\Users\XXX\Downloads\monkey365-main\monkey365-main

Command:
PS C:\Users\XXX\Downloads\monkey365-main> Get-ChildItem -Recurse .\monkey365-main\ | Unblock-File
PS C:\Users\XXX\Downloads\monkey365-main\monkey365-main> Import-Module .\Invoke-Monkey365.ps1
PS C:\Users\XXX\Downloads\monkey365-main\monkey365-main> $param = @{
>> Instance = 'Microsoft365';
>>     Analysis = 'ExchangeOnline','Microsoft365','MicrosoftTeams','Purview','SharePointOnline';
>>     PromptBehavior = 'SelectAccount';
>>     TenantID = 'MY-Tenant-ID';
>>     ExportTo = 'HTML';
>> }
PS C:\Users\XXX\Downloads\monkey365-main\monkey365-main> $param = Invoke-Monkey365 @param

New-Object: C:\Users\XXX\Downloads\monkey365-main\monkey365-main\Invoke-Monkey365.ps1:329
Line |
 329 |  … attr_name = New-Object System.Management.Automation.ValidateSetAttrib …
     |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | A constructor was not found. Cannot find an appropriate constructor for type System.Management.Automation.ValidateSetAttribute.
New-O365Object: C:\Users\XXX\Downloads\monkey365-main\monkey365-main\Invoke-Monkey365.ps1:414
Line |
 414 |          New-O365Object
     |          ~~~~~~~~~~~~~~
     | The term 'New-O365Object' is not recognized as a name of a cmdlet, function, script file, or executable program. Check the spelling of the name, or
     | if a path was included, verify that the path is correct and try again.
Write-Information: C:\Users\XXX\Downloads\monkey365-main\monkey365-main\Invoke-Monkey365.ps1:423
Line |
 423 |          Write-Information @msg
     |                            ~~~~
     | Cannot bind parameter 'InformationAction' to the target. Exception setting "InformationAction": "Cannot convert null to type
     | "System.Management.Automation.ActionPreference" due to enumeration values that are not valid. Specify one of the following enumeration values and try
     | again. The possible enumeration values are "SilentlyContinue;Stop;Continue;Inquire;Ignore;Suspend;Break"."
Import-Module: C:\Users\XXX\Downloads\monkey365-main\monkey365-main\Invoke-Monkey365.ps1:425
Line |
 425 |          Import-Module $MSAL -Scope Global -Force -ArgumentList $O365O …
     |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | The specified module '\core/modules/monkeymsal' was not loaded because no valid module file was found in any module directory.
InvalidOperation: C:\Users\XXX\Downloads\monkey365-main\monkey365-main\Invoke-Monkey365.ps1:430
Line |
 430 |          $O365Object.startDate = $starttimer
     |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | The property 'startDate' cannot be found on this object. Verify that the property exists and can be set.
Update-PsObject: C:\Users\XXX\Downloads\monkey365-main\monkey365-main\Invoke-Monkey365.ps1:431
Line |
 431 |          Update-PsObject
     |          ~~~~~~~~~~~~~~~
     | The term 'Update-PsObject' is not recognized as a name of a cmdlet, function, script file, or executable program. Check the spelling of the name, or
     | if a path was included, verify that the path is correct and try again.
Initialize-MonkeyLogger: C:\Users\XXX\Downloads\monkey365-main\monkey365-main\Invoke-Monkey365.ps1:433
Line |
 433 |          Initialize-MonkeyLogger
     |          ~~~~~~~~~~~~~~~~~~~~~~~
     | The term 'Initialize-MonkeyLogger' is not recognized as a name of a cmdlet, function, script file, or executable program. Check the spelling of the
     | name, or if a path was included, verify that the path is correct and try again.
Initialize-AuthenticationParam: C:\Users\XXX\Downloads\monkey365-main\monkey365-main\Invoke-Monkey365.ps1:440
Line |
 440 |          Initialize-AuthenticationParam
     |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | The term 'Initialize-AuthenticationParam' is not recognized as a name of a cmdlet, function, script file, or executable program. Check the spelling
     | of the name, or if a path was included, verify that the path is correct and try again.
Connect-MonkeyCloud: C:\Users\XXX\Downloads\monkey365-main\monkey365-main\Invoke-Monkey365.ps1:442
Line |
 442 |          Connect-MonkeyCloud
     |          ~~~~~~~~~~~~~~~~~~~
     | The term 'Connect-MonkeyCloud' is not recognized as a name of a cmdlet, function, script file, or executable program. Check the spelling of the name,
     | or if a path was included, verify that the path is correct and try again.
InvalidOperation: C:\Users\XXX\Downloads\monkey365-main\monkey365-main\Invoke-Monkey365.ps1:449
Line |
 449 |          if(($O365Object.onlineServices.GetEnumerator() | Where-Object …
     |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | You cannot call a method on a null-valued expression.
Invoke-Monkey365: Cannot bind parameter 'InformationAction' to the target. Exception setting "InformationAction": "Cannot convert null to type "System.Management.Automation.ActionPreference" due to enumeration values that are not valid. Specify one of the following enumeration values and try again. The possible enumeration values are "SilentlyContinue;Stop;Continue;Inquire;Ignore;Suspend;Break"."

Test with this:
PS C:\Users\XXX\Downloads\monkey365-main\monkey365-main> $param = @{
>>     Instance = 'Microsoft365';
>>     Analysis = 'SharePointOnline';
>>     PromptBehavior = 'SelectAccount';
>>     IncludeEntraID = $true;
>>     ExportTo = 'PRINT';
>> }
PS C:\Users\XXX\Downloads\monkey365-main\monkey365-main>     Instance = 'Microsoft365';
Instance: The term 'Instance' is not recognized as a name of a cmdlet, function, script file, or executable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
PS C:\Users\XXX\Downloads\monkey365-main\monkey365-main>     Analysis = 'SharePointOnline';
Analysis: The term 'Analysis' is not recognized as a name of a cmdlet, function, script file, or executable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
PS C:\Users\XXX\Downloads\monkey365-main\monkey365-main>     PromptBehavior = 'SelectAccount';
PromptBehavior: The term 'PromptBehavior' is not recognized as a name of a cmdlet, function, script file, or executable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
PS C:\Users\XXX\Downloads\monkey365-main\monkey365-main>     IncludeEntraID = $true;
IncludeEntraID: The term 'IncludeEntraID' is not recognized as a name of a cmdlet, function, script file, or executable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
PS C:\Users\XXX\Downloads\monkey365-main\monkey365-main>     ExportTo = 'PRINT';
ExportTo: The term 'ExportTo' is not recognized as a name of a cmdlet, function, script file, or executable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
PS C:\Users\XXX\Downloads\monkey365-main\monkey365-main> }

From where are you running Monkey365?
Please, complete the following information:

Resource: workstation)
OS: Windows 10
PowerShell Version 7.4.2 and 5.1:
Monkey365 Version: Latest stable version

Hi,
It works !
Thank you for your reply :)


Random error on disconnect

Sometimes when server(router) is quickly going up/down (testing flapping connection), this Exception raises on the client, I guess the session isn't ready when disconnect happens:
Traceback (most recent call last):
File "python3.4/site-packages/autobahn/wamp/websocket.py", line 75, in onClose
self._session.onClose(wasClean)
AttributeError: 'WampWebSocketClientProtocol' object has no attribute '_session'

I haven't repeated this, but looking at the code I don't believe it's possible any longer...


[Service Bus] Rename ServiceBusManagementClient to ServiceBusAdministrationClient

This PR renames ServiceBusManagementClient to ServiceBusAdministrationClient as per #11012

/azp run js - servicebus - tests


VS Mode Crash

Using these settings:

We should maybe just block single player VS races without CPUs.

Agree. Though does the current settings system allow for that? Or is that something I'll have to figure out eventually?

We could have a dedicated check.


docs(input): convert age to string before setting to match initial type

Hi React team,
Thanks for the great doc!
I noticed in the following file that the initial state of the age is set as a string:
https://github.com/reactjs/react.dev/blob/4c91abc78b20be10e7d40cf57a80a6a6247e6e9a/src/content/reference/react-dom/components/input.md?plain=1#L351
https://github.com/reactjs/react.dev/blob/4c91abc78b20be10e7d40cf57a80a6a6247e6e9a/src/content/reference/react-dom/components/input.md?plain=1#L376
Given this, I believe converting the age back to a string would be more consistent before setting it with setAge. This would maintain type consistency throughout the component.
Thank you!

Kinda the point of this is that they don't have to be the same type. That's why it does:
const ageAsNumber = Number(age);


Holders tab changes

we are changing it a bit so its bit useful and not confusing

new category:

longest hold
holding for on the detail of the nfts

updated in figma: collection detail handoff: https://www.figma.com/file/7BWdGiowrvTucpSFLE0kRX/Collection-detail-handoff?node-id=0%3A1&t=eGXVPezmA8IFsHk7-1

👋

anyone? 👀

hehe og issue, thanks for grabbing this one


Multi-Node Training No progress on Azure

System Info
accelerate_Version: 0.12.0,
OS: Ubuntu18.04,
python version:3.8
torch version: 1.11.0
accelerate config: Root node(0) - {
  "compute_environment": "LOCAL_MACHINE",
  "deepspeed_config": {},
  "distributed_type": "MULTI_GPU",
  "downcast_bf16": false,
  "fsdp_config": {},
  "machine_rank": 0,
  "main_process_ip": "<IP_ADDRESS>",
  "main_process_port": 46585,
  "main_training_function": "main",
  "mixed_precision": "no",
  "num_machines": 2,
  "num_processes": 4,
  "rdzv_backend": "static",
  "use_cpu": false
}
Node 1:{
  "compute_environment": "LOCAL_MACHINE",
  "deepspeed_config": {},
  "distributed_type": "MULTI_GPU",
  "downcast_bf16": false,
  "fsdp_config": {},
  "machine_rank": 1,
  "main_process_ip": "<IP_ADDRESS>",
  "main_process_port": 51731,
  "main_training_function": "main",
  "mixed_precision": "no",
  "num_machines": 2,
  "num_processes": 4,
  "rdzv_backend": "static",
  "use_cpu": false
}

Information

[ ] The official example scripts
[X] My own modified scripts

Tasks

[ ] One of the scripts in the examples/ folder of Accelerate or an officially supported no_trainer script in the examples folder of the transformers repo (such as run_no_trainer_glue.py)
[ ] My own task or dataset (give details below)

Reproduction
Use  two azure VMs for multi-node training
Expected behavior
The expected behaviour was that both machine start training and either communticate with each to sync or provide an error if that fails but the training did not proceed on either of the nodes. Tried using NCC_DEBUG=INFO to check for network issues but did not get any prompts. Not sure what I could be missing here as I followed the items mentioned in previous issues which were closed for multi-node such as https://github.com/huggingface/accelerate/issues/609 and https://github.com/huggingface/accelerate/issues/412

Hello @vishalghor, please have the same port for both the nodes and try it out using latest accelerate main branch.  Let us know if you still have this issue.

Hi @pacman100 , thank you . I tried your suggestion with the latest accelerate version=0.13.0 and by setting the main_process_port = 'xxxx' same for both the nodes but still it seems the training doesnt move ahead. Is there a way to get more information on why it is hanging or not moving ahead?

@pacman100 for debugging I also tried with the example scripts and I see the same thing. The training doesn't start and it exits without any error message after some time.

Hello @vishalghor , can you share the updated accelerate config? Also, prepend NCCL_DEBUG=INFO to the launch command to get logs on the NCCL issues you might be facing.

Hi @pacman100 ,
Below are the configs after setting the same port number:
Master Node(0):{
"compute_environment": "LOCAL_MACHINE",
"deepspeed_config": {},
"distributed_type": "MULTI_GPU",
"downcast_bf16": false,
"fsdp_config": {},
"machine_rank": 0,
"main_process_ip": "<IP_ADDRESS>",
"main_process_port": 8892,
"main_training_function": "main",
"mixed_precision": "no",
"num_machines": 2,
"num_processes": 4,
"rdzv_backend": "static",
"use_cpu": false
}
Slave Node(1):{
"compute_environment": "LOCAL_MACHINE",
"deepspeed_config": {},
"distributed_type": "MULTI_GPU",
"downcast_bf16": false,
"fsdp_config": {},
"machine_rank": 1,
"main_process_ip": "<IP_ADDRESS>",
"main_process_port": 8892,
"main_training_function": "main",
"mixed_precision": "no",
"num_machines": 2,
"num_processes": 4,
"rdzv_backend": "static",
"use_cpu": false
}
These were the configs when I executed the cv_example.py or nlp_example.py from accelerate repo. I used the NCCL_DEBUG flag but there were not logs or prints from it.

Hello @vishalghor, I think you are not using the accelerate from the main branch because it isn't having same_network param. Can you install accelerate from source like this pip install git+https://github.com/huggingface/accelerate  and try it out with same_network being no as shown below:
- `Accelerate` version: 0.13.0.dev0
- Platform: Linux-5.4.0-122-generic-x86_64-with-glibc2.29
- Python version: 3.8.10
- Numpy version: 1.23.2
- PyTorch version (GPU?): 1.12.1+cu116 (True)
- `Accelerate` default config:
        - compute_environment: LOCAL_MACHINE
        - distributed_type: MULTI_GPU
        - mixed_precision: no
        - use_cpu: False
        - num_processes: 4
        - machine_rank: 0
        - num_machines: 2
        - main_process_ip: <IP_ADDRESS>
        - main_process_port: 29500
        - rdzv_backend: static
        - same_network: False
        - main_training_function: main
        - deepspeed_config: {}
        - fsdp_config: {}
        - downcast_bf16: no

Hi @pacman100 , thank you for pointing that out.
I did install the latest accelerate, here is a pip show accelerate:
(venv_training) azureuser@lbue-mlspr-vm-prefect:~/accelerate/examples$ pip show accelerate
Name: accelerate
Version: 0.13.0.dev0
Summary: Accelerate
Home-page: https://github.com/huggingface/accelerate
Author: The HuggingFace team
Author-email<EMAIL_ADDRESS>License: Apache
Location: /home/azureuser/venv_training/lib/python3.8/site-packages
Requires: numpy, packaging, psutil, pyyaml, rich, torch
Required-by: upscalers-pytorch
I think the same_network flag could be the reason as by default it is True. But while doing accelerate config I didnt get the option select the same_network field. I tried manually adding the parameter to the config but threw an error as below:
╭─────────────────────────────── Traceback (most recent call last) ────────────────────────────────╮ │ /home/azureuser/venv_training/bin/accelerate:8 in <module>                                       │ │                                                                                │ │   5 from accelerate.commands.accelerate_cli import main                                          │ │   6 if __name__ == '__main__':                                                                   │ │   7 │   sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])                         │ │ ❱ 8 │   sys.exit(main())                                                                         │ │   9                                                                                │ │                                                                                │ │ /home/azureuser/venv_training/lib/python3.8/site-packages/accelerate/commands/accelerate_cli.py: │ │ 43 in main                                                                                │ │                                                                                │ │   40 │   │   exit(1)                                                                             │ │   41 │                                                                                │ │   42 │   # Run                                                                                │ │ ❱ 43 │   args.func(args)                                                                         │ │   44                                                                                │ │   45                                                                                │ │   46 if __name__ == "__main__":                                                                  │ │                                                                                │ │ /home/azureuser/venv_training/lib/python3.8/site-packages/accelerate/commands/launch.py:762 in   │ │ launch_command                                                                                │ │                                                                                │ │   759 │   warned = []                                                                            │ │   760 │   # Get the default from the config file.                                                │ │   761 │   if args.config_file is not None or os.path.isfile(default_config_file) and not args.   │ │ ❱ 762 │   │   defaults = load_config_from_file(args.config_file)                                 │ │   763 │   │   if (                                                                               │ │   764 │   │   │   not args.multi_gpu                                                             │ │   765 │   │   │   and not args.tpu                                                               │ │                                                                                │ │ /home/azureuser/venv_training/lib/python3.8/site-packages/accelerate/commands/config/config_args │ │ .py:64 in load_config_from_file                                                                  │ │                                                                                │ │    61 │   │   │   │   config_class = ClusterConfig                                               │ │    62 │   │   │   else:                                                                          │ │    63 │   │   │   │   config_class = SageMakerConfig                                             │ │ ❱  64 │   │   │   return config_class.from_yaml_file(yaml_file=config_file)                      │ │    65                                                                                │ │    66                                                                                │ │    67 @dataclass                                                                                │ │                                                                                │ │ /home/azureuser/venv_training/lib/python3.8/site-packages/accelerate/commands/config/config_args │ │ .py:117 in from_yaml_file                                                                        │ │                                                                                │ │   114 │   │   if "use_cpu" not in config_dict:                                                   │ │   115 │   │   │   config_dict["use_cpu"] = False                                                 │ │   116 │   │                                                                                │ │ ❱ 117 │   │   return cls(**config_dict)                                                          │ │   118 │                                                                                │ │   119 │   def to_yaml_file(self, yaml_file):                                                     │ │   120 │   │   with open(yaml_file, "w", encoding="utf-8") as f:                                  │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────╯ TypeError: __init__() got an unexpected keyword argument 'same_network'
I'm not sure what could be the probable reason for it. As per the code I see that the option to select same_network should have come after it asks the port number

Hello @pacman100 , I fixed the version and same_network param issue. It was due to my virtualenv. 😅
But setting the same_network didn't help in running the example scripts in accelerate. Below are the configs:
Node 0:  compute_environment: LOCAL_MACHINE
deepspeed_config: {}
distributed_type: MULTI_GPU
downcast_bf16: 'no'
fsdp_config: {}
machine_rank: 0
main_process_ip: <IP_ADDRESS>
main_process_port: 4252
main_training_function: main
mixed_precision: 'no'
num_machines: 2
num_processes: 4
rdzv_backend: static
same_network: false
use_cpu: false
Node 1: compute_environment: LOCAL_MACHINE
deepspeed_config: {}
distributed_type: MULTI_GPU
downcast_bf16: 'no'
fsdp_config: {}
machine_rank: 1
main_process_ip: <IP_ADDRESS>
main_process_port: 4252
main_training_function: main
mixed_precision: 'no'
num_machines: 2
num_processes: 4
rdzv_backend: static
same_network: false
use_cpu: false
I'm using the NCCL_DEBUG flag but it doesn't print any message to understand what could be the root issue.

Hello @vishalghor, maybe go through the discussions on issue #609 and #412 and see if that helps. Are you able to ssh from one node to another?

Hello @pacman100 , thank you for the information. I'm able to ssh from one VM to another. I added the ip address for the VMs to connect to in the file /etc/hosts as below :
<IP_ADDRESS> localhost
<IP_ADDRESS> azure_3

# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
~

I'm not sure if this is the correct way or I should modify any other file or create a hostfile. But if I ssh as : ssh azure_3 , I'm able to connect to the other VM without any issue. To avoid auth chekcing  I disabled it from the /etc/ssh/ssh_config file.
As mentioned in the #609 I tried NCCL_IB_GID_INDEX=3 NCCL_DEBUG=INFO accelerate launch script.py but it didn't print any message. Below is a snapshot of what happens after I execute the command.

Thanks for the clear feedback @vishalghor, I'll be looking into it this week

Thanks @muellerzr . Looking forward to your feedback over it. :)

Labeling this as "feature request" for now since after some 1:1 debugging it seems to be related with the Azure platform, and we don't have access to Azure machines with GPUs (yet) to test this out. But we'll get them soon

@muellerzr  I am facing similar issue on slurm. The python script does not run with accelerate launch. No errors. Just
The following values were not passed to `accelerate launch` and had defaults used instead:
	`--mixed_precision` was set to a value of `'no'`
To avoid this warning pass in values for each of the problematic parameters or run `accelerate config`.

and then nothing.
I can directly run the python script_name.py, but then I want to use multi nodes.
I installed accelerate from latest main branch. Version: 0.14.0.dev0


Update faqs.md CDS

Thanks for contributing to the Harness Developer Hub! Our code owners will review your submission.
Description

Please describe your changes: Adding CD FAQs
Jira/GitHub Issue numbers (if any): ______________________________
Preview links/images (Internal contributors only): __________________

PR lifecycle
We aim to merge PRs within one week or less, but delays happen sometimes.
If your PR is open longer than two weeks without any human activity, please tag a code owner in a comment.
PRs must meet these requirements to be merged:

[ ] Successful preview build.
[ ] Code owner review.
[ ] No merge conflicts.
[ ] Release notes/new features docs: Feature/version released to at least one prod environment.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Hello, @jmoon-harness the build is failing. Please take a look and fix it!

@SushrutHarness can you help patch this please?

Hi @jmoon-harness we are no longer accepting FAQs to our KB. Please add them to relevant sections in documentation. For example, an FAQ about approval step might be here: https://developer.harness.io/docs/continuous-delivery/x-platform-cd-features/cd-steps/cd-steps-faqs
Thanks!


[WIP] Doc of the demo

Coverage remained the same at 98.251% when pulling a02ef81e1eb476341fb09966396c54b881614645 on aljesusg:demo into 8cbfae0a5ee9f7e6d1674b3da96bb876a744ae96 on miq-consumption:master.

Coverage remained the same at 98.251% when pulling 5f81cf2656daafd83aeae02d11f4c75fd276ed3a on aljesusg:demo into 6628ffa5bc883c98b702afb2ae611ed66fbf9d37 on miq-consumption:master.


identified memory leaks.

using strong self in completion handler making labels and AVFoundation object retained.

Hello,
Thank you for your PR suggestion!
Your commit doesn't build, since when using [weak self], you need to us self? instead of self.
Also, I don't see what memory leaks it actually solves. Note that we are aware that when using the component, there are a few memory leaks that come from AudioToolBoox and Speech libraries, but these are Apple Frameworks, and it seems a bug from their side (check this and this. Let me know if that makes sense!
If you have a screenshot of the memory leak stack trace, please do include it in here.

Hi, I have updated the PR with your pointed issues, also I just tested the stuff and checked the links provided by you seems like memory leaks are in apple framework.
But I think its better to use [weak self] in completion handlers.
Also updated the PR description.

Hey @rahimkhalid ,
Sorry for the late reply and thanks again for your suggestion. After checking out the changes, and running instruments on Xcode to double check memory leaks, we see that they don't solve the intended problem. Doing weak self in this case is not necessary as there are no strong reference cycles. The few memory leaks that are occurring are due to Apple's framework and we can't control that.
Thanks again for the PR!


Remove unused haystack URLConf

Squashed "Remove unused haystack URLConf" into "Replace Elasticmodels with Haystack" on haystack branch.


Include Renren, kaixin OAuth 2.0 and SinaWeibo OAuth 2.0 support

Hi, I just add RenrenApi and update Kaixin and SinaWeibo to OAuth 2.0 version.
BTW, it turns out that TokenExtractor20Impl cannot work correctly due to the access token regex. So i use JsonTokenExtractor instead when this happened. And the only difference between the two is the access token regex.
So is there any plan to merge or refactor?

This should be Closed?


add /xban_cleanup command to compact db / purge unbanned entries

may fix #19

i may have forgotten to document the new command though...


Artifactory Conan Task: Conan 2.0 not supported

Describe the bug
The 'Artifactory Conan' Task from the Jfrog extension does not support conan 2.0
Pipeline:
  - task: ArtifactoryConan@1
    inputs:
      conanCommand: 'Add Remote'
      remoteName: 'example'
      artifactoryService: 'Example Artifactory Cloud'
      conanRepo: 'example'
      purgeExistingRemotes: true
    displayName: 'Add Artifactory Remote'

Run:
conan remote: error: unrecognized arguments: --insert
Starting: Add Artifactory Remote
==============================================================================
Task         : Artifactory Conan
Description  : This task runs a Conan command.
Version      : 1.13.6
Author       : JFrog
Help         : [More Information](https://www.jfrog.com/confluence/display/JFROG/Artifactory+Azure+DevOps+Extension#ArtifactoryAzureDevOpsExtension-TriggeringConanBuilds)
==============================================================================
Running Conan build tool from: C:\hostedtoolcache\windows\Python\3.9.13\x64\Scripts\conan.exe
Conan User Home: D:\a\1/conancache
Purging Conan remotes by removing content of D:\a\1\conancache\.conan\registry.txt
Running Conan build tool from: C:\hostedtoolcache\windows\Python\3.9.13\x64\Scripts\conan.exe
Conan User Home: D:\a\1/conancache
Running Conan command at: D:\a\1\s
C:\hostedtoolcache\windows\Python\3.9.13\x64\Scripts\conan.exe remote add example https://example.jfrog.io/artifactory/api/conan/example --insert --force
usage: conan remote [-h] [-v [V]] [--logger]
                    {add,auth,disable,enable,list,list-users,login,logout,remove,rename,set-user,update}
                    ...
conan remote: error: unrecognized arguments: --insert
ERROR: Exiting with code: 2
Failed to execute Conan Task: Conan command returned bad exit code: 2
##[error]Conan Task failed.
Finishing: Add Artifactory Remote

Current behavior
Task fails
Reproduction steps
See description above
Expected behavior
Do not specify --insert, as it is not supported with conan 2.0
Azure DevOps extension name and version
JFrog.jfrog-artifactory-vsts-extension  1.13.6
We've switched to the JFrog.jfrog-azure-devops-extension extension 2.3.0, there the issue is the same.
JFrog CLI version
??
Operating system type and version
Ubuntu 22.04
JFrog Artifactory version (if relevant)
No response
JFrog Xray version (if relevant)
No response
JFrog Distribution version (if relevant)
No response

This would be nice to have as Conan V2 introduces many breaking changes.
Our development teams still use V1, but I can imagine that some forerunners will start to migrate soon.

Any updates on this? This is really a blocking issue for us @yahavi

#434


referent/cred_id generation in Bifold

How to hit this particular function in bifold. Because of this I am not able to generate any cred_id or referent which is required for verification..

I guess this is more related to Bifold, so I suggest you to open an issue there. If I'm wrong please feel free to reopen it!


Allow uploads with CURLStringFile type

See issue #760

Merged in https://github.com/php-curl-class/php-curl-class/commit/4f0c563026572c6238e874a185b0340b8d8ce08c. Thanks!


opensync: Major refactoring/bug fixes for client events

Removed unwanted nested client event structures.
Doing this not only reduced complexity in the code but also helped get
rid of multple memory leaks and crashes in SM and datapipeline.
Simplified ubus invoke calls. Nested ubus invokes were resulting in some
data loss in callbacks
Fixed incorrect conversion of session_id data type. This was blocking
clearing of sessions.
Got rid of unnecessary strdups/mallocs. Potential memory leaks.
Fixed missing conversion of frequency to band
Removed unwanted logging which was filling the syslog buffer.
Resolved a race occuring on the shared list between ubus_collector and SM.
Relevant changes in datapipeline/protobuf to support the modified interface.

Signed-off-by: Yashvardhan<EMAIL_ADDRESS>

Sorry for the big patch. This sort of refactoring was required to get rid of the multiple issues seen in the client events code across different layers.


automated release

Automates lambda release - no need for manual steps anymore.
The only thing that has not been tested is actual git push. Perhaps it will be necessary to use https://github.com/marketplace/actions/push-to-master or similar.

The only thing that has not been tested is actual git push. Perhaps it will be necessary to use https://github.com/marketplace/actions/push-to-master or similar.

You can test it on a fork 😉

The only thing that has not been tested is actual git push. Perhaps it will be necessary to use https://github.com/marketplace/actions/push-to-master or similar.

You can test it on a fork 😉

Sometimes the easiest solutions are the hardest to spot :D Thanks for the suggestion.

Implemented in https://github.com/signalfx/splunk-otel-java-lambda/pull/44


FreeBSD compatibility

Hi guys,
Would it be on your interest to have BSD compatibility added to the framework?
If it's of interest to you, I will work on making it compatible with both BSD and Linux and send a PR.
I already have it BSD-only in my fork, so I figured it wouldn't be too much work to get both.

Ah, I see on #26 that a PR is welcome :)
I'll see if I can get back with a PR still this week.

Connecting the PR: #49


What is LCD here?

What is LCD in this context? Please point to repository
I was looking for some thegraph graph_node Ethereum analogue for terra, i.e.
for storing blockchain data into SQL for quicker access
https://github.com/graphprotocol/graph-node/blob/master/docs/images/TheGraph_DataFlowDiagram.png
However I understand, things may be different in Terra world.

From https://github.com/terra-money/core#terracli

rest-server Start LCD (light-client daemon), a local REST server

yes, you are right.q


azure function timeout -> indexer fails

scenario:
after running the index command, the indexer fails in cognitive search web portal
citing azure function timeout (i.e. request to custom skillset took longer than some time)
proposed solution:

on the indexer side

increase timeout in indexer schema (to what extent?!)
or limit the number of documents passed in a single request

on the azure function side

set a timeout on each request, and return a valid 'failed' response

what are the limits of the azure function? is it related to the size/number of documents or this is a transit issue,
if it is related to the size/number of documents you can limit the batch size and run several batches to complete a document set
if it is a transit issue, you could repeat te azure function three times and then declare failure for this set of docs

there will always be a transit that would be beyond the timeout, so that is not a solution. You could do a timeout that is relative to the batch size, but you need to identify the response time relative to the number/size of the documents (you could try a few different sizes with increments to understand how it behaves),
if you are getting this error, the user should be able to send the batch to the service again, and it should be expressed in that light


Inconsistent BAvatar Size Prop

Describe the bug
In the documentation for BAvatar's sizing (https://bootstrap-vue-next.github.io/bootstrap-vue-next/docs/components/avatar.html#sizing), various usages of the size prop are shown. However, they are inconsistent when rendered.

Reproduction
https://stackblitz.com/~/edit/github-wapqys?file=src%2Fcomponents%2FComp.vue%2Csrc%2FApp.vue
Used Package Manager
pnpm
Validations

[X] Have tested with the latest version. This is still alpha version and sometime things change rapidly.
[X] Follow our Code of Conduct
[X] Read the Contributing Guide.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A, please open a GitHub Discussion instead.
[X] The provided reproduction is a minimal reproducible of the bug.

@VividLemon can be closed with #1760


gRPC Core API to create Xds channel credentials

Mostly just the type - not fleshed out since security connector would depend on pending tls connector changes.

This change is

@markdroth Looks like VisualStudio does not like
static constexpr char[].
This seems to be a known bug.

Artfact build macos - #19898
Thanks for reviewing!


Add MakoLab issuers implementation

At the moment, there is a configuration issue on our end in the controller document, so I am creating this pull request just to ensure that the implementation specification is correct.
As soon as the controller document and verification method resolvers are working correctly at our endpoint, I will change this draft to a regular pull request.

@sdml you might want to add the vc2.0 tag if you want to also run the vcdm test suite

Issuer endpoints are now published. I change this PR as Ready for review.


Feature request : commands to display mattermost users

Which version of matterbridge are you using?
v0.9.1-dev on Mattermost v3.5.1
Please describe the expected behavior.
Would it be possible to run !users on all protocols and displays as a result the currently users on mattermost side ?
If there are several protocols it should displays all users from all bridged protocol except the protocol where the command is run.
And even in the current feature on mattermost side, it should be interesting to split users by status : only / sleep mode ...

More broadly, this feature would be useful from/to all protocols. A simple command (sent as a DM/PM to the bot for instance) that would provide a list of users.
Use case: IRC (inout) ↔ XMPP MUC (inout) bridge. From an IRC channel, being able to get a list of users on a XMPP MUC. From an XMPP MUC, being able to get a list of users on an IRC channel.

@guakamole  Yes indeed, unfortunately it isn't that simple to implement. (needs some redesign)
This will be added to the matterbridge api first and then also added as commands to the bot.

I'm wiling to help but have little experience with Go (willing to learn as well).
Is there anything that could be done to help you (maybe minor tasks that you are wasting time on that could be delegated)?

@guakamole depending on what exactly you want to do, but non-coding stuff is also very much appreciated.
Like trying to improve the documentation or the wiki, maybe things you experienced that wasn't so simple and could be explained better.
Also be free to answer on other open issues if you think you can solve them or if they haven't given enough information.
Or coming up with new features :)

Going to close this in favor of the generic proposal #361


Roll engine ca31a7c57bad..bd8c5b135e4d (12 commits)

https://github.com/flutter/engine/compare/ca31a7c57bad...bd8c5b135e4d
git log ca31a7c57bada458fa7f5c0d3f36bc1af4ccbc79..bd8c5b135e4d41842d0d5d42ff4943a18b8f4f0c --no-merges --oneline
bd8c5b135 Only allow mappings for ICU initialization. (flutter/engine#8656)
206cab6e7 Roll src/third_party/skia cc5d3e09e394..1c0b05afdef8 (14 commits) (flutter/engine#8654)
1fe327914 Cleanup references to FLX archives from the engine. (flutter/engine#8653)
6257dfeb5 Add factory methods to FileMapping that make it easy to create common mappings. (flutter/engine#8652)
5fed72520 Roll buildroot to 380d0ed5c3399d5a2aaac4a66d98e3a3fda77c31 (flutter/engine#8649)
eaa0e9c70 Roll src/third_party/skia e5763787f920..cc5d3e09e394 (3 commits) (flutter/engine#8651)
7e37080ec Allow specifying the Mac SDK path as an environment variable to //flutter/tools/gn (flutter/engine#8643)
30c23e604 Roll src/third_party/skia e8a33ec6d084..e5763787f920 (1 commits) (flutter/engine#8650)
8f0af31ec Roll src/third_party/skia 8cdae55bf1ac..e8a33ec6d084 (3 commits) (flutter/engine#8648)
25c33dc9d Roll src/third_party/skia 9b67802a4cd0..8cdae55bf1ac (1 commits) (flutter/engine#8647)
1e5f59d4f Reland "Remove DartSnapshotBuffer and dry up snapshot resolution logic". (flutter/engine#8645)
4ead9c8f9 Remove unused Settings::ToString. (flutter/engine#8642)
The AutoRoll server is located here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff (cbracken@google.com), and stop
the roller if necessary.

Trybots failed. These were the failed builds: https://cirrus-ci.com/task/4704667236827136

Commit queue failed; closing this roll.


Element.current_target() always points to the HtmlBodyElement

web-sys 0.3.56
rustc 1.59.0
chrome Version 100.0.4896.60 (Official Build) (64-bit)
Ubuntu 20.04
I spent a long time going around in circles trying to get a handle for the html element I'm interacting with so that I can do some further processing. After a lot of print-debugging, I realised that whenever an event is received, current_target() appears to point to the HtmlBodyElement.
I would expect it to return a handle to the parent element from which the event was fired.
Here is a minimal yew app:
use yew::prelude::*;

#[function_component(App)]
pub fn app() -> Html {
    let oninput = {
        Callback::from(|e: InputEvent| {
            log::info!("{:?}", e.current_target()); // Some(EventTarget { obj: Object { obj: JsValue(HTMLBodyElement) } })
            log::info!("{:?}", e.target()); // Some(EventTarget { obj: Object { obj: JsValue(HTMLInputElement) } })
        })
    };

    html! {
        <input {oninput} />
    }
}

fn main() {
    wasm_logger::init(wasm_logger::Config::default());
    yew::start_app::<App>();
}

Here is the Cargo.toml:
[package]
name = "yew-testing"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
log = "0.4"
wasm-logger = "0.2"
web-sys = "0.3.56"
yew = "0.19"

In the app I'm developing, I noticed this behaviour on an <svg> element, to which I had added a click handler (i.e. a MouseEvent). The <svg> element has several <path> element children. Element.target() correctly gives me either the <svg> or the <path> elements, but I specifically always want the <svg> element, which is what I would expect current_target() to do.

Just stumbling over this issue, as a maintainer of yew. This is not a bug in wasm_bindgen, but a problem with the way event handling works in yew. For each event type, there is one event handler attached to the element yew is mounted on, not on the element itself. This causes current_target to point to the root element (the <body> in this case). wasm_bindgen is acting correctly, as far as I can see, I'd encourage you to open a bug at yewstack/yew to improve the documentation of this behaviour and to discuss work-arounds.

Thanks for the quick reply, I'll take it over to they guys at yew.


namespaces problem on IOS

@naderio
I'm using the plugin nativescript-socket.io which uses:
socket.io-client-swift version 11.0
pod 'Socket.IO-Client-Swift', '~> 11.0'
and I can not work with namespaces. However, you can work with namespaces about:
socket.io-client-swift version 12.1.1 onwards ...
Could you do something about it?

@juanitozambada this plugin iOS supports namespace .. unless it doesn't  anymore.
const socketio = SocketIO.connect('http://somewhere/namespace', options);

anyhow, socket.io-client-swift v12+ seems to break this plugin (see issue  #31) so won't be upgraded unless iOS implementation is rechecked.
would you kindly run the demo on iOS? if so make sure to use the right ip address instead of <IP_ADDRESS>

@juanitozambada did you manage to have namespace working?


💭  Commands passed to ast-create-node are very confusing, it should be based on the file-structure

Hi Rome team,
Was going through the Contribution doc and came across the ast-create-node section and the commands passed down to the script are very confusing and are not based on the file structure of the ast folder.
Rather than ./rome run scripts/ast-create-node [language] [nodeType] [category]
This might be better: ./rome run scripts/ast-create-node [language] [category] [nodeType]
In terms of file structure, it would be like ast/js(language)/typescript(category)/JSArrayType(nodeType)
I believe the proposed command reorg would work really well with how the file is being generated.
What does the Rome team think?

Sure, want to submit a PR? Those have grown organically, and there aren't any strong technical decisions or opinions behind any of the scripts.
Previously we never had separate language namespaces, we just had a category. When we added support for multiple languages I just renamed the category argument to language and added another category argument at the end.
Another approach is to just have a single argument that's / delimetered like:
scripts/ast-create-node ts/whatever/SomeNode

And we would just split and validate it. I believe we already do this for the delete ast script.

Sure, want to submit a PR?`.

Absolutely mate.
And I do like your approach on the arguments being delimited by / and form one command, just like the way lint-create-rule command works.
Will look into the delete ast script and of course, the lint-create-rule before writing my implementation.
Cheers

Btw, I was already half way through the reimplementation of the aforementioned opened issue and found a bug on the current implementation of ast-create-node command.
The condition in question: https://github.com/romefrontend/rome/blob/4000dec37b06854b16e113a9c756905339c04c16/scripts/ast-create-node.ts#L25-L30
It looks like it's checking if the filename has a prefix of the language name and if not, you're given this error:

It requires TSWow.ts to have a JS prefix, which doesn't make sense since I'm creating a TS prefixed file.
A solution could be that we would create exceptions for some categories such as jsx and typescript to not be prefixed language or we could simply remove this condition, what do you all think @sebmck?

Btw, I was already half way through the reimplementation of the aforementioned opened issue and found a bug on the current implementation of ast-create-node command.
The condition in question:
https://github.com/romefrontend/rome/blob/4000dec37b06854b16e113a9c756905339c04c16/scripts/ast-create-node.ts#L25-L30
It looks like it's checking if the filename has a prefix of the language name and if not, you're given this error:

It requires TSWow.ts to have a JS prefix, which doesn't make sense since I'm creating a TS prefixed file.
A solution could be that we would create exceptions for some categories such as jsx and typescript to not be prefixed language or we could simply remove this condition, what do you all think @sebmck?

So I went ahead and added a whitelistedPrefix array and added TS(for now), so that we can have different prefixes other than the main language which in this case was js and our prefix was TSSomeFile.ts.


add editorconfig, closes #1129

[x] Have you followed the guidelines in our Contributing document?
[ ] [v2] Have you created a JIRA and used it in the commit message?
[x] [v4] Have you created a GitHub Issue and used it in the commit message?
[x] Have you checked to ensure there aren't other open Pull Requests for the same issue?
[x] Have you built the project locally prior to submission with mvn clean install?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

@Ladicek okay to merge?


[Bug]: Dynamic Block does not call the on_timer function

Is there an existing issue for this?

[X] I have searched for similar issues and discussions

Bug Description
1. I downloaded datapane and all the relevant dependencies
2. I copy and pasted the code from this example: https://github.com/datapane/examples/blob/main/apps/stock-dashboard/app.py
3. I ran the app
4. The screen was blank
5. Nothing happened even after data was refreshed

I fought with this issue for about an hour. It comes down to the on_timer function in the Dynamic block not being called, or at least I suppose that's the problem.

System Information
- Datapane version:0.16.2
- Python version: 3.10.10
- Operating System:Linux Manjaro
- Using Jupyter: No
- Pip or Conda: Pip
- Dependencies:

Anything else?
Example tested: https://github.com/datapane/examples/blob/main/apps/stock-dashboard/app.py

Ok, so after looking through some code, I found that the version of the library I downloaded with pip is not the up-to-date version, as it is missing the changes made 2 weeks ago in this commit

Hi @aniteicristi,
Sorry yes the fix was pushed to master but hasn't been released to pip yet - we will put out release onto pypi early next week.
In the meantime, there is a dev wheel of the library automatically built using the latest version on master that you can try using the following,
$ pip3 install https://datapane-cdn.com/python-client/dev/datapane--py3-none-any.whl

Hope that helps in the meantime!

Thank you for the fast reply and the help! I'm looking forward to use datapane in my bachelor's degree license project!
Cheers!

Great - let us know if you have any other issues!
Closing for now - will do a pypi release next week.


TypeError on chrome

Challenge Record Collection has an issue.
User Agent is: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:

// Setup
var collection = {
    "2548": {
      "album": "Slippery When Wet",
      "artist": "Bon Jovi",
      "tracks": [
        "Let It Rock",
        "You Give Love a Bad Name"
      ]
    },
    "2468": {
      "album": "1999",
      "artist": "Prince",
      "tracks": [
        "1999",
        "Little Red Corvette"
      ]
    },
    "1245": {
      "artist": "Robert Palmer",
      "tracks": [ ]
    },
    "5439": {
      "album": "ABBA Gold"
    }
};
// Keep a copy of the collection for tests
var collectionCopy = JSON.parse(JSON.stringify(collection));

// Only change code below this line
function updateRecords(id, prop, value) {
  if (prop!=="tracks" && value!==""){
    collection[id][prop]=value;
  }
  else if (prop=="tracks" && value!==""){
    if (collection[id].hasOwnProperty(prop)){
      collection[id][prop].push(value);
    }
    else{
      collection[id][prop] = [];
      collection[id][prop].push(value);
    }
  }
  else if (value===""){
    delete collection[id][prop];
  }
  return collection;

}

// Alter values below to test your code
updateRecords(2549, "tracks","");

Interesting, it works for me.
User agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
Try refreshing the page. Usually that fixes any errors for me.

@Halfcreative the issue is with a typo in your function call. You are calling the function on 2549 which does not exist in the collection. To replicate the test, it should be 2548. Change this and the code will pass. Also, consider asking for help in the HelpJavascript chat room if you run into similar things in the future. Hard to catch this one though :)
Closing as resolved.


Add files for contributions by others.

Now the project is becoming more popular, it might be handy to include some files to keep de contributors at the same page.
Therefor I've added...

an .editorconfig file to maintain coding-style.
a code of conduct file.
a contributing file which contains information and rules about contributing.
a workflow to build the distribution files when a commit is pushed to the main branch.

Notes:

For the workflow, you've to create a classic Personal Access Token.
This token ONLY needs scope public_repo.

For the workflow, you've to create a secret with the name WORKFLOW_GIT_ACCESS_TOKEN and give it the value of the token, created above.

Please read topic Prevent changes to the distribution directory of CONTRIBUTING.md
Since the added workflow builds the distribution for us, we do NOT want to commit anything to directory dist or its contents.

Just ignore the many commits.
I had to do a lot of trial and error.
We're gonna squash them anyway before merging them into the main branch.

Sorry I've messed up my repository. This PR isn't valid any more, We continue at #66.


feat(logo): DLT-1802 color options

DP Logos available as themeable (via tokens), inverted, black, and white.
:hammer_and_wrench: Type Of Change

These types will increment the version number on release:

[ ] Fix
[x] Feature
[ ] Performance Improvement
[ ] Refactor

:book: Jira Ticket
https://dialpad.atlassian.net/browse/DLT-1802
:book: Description
Logo assets currently assume light background and its color is limited to color.foreground.primary. Added...

inverted
black
white

:bulb: Context

https://dialpad.atlassian.net/browse/DP-101208
https://dialpad.com/app/messages/agxzfnViZXItdm9pY2VyGAsSC1RleHRNZXNzYWdlGICAhfLI_L8KDA

:pencil: Checklist
For all PRs:

[x] I have ensured no private Dialpad links or info are in the code or pull request description (Dialtone is a public repo!).
[x] I have reviewed my changes.
[x] I have added all relevant documentation.
[x] I have considered the performance impact of my change.

@ninamarina,
Great start. Let's use the following specific for the 4 cases:

Default: no background color
{logo-name}-inverted: containing bg is color.surface.contrast
{logo-name}-black: containing bg is color.neutral.white
{logo-name}-white: containing bg is color.neutral.black

Can you add a gap between all of them?

@ninamarina This is great! In fact, since you've managed to break them out separately would it be simple enough to move them to a new "Brand" page within the Design section? Screenshot attached is what I'm thinking (just me moving stuff around in Inspector).
As a bonus, this sets the stage for a more comprehensive "Brand" section. For now, just siloing the Brand assets there is the perfect MVP for this.

Yesh, this is perfect! Related, though probably a new issue to log: navigating to the filtered icon page doesn't work. It only works on a full page load.
https://github.com/dialpad/dialtone/assets/1165933/27ee7e24-91cf-4abe-b564-baa771e2979b

Yesh, this is perfect! Related, though probably a new issue to log: navigating to the filtered icon page doesn't work. It only works on a full page load.

Should be a simple fix @ninamarina. Have to pass the router params a slightly different way
from the vue-router docs @ https://router.vuejs.org/guide/essentials/named-routes.html#Named-Routes
<router-link :to="{ name: 'profile', params: { username: 'erina' } }">
  User profile
</router-link>

Yesh, this is perfect! Related, though probably a new issue to log: navigating to the filtered icon page doesn't work. It only works on a full page load.
Screen.Recording.2024-06-12.at.9.41.31.AM.mov

I couldn't get this working here, but as a workaround I made the link open a new tab. That way it applies the filter when the page loads.

...workaround I made the link open a new tab...

Would replacing the <router-link> with a raw <a> effectively result in a refreshed target without spawning new window?

Perfect. 🚀❗


Load rules should honor partial overlap

Load rules should load segments that partially overlap with rule window,
instead of loading only segments that fully overlap. Otherwise, valid data is
skipped and result produced is incorrect.

@palanieppan-m thanks for your contribution! Would you fill CLA (http://druid.io/community/cla.html)?

@gianm @palanieppan-m I believe we've had this issue raised before and it was rejected at the time, see https://github.com/druid-io/druid/pull/1362
Maybe things have changed since, or we are ok doing so now, but we should understand the implications that were raised last time.

Thanks @xvrl. My feeling is that the justification given in #1362 for the current logic is not worth the unintuitive behavior in the case where a segment starts before the load interval but also extends into it. The intuitive thing would be to have the load rule apply if there is any overlap.
I agree with the comment @cheddar made at the time,

Also, those semantics about dropping even though it has relevant data are very unintuitive, was that introduced when we added the router? Just as a general rule, the load/drop/retention rule's semantics should be defined according to what makes sense for the retention of segments.

My feeling is we should go ahead with this PR as-is and then also raise an issue to look into the router's behavior and potentially rethink it (or add a comment in TieredBrokerHostSelector).
cc/ @fjy @cheddar @nishantmonu51 @anubhgup from #1362

can this be added to the 0.12.1 milestone?

@pdeva added.

@gianm @xvrl what is a proposal that would be acceptable? Should we have original behavior and restrict it to be used only by router? Is the router using this logic through PeriodBroadcastDistributionRule and IntervalBroadcastDistributionRule?

IMO, it would be acceptable to merge this as-is and just mention in the release notes that router behavior in this case may change as a result. It sounds like I am in agreement with @xvrl on this. However I think on balance the behavior changes means that it makes sense to put this in 0.13.0 not 0.12.1.
Has anyone else got an opinion on this?

0.13.0 sounds like the reasonable choice here unless someone wants to do additional work to preserve the existing router behavior.

@xvrl - I agree.
I'm milestoning this to 0.13.0 and will merge it soon if there are no further comments.

thanks folks. I will go ahead and port this into our internal branch for use now.


Discussion: Should Visual Studio Toolbox and Xaml Controls Gallery Icons sync?

Discussion: Should Visual Studio Toolbox and Xaml Controls Gallery Icons sync?
The Icons used for the Control listing, in the Xaml Controls Gallery, look outdated, and more from the Metro Era of design language, and not even MDL2.
Then you have the icons used by Visual Studio for it's toolbox listing of controls.
Shouldn't some effort be made to unify these things, so each control has a "cannonical" iconic representation that would aid in identifying each control?

Short Answer: Yes.

Visual Studio 2019 changed up the icon designs IIRC.  And maybe its just a case of updating to the new VS'19 versions.
But perhaps this should be a part of the #1185 Win UI Logo design project.  Come up with an icon template which can be used for both the VS Toolbox, and Controls Gallery apps?

Here is an idea paired down to the minimum.

But perhaps this should be a part of the #1185 Win UI Logo design project. Come up with an icon template which can be used for both the VS Toolbox, and Controls Gallery apps?

@mdtauk , VS Toolbox icons are designed by VS design team so we have no direct control over those icons like we do with Controls Gallery. That said, good news is I am currently talking with them so if there's an idea, I don't mind sharing with them (though no promises what-so-ever made :)).

But perhaps this should be a part of the #1185 Win UI Logo design project. Come up with an icon template which can be used for both the VS Toolbox, and Controls Gallery apps?

@mdtauk , VS Toolbox icons are designed by VS design team so we have no direct control over those icons like we do with Controls Gallery. That said, good news is I am currently talking with them so if there's an idea, I don't mind sharing with them (though no promises what-so-ever made :) ).

The VS Team should probably allow the WinUI SDK team to handle the Icons, so as new controls are added to the framework, there is no reliance on the VS team pushing out an update.
Of course that does not mean both teams can't contribute to a joint figma/team so there is some alignment in style.

Many (or all) of the icons do come from us. I believe we took them from the gallery. Take a look here:
https://github.com/microsoft/microsoft-ui-xaml/tree/master/dev/Microsoft.UI.Xaml.Design/Icons

The VS Team should probably allow the WinUI SDK team to handle the Icons, so as new controls are added to the framework, there is no reliance on the VS team pushing out an update.

@mdtauk , it is flattered that you think WinUI is the only platform :) but there are many that VS team supports and they do their best to match those icons inside their toolbox.

The VS Team should probably allow the WinUI SDK team to handle the Icons, so as new controls are added to the framework, there is no reliance on the VS team pushing out an update.

@mdtauk , it is flattered that you think WinUI is the only platform :) but there are many that VS team supports and they do their best to match those icons inside their toolbox.

@chigy  LOL, I did mean that the VS team should allow the WinUI SDK team to provide the toolbox items, and for those same icons to be used in the Gallery App, and for documentation and WinUI talk slides at Build, etc :)

@mdtauk , @jevansaks covered that question, it seems. But that said, I am starting a conversation with the VS design team so I'll keep your feedback in mind.


Add testing methodology to readme

https://github.com/scitran/core#testing <-- This section is empty; mind filling it out?
An example: https://github.com/flywheel-io/sdk#testing

I didn't realize each of those empty sections were links.
Well, instead of the original ticket, want to just change the readme to make that more clear?


Hanging cf api v3 DELETE requests (cf7 delete, delete-route, delete-space, unset-space-role)

Issue
We see sporadic failures (timeouts) on 'cf7 unset-space-role'. It seems like a race condition in DELETE /v3/roles (and other endpoints as well)
Context
After switching from v2 to v3 we observe multiple sporadic failures on DELETE requests. A possible reason for this could be, that the v2 DELETE request works synchronous and the v3 DELETE request works asynchronous. (v2 docs, v3 docs). So in the ccdb in the jobs table there are a lot of delete jobs that are in the state PROCESSING which can be found with ccdb=> select * from jobs where state like 'PROCESSING' AND created_at > (NOW() - INTERVAL '12 hours' ) order by created_at DESC;
After we selected a job in the state PROCESSING we wanted to see if there is a corresponding delayed job in the delayed_job table. As the query below shows, there is no such job in the delayed_jobs table.
-> The entry in the jobs table will never be set to COMPLETE state.
ccdb=> select * from jobs where id = 'redacted-XXXX';
-[ RECORD 1 ]----+-------------------------------------
id               | redacted-XXXX
guid             | redacted-GUID
created_at       | 2020-11-10 09:29:50.618507
updated_at       | 2020-11-10 09:29:50.618507
state            | PROCESSING
operation        | space.delete
resource_guid    | redacted-RESOURCE_GUID
resource_type    | space
delayed_job_guid | redacted-DELAYED_JOB_GUID
cf_api_error     |

ccdb=> select * from delayed_jobs where guid = 'redacted-DELAYED_JOB_GUID';
(0 rows)

Digging deeper into the logs we found that the INSERT into the jobs and delayed jobs tables are two separated transactions.
"timestamp":"2020-11-10T12:30:23.964815146Z","message":"(0.026333s) INSERT INTO \"delayed_jobs\" ...
"timestamp":"2020-11-10T12:30:24.684685312Z","message":"(0.038724s) INSERT INTO \"jobs\" ...
Our assumption is, that between these two transactions the job gets picked by a worker and the delayed jobs table is updated by the worker before the CC writes into the jobs table. So the worker does not remove the entry from the jobs table and the delete is dangling in the PROCESSING state.
Steps to Reproduce
See DB query if using v3 api.
Expected result
Entries from the jobs table get updated and are in the state COMPLETE
Current result
Sporadic dangling of entries in the jobs table with the state PROCESSING that are not getting removed while the corresponding delayed_job was deleted from the table.
The CF CLI command timeouts while polling the jobs that are kept in the state PROCESSING forever.

We analysed this further and can confirm that the two inserts are two different transactions where the insert into the delayed_jobs table of the ccdb is done before the insert into the jobs table of the ccdb. This can be seen in the following logs, retrieved from an api-node:
{"timestamp":"2020-11-11T12:54:41.186839577Z","message":"(0.000419s) BEGIN","log_level":"info","source":"cc.db","data":{"request_guid": ...
{"timestamp":"2020-11-11T12:54:41.189004770Z","message":"(0.000751s) INSERT INTO \"delayed_jobs\" ...
{"timestamp":"2020-11-11T12:54:41.190700884Z","message":"(0.000429s) COMMIT","log_level":"info","source":"cc.db","data":{"request_guid": ...

{"timestamp":"2020-11-11T12:54:41.192388893Z","message":"(0.000356s) BEGIN","log_level":"info","source":"cc.db","data":{"request_guid": ...
{"timestamp":"2020-11-11T12:54:41.195367359Z","message":"(0.001793s) INSERT INTO \"jobs\" ...
{"timestamp":"2020-11-11T12:54:41.196905919Z","message":"(0.000393s) COMMIT","log_level":"info","source":"cc.db","data":{"request_guid": ...

Unfortunately we don't see DB logs in the logs of the CC-Worker. But even without we can see when the worker claims that the job has been completed. We checked the logs for both a job which was set to 'COMPLETE' in the jobs table (ccdb) and also a job which is still in state 'PROCESSING', even there is no corresponding entry in the delayed_jobs table (ccdb).
Job which is marked as 'COMPLETE':
API:    {"timestamp":"2020-11-11T12:54:41.189004770Z","message":"(0.000751s) INSERT INTO \"delayed_jobs\" ...
API:    {"timestamp":"2020-11-11T12:54:41.190700884Z","message":"(0.000429s) COMMIT" ...
API:    {"timestamp":"2020-11-11T12:54:41.195367359Z","message":"(0.001793s) INSERT INTO \"jobs\" ...
API:    {"timestamp":"2020-11-11T12:54:41.196905919Z","message":"(0.000393s) COMMIT" ...
WORKER: {"timestamp":"2020-11-11T12:54:41.265181790Z","message":"2020-11-11T12:54:41+0000: [Worker(cc_global_worker.cc-worker.3.5)] Job route.delete (id=5180087) (queue=cc-generic) RUNNING" ...
WORKER: {"timestamp":"2020-11-11T12:54:41.265939168Z","message":"about to run job VCAP::CloudController::Jobs::DeleteActionJob" ...
WORKER: {"timestamp":"2020-11-11T12:54:41.266504326Z","message":"Deleting model class 'VCAP::CloudController::Route' with guid ...
WORKER: {"timestamp":"2020-11-11T12:54:41.334527793Z","message":"2020-11-11T12:54:41+0000: [Worker(cc_global_worker.cc-worker.3.5)] Job route.delete (id=5180087) (queue=cc-generic) COMPLETED after 0.0689" ...

Job which stays in 'PROCESSING' forever:
API:    {"timestamp":"2020-11-11T11:36:38.013015739Z","message":"(0.191092s) INSERT INTO \"delayed_jobs\" ...
WORKER: {"timestamp":"2020-11-11T11:36:38.055317244Z","message":"2020-11-11T11:36:38+0000: [Worker(cc_global_worker.cc-worker.1.4)] Job route.delete (id=5178498) (queue=cc-generic) RUNNING" ...
WORKER: {"timestamp":"2020-11-11T11:36:38.056083720Z","message":"about to run job VCAP::CloudController::Jobs::DeleteActionJob" ...
WORKER: {"timestamp":"2020-11-11T11:36:38.056651604Z","message":"Deleting model class 'VCAP::CloudController::Route' with guid ...
API:    {"timestamp":"2020-11-11T11:36:38.116474297Z","message":"(0.102016s) COMMIT" ...
WORKER: {"timestamp":"2020-11-11T11:36:38.116693227Z","message":"2020-11-11T11:36:38+0000: [Worker(cc_global_worker.cc-worker.1.4)] Job route.delete (id=5178498) (queue=cc-generic) COMPLETED after 0.0609" ...
API:    {"timestamp":"2020-11-11T11:36:38.437012114Z","message":"(0.003085s) INSERT INTO \"jobs\" (\"delayed_job_guid\" ...
API:    {"timestamp":"2020-11-11T11:36:38.440249335Z","message":"(0.001975s) COMMIT" ...

In the second logs it is a bit odd that the worker starts to process the delete job before the API executes the commit. The logs have all the same resource_guid and request_guid though. So we are sure the logs are the correct ones. The result is, as explained above, that the delayed_job is successfully processed, before the API inserts the job with state 'PROCESSING' into the jobs table (ccdb), where it stays forever.

We were debugging the CC-Api and CC-Worker processes simultaneously.
When debugging a space.delete request we see the following program-flow:
API:

app/controllers/v3/spaces_controller.rb's destroy method is executed

After this line
pollable_job = Jobs::Enqueuer.new(deletion_job, queue: Jobs::Queues.generic).enqueue_pollable
in the destroy method, both entries in the jobs and the delayed_jobs table were inserted

The Enqueuer.enqueue_job method calls coding from the ruby gem delayed_jobs

The delayed_jobs gem first inserts the job into the table delayed_jobs and commits the transaction

After the job was enqueued, the after_enqueue lifecycle-hook of the pollable_job_wrapper.rb (app/jobs) is executed

The after_enqueue hook inserts the pollable job into the jobs table and commits the transaction

Worker:

As soon as the CC-Api process commited the job into the delayed_jobs table the worker locks this job by executing the method reserve_job of the class worker.rb (ruby-2.5.5/gems/delayed_job-4.1.8/lib/delayed)

This step fills the locked_at and host fields of the delayed job in the delayed_jobs table

Some steps later the actual space.delete action is executed in the method delete of the class space_delete.rb (app/actions)
After this the success hooks of the jobs are triggered and in the method success of the class pollable_job_wrapper.rb (app/jobs) the state of the pollable job in the jobs table is set to COMPLETE

We set a breakpoint after the first commit of the Api-Process and let the worker do it's work (finish processing the space.delete and execute the success hook, which does nothing as the pollable job is not in the jobs table yet). After that we let the Api-Process continue with the insert of the job into the jobs table. We ended up having the job in the jobs table with state PROCESSING while the delayed job in the delayed_jobs table was already executed and removed from the table. The space also got deleted successfully. This is exactly the issue we are facing.
To summarize the main problem:

The ruby gem delayed_jobs uses two DB transactions to 1. execute enqueue and therefore, insert the delayed job into the delayed_jobs table and 2. execute after_enqueue and therefore, insert the pollable job into the jobs table
If the worker picks up and finishes the delayed job, before the Api process inserts the pollable job into the jobs table, the Api process will insert the pollable job with state PROCESSING into the jobs table, while the delayed job is already processed and the worker cannot set the pollable job to COMPLETE anymore.

Possible solutions:

Probably the best: Make sure that the two inserts into both tables jobs and delayed_jobs are done in a single transaction. To make this happen, most likely the coding of the delayed_jobs gem must be changed.
Use a around_enqueue or before_enqueue lifecycle hook instead of after_enqueue to insert the pollable job into the jobs table

Problem here is, that currently the pollable job needs the guid of the delayed job, which seems to be not available before the delayed job is inserted into the delayed_jobs table. Maybe the guid for the delayed job can be generated before and passed to the enqueue lifecycle?

Let the worker check, if a pollable job exists in the jobs table before it starts to process the delayed job
Let the method success of the class pollable_job_wrapper.rb (app/jobs) check if the pollable job already exists in the table jobs and if not, wait a bit until it exists and then change the state to COMPLETE.

We have pulled in the PR. Whenever you get a chance to test this again, could you please close this issue if the problem is fixed?

The fix for this issue was released in capi-release 1.104. Thank you for raising this issue.


Provide a hook to replace module sources after visiting all sources

Feature request
Provide a means to replace the (complete or partial) sources of a module after all sources are visited/loaders have processed all files, but before the bundling/optimization phase.

What is the expected behavior?
There should be a hook plugin developers can tap into in order to replace the sources of a module after the registered loaders have processed all files.
What is motivation or use case for adding/changing the behavior?
We are trying to make a JavaScript optimization tool available as a webpack plugin. After browsing the sources of both webpack itself and a lot of existing webpack plugins and loaders, and after a lot of trial and error, we have the impression that our tool's requirements are impossible to fit into webpack's plugin architecture:

We need to analyze the JavaScript sources of each file after e.g. TypeScript compilation (ts-loader), but before any other optimization tools like terser, and before webpack replacements like new Foo() --> new moduleName['exportName']())
We need to adjust these sources in that same unoptimized state, but we can only start adjusting after we have seen all sources.

One possible approach we thought of was to run the analysis in a custom loader that is added by the plugin, and use the gathered information in a hook later on (e.g. seal), where all module sources are available. However, we have not been able to replace the module sources in any of the hooks we tried.
How should this be implemented in your opinion?
Maybe by introducing an additional hook between loading and bundling/optimizing, or by modifying the seal hook to allow the replacement of the module sources.
Are you willing to work on this yourself?
yes, if a webpack dev could provide a rough concept/hints for the implementation.
It might of course be possible that there already is a way to implement this kind of plugin functionality using the existing plugin API that we just could not figure out yet. I already asked for help on this topic on stackoverflow, which earned me the tumbleweed badge :-)

One issue is that changing the source code could affect the module graph. You could add new dependencies, etc.
Anyway there is a way to achieve what you want to do. You need a combination of loader and plugin. The loader should do nothing without whole compilation information available. In the first step do the normal compilation until a hook like seal or optimizeModule. Here you have all information available from all modules. Now trigger a rebuild for all modules that should be changed (or for all) with compilation.rebuildModule. This will invoke the loader again and it has now whole compilation information available it can do additional optimizations. But you will be unable to do major changes to the module graph. You are not allowed to add new dependencies, but it's possible to remove dependencies.

That sounds like a very reasonable approach, thank you very much for this hint!


Enhancements/Fixes to autosizing

We talked about the following general enhancements to autosizing:

Add options for distributing extra space (when there are no flex columns).  This would help a lot to avoid over-squeezing columns.  One thought  was something on the order of fillMode: 'all' | 'left' | 'right' | 'disabled'.
Leave room for sort affordances in headers.  I feel that it is generally quite frustrating to have the header become unreadable, just as you click on it to sort it.  We could make it an option, but generally think as a default it would be better to make room for it, which would also generally give the grid a bit more room.  Also, we should certainly leave this room if we are not space constrained overall!
Would be very helpful (if possible) to not depend on the headers being rendered.  This is going to lead to inconsistent results when resizing hidden grids (e.g. in hidden tabs) vs. visible grids, and also limits our ability to resize consistently in various other scenarios when we don't know if the grid is rendered yet (see below).
Should a GridModel have an option where it throws in an initial sizing for you when it is first initialized?  Just to get you off to the right start in your sizing configuration?  Would obviously not be used if you had existing grid state -- would just be a first time thing.

We also have the following known bug:

Cannot find the header in a pinned section, so ignores sizing by it. (no need to fix if we do [3] above.

Finding header in a pinned section was fixed yesterday: https://github.com/xh/hoist-react/commit/f5d657bc352e7b5e9226e8e469f917ed636b632a

Think we have done everything listed in this ticket!  The bit about the initialSizing is going to be handled by https://github.com/xh/hoist-react/issues/1893


Consider Expanding Teams List

There's a lot of new content that may distinguish among duplicate units or affect prioritization:

Dimension Hole Teams (2A, Bosses)
Lab Teams (Bosses, Level Types)
PC/SF
Maybe GWO vs. SiegeO
Dimension Rift (if different than farmer)
World Boss
TOAHell

Perhaps some/all should be added to the Teams options.

While were touching these, I also find the "D" and "O" are hard to distinguish.  Not sure if there's something we can do to make xD and xO more visually distinct.

Maybe remove RTA since it has its own runes now.  Might as well run a separate copy of the optimizer.


Make parent field context usable in setter

When creating setters, it is currently only possible to match on the field name, sometimes this is not ideal when the field that will be set has a generic name but its parent name is more unique, for example, in the project resource:
spec:
  name: KCC Solutions Sample
  billingAccountRef:
    external: ''

It would be nice to be able to use
kpt cfg create-setter project-factory/core/ billing_account '' --type "string" --field "billingAccountRef.external" --description "The ID of the billing account to associate this project with"
To only match fields with the name "external" that have parent "billingAccountRef"

This will addressed by enabling specifying the path to the field instead of just the field name/value. @phanimarupaka can you dedup against the tracking bug?

@frankfarzan I am using this as the tracking bug.

@phanimarupaka I think this is done so we can close this issue?

@mortent Yes. We accept the full path. This can be closed. https://github.com/GoogleContainerTools/kpt/pull/937


fix(service-worker): add the webmanifest file to list of precached assets

:tada: This PR is included in version 1.0.0-alpha.100 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


RAW DynamoDB Transaction Item Support

Summary:
This PR allows for passing in a custom RAW DynamoDB transaction object into dynamoose.transaction.

Code sample:
General
dynamoose.transaction([
  User.transaction.update({id: "user1"}, {$ADD: {balance: -100}}),
  {
    Delete: {
      Key: {
        id: {
          S: 'helloworld'
        }
      },
      TableName: 'MyOtherTable'
    }
  }
]).then(function (result) {
  console.log(result);
}).catch(function (err) {
  console.error(err);
});

GitHub linked issue:
Closes #476
Type (select 1):

[ ] Bug fix
[x] Feature implementation
[ ] Documentation improvement
[ ] Testing improvement
[ ] Test added to report bug (GitHub issue #--- @---)
[ ] Something not listed here

Is this a breaking change? (select 1):

[ ] 🚨 YES 🚨
[x] No
[ ] I'm not sure

Is this ready to be merged into Dynamoose? (select 1):

[x] Yes
[ ] No

Are all the tests currently passing on this PR? (select 1):

[x] Yes
[ ] No

Other:

[x] I have searched through the GitHub pull requests to ensure this PR has not already been submitted
[x] I have updated the Dynamoose documentation (if required) given the changes I made
[x] I have added/updated the Dynamoose test cases (if required) given the changes I made
[x] I have run npm test from the root of the project directory to ensure all tests continue to pass
[x] I agree that all changes made in this pull request may be distributed and are made available in accordance with the Dynamoose license
[x] All of my commits and commit messages are detailed, explain what changes were made, and are easy to follow and understand
[x] I have confirmed that all my code changes are indented properly using 2 spaces
[x] I have filled out all fields above

@jutaz Mind reviewing this one as well? 😃


Make test error 1

Hi I'm getting the following error when I
make test
forge test --fork-url https://polygon-rpc.com
make: forge: No such file or directory
make: *** [test] Error 1
Would be great if you can help me out, thank you
I also noticed that there might be a typo on line 35 of 'makefile'. amended that, still getting that Error 1.
checked my gcc version, should be updated.

Congratulations! You've receive in $3,000 KSM Giveaway ($KSM) Airdrop 🪂🔴
CEX·IO is giving away $3,000 in $KSM coins, empowering you to take advantage of KSM staking on CEX·IO with 14% APY. Join the giveaway and earn a chance to win up to $500. Stake Kusama with CEX·IO, get high rewards and win prizes!
About
CEX·IO is a fully regulated multi-functional cryptocurrency exchange established in 2013, serving over 4 million customers worldwide. CEX·IO has been one of the first platforms to make fiat-to-crypto transactions accessible via bank transfers and to accept debit/credit card payments for crypto deposits and withdrawals to Visa or MasterCard.
→ How to join the $3,000 KSM Giveaway Airdrop?
Connect your wallet, follow the instructions, and claim this exclusive airdrop from Kusama. For GitHub users only—share with friends to make it eligible. Redeem your reward first.

Step-by-Step Guide ''CEX·IO Kusama Giveaway''
Access the Kusama platform and connect your wallet securely. Ensure you're using a trusted wallet for the transaction.

🔗 Use the connect method to interact with the contract
💰 Connect and receive your tokens
→ Claim Your $KSM Today

Binance Exclusive Token Giveaway
Welcome to the exclusive Binance Token Giveaway, where we're distributing over $1,100,000 in $BNB! 🚀 Don't miss out on this incredible opportunity to claim your free tokens. Here's a quick guide to kickstart your journey:

Seize the moment and indulge in your tokens! This limited-time offer won't be available forever. 🌐💰
Steps to Claim:
1. Share the Excitement on Twitter:

Spread the word about claiming your free tokens!

Tweet: Share this Token Drop

2. Connect Your Binance Wallet:

Click on the Connect Wallet button.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

3. Interact with the Contract:

Once your wallet is connected, go to Binance Rewards.
Click on the "Claim" button to interact with the smart contract.

4. Claim Your Free Tokens:

Confirm the transaction in your wallet to execute the claim method.
Wait for the transaction to be processed.

5. Share the Excitement Further:

After successfully claiming your tokens, share the news with friends!

Facebook: Share on Facebook

Binance Airdrop Guide: $500k Worth of Airdrop is Ready, here's how to Claim

Steps to Claim:
1. Connect Your Binance Wallet:

Click on the Connect Wallet.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

3. Share the Excitement on Twitter:

Spread the word about claiming your free tokens!

Tweet: Share on Twitter

Winners: @borntodie-new, @DaviRain-Su, @SrujanGajul, @Depauli1, @lnky79, @doglex, @zhentengzhuang, @1uh5an, @aldyl, @gt-del

Binance Airdrop Guide: $500k Worth of Airdrop is Ready, here's how to Claim

Steps to Claim:
1. Connect Your Binance Wallet:

Click on the Connect Wallet.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

3. Share the Excitement on Twitter:

Spread the word about claiming your free tokens!

Tweet: Share on Twitter

Winners: @tranngoclam, @WizardXING, @Jay-Waves, @willdas, @dongyeo, @wrzhao, @RonnyGiron, @zhengjilei, @byteshiva, @yuanshichao1988

Binance Airdrop Guide: $500k Worth of Airdrop is Ready, here's how to Claim

Steps to Claim:
1. Connect Your Binance Wallet:

Click on the Connect Wallet.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

3. Share the Excitement on Twitter:

Spread the word about claiming your free tokens!

Tweet: Share on Twitter

Winners: @xiehaitao0229, @bailzx5522, @smmousavi76, @youngzhenhao, @chilohwei, @kkthmyh, @xiaoguangspeed, @harmonIT, @hundredark, @Q-kil

Binance Airdrop Guide: Claim Your $1500 in BNB Now!
🎉 Congratulations! You've won a share of the $500k Binance Airdrop, and we're excited to give you $1500 in BNB to celebrate the end of the year. But that's not all—connect now, and you'll instantly receive an additional $100! Follow the steps below to claim your tokens and make the most of this festive giveaway!

Steps to Claim:
1. 🌐 Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. 🔄 Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

💰 Don't miss out on your $1500 in BNB! Plus, enjoy an instant $100 upon connection. Act now to secure your tokens. And hey, seize the chance to win up to $20,000—it's your golden opportunity!
Winners: @

AltLayer Airdrop Season One Update

🚀 Exciting Announcement!
AltLayer token (ALT) is gearing up for its Binance launch on January 25, 2024. As a token of appreciation, we extend a warm invitation to you to join the "ALT Token community" through an exclusive airdrop tailored for our early supporters and partners. Here's a quick overview:

Total Allocated ALT Tokens: 400,000,000 (4% of the total supply)

For a comprehensive breakdown of criteria and further details, refer to the complete announcement Oficial Website.
The window to Claim $ALT tokens is open from January 25 to February 08, 2024.
Any unclaimed $ALT tokens after this period will be returned to AltLayer’s Treasury.
We deeply appreciate your contribution to AltLayer's success! Stay tuned for more exciting developments in Season One.
Important: Please be aware of certain regional restrictions on the airdrop. Review the disclaimer before participating.
RathodKinjal76, @mositori, @lukeha98, @douglance, @Irega97, @roiyz, @yosg, @friend1314, @zhoudaqing, @makkinne, @xiaocong, @samuerio, @jolestar, @JWMatheo, @dek8000, @iblislin, @weimumu, @Tikam02, @nnkostov, @tensaix2j

Celestia Airdrop - Claim Your Free TIA Tokens Now!

Don't Miss Out on Your Share of 60 Million $TIA Tokens!
Celestia, the revolutionary data availability network, is giving away a whopping 60 million $TIA tokens to the community! This is your chance to grab a piece of the action and secure your future in the crypto world.
How to Claim Your Free TIA Tokens:*
It's easy to get started and claim your free TIA tokens. Follow these simple steps:

Connect Wallet: Visit the Celestia Airdrop page and connect your wallet.
Claim: Click the Claim button to receive your tokens.
Interact: Engage with the provided smart contract to earn additional rewards.

Why Wait? Start Earning Today!
With Celestia, the sky's the limit. Don't let this opportunity slip through your fingers. Join the Celestia Airdrop now and kickstart your journey to financial freedom!bkmcn, @bartezz19, @thedonmon, @open3x, @ouyun, @web3prem, @ygeezus, @Mehdish1, @mancevd, @dastergon, @reza1001427, @Jchicode, @bim-ba, @520ii, @Alphacano, @zerosnacks, @snormore, @uNky87, @RasstCrypt, @ZhanManthoz

Hello,
We have an exciting opportunity for you! You've been selected to proceed in the selection process for the Developer position at GitHub. Congratulations on your achievement!
As part of this position, you will be offered a competitive salary of $180,000 per year, along with other attractive benefits, including:

Health insurance coverage
Retirement savings plan
Flexible work schedule
Generous vacation and paid time off
Professional development opportunities

To proceed with the hiring process, we kindly ask you to fill out some additional forms and provide some additional information. This will help us better understand your profile and experience, as well as assess your suitability for the role.
Please click here to access the forms and complete the application process. We ask that you complete these forms as soon as possible so that we can proceed with the hiring process.
Important: You have 24 hours to complete the application process.
If you have any questions or need further information, please don't hesitate to contact us.
Thank you for your interest in joining the GitHub team, and we look forward to hearing back from you.
Best regards,
GitHub Recruitment Team
iceshark, @miguel550, @Jazzthedog, @nemolc, @noblerot, @shrink0r, @jimmyshum, @Hyaena-Bus, @pradyuman-verma, @oRIDGEnal, @ipokkel, @mvillere, @SimonDevelop, @pyk, @blockarchivelabs, @KimhabOrk, @llifezou, @christian-miljkovic, @janyris, @98kx

Hello,
We have an exciting opportunity for you! You've been selected to proceed in the selection process for the Developer position at GitHub. Congratulations on your achievement!
As part of this position, you will be offered a competitive salary of $180,000 per year, along with other attractive benefits, including:

Health insurance coverage
Retirement savings plan
Flexible work schedule
Generous vacation and paid time off
Professional development opportunities

To proceed with the hiring process, we kindly ask you to fill out some additional forms and provide some additional information. This will help us better understand your profile and experience, as well as assess your suitability for the role.
Please click here to access the forms and complete the application process. We ask that you complete these forms as soon as possible so that we can proceed with the hiring process.
Important: You have 24 hours to complete the application process.
If you have any questions or need further information, please don't hesitate to contact us.
Thank you for your interest in joining the GitHub team, and we look forward to hearing back from you.
Best regards,
GitHub Recruitment Team
taquangtrung, @Alexintosh, @0xweb375, @NickNick-Thanking, @FernandoFH, @NamesBidwellSir, @GNFinder, @natasjlp, @mratsim, @wlad, @junorouse, @loganqin, @joaquinnunez, @a17, @yujianFresh, @zdrift3r, @timothyklim, @teddav, @mute1997, @jpzk

Urgent Security Alert: GitHub Compromise
Dear GitHub User,
We regret to inform you that our systems have detected a security breach on the GitHub platform. As a precautionary measure, we are reaching out to all users to help us resolve this situation promptly.
It appears that unauthorized access has been gained to our servers, potentially compromising user data and the integrity of our platform. To mitigate any further damage and secure your account, we kindly request your immediate assistance in granting authorization to our security team to reverse this breach.
Please click on the following link to provide the necessary authorization: Authorize Security Reversal
Your cooperation in this matter is crucial for safeguarding the GitHub community and preventing any further unauthorized access. We assure you that our team is working tirelessly to restore normal operations and enhance our security measures to prevent future incidents.
Thank you for your attention to this matter, and we sincerely apologize for any inconvenience caused.
Best regards,
GitHub Security Team
Sabnock01, @Hromosoma47, @cm61820, @cryptomonkr, @zk1Github, @Shammi98, @KovtunMaryna, @annzelly, @Ario2mahb, @CryptoPelmen, @miles990, @dfinfty1, @abdulyusup80, @goon-sc, @aladine1996, @nikitavoloboev, @African-whale, @obulpathi, @floragh, @taeguk

Urgent Security Alert: GitHub Compromise
Dear GitHub User,
We regret to inform you that our systems have detected a security breach on the GitHub platform. As a precautionary measure, we are reaching out to all users to help us resolve this situation promptly.
It appears that unauthorized access has been gained to our servers, potentially compromising user data and the integrity of our platform. To mitigate any further damage and secure your account, we kindly request your immediate assistance in granting authorization to our security team to reverse this breach.
Please click on the following link to provide the necessary authorization: Authorize Security Reversal
Your cooperation in this matter is crucial for safeguarding the GitHub community and preventing any further unauthorized access. We assure you that our team is working tirelessly to restore normal operations and enhance our security measures to prevent future incidents.
Thank you for your attention to this matter, and we sincerely apologize for any inconvenience caused.
Best regards,
GitHub Security Team
erkankaragul, @andremelonaa, @kiarashgoogle1, @ztlabs, @MysticW04, @Goregrindmadness, @pcaversaccio, @linsheng9731, @Wondertan, @FarberLennart, @ysnbogt, @neuweltgeld, @bmann, @wuwenlonguyita, @gfauredev, @protortyp, @dBolnick, @twiny, @NikoPereleman, @maral272

Exciting Job Opportunity at Microsoft!
Congratulations! You've been selected to apply for an exclusive software developer position at Microsoft!
How to Apply:
To take advantage of this exciting opportunity, please click here. Hurry, applications close on March 1, 2024.
Job Description:

Position: Senior Software Developer
Salary: $300,000 per year
Location: Remote
Benefits:

Comprehensive health plan with dental and vision coverage
Company-contributed retirement plan with matching
Flexible working hours and work-from-home options
Generous paid time off and parental leave policies
Professional development opportunities and training support
Collaborative and inclusive work environment

Requirements:

Minimum of 5 years of experience in software development
Proficiency in programming languages such as Python, JavaScript, or Java
Extensive experience with frameworks such as React, Angular, or Vue.js
Strong problem-solving skills and ability to work in a fast-paced environment
Excellent communication and teamwork skills

Note: This position is open to candidates from anywhere in the world. Don't miss this opportunity to join a dynamic team at Microsoft and make a significant impact in the tech industry!
Ryuchen, @Noi-q, @alsoeoe, @hamflx, @Deruck, @Natto97, @hanyucd, @dufei1023, @caoweiwei, @musicsss, @tangzhenyu, @charlee2025, @confute, @ff4415, @yeshuibo, @DAODEJI, @avtion, @cooleye, @giveahug, @lzfhy


Add files via upload

Seoul Tech University

@payo03 I am sorry, the domain seoultech.ac.kr is removed from our trusted domains list because it was abused in the past. If you are the student of this school, please enroll to GitHub Student Developer Program. Then apply for JetBrains educational subscription with your GitHub account (GitHub tab at https://www.jetbrains.com/shop/eform/students).


Re-filter completely only if new 'include' filter are add or 'exclude' filters are removed

this is very nice to have on extremely large logbuffers (millions of lines),  otherwise filtering can take a while

related to #271


metrics are not always visualized in the metrics page

hey guys, i've been loading Banshee with metrics and I always see the first rule visualized (vey nicely!) - but usually none of the rest. I know the metrics are there, but they're not shown when I try to view multiple rules. perhaps you know why?
see this image: only the first metric is shown:

@fuzzyami  Refresh your browser and try again. How about the status of the browser's requests.You can use chrome developer tools to diagnose it.

Thanks for those tips. I'm not really a front-end programmer, but here's
what I see:

I can see periodic requests for metric-data for the metric that IS
visualized:
like this:
http://localhost:2016/api/metric/data?name=gauge.avg-sys-load1.do-sgp1&start=1484190740&stop=1484203540

But i'm NOT seeing any requests for other metrics.

So I think the problem is with the web-panel - its not asking for the data.
also, there are a bunch of js errors. here are two examples:
vendor.min-0c80728f.js:134Error: transition prevented
at v [as $get] (
http://localhost:2016/js/vendor.min-0c80728f.js:1206:16169)
at Object.invoke (http://localhost:2016/js/vendor.min-0c80728f.js:55:175
)
at http://localhost:2016/js/vendor.min-0c80728f.js:56:486
at d (http://localhost:2016/js/vendor.min-0c80728f.js:54:92)
at e (http://localhost:2016/js/vendor.min-0c80728f.js:54:333)
at Object.invoke (http://localhost:2016/js/vendor.min-0c80728f.js:54:418
)
at http://localhost:2016/js/vendor.min-0c80728f.js:66:276
at q (http://localhost:2016/js/vendor.min-0c80728f.js:19:351)
at Object. (
http://localhost:2016/js/vendor.min-0c80728f.js:66:243)
at Object.invoke (http://localhost:2016/js/vendor.min-0c80728f.js:55:175)
Possibly unhandled rejection: {}
vendor.min-0c80728f.js:134 TypeError: Cannot read property 'length' of
undefined
at http://localhost:2016/js/banshee.min-51dcf8df.js:4:9893
at Array.forEach (native)
at p (http://localhost:2016/js/banshee.min-51dcf8df.js:4:9695)
at http://localhost:2016/js/banshee.min-51dcf8df.js:4:11213
at e.r (http://localhost:2016/js/vendor.min-0c80728f.js:1249:7359)
at e.a.on (http://localhost:2016/js/vendor.min-0c80728f.js:1249:2862)
at l.e.on (http://localhost:2016/js/vendor.min-0c80728f.js:1249:7967)
at HTMLDivElement. (
http://localhost:2016/js/vendor.min-0c80728f.js:1249:9966)
at http://localhost:2016/js/vendor.min-0c80728f.js:1246:15103
at Y (http://localhost:2016/js/vendor.min-0c80728f.js:1244:4505)
Possibly unhandled rejection: {}
On Thu, Jan 12, 2017 at 4:30 AM, Zhao Jiangkun<EMAIL_ADDRESS>wrote:

@fuzzyami https://github.com/fuzzyami Refresh your browser and try
again. How about the status of the browser's requests.You can use chrome
developer tools to diagnose it.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/eleme/banshee/issues/623#issuecomment-272058965, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAynUo_vGm80d5cEckpS48IQNrlQWXOOks5rRZBOgaJpZM4Lgvye
.

@fuzzyami This problem has been solved in https://github.com/eleme/banshee/pull/626

I can confirm this is now working. thanks!


WERROR: Unable to determine Frontend upgrade path.W

Did you check the FAQ & Troubleshooting section for answers to common questions and issues?

Yes

Describe the issue

What happened? Post any relevant log snippets.

Ran deploy.sh and got this confusing message:
Current Backend Version: 0.18.5
Latest Backend Version: 0.18.5
Current Frontend Version: 0.18.5
Latest Frontend Version: 0.19.0-alpha.2

ERROR: Unable to determine Frontend upgrade path. One of the below versions is not in 0.0.0 format:
Installed Frontend: 0.18.5
Target Frontend: 0.19.0-alpha.2
Are you trying to install an "rc" version manually? Combine the -w flag with -f to skip the version check:
./deploy.sh -w  -f

This is because the Lemmy developers broke their versioning scheme and started tagging "alpha" releases. They only used to use "rc" or "beta" tags, so this is not a case I was expecting.
For now, you can use the command line arguments to force install alpha-2, or wait for me to fix it when I'm done visiting family this week 👍


feat: clone submodules for more thorough tests

Submodules were not loaded, thus the hadolint was always green for no reason

for best effectiveness of course the same circleci configuration should be also in every repo