Disable indexes not synced error

I have the following schema/models in Dynamoose in my cron job code.
var Schema = new dynamoose.Schema({_id: String}, {
	saveUnknown: true
});
var UserModel = dynamoose.model('User', Schema);
var ItemModel = dynamoose.model('Item', Schema);

Problem is, in my main application the schema I use for the User model has an index on one of the properties. But not the item.
In my cron job I would like to keep my schema's and models as simple as possible as I might forget to change it in the cron when I change it in my main application.
Therefor I'm getting the following error.
Error: indexes are not synchronized and update flag is set to false
    at /home/ubuntu/node/node_modules/dynamoose/lib/Table.js:166:29
    at _fulfilled (/home/ubuntu/node/node_modules/q/q.js:854:54)
    at self.promiseDispatch.done (/home/ubuntu/node/node_modules/q/q.js:883:30)
    at Promise.promise.promiseDispatch (/home/ubuntu/node/node_modules/q/q.js:8$
    at /home/ubuntu/node/node_modules/q/q.js:624:44
    at runSingle (/home/ubuntu/node/node_modules/q/q.js:137:13)
    at flush (/home/ubuntu/node/node_modules/q/q.js:125:13)
    at _combinedTickCallback (internal/process/next_tick.js:131:7)
    at process._tickDomainCallback (internal/process/next_tick.js:218:9)

Is there anyway to disable this error? Is it something that can even be disabled or is it integrated tightly into the AWS SDK?

tl;dr. var UserModel = dynamoose.model('User', Schema, {create: false});
@fishcharlie I was running into this as well. However the "check indexes" code is inside an if(model.options.create) check so if you disable table creation (which is on by default) the errors about indexes will stop.
I only use dynamoose to access already existing tables so I created a helper function to set options on the schema and model the same way every time. Here it is if you want it.
export function model(tableName, fields, statics, methods) {
  let schema = new dynamoose.Schema(fields, { timestamps: true });
  schema.statics = statics;
  schema.methods = methods;

  return dynamoose.model(tableName, schema, {
    create: false,
    update: false,
  });
}```


GitHub Workflows security hardening

This PR adds explicit permissions section to workflows. This is a security best practice because by default workflows run with extended set of permissions (except from on: pull_request from external forks). By specifying any permission explicitly all others are set to none. By using the principle of least privilege the damage a compromised workflow can do (because of an injection or compromised third party tool or action) is restricted.
It is recommended to have most strict permissions on the top level and grant write permissions on job level case by case.

@pheiduck  @k-takata

@brammool Let's run the CI to see that it still runs with the modification.

LGTM

coverity.yml failed in foked repo every day, would you refine/fix it?

failing when wget the coverity_tool.tgz

yes, it failed at forked vim repo, and sent out failed mail everyday. is it annoyed?
--
shane.xb.qian

You can disable the workflow.

perhaps good correction should be checking
was it a main repo or forked repo
or was token was there or not
before really wget.

or not sent out alert mail as well if it was not main repo?
if it obviously would be failed, why sent it everyday? but let all forked user manually to disable it................... :rofl:


Add a subtract function and unit test

Hi,
I thought the Python calculator could do with a subtract function, so I have added a function to do this along with a test.
Let me know if there are any problems. 👍

Thanks :)


rename nodesByLabel -> nodes

node ids are of type Long, so nodes(String) is pretty obvious to be
filtering on the label

I'd regard the two on different levels: the domain specific language sits on top and can make their own choices as it best fits for that specific domain. On this level I think plural is appropriate.


Replace ml-curve-fitting by ml-levenberg-marquardt

ml-curve-fitting is an old project that is not maintained and should be replaced by:
https://github.com/mljs/levenberg-marquardt

First of all, we need to refactor the functions Gaussian, Lorentzian and the trains and sums of those. Looking for the compatibility with mljs/lm.
A possible refactor for sumOfLorentzians function is:
function sumOfLorentzians(p) {
  return t => {
    let nL = p.length / 3;
    let result = 0;
    for (let i = 0; i < nL; i++) {
      let p2 = Math.pow(p[i + nL * 2] / 2, 2);
      let factor = p[i + nL] * p2;
      result += factor / (Math.pow(t - p[i], 2) + p2);
    }
    return result;
  };
}

It will return a parameterized function

It's done


monocli

A cli tool to support:
Piping resources to monokle.
Doing our internal resource parsing.
(maybe adding functionality like monocli validate folder/ to run monokles checks on yaml, schema checks, checking for dead refs.)

I understand that this is already done, can we close this?

yes - see https://github.com/kubeshop/monokle-cli


Make lint work without a $GOPATH.

What this PR does / why we need it:
Make lint work without a $GOPATH.
Also document the need for $GOBIN to be in developer's $PATH.

Fixes #1373
Signed-off-by: Marcin Owsiany<EMAIL_ADDRESS>

This assumes that golang-lint is in the $PATH, which is isn't always. IntelliJ (not sure about GoLand) doesn't set that, and I didn't see any option to set it.
This is especially problematic as the commit hooks now use the make lint target... tbh, I don't really know a good way around this problem.

FWIW

I use make lint from terminal.. not from IDE so I don't know that pain
I use goland and have a global file watch that runs golangci-lint on changes (saved files).   It basically runs our linter (without make) and honors the .golangci.yml of the project

make lint seems to work in goland terminal...

make lint seems to work in goland terminal...

It does work in the terminal, it doesn't work (for me) in the pre-commit-hook when committing from inside GoLand/IntelliJ. Still, I have to fix this on my side, i guess.


Fix padding calculation, closes #45

Fixes #45
~Untested, but maths checked externally~
~Could probably do with some tests to catch such issues in future.~

You should probably update the PR text to at least say fixes #45, this way it'll be automatically closed. Also, make sure to mark it ready for review.

I thought it worked in the title too, but added to both to be sure.

Oops, forgot one more thing: writePaddedString() needs to be modified as well, otherwise we still have this issue.

I don't see where @chabad360 . It uses the count from writeString which presumably already includes the null terminator. Or do you mean we need to ensure one is added?

We need to ensure one is added.

We need to ensure one is added.
I would just add
buf.WriteByte(0)
n += 1

right after buf.WriteString() (worked for me).

Won't that get a double one if the string already has one (or is that impossible/guaranteed in Go)? Consider:
't', 'e', 's', '\0'
You'd end up sending:
't', 'e', 's', 0, 0, 0, 0, 0

Unless you specifically craft a string to include a null byte string([]byte{0}), a string shouldn't contain one. However, because it's not simple to add a null byte efficiently (nor is it idiomatic), it's safer to assume it's not there. Additionally, all the tests I ran (and some analysis) showed that the library doesn't insert any null bytes.

Very nice. This PR looks good to me.

Thanks @hypebeast . It seems to works for all the test cases @chabad360 came up with and a few edge cases I conjured up too.

Thanks a lot for it.

No worries, not quite the easy fix I first thought, but hopefully should make things better and more standardised all round.

This now passes aside from https://travis-ci.org/github/hypebeast/go-osc/jobs/764014122#L275-L279 which is also present in master @hypebeast .
Looks like this could fix it, but a bit outside my experience:
https://github.com/ipfs/go-ipfs/issues/2043

I would say that issue is probably outside the scope of this PR.

Yes, this is outside of this PR. Let me see if I can fix it ;)
Thanks again for your work @peternewman and @chabad360


Something to keep in mind

Usually if you want to modify hxCodec, you would modify the haxelib itself in a fork, instead of trying to do it on the repo, cuz otherwise you'll just break shit
I know that from experience

👍


⚠ Bofrost.de has degraded performance

In 86a5e7a, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1806 ms

Resolved: Bofrost.de performance has improved in 172c057 after 6 minutes.


support insecure randomness in ABY3 for research uses

After collecting experience from some users, the existing strict requirement of "secure randomness" in ABY3 is a little annoying because the dependency libsodium library is quite slow to download in some areas.
In this commit, I have added the support for "insecure randomness" in ABY3, just like that in Pond and SecureNN. It no longer forces users to install libsodium before using ABY3.

Hi @zicofish, thanks for the PR. I have two requests:

Please run make fmt to apply black, this should be sufficient to pass the linting stage of CI
Please add a test to ensure that this insecure randomness conclusively works when the user does not have secure randomness installed. This could be made possible by temporarily overwriting crypto.secure_random_module = None.

Hi @jvmncs , sure. After running make fmt, it also made some minor changes to some files that I didn't touch in my commit, e.g., tf_encrypted/convert/convert_test.py. Nothing serious though, it just adds/removes blank lines, or moves the import pytest around. Should I commit these together with my changes? (Otherwise it might not pass CI checks?)

made some minor changes to some files that I didn't touch in my commit

Hm, this is strange. I've just tried on the master branch, and it looks like the only thing that changed for me was that the isort changed some imports in some files from the examples directory. Here's my output:
Fixing /.../tf-encrypted/examples/mnist/run.py
Fixing /.../tf-encrypted/examples/mnist/download.py
Fixing /.../tf-encrypted/examples/logistic/training_joint.py
Fixing /.../tf-encrypted/examples/logistic/prediction_single.py
Fixing /.../tf-encrypted/examples/logistic/prediction_joint.py
Fixing /.../tf-encrypted/examples/logistic/training_single.py
Fixing /.../tf-encrypted/examples/house-credit-default/utils.py
Fixing /.../tf-encrypted/examples/house-credit-default/main.py
Fixing /.../tf-encrypted/examples/federated-learning/run.py
Fixing /.../tf-encrypted/examples/federated-learning/download.py
Fixing /.../tf-encrypted/examples/bloom/__main__.py
Fixing /.../tf-encrypted/examples/securenn/network_a.py
Fixing /.../tf-encrypted/examples/securenn/network_d.py
Fixing /.../tf-encrypted/examples/securenn/download.py
Fixing /.../tf-encrypted/examples/securenn/network_c.py
Fixing /.../tf-encrypted/examples/securenn/network_b.py
black tf_encrypted primitives operations examples
All done! ✨ 🍰 ✨
153 files left unchanged.

Probably due to different running environments (black or isort versions).

Probably due to different running environments (black or isort versions).
Anyway, I will just commit my part, and leave others untouched as the remote checks should be consistent with your environment.

@jvmncs , formatted and ensure tests for insecure randomness in a new commit.


Release Flatcar Container Linux  Alpha 3665.0.0, Beta 3602.1.3, Stable 3510.2.5, LTS 3033.3.15

The release of the following Flatcar Container Linux version is planning July 17th, 2023

Alpha 3665.0.0
Beta 3602.1.3
Stable 3510.2.5
LTS 3033.3.15

1. Preparation
Owner: @dongsupark

[x] A. Go/No-Go hackmd doc created from HackMD template for test tracking and release notes: https://hackmd.io/t2_LFF3ZSNaDYMPcvBGoJA?both (@sayanchowdhury)
[x] B. All planned changes are merged & blocker bugs are fixed, last nightly reviewed for problems.
[x] C. Check that the kernel PR are merged for the channel(s) to be released.

2. Build
Owner: @dongsupark

[x] A. Branched off the main branch (only for new major).
[x] B. Tagged all the build branches.
[x] C. Started the Jenkins builds, post the links into this issue as comment.

3. Release
i. The Go/No-Go Meeting
Owner: @sayanchowdhury

[x] A. Test status captured in the HackMD document.
[x] B. All tests are Green.
[x] C. Release notes / announcements added to Go/No Go doc from container/image_changes job by selecting Timestamps: None.
[x] D. QA: Checked the diff for image file list, packages, and image size in the container/image_changes job output.
[x] E. Conduct Matrix Go/No Go meeting (inc. release notes review).

ii. Artifacts goes public
Owner:

[x] A. Created the Release Notes on the scripts repo for the respective tags on GitHub as GitHub Releases.
[ ] B. Ran the container/release Release job.
[ ] C. Images uploaded with copy-to-origin.sh.
[ ] D. Symlink to "current" updated with set-symlink.sh.
[ ] E. Website updated with ./update-flatcar-versions.sh and PR merged.

iii. Payload
Owner: @dongsupark

[x] A. Update payload signed/uploaded.
[ ] B. Release package published in Nebraska (Prerequisite: 3.ii.E should marked done).

iv. Cloud Marketplace & Cluster API
Owner:

A. Azure

[ ] Offers updated and started publishing.
[ ] Sent the offers to publish to Live.

B. GCP

[ ] Offer deployment package uploaded to Google Bucket & submit for verification.
[ ] Offer Publish

C. Cluster API for new Stable

[ ] Azure: Manually run ./azure-sig.sh to create New Shared Community Gallery Images
[ ] OpenStack: documentation

4. Announcements
Owner:

[ ] A. Sent announcement to Mailing Lists
[ ] B. Sent Tweet out to Twitter, and Toot out to Mastodon
[ ] C. Brief version announcement in slack (k8s slack #flatcar) and the Flatcar Matrix channel

Alpha 3665.0.0: http://jenkins.infra.kinvolk.io:8080/job/container/job/sdk/926/cldsv/
Beta 3602.1.3: http://jenkins.infra.kinvolk.io:8080/job/container/job/packages_all_arches/2160/cldsv/
Stable 3510.2.5: http://jenkins.infra.kinvolk.io:8080/job/container/job/packages_all_arches/2159/cldsv/
LTS 3033.3.15: http://jenkins.infra.kinvolk.io:8080/job/container/job/packages_all_arches/2158/cldsv/

Website PR https://github.com/flatcar/flatcar-website/pull/271


update text_classification_with_transformer code example more underst…

Adding argument name [optimizer and loss] in compile method of Keras.…andable

@googlebot I signed it!

Thanx, I have updated and have created a pull request.

Thanx, I have updated the code for ipynb and md [files]

Please fix the black formatting of the file.

I have fixed the black formatting of the file, Thanks.


Questiona about Multi gpus using estimator in tensorflow 1.9

Now I am using estimator to train models in multi gpus.
When I used the original sess.run() and trained in multi gpus before, I found that the batchnorm statistics cannot be shared between multi gpus and had a bad effect on the evaluation result.
So I change the code to tensorflow 1.9 and used estimator to train.
Estimator can support a distributed multi-server environment without changing your model I am not sure if estimator support sharing the batchnorm statistics between multi gpus. And I think this is very important.
So I want to make sure about this.

Thank you for your post. We noticed you have not filled out the following field in the issue template. Could you update them if they are relevant in your case, or leave them as N/A? Thanks.
Have I written custom code
OS Platform and Distribution
TensorFlow installed from
TensorFlow version
Bazel version
CUDA/cuDNN version
GPU model and memory
Exact command to reproduce
Mobile device

@martinwicke any comment on batchnorm with distributed estimator?

It has been 14 days with no activity and the awaiting response label was assigned. Is this still an issue?

Do you mean synchronized? https://github.com/tensorflow/tensorflow/issues/18222


[Bug]: Outputs are different at separate runs

Your current environment

The output of `python collect_env.py`
PyTorch version: 2.4.0+cu121
Is debug build: False
CUDA used to build PyTorch: 12.1
ROCM used to build PyTorch: N/A

OS: Ubuntu 22.04.4 LTS (x86_64)
GCC version: (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
Clang version: Could not collect
CMake version: Could not collect
Libc version: glibc-2.35

Python version: 3.12.7 (main, Oct  1 2024, 08:52:12) [GCC 11.4.0] (64-bit runtime)
Python platform: Linux-5.10.134-007.ali5000.al8.x86_64-x86_64-with-glibc2.35
Is CUDA available: True
CUDA runtime version: Could not collect
CUDA_MODULE_LOADING set to: LAZY
GPU models and configuration:
GPU 0: NVIDIA A100-SXM4-80GB
GPU 1: NVIDIA A100-SXM4-80GB
GPU 2: NVIDIA A100-SXM4-80GB
GPU 3: NVIDIA A100-SXM4-80GB
GPU 4: NVIDIA A100-SXM4-80GB
GPU 5: NVIDIA A100-SXM4-80GB
GPU 6: NVIDIA A100-SXM4-80GB
GPU 7: NVIDIA A100-SXM4-80GB

Nvidia driver version: 535.129.03
cuDNN version: Could not collect
HIP runtime version: N/A
MIOpen runtime version: N/A
Is XNNPACK available: True

CPU:
Architecture:                    x86_64
CPU op-mode(s):                  32-bit, 64-bit
Address sizes:                   46 bits physical, 57 bits virtual
Byte Order:                      Little Endian
CPU(s):                          128
On-line CPU(s) list:             0-127
Vendor ID:                       GenuineIntel
BIOS Vendor ID:                  Intel(R) Corporation
Model name:                      Intel(R) Xeon(R) Platinum 8369B CPU @ 2.90GHz
BIOS Model name:                 Intel(R) Xeon(R) Platinum 8369B CPU @ 2.90GHz
CPU family:                      6
Model:                           106
Thread(s) per core:              2
Core(s) per socket:              32
Socket(s):                       2
Stepping:                        6
CPU max MHz:                     3500.0000
CPU min MHz:                     800.0000
BogoMIPS:                        5800.00
Flags:                           fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 invpcid_single intel_ppin ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm cqm rdt_a avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb intel_pt avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local split_lock_detect wbnoinvd dtherm ida arat pln pts hwp hwp_act_window hwp_epp hwp_pkg_req avx512vbmi umip pku ospke avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg tme avx512_vpopcntdq rdpid fsrm md_clear pconfig flush_l1d arch_capabilities
Virtualization:                  VT-x
L1d cache:                       3 MiB (64 instances)
L1i cache:                       2 MiB (64 instances)
L2 cache:                        80 MiB (64 instances)
L3 cache:                        96 MiB (2 instances)
NUMA node(s):                    1
NUMA node0 CPU(s):               0-127
Vulnerability Itlb multihit:     Not affected
Vulnerability L1tf:              Not affected
Vulnerability Mds:               Not affected
Vulnerability Meltdown:          Not affected
Vulnerability Mmio stale data:   Mitigation; Clear CPU buffers; SMT vulnerable
Vulnerability Retbleed:          Not affected
Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl and seccomp
Vulnerability Spectre v1:        Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Vulnerability Spectre v2:        Mitigation; Enhanced IBRS, IBPB conditional, RSB filling, PBRSB-eIBRS SW sequence
Vulnerability Srbds:             Not affected
Vulnerability Tsx async abort:   Not affected

Versions of relevant libraries:
[pip3] flashinfer==0.1.6+cu121torch2.4
[pip3] numpy==1.26.4
[pip3] nvidia-cublas-cu12==<IP_ADDRESS>
[pip3] nvidia-cuda-cupti-cu12==12.1.105
[pip3] nvidia-cuda-nvrtc-cu12==12.1.105
[pip3] nvidia-cuda-runtime-cu12==12.1.105
[pip3] nvidia-cudnn-cu12==<IP_ADDRESS>
[pip3] nvidia-cufft-cu12==<IP_ADDRESS>
[pip3] nvidia-curand-cu12==<IP_ADDRESS>
[pip3] nvidia-cusolver-cu12==<IP_ADDRESS>
[pip3] nvidia-cusparse-cu12==<IP_ADDRESS>
[pip3] nvidia-ml-py==12.560.30
[pip3] nvidia-nccl-cu12==2.20.5
[pip3] nvidia-nvjitlink-cu12==12.6.77
[pip3] nvidia-nvtx-cu12==12.1.105
[pip3] pyzmq==26.2.0
[pip3] torch==2.4.0
[pip3] torchvision==0.19.0
[pip3] transformers==4.45.2
[pip3] triton==3.0.0
[conda] Could not collect
ROCM Version: Could not collect
Neuron SDK Version: N/A
vLLM Version: 0.6.3.post1
vLLM Build Flags:
CUDA Archs: Not Set; ROCm: Disabled; Neuron: Disabled
GPU Topology:
GPU0    GPU1    GPU2    GPU3    GPU4    GPU5    GPU6    GPU7    NIC0    CPU Affinity    NUMA Affinity   GPU NUMA ID
GPU0     X      NV12    NV12    NV12    NV12    NV12    NV12    NV12    PXB     0-127   0               N/A
GPU1    NV12     X      NV12    NV12    NV12    NV12    NV12    NV12    PXB     0-127   0               N/A
GPU2    NV12    NV12     X      NV12    NV12    NV12    NV12    NV12    SYS     0-127   0               N/A
GPU3    NV12    NV12    NV12     X      NV12    NV12    NV12    NV12    SYS     0-127   0               N/A
GPU4    NV12    NV12    NV12    NV12     X      NV12    NV12    NV12    SYS     0-127   0               N/A
GPU5    NV12    NV12    NV12    NV12    NV12     X      NV12    NV12    SYS     0-127   0               N/A
GPU6    NV12    NV12    NV12    NV12    NV12    NV12     X      NV12    SYS     0-127   0               N/A
GPU7    NV12    NV12    NV12    NV12    NV12    NV12    NV12     X      SYS     0-127   0               N/A
NIC0    PXB     PXB     SYS     SYS     SYS     SYS     SYS     SYS      X

Legend:

  X    = Self
  SYS  = Connection traversing PCIe as well as the SMP interconnect between NUMA nodes (e.g., QPI/UPI)
  NODE = Connection traversing PCIe as well as the interconnect between PCIe Host Bridges within a NUMA node
  PHB  = Connection traversing PCIe as well as a PCIe Host Bridge (typically the CPU)
  PXB  = Connection traversing multiple PCIe bridges (without traversing the PCIe Host Bridge)
  PIX  = Connection traversing at most a single PCIe bridge
  NV#  = Connection traversing a bonded set of # NVLinks

NIC Legend:

  NIC0: mlx5_bond_0

Model Input Dumps
No response
🐛 Describe the bug
The outputs of Lllma3.1 are different at separate runs. I provide a script to reproduce with official docker image vllm/vllm-openai:v0.6.3.post1.  Similar issue #8531
import time
import numpy as np
from vllm import EngineArgs, LLMEngine, RequestOutput, SamplingParams
from vllm.utils import FlexibleArgumentParser

def create_test_prompts():
    test_case = 10 * ["help me create a rust app that supports the elevenlabs.io api "
                      "and that can read the contents of clipboard aloud using tts"]
    sampling_params = SamplingParams(temperature=0.0,max_tokens=770)
    return [(prompt, sampling_params) for prompt in test_case]

def process_requests(engine, test_prompts):
    np.random.seed(0)
    intervals = np.random.exponential(1.0, size = len(test_prompts)).tolist()

    all_outputs = []
    last_time = time.time()
    request_id = 0
    while test_prompts or engine.has_unfinished_requests():
        cur_time = time.time()
        if test_prompts and cur_time - last_time > intervals[0]:
            prompt, sampling_params = test_prompts.pop(0)
            intervals.pop(0)
            engine.add_request(str(request_id), prompt, sampling_params)
            request_id += 1

        request_outputs = engine.step()
        for request_output in request_outputs:
            if request_output.finished:
                all_outputs.append(request_output)

    return all_outputs

def print_outlen(outputs):
    all_outlen = []
    for output in outputs:
        all_outlen.append(len(output.outputs[0].token_ids))
    print(f"{all_outlen=}")
    print(f"{sum(all_outlen)=}")

def initialize_engine(args):
    engine_args = EngineArgs.from_cli_args(args)
    return LLMEngine.from_engine_args(engine_args)

def main(args):
    engine = initialize_engine(args)
    test_prompts = create_test_prompts()
    outputs = process_requests(engine, test_prompts)
    print_outlen(outputs)

if __name__ == '__main__':
    parser = FlexibleArgumentParser(description='Bug repro')
    parser = EngineArgs.add_cli_args(parser)
    args = parser.parse_args()
    main(args)

You can run like
python3 this_scripy.py --model meta-llama/Llama-3.1-70B-Instruct -tp 4

At the end of the output, you may see something like:
all_outlen=[644, 644, 653, 656, 644, 653, 708, 683, 770, 770]
sum(all_outlen)=6825

These are the lengths of the generated text that resulted from 10 requests. If you run this script multiple times, you'll observe different output lengths each time. However, this inconsistency NEVER occurs with meta-llama/Llama-3-70B-Instruct. Additional details: this issue does not appear to be related to chunked prefill, which might differentiate Llama3 from Llama3.1 in vllm. Even if you add the official flag --enable-chunked-prefill=False(this script accepts all official engine arguments), the outputs for Llama3.1 still vary.
cc @simon-mo
Before submitting a new issue...

[X] Make sure you already searched for relevant issues, and asked the chatbot living at the bottom right corner of the documentation page, which can answer lots of frequently asked questions.

Has there been any resolution to this? I've been facing similar issues myself


GEODE-1617: Regions can be created with a variety of characters that …

…are unsupported
Test for valid characters when creating non-internal regions

+1 This change causes Geode to enforce what the techpubs docs already say about Region names.

Ok, good.  The errors are "correct" because regions are being created with invalid names.  I'll update the tests and determine which are internal regions.

Closing this one until I can get the precheckin tests to pass.


Test on arbitary branch

Motivation
Optuna Integration is currently running on the Optuna release version, but proper testing cannot be conducted on the master branch due to Optuna's transitional modules not being removed.
Description of the changes

Add a workflow input to specify which Optuna repository should be used.
Fix tests.

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@14cc833). Click here to learn what that means.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@          Coverage Diff           @@
##             main     #15   +/-   ##
======================================
  Coverage        ?   0.00%
======================================
  Files           ?       9
  Lines           ?     505
  Branches        ?       0
======================================
  Hits            ?       0
  Misses          ?     505
  Partials        ?       0

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

@HideakiImamura Could you review this PR, please?

I confirmed that workflow dispatch input works properly.


WC Digital Style Guide Audit

Objectives
To review the style guide and identify modules to be revised or created
Tasks

[x] Review style guide and identify missing modules
[ ] Meet with Jenn to collect feedback
[ ] Work with Tomi to update style guide

Worth merging into #226

Being dealt with as part of design system audit


Detect malicious packages, for later removal

Looking at the simple package index, there are a number of highly questionable packages (at least so by their names.)
Packages without proper names, authors or descriptions should probably be removed. If not for bloat reasons, but for security concerns.
Stuff like this:

https://pypi.org/project/Aaaaaaaaaaaaaaaaaaa-aaaaaaaaa-aaaaaaasa-aaaaaaasa-aaaaasaa-aaaaaaasa-bbbbbbbbbbb/#description
https://pypi.org/project/0/

There are almost 200K projects on PyPI. We don't have the ability to manually audit each one. How do you propose this should be done?

There are almost 200K projects on PyPI

Exactly! -- And probably 99.9% useless, outdated, fake, deprecated (at best), or possibly containing malware, at worst!

How do you propose this should be done?

:) We are programmers so I'm sure we can figure that out!
How about about searching for packages that:

Has weird name (random or repeated ASCII)?
Has no author
Author has not provided an email
Package has:

No valid homepage URL
No description
No releases in the last 3 years
No downloads/installs in the last 2 years

That's just a start... and would probably remove a siht load of crud.

Another related issue, is that there seem to be some kind of cyber squatting for package names going on there as well. Packages with little or meaningless content but occupies useful names.
How do you plan to deal with that?

Another related issue, is that there seem to be some kind of cyber squatting for package names going on there as well. Packages with little or meaningless content but occupies useful names.
How do you plan to deal with that?

See PEP 541 and #1506.

Thanks for filing this issue, @E3V3A!
Per discussion today, we'll be addressing this problem during upcoming work on automated detection of malicious uploads. In this issue we'll be nailing down our criteria for "how do we determine what is a bad package?" and plans for removing those packages.
(Note that we're distinguishing between a malicious upload and spam, and between malware and typosquatting, and that there are other issues -- like #194, #4319 and #4004 -- that concentrate on filtering re: packages that have noncompliant metadata or no recent releases.)

Per a discussion with @ewdurbin last week:
The work we'll do on automated detection of malicious uploads will first concentrate on finding malicious packages, and building the tools around that. Only after that will we be able to provide automated tools to help PyPI admins remove them.

From #7061:

What's the problem this feature will solve?
Malicious and insecure packages are a challenge in the open source community. Malicious packages have been removed several times in the last few years. Improved automated auditing techniques would make it easier for security specialists to quickly remove malicious packages. Smart bad actors would be able to use the same test suite, certainly, but it would at minimum allow for the vetting of existing packages. Likewise, this would set up an automated process which could be enhanced over time.
Describe the solution you'd like
Python's exec() function is not secure and may be a good heuristic for finding malicious packages. There may be other additional heuristics that make a package appear more suspicious, and a likely target for manual auditing. Add a badge or other indicator for packages that pass/fail these tests.

I'm very interested in this effort and would like to help.  With the fact that there are so many packages here are a few suggestions that I have:

Most legit packages will have a few things in common:

a readme/description
link to source code
2 or more contributors
other common fields filled out such as classifiers

A tally of the top 1000 (or more) top downloaded packages could be collected and compared to others/new

Compare the name of the package to see if it's very similar (typo squatting)
Compare the name of the package to see if it's very different.  This is a common issue with malicious websites and there's a tool to calculate this (https://github.com/MarkBaggett/freq)
Code analysis? This would be a very difficult thing to do I think

Hello friends! I will be working on the backend implementation of the system for adding malware checks. You can track the progress of this work by checking out the malware-detection label.

Hey everyone.
We are currently working on a proof of concept at GitHub to detect malicious code on Package manager.
We are currently setting-up an environment to run our test, but our first step is to use a static analysis tool: CodeQL to model the way certain backdoor works to detect them as they get included into pypi.

Yes, absolutely! I'm actually giving a charla about this system at PyCon, but for interested non-Spanish speakers, I can give the English version during the sprints. Also, I'd really love to get feedback on this contribution documentation, and this sounds like a great way to do that.
https://github.com/pypa/warehouse/pull/7369

@xmunoz Are there any slides of that charla?
Do you guys mantain a database of previous backdoor/malware introduced to pypi ? I have slowly start building my own collection, and I would love to expand it.

For the first question, I'll follow up over email :)
The second question could potentially answered by @ewdurbin.

The malware-detection branch has been merged onto master with PR #7377

I need to develop a tool that detects malicious repositories. can you @xmunoz help me with it?


Add Multi-Screen Window Placement feature

https://webscreens.github.io/window-placement/

Duplicate of #6006.
Excited for that, though!


(Update) Delegate Expiry Information

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

Please describe your changes: ____ Update Delegate Doc discussions about "expiry" causes confusion for CXEs and Customers.  The Flag doesn't do anything by itself.  It is not a "cause" for an issue.
Jira/GitHub Issue numbers (if any): ____ https://harness.atlassian.net/browse/CDS-100739?focusedCommentId=850423
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 all sign our Contributor License Agreement before we can accept your contribution.4 out of 6 committers have signed the CLA.:white_check_mark: Debanitrkl:white_check_mark: SmritiSatya:white_check_mark: dewan-ahmed:white_check_mark: rssnyder:x: nofarblue:x: KinnonYee-harnessYou have signed the CLA already but the status is still pending? Let us recheck it.

Recommend @anshul-harness @jimin-harness @td-harness @deepanshuHarness  review the documentation changes.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://66e23c36fd67e4bedc3086c2--harness-developer.netlify.app

Ignore.  This PR is corrupted


FanzyZones Assumes Taskbar is on Bottom

Microsoft PowerToys version
0.58.0
Running as admin

[X] Yes

Area(s) with issue?
FancyZones
Steps to reproduce
Just rebooted after a Windows update and now all my apps snap beneath the task bar at the top of the screen with a space at the bottom where the taskbar would be if I left it there like 99% of the population.  :)  This occurs on all 3 of my monitors.  Not sure if code is making an assumption on an attempt to recover or if this is something associated with a new update I took.
✔ Expected Behavior
I would expect the zones I've configured to be reliable and not require me to reconfigure them several times a week.  Being said, this one is new and different.
While on the topic, this is still my #1 complaint when it comes to PowerToys.  I still have cases where despite plugging back into the same docking station PowerToys forgets the zones  I've configured (goes back to defaults) and I have to go in and re-select the zones.  (Hmm...maybe I can have a shortcut key auto run at startup.  :)
❌ Actual Behavior
Just rebooted after a Windows update and now all my apps snap beneath the task bar at the top of the screen with a space at the bottom where the taskbar would be if I left it there like 99% of the population
Other Software
No response

The fancy zone configuration I was using was actually still selected so PowerToys did not forget about my monitor setup.  Once I set my task bar to autohide and then back to not autohide, behavior went back to normal.  I've seen Windows do things like this before so perhaps this is a bug in the way Windows is reporting the location of the task bar.  ???

Do you have the canvas layout applied?
Also, a /bugreport may help us investigate the problem.


Added docstrings to python bindings for interval algebra methods in TimeRange

Also re-arranged the overloaded definitions so the TimeRange/RationalTime variants would have consistent ordering.
Here is a summary of what the docstrings in python look like now:
 |  before(...)
 |      before(*args, **kwargs)
 |      Overloaded function.
 |
 |      1. before(self: opentimelineio._opentime.TimeRange, other: opentimelineio._opentime.RationalTime, epsilon_s: float = 2.6041666666666666e-06) -> bool
 |
 |
 |      The end of :param:`this` strictly precedes :param:`other` by a value >= :param:`epsilon_s`.
 |                             other
 |                               ↓
 |                   [ this ]    *
 |
 |
 |      2. before(self: opentimelineio._opentime.TimeRange, other: opentimelineio._opentime.TimeRange, epsilon_s: float = 2.6041666666666666e-06) -> bool
 |
 |
 |      The end of :param:`this` strictly equals the start of :param:`other` and
 |      the start of :param:`this` strictly equals the end of :param:`other`.
 |                   [this][other]
 |      The converse would be ``other.meets(this)``
 |
 |  begins(...)
 |      begins(*args, **kwargs)
 |      Overloaded function.
 |
 |      1. begins(self: opentimelineio._opentime.TimeRange, other: opentimelineio._opentime.RationalTime, epsilon_s: float = 2.6041666666666666e-06) -> bool
 |
 |
 |      The start of :param:`this` strictly equals :param:`other`.
 |                 other
 |                   ↓
 |                   *
 |                   [ this ]
 |
 |
 |      2. begins(self: opentimelineio._opentime.TimeRange, other: opentimelineio._opentime.TimeRange, epsilon_s: float = 2.6041666666666666e-06) -> bool
 |
 |
 |      The start of :param:`this` strictly equals the start of :param:`other`.
 |      The end of :param:`this` strictly precedes the end of :param:`other` by a value >= :param:`epsilon_s`.
 |                   [ this ]
 |                   [    other    ]
 |      The converse would be ``other.begins(this)``
 |
 |  contains(...)
 |      contains(*args, **kwargs)
 |      Overloaded function.
 |
 |      1. contains(self: opentimelineio._opentime.TimeRange, other: opentimelineio._opentime.RationalTime) -> bool
 |
 |
 |      The start of :para:`this` precedes :param:`other`.
 |      :param:`other` precedes the end of this.
 |                          other
 |                            ↓
 |                            *
 |                    [      this      ]
 |
 |
 |      2. contains(self: opentimelineio._opentime.TimeRange, other: opentimelineio._opentime.TimeRange, epsilon_s: float = 2.6041666666666666e-06) -> bool
 |
 |
 |      The start of :param:`this` precedes start of :param:`other`.
 |      The end of :param:`this` antecedes end of :param:`other`.
 |                        [ other ]
 |                   [      this      ]
 |      The converse would be ``other.contains(this)``
 |
 |  finishes(...)
 |      finishes(*args, **kwargs)
 |      Overloaded function.
 |
 |      1. finishes(self: opentimelineio._opentime.TimeRange, other: opentimelineio._opentime.RationalTime, epsilon_s: float = 2.6041666666666666e-06) -> bool
 |
 |
 |      The end of :param:`this` strictly equals :param:`other`.
 |                        other
 |                          ↓
 |                          *
 |                   [ this ]
 |
 |
 |      2. finishes(self: opentimelineio._opentime.TimeRange, other: opentimelineio._opentime.TimeRange, epsilon_s: float = 2.6041666666666666e-06) -> bool
 |
 |
 |      The start of :param:`this` strictly antecedes the start of :param:`other` by a value >= :param:`epsilon_s`.
 |      The end of :param:`this` strictly equals the end of :param:`other`.
 |                           [ this ]
 |                   [     other    ]
 |      The converse would be ``other.finishes(this)``
 |
 |  intersects(...)
 |      intersects(self: opentimelineio._opentime.TimeRange, other: opentimelineio._opentime.TimeRange, epsilon_s: float = 2.6041666666666666e-06) -> bool
 |
 |
 |      The start of :param:`this` precedes or equals the end of :param:`other` by a value >= :param:`epsilon_s`.
 |      The end of :param:`this` antecedes or equals the start of :param:`other` by a value >= :param:`epsilon_s`.
 |              [    this    ]           OR      [    other    ]
 |                   [     other    ]                    [     this    ]
 |      The converse would be ``other.finishes(this)``
 |
 |  meets(...)
 |      meets(self: opentimelineio._opentime.TimeRange, other: opentimelineio._opentime.TimeRange, epsilon_s: float = 2.6041666666666666e-06) -> bool
 |
 |
 |      The end of :param:`this` strictly equals the start of :param:`other` and
 |      the start of :param:`this` strictly equals the end of :param:`other`.
 |                   [this][other]
 |      The converse would be ``other.meets(this)``
 |
 |  overlaps(...)
 |      overlaps(*args, **kwargs)
 |      Overloaded function.
 |
 |      1. overlaps(self: opentimelineio._opentime.TimeRange, other: opentimelineio._opentime.RationalTime) -> bool
 |
 |
 |      :param:`this` contains :param:`other`.
 |                        other
 |                         ↓
 |                         *
 |                   [    this    ]
 |
 |
 |      2. overlaps(self: opentimelineio._opentime.TimeRange, other: opentimelineio._opentime.TimeRange, epsilon_s: float = 2.6041666666666666e-06) -> bool
 |
 |
 |      The start of :param:`this` strictly precedes end of :param:`other` by a value >= :param:`epsilon_s`.
 |      The end of :param:`this` strictly antecedes start of :param:`other` by a value >= :param:`epsilon_s`.
 |                   [ this ]
 |                       [ other ]
 |      The converse would be ``other.overlaps(this)``

Is the :param: syntax for something specific?

The docstrings did have a rendering issue in sphinx. As a note, the majority of the C++ codebase isn't getting picked up by sphinx, I've filed #790 for that.
To check these docs, I commented out this line:
https://github.com/PixarAnimationStudios/OpenTimelineIO/blob/30530a20b476e222c27b1d69073137f2d9502cc9/docs/conf.py#L304
Then added the following to the auto-generated files in api/modules/opentimelineio.rst:
.. autoclass:: opentimelineio.opentime.TimeRange
   :members:
   :undoc-members:
   :show-inheritance:
   :private-members:

Here's an example of the rendered output:

Docs look good.  Do you know if there is a way of getting the function signature to python to not appear as the *args, **kwargs form?  @meshula maybe you know if there is a trick in Pybind11 to get that to advertise correctly?

The fact that it renders ```        .def("contains", (bool (TimeRange::*)(RationalTime) const) &TimeRange::contains, "other"_a)

Because I'm a bit crazy, I've worked through another possible solution. The end result looks like this:
 |  before(...)
 |      before(self: opentimelineio._opentime.TimeRange, other: object, epsilon_s: float = 2.6041666666666666e-06) -> bool
 |
 |
 |      If other is `otio.opentime.RationalTime`:
 |
 |      The end of `this` strictly precedes `other` by a value >= `epsilon_s`.
 |      ::
 |                             other
 |                               ↓
 |                   [ this ]    *
 |
 |      If other is `otio.opentime.TimeRange`:
 |
 |      The end of `this` strictly equals the start of `other` and
 |      the start of `this` strictly equals the end of `other`.
 |      ::
 |                   [this][other]
 |      The converse would be ``other.meets(this)``
 |

Or in the mkdocs render:

To achieve this, I implemented the before binding using a wrapper function instead of overloading:
        .def("before", [](TimeRange self, py::object other, double epsilon) {
                try {
                    auto tr = other.cast<TimeRange>();
                    return self.before(tr);
                } catch (py::cast_error e) {
                    try {
                        auto rt = other.cast<RationalTime>();
                        return self.before(rt);
                    }
                    catch (py::cast_error e) {
                        throw py::type_error("before() argument must be TimeRange or RationalTime");
                    }
                }
            }, "other"_a, "epsilon_s"_a=opentime::DEFAULT_EPSILON_s, R"docstring(
If other is `otio.opentime.RationalTime`:

The end of `this` strictly precedes `other` by a value >= `epsilon_s`.
::
                       other
                         ↓
             [ this ]    *

If other is `otio.opentime.TimeRange`:

The end of `this` strictly equals the start of `other` and
the start of `this` strictly equals the end of `other`.
::
             [this][other]
The converse would be ``other.meets(this)``
)docstring")

If we decide this is the option we want to go with, I'd love some guidance on the idiomatic C++ way to make a reusable form of this since it's used over and over for many methods. It feels like there might be a solution with either templates or method pointers?

With the existing implementation, the legality of RationalTime and TimeInterval is explicit, and can be discovered by introspecting an object.
A downside of this casting method is that the legality of RationalTime is hidden from the runtime, and the invocation of the TimeInterval variant is a side effect of exception handling. That would be a  C++ anti-pattern. More idiomatically, you could ask the other template if a particular cast is legal, and then branch accordingly without invoking exceptions. That said, even casting checks are expensive though.
Ultimately I think hiding the legality of RationalTime from the API is probably too much of a design cost.
Jamming on your idea of a binding, I wonder if there is some other wrapping pattern that preserves the disclosure of legal types in the API, but avoids the ugliness of the kwargs in the autogenerated docs?

@reinecke @meshula My feeling on this is to land this fix and file an issue to improve the bindings at a later time to remove the *args, **kwargs stuff, this is already a nice improvement in documentation.  Sound good to you folks?

@reinecke @meshula My feeling on this is to land this fix and file an issue to improve the bindings at a later time to remove the *args, **kwargs stuff, this is already a nice improvement in documentation.  Sound good to you folks?

lgtm

lgtm

@reinecke @meshula I made an issue to track the discussion around getting away from the *args and **kwargs: #870

@reinecke @meshula I made an issue to track the discussion around getting away from the *args and **kwargs: #870


Running the example main.tf references module "gcp-aws-ha-vpn" but where is that module?

Where is this module referenced or where is its source?

@tedhenry-dp The source for the referred module is root of this repository. Are you not able to run the example?


Changes in Readme.md

Added new resources for Computer Networking and Git-Github. (0-100) complete for free.

@all-contributors please add @shaggyyy2002  for content


Problems whith fptlib python

I still don't understand much about networks and I have to fix a problem that came up with transferring files from one computer to another. I'm using the ftplib library and FileZilla to create a server on the computer that needs to receive the transfer. I'm attaching images of the text that shows up in my program. This is a recent issue; everything was working fine until the internet service provider was changed, and apparently there was an issue with the IPs.
It should be noted that the first and second image comes directly from the code, while the third and four is from a separate window that opened. "If you need more information, let me know because I still don't quite understand if it's a code or server issue.
https://ibb.co/C0KrRcs
https://ibb.co/wMhm3hK
https://ibb.co/xhxRmBd
https://ibb.co/cXRNdZr

Hello @raficulin!
Just making sure, could you please clarify where you are usingwandb? I would be happy to assist you in any way I can but I cannot seem to locate where you use wandb.

Hello @rsanandres-wandb .
there was a mix up, i'm not using wandb


⚠ Bofrost.es has degraded performance

In 2f30831, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 2014 ms

Resolved: Bofrost.es performance has improved in f59ca59 after 10 minutes.


Generator hangs on home.less

Just installed version 0.7.3 and generator hangs when building out the home.less file.
Here are the options selected:
? What is the app's name? appfour
? Which version of Angular should be used? 1.3.*
? What host should the app run on? localhost
? Which port should the app run on? 4000
? Which folder should the app be developed in? app
? Which is the preferred markup language? HTML
? Which is the preferred application scripting language? JavaScript
? Want to use Controller As syntax? Yes
? By default, should the route generator create controllers? Yes
? Should functions be defined and passed instead of defined inline (in callbacks)? Yes
? Want to use named functions instead of anonymous? Yes
? Where should unit tests be saved? app
? Which is the preferred test scripting language? JavaScript
? Which is the preferred unit testing framework? Jasmine
? Which is the preferred e2e testing framework? Jasmine
? Which is the preferred style language? LESS
? Should Polymer support be enabled? No
? Should a framework be setup? Bootstrap with UI Bootstrap
? Should ngRoute be used instead of UI Router? No
? Which additional Bower components should be installed? Angular Animate, Angular Cookies, Angular Messages, Angular Resource, Angular Sanitize, Angular Touch, Font Awesome

....
It creates these files and then hangs at home.less and never completes:
create app/home/home.js
   create e2e/home/home.po.js
   create e2e/home/home_test.js
   create app/home/home-controller.js
   create app/home/home-controller_test.js
   create app/home/home.tpl.html
   create app/home/home.less

Let me know if there is anything else I can provide.

Hi, Jeff. Are you using Node 0.12 by any chance? If so, this is probably a duplicate of #131, which I believe is a Node or Yeoman bug at the moment. This isn't happening on Node 0.10 to my knowledge.
Once ng-poly outputs creating the home module files, you can terminate the session CTRL+C and the project should be good to go. There haven't been any reported issues outside of the initial scaffold. Sorry for the inconvenience.

Yes, I was using 0.12.2. So went back to 0.10.24. Now I'm seeing strange behavior when running gulp after the gen. When I type gulp in the project root, I am taken to the the gulp folder of the project. Typing  gulp from there launches the project. The project seems to run fine from there but never seen that behavior before!?


Fix CI for PRs from forks

Description
Main work is to fix the Build and push new actions to Quay.io action to not attempt to login to Quay from PRs from forks. PRs from forks don't have access to secrets and thus the docker login step fails.
I've also cleaned up the workflow files a bit so that each step has a name and an empty space around it so the files are easier to grok.
I've also added a .envrc so we can make use of direnv + nix-shell.
Why is this needed
Should fix CI that is holding back #60.

@gianarb or @thebsdbox, can you take a look/merge so we can get #61 through the hump.


Auto remove old weekly dev builds

Unfortunately, there is no way I could find to filter out the weekly developer builds from the notation repository.  The weekly developer builds are only useful for 2 weeks at the most.  This also makes it hard for someone to find the last full release.
I propose that the weekly developer build automatically deletes the n-1 or n-2 weekly developer build release and tag so at most there is only one or two developer builds on the release page.

Close it as being stale for more than one year.


Inform user about password syncing not being enabled

If there's an API that lets us check this, check it and disable roaming if password syncing is disabled.
If not, show a warning when enabling roaming, plus mention it in the first run UI.

According to Andy Wigley (MSFT), it can't be done: https://twitter.com/andy_wigley/status/656916864384286720
As such, this can't be done for now. Will re-open if a UWP update ever adds support.


Background highlight does not apply to spaces

Make sure you have done the following

[X] I have updated to the latest version of blink.cmp
[X] I have read the README

Bug Description
I used the following configuration:
    BlinkCmpKindSnippet = { fg = c.base, bg = c.mauve },
    BlinkCmpKindKeyword = { fg = c.base, bg = c.red },
    BlinkCmpKindText = { fg = c.base, bg = c.teal },
    BlinkCmpKindMethod = { fg = c.base, bg = c.blue },
    BlinkCmpKindConstructor = { fg = c.base, bg = c.blue },
    BlinkCmpKindFunction = { fg = c.base, bg = c.blue },
    BlinkCmpKindFolder = { fg = c.base, bg = c.blue },
    BlinkCmpKindModule = { fg = c.base, bg = c.blue },
    BlinkCmpKindConstant = { fg = c.base, bg = c.peach },
    BlinkCmpKindField = { fg = c.base, bg = c.green },
    BlinkCmpKindProperty = { fg = c.base, bg = c.green },
    BlinkCmpKindEnum = { fg = c.base, bg = c.green },
    BlinkCmpKindUnit = { fg = c.base, bg = c.green },
    BlinkCmpKindClass = { fg = c.base, bg = c.yellow },
    BlinkCmpKindVariable = { fg = c.base, bg = c.flamingo },
    BlinkCmpKindFile = { fg = c.base, bg = c.blue },
    BlinkCmpKindInterface = { fg = c.base, bg = c.yellow },
    BlinkCmpKindColor = { fg = c.base, bg = c.red },
    BlinkCmpKindReference = { fg = c.base, bg = c.red },
    BlinkCmpKindEnumMember = { fg = c.base, bg = c.red },
    BlinkCmpKindStruct = { fg = c.base, bg = c.blue },
    BlinkCmpKindValue = { fg = c.base, bg = c.peach },
    BlinkCmpKindEvent = { fg = c.base, bg = c.blue },
    BlinkCmpKindOperator = { fg = c.base, bg = c.blue },
    BlinkCmpKindTypeParameter = { fg = c.base, bg = c.blue },
    BlinkCmpKindCopilot = { fg = c.base, bg = c.text },
    BlinkCmpKindFonts = { fg = c.base, bg = c.blue },
    BlinkCmpKindSupermaven = { fg = c.base, bg = c.yellow },

Prefix space and suffix space haven't background color:

Relevant configuration
No response
neovim version
v0.10.2
blink.cmp version: branch, tag, or commit
main: 1f6a8e20

This is working as intended, but you could get the desired effect by setting ranges on the highlight that go beyond the component on both sides
{
  kind = {
    highlight = function(ctx) return { { -1, 2, group = 'BlinkCmpKind' .. ctx.kind } } end
  }
}

Final configuration:
return {
  "saghen/blink.cmp",
  opts = {
    keymap = {
      ["<A-k>"] = { "select_prev", "fallback" },
      ["<A-j>"] = { "select_next", "fallback" },
    },
    appearance = { nerd_font_variant = "normal" },
    completion = {
      menu = {
        draw = {
          padding = 0,
          components = {
            kind_icon = {
              text = function(ctx)
                return " " .. ctx.kind_icon .. ctx.icon_gap
              end,
            },
          },
        },
      },
    },
  },
}


Can't join running testnet because of "proto: BytesValue: wiretype end group for non-group"

Describe the bug

Clear existing testnet data:

rm -rf ~/.penumbra/testnet_data/

Generate new testnet data:

cargo run --release --bin pd -- generate-testnet

Replace testnet genesis file:

curl -s http://testnet-preview.penumbra.zone:26657/genesis | jq ".result.genesis" > $HOME/.penumbra/testnet_data/node0/tendermint/config/genesis.json

Grab node ID for persistent peers setting:

curl -s http://testnet-preview.penumbra.zone:26657/status | jq ".result.node_info.id"

Add persistent peer to node0/tendermint/config/config.toml:

persistent-peers = "1f778ff9e659b11752620e0bc0d5e0c885267aaa@testnet-preview.penumbra.zone:26657"

Run the node:

docker-compose -f docker-compose.yml -f docker-compose.override.yml up

Expected behavior
The local node should connect to the remote peer and start syncing.  Instead it fails:
tendermint-node0       | 2022-04-24T21:02:40Z ERROR failed to handshake with peer err="proto: BytesValue: wiretype end group for non-group" module=p2p peer={"Hostname":"testnet-preview.penumbra.zone","NodeID":"1f778ff9e659b11752620e0bc0d5e0c885267aaa","Path":"","Port":26657,"Protocol":"mconn"}

The problem was a wrong port on the persistent-peers line:
persistent-peers = "1f778ff9e659b11752620e0bc0d5e0c885267aaa@testnet-preview.penumbra.zone:26657"

should be
persistent-peers = "1f778ff9e659b11752620e0bc0d5e0c885267aaa@testnet-preview.penumbra.zone:26656"

or else Tendermint tries to speak the P2P protocol to the RPC port of the remote node (thanks to @zbuc for the pointer).


build(deps): bump ron from 0.7 to 0.8

Bump ron from 0.7 to 0.8.

Looks like this bumps MSRV.
error: package `ron v0.8.1` cannot be built because it requires rustc 1.64.0 or newer, while the currently active rustc version is 1.61.0

Looks like this bumps MSRV.

I've bumped the MSRV from 1.61.0 to 1.64.0 in .github/workflows/tests.yml.

Given the difference in formats, I rather opt for this one: #414
But I'm not sure how a user would pick one over the other still.


SoftAssert printing same assertion message for all failed test methods

In a Java class I have written around 10 @Test methods. In this class I have created a object(softAssert) for SoftAssert class. In each method at the end of the code I written softAssert.assertAll();
But this line of code printing the first failed assertion message for all the failed methods.
I want to print separate assertion message for each and every method. could any one help me to overcome this.

Hello,
I think stackoverflow or the mailing list is a better start.
BTW,

Which TestNG version are you using? Did you try to upgrade it?
Could you share a test sample?
What is your current output? What is the expected one?

@shivakrishnach31 softAssert object does not clear the list of failed asserts when calling assertAll, so you cannot reuse the same softAssert object in multiple tests. Create a new object at the beginning of every test to fix your problem.

@Mobrockers , It worked now. Thank you.


KAFKA-4218: Add withkey methods to KGroupedStream

This PR aims to add withKey methods to KGroupedStream interface.
This PR is part of KIP-149.
I separated the complete PR into 4 parts as discussed in here. So, this PR concentrates on adding withKey methods to KGroupedStream interface.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6436/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6421/
Test PASSed (JDK 8 and Scala 2.12).

@bbejeck @mjsax @enothereska @guozhangwang reviews please


rbd/file_example: Update debug info

For file_example add debug info support.
For rbd update the debug info and make the config and
size to the same line.
Signed-off-by: Xiubo Li<EMAIL_ADDRESS>

Merged. Thanks.


liburing: 2.1 -> 2.2

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux

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

This now has a lot more dependent packages that I remember! I'm going to close this and retarget this patch to staging — because I can never remember how to do it correctly in the UI.


Fix for invalid example in Request.php

"application/json" media type does not have any parameters (including "charset"):
https://tools.ietf.org/html/rfc7159#section-11
https://www.iana.org/assignments/media-types/application/json

Q
A

Is bugfix?
yes

New feature?
no

Breaks BC?
no

Tests pass?
yes

Fixed issues
-

Thanks.


Deadlock starting BaseTap after stopping it.

With the latest BaseTap fix (on the main branch) (the handler is no longer called on the main queue),
doing a start() tap after it was stopped leads to a deadlock.
The tap in question is the AmplitudeTap.
Starting/stopping the tap from the main queue seems to solve this. Is this the right 'fix' for this problem?

Yes, stopping things from a background queue (specifically a serial queue in a handler) generally leads to deadlocks because the background queue is busy processing data. You can use the main queue or run the code asynchronously on another queue.

Hey @quantamrhino. Can you share a bit more context:

Are you starting and stopping from the same background queue?
What kind of queue is it?
Do you have a stack trace? What is waiting on what?

Waiting on more info, reopen when/if that comes in.


Errors reported on nested multi-line template strings

Hello, I believe I have found in a bug regarding nested template strings, as described below. Minimal cases can be found in this repo. Any component in the array also exhibits this behavior on its own.
IMO this might be connected with #165
As is
When running the linter on a file with nested multi-line templates (tagged or not), stylelint detects Expected empty line before comment (comment-empty-line-before) and Unexpected empty block (block-no-empty) errors. Upon fixing with --fix, the whole file is replaced with extracted CSS with /* dummy comment */ in place of the nested templates. The errors are not shown when the nested template is in a single line (for example ${css`display: block;`}.
Before fix:
import styled, { css } from 'styled-components';

export const components = [
  styled.div`
    ${`
    `}
  `,
  styled.div`
    ${css`
    `}
  `,
  styled.div`
    ${css`
      display: block;
    `}
  `,
];

After --fix:
.selector1 {
  -styled-mixin0: dummyValue;

  /* dummyComment */
}

.selector2 {
  -styled-mixin0: dummyValue;

  /* dummyComment */
}

.selector3 {
}

.selector4 {
  -styled-mixin0: dummyValue;

  /* dummyComment */

  /* dummyComment */
}

.selector5 {
  display: block;
}

To be
No errors should be reported. However, in case of an error, the fixer should not convert JS files to CSS files.
Environment

Node version: v10.0.0
stylelint: "^9.2.1"
stylelint-config-standard": "^18.2.0,
stylelint-config-styled-components": "^0.1.1"
stylelint-processor-styled-components": "^1.3.1"

Nevermind, it was an issue with stylelint-config-standard, someone else in the project has replaced stylelint-config-recommended with it.


DBZ-1861 Modularize the logging doc

This PR modularizes the logging doc so that it can be reused in the downstream doc.
To be clear, the Docker-related procedure (p_configuring-log-level-docker.adoc) is upstream-specific, so it will not be included in the downstream doc.
I will create a separate PR to cherry-pick this to 1.0.

@gunnarmorling I made a minor update based on your comment.

@bhardesty, one other question: that PR adds about twice as many lines as it removes, which makes me think that something else is going on besides plain modularization, which should be large neutral in terms of numbers of changed lines. Any idea, or got something duplicated accidentially?

@gunnarmorling I verified again in the output that nothing was duplicated. I think there are a couple reasons for the high number of line additions: for one, I broke the content into more modules/sections than the original (which adds lines). Also, I've been using the "one thought per line" style, which increases the number of lines (even if the number of words is the same). I've been doing this because it makes future diffs of the doc much easier to review (see the second bullet here: https://github.com/debezium/debezium/blob/master/DOCUMENTATION.md#best-practices).

Gotcha, thanks for double-checking, @bhardesty!

Applied to master and 1.0. Thx, @bhardesty!


<EMAIL_ADDRESS>

<EMAIL_ADDRESS>

Hello @bazelbuild/bcr-maintainers, modules without existing maintainers (glew) have been updated in this PR. Please review the changes.


FIx some typos

--
UWP CI is currently blocked until https://github.com/microsoft/vcpkg/issues/35279 is fixed / https://github.com/microsoft/vcpkg/pull/35116 is merged (#5181 would unblock)

@RickWinter, I do not know at the moment, would need to investigate - #5198.

/check-enforcer override


types: Component cannot be rendered with JSX

Version
3.0.5
Reproduction link
https://codesandbox.io/s/boring-babbage-lgpd9?file=/src/main.tsx
Steps to reproduce
Try to compile declare const Foo: Component; return <Foo />
What is expected?
No errors. <Bar /> should complain about a missing id prop.
What is actually happening?
JSX element type 'Foo' does not have any construct or call signatures

This was broken with h(Foo) too until #3219

Why not use defineComponent?

It's a component passed in to a function from the user. The DefineComponent type mangles required prop types by passing them through ExtractPropTypes again. Component uses ComponentPublicInstanceConstructor which isn't exported. I basically need FunctionalComponent<Props> | ComponentPublicInstanceConstructor<Props>

I mean use defineComponent to create components
const Comp = defineComponent({ /* ... */ })

Comp always conforms to the use in TSX

We do, this is for a config that people can pass components into:
new Vuetify({
  iconSets: {
    fa5: FontAwesomeIcon
  }
})

I need a type that both:

Accepts components of any type (functional or defineComponent)
Lets me render that component (<options.iconSets.fa5 />)

use defineComponent to create components
Again I'm not the one creating these components, but defineComponent doesn't allow functional components. If you pass it a function it turns it into setup instead.

I ended up using { new (): ComponentPublicInstance<Props> } | FunctionalComponent<Props> for this but I'd expect the builtin Component type to just work without any messing around.

I got your point

This is a tricky one, Component should be the most generic valid component type.
TSX requires a type with a constructor to be able to render, which causes problems because Component does not require a constructor, because {} is a valid vue component.
There's no good solution for this, I think the Component is the wrong type to be used with TSX don't know if adding a new type is ideal, but this would probably work:
type ComponentTSX<Props = {}> = Component<Props> & { new (): ComponentPublicInstance<Props> }

declare const Foo: ComponentTSX;
declare const Bar: ComponentTSX<{ id: string }>;

() => [<Foo />, <Foo id="ok" />, <Bar id="ok" />];

I think with that you can't do const Foo: ComponentTSX = props => h(...


Add more stacktrace output to console in travis build

Does this not add an extra check execution to the build? LGTM otherwise

Oh, is the check implied before this change?

yeah. My understanding is that if you don't include the "script" element
it'll detect gradle and automatically call ./gradlew check.  This change
makes it explicit and adds the ''--stacktrace" flag.
On Fri, Sep 9, 2016 at 9:28 AM, Etan Shaul<EMAIL_ADDRESS>wrote:

Oh, is the check implied before this change?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/gcloud-intellij/pull/881#issuecomment-245912621,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHf5HewXuXjKPa8qMwcQfwMFEj3UYBwAks5qoV74gaJpZM4J4_zR
.

ok. 🚢

It looks like you might be right that this is related to having multiple concurrent builds:
https://discuss.gradle.org/t/gradle-check-fails-but-tests-finish-with-success/10214/5

Good find. I'd hate to reduce the concurrency given how slow things are as is. But if we have no other choice we can try it.

And why this tends to happen on the 'pr' build and not the 'push' build is totally perplexing to me.

Maybe one gets pre-empted by the other..
On Fri, Sep 9, 2016 at 2:47 PM, Etan Shaul<EMAIL_ADDRESS>wrote:

And why this tends to happen on the 'pr' build and not the 'push' build is
totally perplexing to me.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/gcloud-intellij/pull/881#issuecomment-246003961,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHf5HX98pIKwDbSU-XDllMvBT-TpV4vQks5qoandgaJpZM4J4_zR
.


Provide an extension for Windows terminal that provides True VI/VIM like experience

I want a way to customize the Windows Terminal (be it "CMD" or "PowerShell" or "Ubuntu" for VI?
For instance/specifically regardless of whether I am running it as PS, Ubuntu, CMD mode of the Terminal editor, I want the file editing experience including saving ( ESC Key, colon, w q ) file edits to reflect the VI/Vim behavior, without requiring me to specifically open VI to get that experience.
File save:--> ESC colon w q
Copy line :--> yy
Copy N lines from cursor :-> Nyy
Delete current line :--> dd
Delete N lines:--> Ndd
string substitute for occurrence between lines 20 and 30:--> 20:30 s/originalPattern/replacePattern/
etc. etc.

I'm sorry, I don't quite understand. Windows Terminal isn't a text editor, and we don't have any plans to become a text editor. Most of the operations you've indicated here require a mutable buffer (deleting lines, substituting strings)... which we just aren't going to have.
There are some shells with Vi-like keybindings (PowerShell + PSReadline in Vi mode, ZSH, Bash with bindkey).
Are you asking for a modal terminal? Are you asking for Terminal to become a text editor?


[Remote Store] Add support to run SegRep integ tests using remote store settings

Signed-off-by: Sachin Kale<EMAIL_ADDRESS>Description

We want to test various scenarios involving replica promotion, peer recovery, index close and re-open with remote store.
These scenarios are already being tested in various integ tests of Segment Replication.
In this change, we re-use the same tests by enabling remote store settings.

Issues Resolved

https://github.com/opensearch-project/OpenSearch/issues/6193
https://github.com/opensearch-project/OpenSearch/issues/6195

Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[ ] Commits are signed per the DCO using --signoff
[ ] Commit changes are listed out in CHANGELOG.md file (See: Changelog)

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

Seeing intermittent issues with org.opensearch.remotestore.SegmentReplicationRemoteStoreIT.testIndexReopenClose. Looking into it.

Closing this PR as created new one with refactored translog download flow: https://github.com/opensearch-project/OpenSearch/pull/6405


Diagram does not auto-refresh when a user corrects an error at the same line without any backspace UmpleOnline

Summary
Within the UmpleOnline, the diagram is auto-refreshed as soon as the user types some code at the code editor. In a sample scenario, when the user faces any error and rectifies that error at the same line without typing a backspace or newline, the system stops auto-refreshing the diagram.
Steps to Reproduce

Click the "Tools" menu item, select the example as "Class Diagrams >> "2DShapes".

Write down some code that will return an error. See the example below where the ending "semicolon" is missing.

The system has returned an error. Now, add a semicolon and wait for the system to refresh the diagram automatically.

The system does not refresh the diagram automatically and still shows the error message.
Expected Feature
The system should refresh the diagram when the user finishing a statement (for example, typing a semicolon);

This only occurs in very special situations. In this case, when there is a key following an erroneous attribute. So in the example case, it looked as though the sinble line said
Date date_dob key {id}

The real issues here is why the edit to add back the semicolon did not trigger a recompilation. Recompilation does not occur if a comment is edited, so it is possible that the same logic is causing the problem,
This issue needs to be explored with other examples to see if it is more general.


Git Dependency fails to install when space exists in User Folder name

Description
I have a user folder that has a space in it eg: C:\Users\Firstname Lastname
Git dependency resolution fails when attempting to clone from C:\Users\Firstname Lastname.paket\git\db\folder into the paket-files folder.
It correctly fetches the repository from a remote github based repo into C:\Users\Firstname Lastname.paket\git\db\folder
Repro steps
Please provide the steps required to reproduce the problem

Create a User with a Space in their User name, this will create a User folder that contains a space

Add git dependency in paket.dependencies

git git@github.com:MyOrganisation/MyRepo.git master build: "powershell build.ps1"

run packet.exe install

Expected behavior
Dependency should be installed in packet-files
Actual behavior
Paket failed with:
Checkout to C:\Working\MySolution\MyProject\paket-files\github.com\MyOrganisation\MyRepo failed.
Message: Could not run "git clone file:///C:\Users\Firstname Lastname.paket\git\db\MyRepo".
Error:
Cloning into 'Lastname.paket\git\db\MyRepo'...
fatal: 'C:/Users/Firstname' does not appear to be a git repository
fatal: Could not read from remote repository.
Known workarounds
None

you don't have a existing git url for me?

I've created a test repo - https://github.com/wzowee/paket-test and stuck the Serilog nuget package in the root which you could use to test the pulling down from a git source.
Just to be clear the issue is with the name of the User folder on a Windows machine if this name has a space in it then the clone from the .paket folder with the user folder fails.

argh. so I need to create a windows user with space. ok let me try that.

Windows username with a space is basically asking for trouble ;)
@forki Try to add some special characters as well, heard lots of funny stories in the past.

@matthid I will not! ;-)


Create an intro

Add an intro about yourself: who are you, what is your strength, why are you here.

This is a comment for the intro


Establish a consistent pattern of Data Dict vs. GlobusResponse for client return values

I've complicated our situation with regard to client methods by introducing the iterators.
Any iterable call yields dictionary objects consisting of individual documents.
That works out really tidily for the Transfer API, where you get an iterator of dicts with DATA_TYPE on each one of them, and everyone is happy.
However, things really start to fall apart when we go back to non-iterable calls.
Those calls used to return a GlobusResponse object, but now they can optionally return data dicts.
For example, TransferClient.get_endpoint() returns a GlobusResponse, but AuthClient.get_identities() returns a dict.
I'm not really concerned about NexusClient.get_goauth_token() because that's deprecated and slated for removal.
I just want us to be consistent among the calls that don't have a behavior that forbids them from returning GlobusResponse.
Since some calls won't have a valid json_body attribute (e.x. they return raw text or HTML), I think the best approach is that we have two forms of calls

Is iterable, every item in the iterator is a dict
Is not iterable, return type is GlobusResponse

Does this seem acceptable? Having a mix of GlobusResponse some places and GlobusResponse.json_body in others has confused me a couple of times, and will likely do the same for others.
An alternative is to actually wrap the results of iterable calls in artificial GlobusResponse objects -- I'm not at all opposed to this, if we want to do that, so long as we do it everywhere.

TransferClient.get_endpoint() returns a GlobusResponse because it's old and I haven't gotten around to changing it to return a dict. For Transfer, I think returning an iterator or dict works for everything. For the cases in auth that aren't JSON, could we just return text body?
I'm also open to the idea of GlobusResponse everywhere, and wrapping the iter somehow, but I prefer returning the actual data, in whatever format it happens to be in, if that doesn't cause too many uniformity problems. I'm less fond of iter/GlobusResponse combo.

I discussed this a bit with Borja, as an abstract problem, to get another opinion about library behaviors.
He said he would prefer that a library gives him objects to raw dicts, which I intuitively agree with.
What about having a new type, GlobusData, from which GlobusResponse might inherit (not necessarily, I'm unsure here), and wrapping iterator responses in that? It also allows us to dangle some metadata off of those objects, like their offset in a result set.

Ok works for me. Maybe we could make the default str just pretty print the data dict, so it's more friendly to use with ipython.

I'll take a crack at this, and I agree that having a good __repr__ and a good __str__ would be really useful.
I like the fact that wrapping all of our return values in simple objects lets us add on attributes without breaking existing client code, even if we don't need that functionality today.
Considering my question answered and this discussion closed. :smile:


Dockerless Calico is Outdated

From @djosborne on July 6, 2016 16:3
Our Dockerless Calico guide has fallen out of date, namely with the introduction of startup.py.
Copied from original issue: projectcalico/calico-containers#1041

We should remove the Dockerless Calico documentation from Master, as it's too outdated. We can recover it later from past relesaes.


Add GitHub actions.

Add GitHub actions.

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@58fc5b3). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main       #2   +/-   ##
=======================================
  Coverage        ?   95.45%
=======================================
  Files           ?        1
  Lines           ?       22
  Branches        ?        0
=======================================
  Hits            ?       21
  Misses          ?        1
  Partials        ?        0

Continue to review full report at Codecov.

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


cli with clap derive

clap derive feature so our cli is more expandable and modular
config.toml arg for later parsing, see https://github.com/primitivefinance/arbiter/issues/33

made the requested changes


New theme and improved startup times

I've created a new theme, dbye.zsh-theme, which is based largely on the clint prompt theme that ships with zsh, but which has support for displaying current Ruby version for those using rvm or rbenv. The git repo part of the theme is taken from the existing kolo oh-my-zsh theme, with some minor alterations. I've included fairly thorough comments in the file.
I have also removed the calls to compinit in the extract and bundler plugins, which, for me at least, results in a much improved startup time, going from a life-sapping 3 seconds average to a much snappier, happy-making 0.2 seconds average. I don't use those plugins on a daily basis, but have tested my changes and believe they don't break anything. compinit only needs to be called once, I think, and I believe the oh-my-zsh.sh script does that in the correct place to pull in all compdefs declared during inclusion of themes and plugins.
Thanks for oh-my-zsh - it's got me interested in learning more about this excellent shell.

It would be nice to have this as separate pull requests (optimizations and new theme).
Can you provide that please?


Publish Release Workflow

TODO before merge:

[x] test the workflow
[x] set on tag back to release: types: [released]
[x] remove dry-run in request body

Test dry-run here: https://github.com/Rayji96/foundry-V5/actions/runs/9154117434/job/25164123483
Things to note, I couldn't actually test ${{ github.event.release.tag_name }} because it wasn't run on an actual release trigger event. Fingers crossed that when we do a real release that this works.

Looks good to me!


Example of using a Unified Matcher in a VirtualHost

Title: Example of using a Unified Matcher in a VirtualHost
Description:
Under the Route Components doco page I notice there's a new matcher option that states:

Only one of this and routes can be specified.

Am I correct in my reading this is intended to allow us to express our routing logic in the Unified Matcher format instead of the typical routes format? If so, I feel there should be a doco page that gives some unified matching examples and "before and after" comparisons between traditional route logic and the new unified matcher.
I'm happy to contribute this doco myself, but I can for the life of my identify what TypedConfig to set as the action attribute on the OnMatch config element. Is there some TypedConfig equivalent to RouteAction/RedirectAction/DirectResponseAction that I'm missing?
TIA
Jake
Relevant Links:

Route Components
Unified Matching
OnMatch

Upon digging deeper, it seems the CustomResponse objects are the Unified Matcher equivalent to RedirectAction/DirectResponseAction.
This answers two thirds of my question, but what is the equivalent to the RouteAction object?

I eventually found a document demonstrating the integration here. I'm gonna close off this request but I'll have a think on how the documentation could be updated to be more discoverable for this use case.


Add changelog to GitHub releases

Could you make the changelog directly visible in your GitHub releases?

I think this is a really good idea and something like https://skywinder.github.io/github-changelog-generator/ could be used to generate the changelog based on merged PRs and closed issues since the last release tag.

Change Log
Unreleased
Full Changelog
Closed issues:

Latest version in PPA is outdated on every Ubuntu version except trusty #285

v0.2.8 (2017-06-21)
Full Changelog
Implemented enhancements:

Please don't execute GnuPG directly #262

Closed issues:

New 7.0 release not being updated to #276
SIGNATURE VERIFICATION ERROR #275
On verification error, torbrowser-launcher should try refreshing gpg key #271
Launcher crashes on systems lacking the correct GPGME Python bindings #267
Tor unexpectedly exited #252

Merged pull requests:

Update version_check_url #279 (boklm)
Apparmor: adjust profile for Tor Browser 7.0.1, support multiprocess Firefox, and various small maintenance changes #277 (intrigeri)
Automatically refresh GPG keyring on startup and on signature failures. #272 (dephekt)
Fix gnome-shell icon issue #270 (femmetasm)
Add error handling for GPGME imports and add logic to shell out if the module is not present #268 (dephekt)
Use GPGME Python bindings for GPG operations #266 (dephekt)
Add Hungarian Language Support #265 (blackPantherOS)
Created a Czech translation #264 (mrksu)

v0.2.7 (2017-01-27)
Full Changelog
Closed issues:

New Tor Browser signing subkey  #260
Signature verification failed #248
Apparmor profiles from torbrowser-launcher 0.2.6-2 on debian jessie is broken. #246
Installing via "Tor Browser Launcher Settings" causes AttributeError (0.2.5) #241

Merged pull requests:

AppArmor: support merged-/usr systems. #256 (intrigeri)
Update locales #255 (NaruTrey)
Update AppArmor profile to allow Tor to run #243 (u451f)
AppArmor: deny access to DRM nodes (/dev/dri/*), to decrease attack surface a bit #242 (intrigeri)

* This Change Log was automatically generated by github_changelog_generator


[Bug]: openai agent uses invalid tool name to lookup function

Bug Description
The OpenAIAgent with QueryEngineTools created with SQLTableRetrieverQueryEngines appears to look up functions using invalid tool names as in if the available tools are named Tool_A and Tool_B it sometimes uses tool name as Tool_A.Tool_A or Tool_A.Tool_B when the intended tool name to use is just Tool_A to lookup the function.
This happens with the gpt-4-1106-preview model but not if I use gpt-3.5-turbo.
Version
0.9.21
Steps to Reproduce
Create an OpenAIAgent with a few tools and run a query() or chat() call to observe the problem when using the gpt-4-1106-preview model.
Relevant Logs/Tracbacks
File "test.py", line 23, in query
    return str(self.agent.chat(query_str))
  File ".venv/lib/python3.10/site-packages/llama_index/callbacks/utils.py", line 39, in wrapper
    return func(self, *args, **kwargs)
  File ".venv/lib/python3.10/site-packages/llama_index/agent/runner/base.py", line 473, in chat
    chat_response = self._chat(
  File ".venv/lib/python3.10/site-packages/llama_index/agent/runner/base.py", line 431, in _chat
    cur_step_output = self._run_step(task.task_id, mode=mode)
  File ".venv/lib/python3.10/site-packages/llama_index/agent/runner/base.py", line 293, in _run_step
    cur_step_output = self.agent_worker.run_step(step, task, **kwargs)
  File ".venv/lib/python3.10/site-packages/llama_index/callbacks/utils.py", line 39, in wrapper
    return func(self, *args, **kwargs)
  File ".venv/lib/python3.10/site-packages/llama_index/agent/openai/step.py", line 573, in run_step
    return self._run_step(
  File ".venv/lib/python3.10/site-packages/llama_index/agent/openai/step.py", line 470, in _run_step
    self._call_function(
  File ".venv/lib/python3.10/site-packages/llama_index/agent/openai/step.py", line 357, in _call_function
    EventPayload.TOOL: get_function_by_name(
  File ".venv/lib/python3.10/site-packages/llama_index/agent/openai/step.py", line 51, in get_function_by_name
    raise ValueError(f"Tool with name {name} not found")
ValueError: Tool with name MyToolName.MyToolName not found

@dosu-bot
The problem happens intermittently with the gpt-4-1106-preview model. It does not happen with the gpt-3.5-turbo model.

Hey, @vjr!
I was trying to reproduce but was unable to. Tried several times but function (tool) names were always right.
Is this code good to reproduce the issue?
from llama_index.agent import OpenAIAgent
from llama_index.llms import OpenAI
from llama_index.tools import QueryEngineTool, ToolMetadata

from my_query_engine import query_engine  # SQLTableRetrieverQueryEngine

query_engine_tools = [
    QueryEngineTool(
        query_engine=query_engine,
        metadata=ToolMetadata(
            name="Tool_A",
            description="Use it for salaries stats",
        ),
    ),
    QueryEngineTool(
        query_engine=query_engine,
        metadata=ToolMetadata(
            name="Tool_B",
            description="Use it for weather data",
        ),
    ),
]

llm = OpenAI(model="gpt-4-1106-preview")
agent = OpenAIAgent.from_tools(query_engine_tools, llm=llm, verbose=True)

agent.query("what about salaries and weather?
Calling function: Tool_B with args: {"input": "weather"}

hi @stepdi yes the issue does not seem to be occurring any longer.
i had monkey-patched (is that the right phrase?) a couple of the call_function APIs to fix the tool names and have now removed them.
i suspect it was the openAI llm that was sending incorrect tool name and has been fixed there perhaps?
thank you.


Game design document

[x] #33
[x] #34
[x] #35
[x] #36
[x] #37
[x] #38
[x] #39
[x] #40
[x] #41
[x] #42
[x] #43
[x] #44
[x] #45

All subtasks have been completed.
GDD: https://docs.google.com/document/d/1iHbk6SjNvEBSYVCmc0KMylksYg6bwNcP/edit#


Configurable alarm threshold

lambda-cfn built-in function alarms have a very low default, very log being zero:
https://github.com/mapbox/lambda-cfn/blob/master/lib/artifacts/alarms.js#L42
This threshold should be left to the implementation of lambda-cfn to reduce the amount of alarm noise from service failures when appropriate.

Deployed!


Specific songs[request]

This mod is named "music control" but you can specify what specific songs can play or what can't. Can you add option to do it?

I was thinking about that recently but this will need lot of work. Stay tuned!

I guess I won't be able to do this until I found out how to play specific songs, just like for thsese: Play previous song, and Repeat song. I'll keep searching but I may release a new version before these changes

Hi, I won't have time to add this new feature for now because I got a lot of works. I'll try to update it before 1.18 but not so sure, I'm sorry. But I won't forget you ;)

I know it has been a while, but I'm finally working on it!
It should come in the next mod update, next month I guess =)

I know it has been a while, but I'm finally working on it! It should come in the next mod update, next month I guess =)

Yeeeey! <3

Oh wait I thought this issue was play a specific song but it's actually being able to choose what can be played!
Well only one part is done, sorry. The rest is not done yet

I hope you gonna love it! In my opinion, it's amazing 😃


Feature request: add tag by name.

I'm using static monitors feature with a file like:
type = "http"
name = "Static Toml Example"
url = "https://example.com"
[[tags]]
tag_id=1
value = "example"
[[tags]]
tag_id = 2
value = "other value"

Please add a query to Uptime Kuma to get an existing tag ID by its name when a tag name is provided by label or by TOML file.
Using tag_id isn't very user-friendly.
The file would then be:
type = "http"
name = "Static Toml Example"
url = "https://example.com"
[[tags]]
name = "My Tag"
value = "example"
[[tags]]
name = "OtherTag"
value = "other value"

AutoKuma is great work. Thank you !

AutoKuma can now refer to labels created by autokuma by its autokuma id, lookup by name is not possible as they are not unique. Please note that the master currently contains some breaking change so make sure to read the CHANGELOG if you want to test the feature.