feat: crypto nonce randomness

Description
Currently default nonce generation is using Math.random, a pseudorandom source of randomness. We can take advantage of better tools when they are available
Fixes SDK-1194
How Has This Been Tested?
Updated and new unit tests
Checklist:

[x] My changes follow the guidelines in CONTRIBUTING.md.
[x] The title of this PR complies with Conventional Commits.
[x] I have edited the CHANGELOG accordingly.
[x] I have made corresponding changes to the documentation.

I was aiming initially to reproduce the behavior of Math.random, but I agree that yielding a random integer is preferable. I'll simplify, using your recommendations


additionalProperties in items

Hi,
I have encountered the following behavior. For a schema:
{
    "type": "object",
    "properties" : {
        "list": {
            "type": "array",
            "items": {
                "type": "object",
                "properties": {
                    "x1": {
                        "type": "string"
                    }
                },
                "additionalProperties": { "type": "number" }
            }
        }
    }
}

I try to validate a document:
 {
         "list": [ { }, { "x1" : "foo"}  ]
 }

This fails with:

[ {
"evaluationPath" : "/properties/list/items/additionalProperties/type",
"schemaLocation" : "https://harrel.dev/e6182f0b#/properties/list/items/additionalProperties",
"instanceLocation" : "/list/1/x1",
"keyword" : "type",
"error" : "Value is [string] but should be [number]"
} ]

If I remove the first element of "list" it passes.

Yeah, this indeed looks strange. Yet I might have an idea what's causing this - gonna try to fix it later. Thanks for reporting it!

Thanks for looking into it.
I found another issue which is probably related. Given the schema
{
    "type": "object",
    "properties": {
        "x": {
            "type": "object",
            "properties": {
                "a": {
                    "type": "string"
                }
            },
            "additionalProperties": false
        },
        "y": {
            "type": "object",
            "properties": {
                "a": {
                    "type": "string"
                }
            },
            "additionalProperties": false
        }
    }
}

the input
  {
             "x": {}, "y": { "a" : "foo" }
   }

comes back with:
[ {
  "evaluationPath" : "/properties/y/additionalProperties",
  "schemaLocation" : "https://harrel.dev/2c848018#/properties/y/additionalProperties",
  "instanceLocation" : "/y/a",
  "keyword" : null,
  "error" : "False schema always fails"
} ]

And again, if I remove the "x", it it passes.

I thought the issue would be that there is a property with the same name ("a") in two subobjects/items, but that does not matter:
{
    "type": "object",
    "properties": {
        "y": {
            "type": "object",
            "properties": {
                "a": {
                    "type": "string"
                }
            },
            "additionalProperties": false
        },
        "z": {
            "type": "object",
            "properties": {
                "b": {
                    "type": "string"
                }
            },
            "additionalProperties": false
        }
    }
}

fails:
  {
                             "y": { "a": "foo"}, "z": { "b" : "foo" }
  }

@holgpar Just released version 1.5.0 with the fixes (and also format validation support). Thanks again and feel free to reopen or file new issue if something is still not working for you.


Move social integrations to an independent pod

[x] Facebook
[ ] Twitter
[ ] Google+

Created Lock-Facebook for FB integration


Access to contact lists on phone it was very slow after call save Method !

Please support me ! When i call save() method to modify contact.It was sccucess.But i notify ,after that access to contact lists on phone it was very slow .How can i fix it ?

@janpio can you support me ?

No. (Don't mention people to pull them into your issue. If someone wants to respond, they will.)

We are archiving this repository following Apache Cordova's Deprecation Policy. We will not continue to work on this repository. Therefore all issues and pull requests are being closed. Thanks for your contribution.


the warning is not stop

VSCode Version: Code 1.9.0 (27240e71ef390bf2d66307e677c2a333cebf75af, 2017-02-02T08:31:00.827Z)
OS Version: Windows_NT ia32 6.1.7601
Extensions:

Extension
Author
Version

Steps to Reproduce:

Please provide some information about the problem you are seeing and some repo steps.
Thanks

Closing as not actionable without more info


Apple silicon (MPS backends) support?

Support running on Macbook?

It should work out of the box !
Performance is not optimized, we haven't even started metal backend either but it's on the roadmap !
We still did one round to optimize before even using accelerate, and we're ~1.5,2x slower than accelerate with purely custom code. I hope we can replicate the same performance for Q4 (which is the end target for M1 imo).
https://github.com/LaurentMazare/gemm/pull/5
https://github.com/LaurentMazare/gemm/pull/6
Original repo and credits for the actual performance tricks: https://github.com/sarah-ek/gemm (We forked with sarah-ek 's blessing, we'll hopefully merge upstream no too far in the future).

This would be a huge addition. Have you thought about https://github.com/philipturner/metal-flash-attention for the flash attention alternative ?

I wasn't aware of that project.
In general for adding backends the biggest thing we can do is adding support for custom ops from day1, wether it's metal webgpu or rocm. That's because we cannot build ALL the ops for all the backends in a timely fashion.
However having used quite a bit of frameworks, usually you need only 1 op for your particular use case (like f16 conv2d, or flash, or GPTQ), and you don't care about making sure it works with backprop and 200 other ops and op order.

Thanks, that makes sense. Are you planning to add apple MPS support in version 2.0 ?

https://github.com/huggingface/candle/issues/360
Here is the current ideas floating around so not really.
But it might happen sooner than expected sometimes we start checking out something and find out it's relatively simple so we just go on and add it.

I am also for MPS support.

Any idea when MPS support will be launched ?

Would a Vulkan compute shader backend get a close performance to MPS?

Someone like @philipturner could comment on this.

Would a Vulkan compute shader backend get a close performance to MPS?

Both Vulkan and MPS would have terrible compute performance. Both less than 50% of the max utilization for some important use cases. Vulkan like 20%, as slow as just running on CPU/Accelerate. GEMM and related ops are very difficult to get right with custom shaders. LLaMA.cpp is an exception, they can make custom Metal shaders because the compute bottleneck isn't the type of operations that require a lot of expertise.
To use Vulkan shaders, you either need GLSL (archaic) or WGSL. The latter is more advanced, but still lacks some very important features to reach maximum GPU performance. We're talking a factor of 3 times slower in the parts that matter in some instances. You need SIMD reductions, SIMD matrix multiplications, etc. None of those are available in any API except Metal (though I did backdoor the macOS-only OpenCL framework for a portion of those, but OpenCL doesn't work on iOS). For MPS, the lack of control over CPU-side overhead can cause major issues for small data sets.
Also, people generally don't consider CPU-GPU communication latency or GPU command encoding overhead as something to optimize for. They write a CPU-side wrapper in a host language that eagerly dispatches the GPU commands one-at-a-time. CUDA was optimized for this, but Metal was optimized for a completely different usage pattern. However, Apple's OpenCL driver interestingly does have the automatic batching present in CUDA and ROCm.

Does accelerate run on ANE ? I have observed that the performance does not
scale for more than a single rayon thread when using accelerate. Wouldn’t
MPS be better in this case as ANE is smaller compared to the apple GPU ?
On Fri, 17 Nov 2023 at 1:29 AM, Philip Turner @.***>
wrote:

Would a Vulkan compute shader backend get a close performance to MPS?
Both Vulkan and MPS would have terrible compute performance. Both less
than 50% of the max utilization for some important use cases. Vulkan like
20%, as slow as just running on CPU/Accelerate. GEMM and related ops are
very difficult to get right with custom shaders. LLaMA.cpp is an exception,
they can make custom Metal shaders because the compute bottleneck isn't the
type of operations that require a lot of expertise.
To use Vulkan shaders, you either need GLSL (archaic) or WGSL. The latter
is more advanced, but still lacks some very important features to reach
maximum GPU performance. We're talking a factor of 3 times slower in the
parts that matter in some instances. You need SIMD reductions, SIMD matrix
multiplications, etc. None of those are available in any API except Metal
(though I did backdoor the macOS-only OpenCL framework for a portion of
those, but OpenCL doesn't work on iOS). For MPS, the lack of control over
CPU-side overhead can cause major issues for small data sets.
Also, people generally don't consider CPU-GPU communication latency or GPU
command encoding overhead as something to optimize for. They write a
CPU-side wrapper in a host language that eagerly dispatches the GPU
commands one-at-a-time. CUDA was optimized for this, but Metal was
optimized for a completely different usage pattern. However, Apple's OpenCL
driver interestingly does have the automatic batching present in CUDA and
ROCm.
—
Reply to this email directly, view it on GitHub
https://github.com/huggingface/candle/issues/313#issuecomment-1815224269,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAXGU4FCVKJ6C2FQ67ZOL2DYEZWARAVCNFSM6AAAAAA3CAKKACVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMJVGIZDIMRWHE
.
You are receiving this because you commented.Message ID:
@.***>

I put in some performance metrics for the M1 Max chip, to give some context.

Python:

1 GFLOPS FP64

"Fast" programming languages (e.g. C, C++, multithreaded Rust):

400 GFLOPS FP64
800 GFLOPS FP32
1600 GFLOPS FP16

Accelerate runs on the CPU. It uses the AMX coprocessor, a hardware-accelerated matrix multiplier for the CPU. Its primary benefit is low latency and usage in very difficult-to-parallelize tasks, like matrix factorization. The way this hardware works, every group of 4-6 CPU cores comes with a single accelerator. In many cases, multithreading or using multiple accelerators (e.g. M3 Max, with two P-blocks) actually harms performance. Accelerate automatically promotes supermassive tasks to 2 threads when appropriate.

AMX via Accelerate:

800 GFLOPS FP64
3000 GFLOPS FP32
6000 GFLOPS FP16 (not exposed by Accelerate)

Metal runs on the GPU. MPS is a proprietary closed-source library with some GPU kernels. MPSGraph is a domain-specific language for Swift, which automatically uses the ANE on certain devices. On iPhone and M1 (non-Pro), you can sometimes activate ANE by using FP16 and a supermassive matrix (4000 x 4000 x 4000). Generally, it's only 2x as fast as the GPU for GEMM. I wrote a library that's an alternative to MPS, and only uses the GPU. But it gives you more programmatic access to the GPU and implements GEMM algorithms better than Apple's MPS team.

GPU via Vulkan

2500 GFLOPS FP32
2500 GFLOPS FP16

GPU via OpenCL

2500 GFLOPS FP32
0 GFLOPS FP16

GPU via MPS

7000 GFLOPS FP32
7000 GFLOPS FP16

GPU via MFA

8500 GFLOPS FP32
10000 GFLOPS FP16

ANE is very hard to get full programmatic access to. Behind the scenes, it's a programmable fused multiply-add engine. You have to hard-code the weights into the assembly language, and it only supports FP16, so it can't be used for AI training. Not very useful for general-purpose compute, just for AI inferencing through CoreML.

ANE via MPSGraph: 4000 GFLOPS FP16
ANE advertised perf: 16000 GFLOPS FP16

Thanks. This is super useful. Can MFA support quantized operations as well (4 bit, 5 bit) ? If yes, then what kind of benchmarks should one expect ? What would be a good starting point for a rust developer ?
FYI, significant metal development is already in progress for candle framework.

I just realized that pytorch has got some Metal shaders (https://github.com/pytorch/pytorch/tree/c233cef8fd648157fbaf85e1f2493562316a1ec4/aten/src/ATen/native/metal/ops). Might be useful for the candle Metal backend

https://github.com/huggingface/candle/commit/a0010898ccd2ddcf7f5e801b7a42945bb5728a36

This is not really Metal, just some CPU code that calls into MPS.

I just realized that pytorch has got some Metal shaders

PyTorch's shaders are very basic elementwise ones. Similar to LLaMA.cpp in scope. The difficult/important one is GEMM-like operations, which are non-trivial to optimize.

Thanks. This is super useful. Can MFA support quantized operations as well (4 bit, 5 bit) ? If yes, then what kind of benchmarks should one expect ? What would be a good starting point for a rust developer ?

I made MFA so that you can modify it yourself. You can make a fork, tweak the shaders, support different quantizations if you want. Although at least for SDXL, it's advantageous to dequantize into a separate buffer before running GEMM. Less effort to write a new shader, potentially faster (due to less redundant compute).

I have had a chance to look into MFA earlier. To be honest the project is intimidating to get started with. The documentation is scarce. A quick comparison would be https://github.com/Dao-AILab/flash-attention. If this entry barrier is removed, I am sure I could introduce MFA to my group of developers.

It's ~500-1000 lines of shader code for GEMM and another ~500-1000 for Attention. The source files are mostly self-documenting, with a lot of Metal function constants. You can enable or disable each function constant while creating the MTLComputePipelineState. There's also two reference implementations of how to use MFA from the Metal API. One in Swift, another in C++.
The matrix dimensions need to be known at pipeline creation time. That way, some clever constant folding magic in the backend compiler will happen. It's extremely simple, but extremely powerful code generation. Executed much more effectively and robustly than MPS. The function constants describing matrix dimensions are usually capital letters. Examples: M, N, K for a classic M x N x K matrix multiply. The constant names are designed to be concise and simple to understand.
I pre-compiled some Metal binaries and hosted them on the GitHub releases page. That removes the need to download esoteric Xcode versions and go through the complex build process. Just copy the binary file and load the .metallib. I can make a ~100 line Swift script that does this and executes a GEMM. I could even dig up one from a SwiftUI iOS app from a while ago.

@ivarflakstad any interest in commenting? This is a Rust framework trying to use Metal for matrix multiplication.

Yes! I'm actually involved in this work already working with @Narsil.
#1230 contains the initial work, which has been split into several PRs (#1309, #1323, etc).
We've also been working on adding mps support to metal-rs here
I began working on a wrapper around metal flash attention here, but haven't had time to complete it. GEMM works though😊
It's a bit too opinionated at the moment so a bit of refactoring would be good as well.

As a comment on documentation, dauntingness, etc I found the metal code itself fairly straightforward (after taking into consideration that we're talking about GPGPU GEMM).
It was the actually the swift tests orchestrating the metal execution that took me a while to understand. Calculating the correct values for func constants, async pipeline, cached operations etc.
Finding the minimal working example was key. Often is😊

Also, MFA is currently not running optimal on the new A17/M3 architecture. Requires some major rewriting, which should get funded next summer. In the meantime, use MPS for FP32 GEMM and MFA for Attention.

As a comment on documentation, dauntingness

My primary interest is in a different field. I do document stuff very well when I want to (example). Just doing MFA as work during the summers.

It was the actually the swift tests orchestrating the metal execution that took me a while to understand. Calculating the correct values for func constants, async pipeline, cached operations etc.

When you write your own codebase, and write both the Swift and C++ impl, this is the result. I do try to make the code as legible as possible, using modern coding practices. The unit tests got really unwieldy, just enough to "do the job" given time constraints.
The tensor library, I wrote from scratch. I needed to bypass issues with CPU overhead to properly benchmark performance. Batching almost 100 GPU commands into a single command buffer, yet using an API that's semantically eager. A bit of compiler/DSL engineering.

I found the metal code itself fairly straightforward (if we take into consideration that we're talking about GPGPU GEMM, flash attention, and pushing the limits of what is possible with Metal).

I remember boasting to Tristan Dao about having the shortest, most elegant implementation on his list (inspired by Tinygrad). Other codebases are at least tens of thousands of lines, took >1 month to fully comprehend them. Also I came up with FlashAttention-2 independently before Tristan released the algorithm.

Thanks for clearing it out. This looks very impressive from where I stand. I come from Molecular Simulations background as well, I worked on OpenMM in 2011-15, it's early days.
Finding a minimal working example was the issue for me when I briefly went through MFA. @philipturner a working 100 lines swift example would be great, if you could spare some time. Thank you.

If you're interested contributions are very welcome, @okpatil4u 😊

It may be an older iteration of the Metal function constants API, but here (200 lines): https://gist.github.com/philipturner/60c9b196a2e9361f1ec15a99a9267268

Thanks @philipturner @ivarflakstad, I will look into it.

I wonder if Apple fixed the sequential throughput bottleneck in their drivers with the M3 generation. I'll have to benchmark my A17 Pro when I have the time.

Just had a quick check, both metal and accelerate are yielding the same speedup.

Quantized is still using CPU as CPU is hardcoded for now.

On quantized or metal support?
Metal support is progressing, but I've been stuck on a weird bug where there are NaNs in the buffer on lhs of matmul. To make it even more fun it's not deterministic either.
Testing out alternatives though.

I was checking for metal support. Apple recently released MLX. Not sure if you had any chance to look at it. Mistral 16bit example is pretty fast and prompt evaluation time is almost non existent. Which removes the need of flash attention. Something that even llama.cpp lacked for apple silicon architecture.
It even has c++ api that could be readily used. Would this be useful for what you are working on ?

Yes, I saw it :) Very cool stuff.
Taking inspiration from the kernels is especially interesting to me.

Their GEMM kernels are slower than MPS because they don't use SIMD-group async copy instructions. This is the reason MFA was so finicky. You had to use an older Xcode toolchain to access the hardware instructions that Apple hid from the official shading language. I doubt MLX did rigorous benchmarks of how well their code performs across all possible matrix sizes.

Metal/MPS support has been added for a couple months now, let's close this issue and open new ones if new problems arise.

Point me out please what should I do to use Candle with Mac M1 GPU support. I was unable to find it reading the README file.

It already utilizes the GPU. GPU utilization depends on several factors. Note that not all operations are able to make use of GPU. This goes for all computations in general, not just AI. To utilize the GPU, the number of computations to memory transfers must be extremely high. For example, LLMs make poor use of GPUs and excellent use of CPUs because they are memory bandwidth bound.

My goal is to load MADLAD-400 on my Macbook M1 8GB (the only hardware I have). I'm forced to use a quantized .gguf version of this model. The only way to achieve this goal is via Candle (as described in the official Google MADLAD-400's HF repo).
Regularly, I'm using LLAMA CPP to run the quantized models. And, in case of 4bit quantization of 7B and even 8B models (latest LLAMA 3), it performs quite fast on GPU.
Meanwhile, when I'm trying to run MADLAD-400 7B or even 3B with candle, I see that the GPU resources are not used at all. Looks like even CPU resources are not used in a full power. And I see only 1 token/sec maximum, which make it useless for me.
I suppose that I need to use some additional parameter to run it or compile it another way.
I'm using this approach from the documentation:
cargo run --example quantized-t5 --release  -- \
  --model-id "jbochi/madlad400-3b-mt" --weight-file "model-q4k.gguf" \
  --prompt "<2de> How are you, my friend?" \
  --temperature 0
...
 Wie geht es dir, mein Freund?

But I was unable to find any other extra parameters or whatever to run this package with GPU support.

You will want to use --features metal to turn on gpu support on apple silicon.

--features metal

Can you please suggest me the exact command I need to execute?
As follows from one video I've seen on Youtube, this parameter should be used during the cargo build. I'm not experienced in Rust at all. And I was unable to find any text instruction where there is at least something about this parameter (--features metal). And the only result I see in Google when I'm trying to search for this issue is this discussion.

I reinstalled cargo, candle, and everything. I executed cargo build --features metal in my Candle directory. No, Candle uses CPU instead of GPU for sure. It doesn't utilize GPU at all. Point me out what am I doing wrong.

cargo run is basically cargo build + execute the binary just built. Arguments to build and run are identical (exceptions exist but you don’t need to worry about that).
In other words when you call cargo run with different arguments than what you just used for cargo build it will build a different binary.

--temperature 0
...
Wie geht es dir, mein Freund?

Looks like CPU is hard-coded?
https://github.com/huggingface/candle/blob/7ebc3548e19fb8d40940fa2315b3f817058e7e96/candle-examples/examples/quantized-t5/main.rs#L85

Hah. Nice catch.
It should ideally have been something like
let device = candle_examples::device(args.cpu)?; -  is that correct @LaurentMazare ?
(cpu is not an argument atm)

Yes candle_examples::device would be the first thing to try, it might fail if there are other hardcoded cpu in the model code but these should be easy fixes.

I take it Candle is using MFA for the GEMM kernel (not the attention kernel)? If so, you can obsolete the current metallib file and translate this to Rust.
https://gist.github.com/philipturner/84f613a5cc745460a914d2c6ad226131
Optimized for M3 and BF16

Hey folks, I made 2 small changes as suggested above to the code and used:
let device = candle_examples::device(false)?;

for both load and build methods. I still receive a weird error on M1 Utltra:
Error: device mismatch in index-select, lhs: Metal { gpu_id:<PHONE_NUMBER> }, rhs: Metal { gpu_id:<PHONE_NUMBER> }

let device = Device::new_metal(0)?;

use this to replace
let device = Device::Cpu;

But even with metal, the rate in M2, 2-3 tokens/sec, it's still a little slow

Hey folks, I made 2 small changes as suggested above to the code and used:
let device = candle_examples::device(false)?;

for both load and build methods and when I run
cargo run --features metal --example quantized-t5 --release  -- \
  --model-id "jbochi/madlad400-3b-mt" --weight-file "model-q4k.gguf" \
  --prompt "<2fa> I love pizza!" \
  --temperature 0

I still receive a weird error on M1 Utltra: Error: device mismatch in index-select, lhs: Metal { gpu_id:<PHONE_NUMBER> }, rhs: Metal { gpu_id:<PHONE_NUMBER> }

Have you made a roofline model of the minimum latency per token, by dividing the model size (in GB) by the hardware bandwidth (in GB/s)? Does the model use speculative execution to amplify sequential throughput? Are there any major compute-bound components?


Kill some more Dialyzer warnings

This PR cleans up some dead lines in dialyzer.ignore-warnings, and also fixes a few warnings that were being suppressed. All the fixes were pretty trivial, and involved fixing type specs or removing dead code.

+1

create jira issue


allow app parameters to be defined by spel

currently app parameters are statics. Would be nice to allow spel to generate the parameters.
  parameters:
    definitions:
      - id: myParameter
    value-sets:
      - values:
          myParameter: #{myCsvList}

We could add this feature, but it would be good to know how you would this feature.
What values would you use in the SpEL expressions? The parameters must be generated before the app is started, therefore the only input to the SpEL expression would be the information of the current user. Would this be sufficient?

What values would you use in the SpEL expressions? The parameters must be generated before the app is started, therefore the only input to the SpEL expression would be the information of the current user. Would this be sufficient?

I guess so ! The use case is "project management". Currently we set users to "projects" by using SP groups. People in the same project share some volumes. Also users can be in multiple groups.
We d'like users to be able to select a group before starting the app. So app parameters with a spell expression would allow to generate a form with every groups a given user belongs to.
And from the limitations you mentions, I guess this is compatible.
BTW I would be glad to propose a PR on this, but it sounds like tricky to turn the current implementation into a spel compatible one. Isn'it ?


Osx build script

This adds OSX support to the build_script.py to allow using the same tests on OSX as on Linux.
Added paragraph to Readme with build instructions on OSX.
--test won't work on OSX currently, use the Xcode test target for testing on OSX

Why not use Xcode (or xcodebuild) on OS X? I am reluctant to take a lot of change to support different ways of building and testing this on OS X, especially since there's no real intent for this library to actually be used on OS X. Having the Xcode project is a nice convenience for working on this for those of us who spend most of our time in OS X, even though the project itself is really meant for use on Linux. But I guess I am curious what problem adding this support to the build script is solving.

There is a simple intent: just having a unified build system on OSX and Linux.
If I want to implement tests that run on linux I have to use this XCTest library, if i try to run the same tests on OSX it fails because XCTest on OSX is not the same lib as XCTest on Linux.
Primarily I want my swift build command that builds a testing binary work on OSX too.
XCTest on OS X does not know XCTMain() and XCTestCase on OSX works differently in detecting test cases because of the ObjC runtime that is not available on Linux. (var allTests : [(String, () -> Void)] { return [ ... ] })
And to make installation work the same on OSX and Linux I think that the build script should run on both platforms.

Our intent here was to allow the API to be compatible, so that developers may use XCTest on OS X/iOS and swift-corelibs-xctest on other platforms.

The allTests API in swift-corelibs is something we acknowledge is different, but it would be ignored on XCTest on Darwin.

Correct, but currently the API it is not compatible completely and before someone comes up with a autodetection idea for tests it will stay that way, so why not allow using the lib on OSX until this has been sorted out?

Which part is not API compatible?
If your tests have to add something additional, which is used only on Linux (for example), but otherwise the same code can be built against the Xcode XCTest, then I see that as ok.
I really don't want to start us down the road of a fork at this time.

For the aspect of this related to swift build (the package manager), I think this discussion is probably best had with the package manager folks involved. They are currently working on (and discussing early proposals for) how testing support will be integrated with the package manager.
I would like to hear more detail about the API not being compatible between Xcode XCTest and corelibs XCTest. As @parkera mentions, the goal here is for Xcode's XCTest to be used on OS X and corelibs XCTest to be used on other platforms.
I know there are rough edges here, but I also know that the package manager's tests, for example, are currently set up such that this works for them.

See the other pull request, i would call that an incompatability :( (setUp, tearDown and the override mess)

Thanks for this, @dunkelstern. Sorry it's been sitting around for a while! I think we may have addressed your concerns in the meantime:

The setUp and tearDown incompatibility was addressed by #40; now override is used by both Apple and corelibs XCTest.
You may reference the Swift build script to see how you can use xcodebuild to "install" SwiftXCTest.framework on OS X: https://github.com/apple/swift/blob/0ae11d4216a6763ff0bc7645a55eb0e9db05dc34/utils/build-script-impl#L1884. By "install", I mean you can pass arguments on the command line to xcodebuild to specify where build products are placed.

By linking SwiftXCTest.framework in your Xcode project target's "Link Binary with Libraries" build phase, it's possible to use this framework on OS X--in fact, the SwiftXCTestFunctionalTests target in this repository does just that! You can take a look there for an example.
Keep in mind, however, that this is not recommended, and that you cannot use this framework from within a "test target" in Xcode. Test targets are run automatically via Xcode and Apple XCTest. Instead, we recommend using the swift-package-manager and its new swift test command to run tests on OS X and Linux.
Feel free to comment here or send an email to the swift-dev or swift-corelibs-dev mailing lists if you have any additional comments/questions. In the meantime, we wish to continue using xcodebuild on OS X and build_script.py on other platforms. The changes in this pull request don't reflect that position, so unfortunately I'm going to close this. :bow:


docker(install): check qemu is installed

relates to https://github.com/docker/actions-toolkit/actions/runs/11893136762/job/33137504565#step:11:1112
 Error: Unable to locate executable file: qemu-system-x86_64. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.
          at Object.<anonymous> (/Users/runner/work/actions-toolkit/actions-toolkit/node_modules/@actions/io/src/io.ts:170:15)
          at Generator.next (<anonymous>)
          at fulfilled (/Users/runner/work/actions-toolkit/actions-toolkit/node_modules/@actions/io/lib/io.js:24:58)

Job canceled on macos-12 is expected today: https://github.com/actions/runner-images/issues/10721


BuildFeature for build cache

Expected Behavior
It would be nice to have a BuildFeature for the state of build cache.
I have a convention plugin that configures remote build cache.
This (of course) requires that credentials are injected for the build cache on CI for it to be able to push.
But if build cache is not enabled for the project, there is no point in requiring this.
So currently I check this using gradle.startParameter.isBuildCacheEnabled.
It would be nice if this could instead be determined using the new BuildFeatures API.

In general I don't think it's a good idea for user code to rely on the state of internal optimizations in Gradle. The build cache seems like such an optimization. It feels to me that it should be possible for the build to proceed with a disabled cache without credentials being specified. If that's not the case, then we should fix that problem instead of exposing the internal state of the build cache.


Multiple code improvements - squid:S1197, squid:S1854, squid:S1481, squid:S1155, squid:S2131

This pull request is focused on resolving occurrences of Sonar rules
squid:S1197 - Array designators "[]" should be on the type, not the variable.
squid:S1854 - Dead stores should be removed.
squid:S1481 - Unused local variables should be removed.
squid:S1155 - Collection.isEmpty() should be used to test for emptiness.
squid:S2131 - Primitives should not be boxed just for "String" conversion.
You can find more information about the issue here:
https://dev.eclipse.org/sonar/rules/show/squid:S1197
https://dev.eclipse.org/sonar/rules/show/squid:S1854
https://dev.eclipse.org/sonar/rules/show/squid:S1481
https://dev.eclipse.org/sonar/rules/show/squid:S1155
https://dev.eclipse.org/sonar/rules/show/squid:S2131
Please let me know if you have any questions.
George Kankava

@georgekankava Thank you. This branch has conflicts, then I merge it in local and push it master.


[Campaigns - Frontend Enhancement] - Add Technologies Link to Navbar

Aimee, a MassE campaign user logged in on a campaigns page and thinks having a link to the technologies page is essential on the navbar.
Scenarios:

GIVEN a MassE campaign user viewing a campaign page
WHEN the user logs in to the campaign home page
THEN they should be able to see Technologies as part of the nav links
AND the Technologies link should be in-between Home and Coaches link.

GIVEN a MassE campaign user viewing a campaign page
WHEN the user clicks on Technologies on the navbar
THEN they should be taken to the technologies page or section.

Acceptance Criteria:
Users can see Technologies as part of navbar links.
Users can click on Technologies and it redirects them to the correct section or page.
Additional notes: remove two logos to make room to add technologies after Home link and before Coaches link.
Technical Considerations:
N/A
Images and UX

@taiwotkj and @archx3, this is a backend task.

Alright.
I'll edit the title and label accordingly and assign to you

@abdullai-t while you are in there, add section=home as a param to the home link.


calibre broken by RPATH check

Issue description
94d164dd7f introduces an RPATH check that causes calibre to fail to build
Steps to reproduce
Try to rebuild calibre, you'll end up with the following failure:
checking for references to /tmp/nix-build-calibre-2.84.0.drv-0 in /nix/store/q2q28k9y6jqx5av2kwpkhlvn080yb53q-calibre-2.84.0...
RPATH of binary /nix/store/q2q28k9y6jqx5av2kwpkhlvn080yb53q-calibre-2.84.0/lib/calibre/calibre/plugins/libheadless.so contains a forbidden reference to /tmp/nix-build-calibre-2.84.0.drv-0

This is after the following shows up in the log:
shrinking RPATHs of ELF executables and libraries in /nix/store/q2q28k9y6jqx5av2kwpkhlvn080yb53q-calibre-2.84.0
shrinking /nix/store/q2q28k9y6jqx5av2kwpkhlvn080yb53q-calibre-2.84.0/lib/calibre/calibre/plugins/libheadless.so

Duplicating the changes made in, say, cbdcc20e77, don't fix the issue.
@edolstra, @vcunat

Well, it's not in my power to fix everything.  Let me /cc the maintainers: @viric, @domenkozar, @pSub, @AndersonTorres.

This has been fixed.  Closing.


Setting working directory to a absolute path does not work

To Reproduce
[tasks.build]
env = { "CARGO_MAKE_WORKING_DIRECTORY" = "C:/" }

Results in:
[cargo-make] ERROR - Unable to set current working directory to: C: Os {
    code: 2,
    kind: NotFound,
    message: "No such file or directory",
}

Same when using duckscript:
[tasks.buils]
script_runner = "@duckscript"
script = '''
    cd C:/
    _ = mkdir test
'''

Issue was caused by me running the script inside a linux subsystem console in which the c drive didn't exist as such.


[Marker.io] fix the heading and the image on pricing page

Steps to reproduce:

notice the heading and the image in the header area
compare with figma

Actual result: they are slightly overlapped by nav bar
Expected result: please check figma and improve that spacing accordingly

Reported by: vinod<EMAIL_ADDRESS>- Contact via Marker.io
Source URL: https://wf-b.stg.prezzee.com/en-us/pricing
Issue details: Open in Marker.io
Device typedesktopBrowserChrome <IP_ADDRESS>Screen Size1366 x 768OSWindows 10 (10.0.0)Viewport Size1366 x 641Pixel Ratio@1x

🤖 Marker.io bot - This issue was marked as ✅ Resolved in Marker.io


Start-Process fails in folder containing [

Steps to reproduce
mkdir "["
cd -LiteralPath "["
start cmd

Note
Start-Process works with the -WorkingDirectory option.
mkdir "["
cd -LiteralPath "["
start -WorkingDirectory . cmd

Expected behavior
Start-Process works
Actual behavior
start : The specified wildcard character pattern is not valid: [
At line:1 char:1
+ start cmd
+ ~~~~~~~~~
+ CategoryInfo          : NotSpecified: (:) [Start-Process], WildcardPatternException
+ FullyQualifiedErrorId : RuntimeException,Microsoft.PowerShell.Commands.StartProcessCommand

Environment data
Tested with Powershell:
- 5.1 (Windows 10 1909)
- 6.2.4 (Windows 10 1909)
- 7.0.0 RC3 (Windows 10 1909)

I see the problem here and will put it in a pull request for it.

Really the issue asks to process WorkingDirectory as LiteralPath. I think we should do so. We consider WorkingDirectory as literal path for Start-Job and pwsh parameter.
/cc @mklement0 @SteveL-MSFT for conclusion.

@iSazonov As I mentioned in my PR for this, the redirection parameters also suffer from the parsing issue.  The documentation says that these parameters do not support wildcards and it's hard to imagine what practical value processing them as patterns would have.

Related:

#4726 (> and >> treat the filename operand as a wildcard expression)

#6729 (Set-Content -Path not only treats its operand as a wildcard expression, but allows writing to multiple files).

#9225 (variable namespace notation unexpectedly treats the item name as a wildcard expression)


Mount points for common filesystems need to exist

Mount points for common filesystems should exist within the singularity containers for 2 reasons:

To successfully bind mount filesystems without relying on overlayfs
To facilitate access to LIGO frame data on machines where the X509+https data have been replaced by a symbolic link to a filesystem on the node outside of /cvmfs.

Situation 1 may come about because the underlying kernel does not support overlayfs or because Singularity can be configured to run purely as the as the user without any setuid escalation. This is now the recommended default on the Open Science Grid so it may reasonably be assumed that other large-scale sites may arrive at the same conclusion.
Situation 2 may come about because a local site administrator has elected to prioritize use of a locally-maintained copy of LIGO frame files over the use of WAN to access data. Or it may come about because worker nodes at a local site do not have the requisite access to the caches presently at Nebraska and at Syracuse. If overlayfs is enabled, this is not an issue, so Situation 2 is really a subset of Situation 1.

Comment on the dirty details of Situation 2...
A site may elect to have the worker nodes use a caching HTTP proxy which does have access to the outside world. In this instance, public CVMFS repositories would be accessible to worker nodes. It might even be the case that worker nodes could access the metadata of the LIGO frame repository (/cvmfs/ligo.osgstorage.org). But attempts to actually read the data would fail in the absence of a local stash cache. So, a symbolic link to a local filesystem is not an unreasonable approach. However, the use of a symbolic link comes at the cost of maintaining synchronization with the files expected by users. During the O2-O3 "intermission" this cost may appear to be lower than its true value and we may develop workflows that don't withstand the generation of data in O3. I encourage consideration of this issue even as we develop support for the workaround/solution employed by the local sites.


Update package.json

Updated version of webpack as it was dependent on chokidar(v2.0.2) which is not compatible with Node.js v10.

Hi @Rich-Harris, should I open a separate PR for the second commit?

thanks! nah, there isn't a whole lot of git discipline on this repo :) The second commit was necessary because the component was using the deprecated form of this.get — I fixed that in a third commit: https://github.com/sveltejs/svelte.technology/pull/289/commits/b91dca61b69d2ce515fd464280c89a24b5c6a25d


call hook in the end

Call the hook after updating the resource pool in scheduler. Previously i thought this method already acquires the lock for updating the scheduler but this isn't true. So what could happen in here is that:

Scheduler knows the host changes then call the hook to reconcile global service.
Scheduler start updating resource pool but it can't update because there are other scheduler events taking on that lock. During this time the scheduler will process the request with in-complete information and will not return new hosts to cattle cause it has not been updated.
Scheduler updates its own pool, but service reconcile has already been called.
So calling the hook at the last should fix the problem.

LGTM


:robot: Add version to goreleaser

Pass the version to goreleaser, so the artifact that can be dowloaded includes it
relates to #1249

Codecov Report

Merging #1252 (74d11fb) into master (7bb9af9) will decrease coverage by 0.67%.
The diff coverage is 48.96%.

: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             @@
##           master    #1252      +/-   ##
==========================================
- Coverage   22.79%   22.12%   -0.67%
==========================================
  Files          22       16       -6
  Lines        1610     1279     -331
==========================================
- Hits          367      283      -84
+ Misses       1179      947     -232
+ Partials       64       49      -15

Impacted Files
Coverage Δ

internal/agent/config.go
0.00% <ø> (ø)

internal/agent/interactive_install.go
0.00% <ø> (ø)

internal/agent/notify.go
0.00% <0.00%> (ø)

internal/agent/recovery.go
0.00% <ø> (ø)

internal/agent/reset.go
0.00% <0.00%> (ø)

internal/agent/upgrade.go
0.00% <0.00%> (ø)

pkg/config/config.go
0.00% <0.00%> (-51.36%)
:arrow_down:

internal/agent/install.go
5.10% <21.21%> (+5.10%)
:arrow_up:

pkg/config/collector/options.go
64.51% <37.50%> (ø)

pkg/config/collector/collector.go
64.38% <64.38%> (ø)

... and 2 more

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


switch to AnyIO so IDOM is compatible with "any" event loop implementation

https://github.com/agronholm/anyio

Nevermind, the author sees AnyIO as a crutch and not a permanent solution. Would be nice to have compatibility with the other async implementations, but it seems likely that asyncio with adopt the TaskGroupt interface at some point.
See: https://github.com/agronholm/anyio/issues/70#issuecomment-538560746
Perhaps we should just use an in-house task group implementation based on the one from AnyIO.

Looking at the implementation its too complicated to copy over.


Minor fixes + column formatter feature

Would be great if you could pull these changes and create a new release. If you have any comments or questions just let me know.

All changes have been released in 1.0.2

Thanks for your effort!


add feature to use a proxy server

Some companies may require the use of a proxy server to access external data sources. It would be nice to include such a feature directly into the meteomatics package. It should be very easy since the requests library used internaly allready supports this. For now the only method i see is to monkey patch the api.get_request and api.post_request functions. For anyone who needs some code examples, here is my current solution to the proxy problem:
    old_get_request = api.get_request

    def get_request_wrapper(*args, **kwargs):
        return old_get_request(*args, **kwargs, proxies={"https": "http://<IP_ADDRESS>:8899"})

    api.get_request = get_request_wrapper

@meteomatics: Are there any news on this topic from your side?

Dear @make-ing
I'm happy to inform you that this feature is now included in the most recent version of the api connector.
Thank you for (re-)raising this issue.

Cool... Thanks! I will not test this now but have high trust in you guys and so I will close this issue now.


Update tobySolutions.json

Check List (Check all the applicable boxes)

[x] My code follows the code style of this project.
[x] My change requires changes to the documentation.
[x] I have updated the documentation accordingly.
[x] All new and existing tests passed.
[x] This PR does not contain plagiarized content.
[x] The title of my pull request is a short description of the requested changes.

Thank you maintainers!! Y'all are doing an amazing job!


cant install on windows

I have:
[ x ] searched open and closed issues for duplicates
Bug description
i cant build it from zip file or via pip install
out put when i try setup.py install >>>
Complete output from command python setup.py egg_info:
    C:\Python27\lib\distutils\dist.py:267: UserWarning: Unknown distribution opt
ion: 'bugtrack_url'
      warnings.warn(msg)
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "c:\users\rumaiza1\appdata\local\temp\pip-lg8yuv-build\setup.py", lin
e 141, in <module>
        'python-escpos = escpos.cli:main'
      File "C:\Python27\lib\distutils\core.py", line 111, in setup
        _setup_distribution = dist = klass(attrs)
      File "C:\Python27\lib\site-packages\setuptools\dist.py", line 272, in __in
it__
        _Distribution.__init__(self,attrs)
      File "C:\Python27\lib\distutils\dist.py", line 287, in __init__
        self.finalize_options()
      File "C:\Python27\lib\site-packages\setuptools\dist.py", line 327, in fina
lize_options
        ep.load()(self, ep.name, value)
      File "c:\users\rumaiza1\appdata\local\temp\pip-lg8yuv-build\.eggs\setuptoo
ls_scm-1.15.6-py2.7.egg\setuptools_scm\integration.py", line 22, in version_keyw
ord
      File "c:\users\rumaiza1\appdata\local\temp\pip-lg8yuv-build\.eggs\setuptoo
ls_scm-1.15.6-py2.7.egg\setuptools_scm\__init__.py", line 119, in get_version
      File "c:\users\rumaiza1\appdata\local\temp\pip-lg8yuv-build\.eggs\setuptoo
ls_scm-1.15.6-py2.7.egg\setuptools_scm\__init__.py", line 97, in _do_parse
    LookupError: setuptools-scm was unable to detect version for 'c:\\users\\rum
aiza1\\appdata\\local\\temp\\pip-lg8yuv-build'.

    Make sure you're either building from a fully intact git repository or PyPI
tarballs. Most other sources (such as GitHub's tarballs, a git checkout without
the .git folder) don't contain the necessary metadata and will not work.

    For example, if you're using pip, instead of https://github.com/user/proj/ar
chive/master.zip use git+https://github.com/user/proj.git#egg=proj

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in c:\users\rumaiza1
\appdata\local\temp\pip-lg8yuv-build\

Device info

Printer: Manufacturer Model XVI

python-escpos version: 0.0.0
python version:Python 2.7.12 (v2.7.12:d33e0cf91556, Jun 27 2016, 15:19:22) [MSC v.1500 32 bit (Intel)] 0.0
operating system:64bit windows 8.1

Hi @tlmyasirs, thanks for writing :-)
The relevant line is LookupError: setuptools-scm was unable to detect version for 'c:\\users\\rum aiza1\\appdata\\local\\temp\\pip-lg8yuv-build'.. This means that setuptools-scm is unable to find the version that you are building from.
We use this tool to automatically determine the version number.
Since you wrote zip-file: We need a GIT-history. Could you please try to checkout in git and build this version. That should work without problems. (Otherwise I think you can tell setuptools-scm the version number)

Hi @tlmyasirs has this been solved for you?


Android Push

Issue:
Android device like HUAWEI P20 still cann't get Notification push
Solution:
Set up Xiaomi Push SDK
Add 3rd party Notification platform

Finished


Wildcard in path

I got an error when trying wildcard in a path
panic: only one wildcard per path segment is allowed, has: '*}:rename' in path '/v1alpha/{name=models/*}:rename'
then I tried to replace : to /, and got another error
panic: catch-all routes are only allowed at the end of the path in path '/v1alpha/{name=models/*}/rename'
Question:
is it possible to make path like /v1alpha/{name=models/*}:rename or /v1alpha/{name=models/*}/rename?

That endpoint pattern is malformed:

krakend doesn't support wildcards
variables are defined just by name
: is a reserved char

try /v1alpha/{models}/rename


PY-T: HF20: Determine which tutorials are broken

AC

[x] In # Results list which tutorials are not working. Otherwise, report that all are working.

Results
04 get posts – 	working
05 get post details - working
06 get voters list on post - working
07 get post comments - working
08 get account replies - working
09 get account comments - working
10 submit post – working
11 submit comment reply - working
12 edit content patching - working
13 stream blockchain transactions - working
14 reblogging post - working
15 search accounts - working
16 search tags - working
17 vote on content - working
18 follow a user - working
19 get follower and following list - working
20 account reputation - working
21 transfer steem and sbd - working
22 witness listing and voting - working
23 claim rewards - NOT working – can’t test, no rewards available on new account
24 power up steem - working
25 power down - working
27 delegate power - working
29 get delegations by user - working
30 grant posting permission - working
31 grant active permission - working
33 password key change – no account available to test on production

@roboza - this looks pretty good, except with

23 claim rewards - NOT working – can’t test, no rewards available on new account

I'm not sure if the tutorial itself isn't working and you've provided additional information, OR if the tutorial couldn't be gotten working because of the issues (aka will need re-evaluation later)
Can yo clarify?

I am going into more details.


Highlighting the chat (repl) feature a little bit more

Addressing this issue in ShellGPT, it's easy to miss the chat/repl feature: https://github.com/mattvr/ShellGPT/issues/15

Thank you! 😄

Thank you @mattvr for your great work and amazing responsiveness 😄


python-barcode 0.15.1

python-barcode 0.15.1 :snowflake:
Destination channel: Snowflake
Links

PKG-4751
Upstream repository

Explanation of changes:

Removed extra files from conda-forge
Added abs.yaml
Updated version, added testing and filled about section in recipe

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_4baiz_8fzu/clone` failed. (See above for error)
The following problems have been found:
===== WARNINGS =====

clone/recipe/meta.yaml:50: invalid_url: https://python-barcode.readthedocs.io/en/stable/ : Not reachable: 403

===== ERRORS =====

clone/recipe/meta.yaml:52: http_url: http://github.com/WhyNotHugo/python-barcode is not https
===== Final Report: =====
1 Error and 1 Warning were found

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_028udlonqd/clone` failed. (See above for error)
The following problems have been found:
===== WARNINGS =====

clone/recipe/meta.yaml:50: invalid_url: https://python-barcode.readthedocs.io/en/stable/ : Not reachable: 403
===== Final Report: =====
0 Errors and 1 Warning were found

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_490rfrozo_/clone` failed. (See above for error)
The following problems have been found:
===== WARNINGS =====

clone/recipe/meta.yaml:50: invalid_url: https://python-barcode.readthedocs.io/en/stable/ : Not reachable: 403
===== Final Report: =====
0 Errors and 1 Warning were found

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_58zltwm5lq/clone` failed. (See above for error)
The following problems have been found:
===== WARNINGS =====

clone/recipe/meta.yaml:52: invalid_url: https://python-barcode.readthedocs.io/ : Not reachable: 403
===== Final Report: =====
0 Errors and 1 Warning were found

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_d1o8johykv/clone` failed. (See above for error)
The following problems have been found:
===== WARNINGS =====

clone/recipe/meta.yaml:52: invalid_url: https://python-barcode.readthedocs.io/ : Not reachable: 403
===== Final Report: =====
0 Errors and 1 Warning were found


[Request for Modification] Codeunit 7600 "Calendar Management" - additional procedures to call and process "Additional Source Code"

Hello, procedures DeleteCustomizedBaseCalendarData + RenameCustomizedBaseCalendarData in Codeunit 7600 "Calendar Management" can not be used for tables "Stockkeeping Unit" and "Shipping Agent Service" because they lack parameters for "Additional Source Code"
could you check, please, if it is possible to add this functionality to the existing procedures or create a second procedure to
[Request for new procedure] Codeunit 7600 "Calendar Management" - additional procedures to call and process "Additional Source Code"
your procedure DeleteCustomizedBaseCalendarData
    procedure DeleteCustomizedBaseCalendarData(SourceType: Enum "Calendar Source Type"; SourceCode: Code[20])
    var
        CustomizedCalendarChange: Record "Customized Calendar Change";
        CustomizedCalendarEntry: Record "Customized Calendar Entry";
        WhereUsedBaseCalendar: Record "Where Used Base Calendar";
    begin
        CustomizedCalendarChange.SetRange("Source Type", SourceType);
        CustomizedCalendarChange.SetRange("Source Code", SourceCode);
        CustomizedCalendarChange.DeleteAll();

        CustomizedCalendarEntry.SetRange("Source Type", SourceType);
        CustomizedCalendarEntry.SetRange("Source Code", SourceCode);
        CustomizedCalendarEntry.DeleteAll();

        WhereUsedBaseCalendar.SetRange("Source Type", SourceType);
        WhereUsedBaseCalendar.SetRange("Source Code", SourceCode);
        WhereUsedBaseCalendar.DeleteAll();
    end;

we need:
    procedure DeleteCustomizedBaseCalendarDataAdditionalSourceCode(SourceType: Enum "Calendar Source Type"; SourceCode: Code[20]; AdditionalSourceCode: Code[20])
    var
        CustomizedCalendarChange: Record "Customized Calendar Change";
        CustomizedCalendarEntry: Record "Customized Calendar Entry";
        WhereUsedBaseCalendar: Record "Where Used Base Calendar";
    begin
        CustomizedCalendarChange.SetRange("Source Type", SourceType);
        CustomizedCalendarChange.SetRange("Source Code", SourceCode);
        CustomizedCalendarChange.SetRange("Additional Source Code", AdditionalSourceCode);
        CustomizedCalendarChange.DeleteAll();

        CustomizedCalendarEntry.SetRange("Source Type", SourceType);
        CustomizedCalendarEntry.SetRange("Source Code", SourceCode);
        CustomizedCalendarEntry.SetRange("Additional Source Code", AdditionalSourceCode);
        CustomizedCalendarEntry.DeleteAll();

        WhereUsedBaseCalendar.SetRange("Source Type", SourceType);
        WhereUsedBaseCalendar.SetRange("Source Code", SourceCode);
        WhereUsedBaseCalendar.SetRange("Additional Source Code", AdditionalSourceCode);
        WhereUsedBaseCalendar.DeleteAll();
    end;

and same for RenameCustomizedBaseCalendarData (additional parameters + additional filters)

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


Rewrite setup script in Python

Codecov Report

Merging #143 into master will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##           master     #143   +/-   ##
=======================================
  Coverage   68.39%   68.39%
=======================================
  Files          28       28
  Lines        1582     1582
=======================================
  Hits         1082     1082
  Misses        500      500

Impacted Files
Coverage Δ

opwen_email_client/webapp/__init__.py
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


New Feature - Camo View Phase 2

Work In Progress - Camo View #3

Added new camo components
Render camouflage view on another route
Shared progress between different views
Shared filtering between both views
Fix some bad data whilst combing through and testing
Rename solidColours to solidColors (to keep the Americans happy)

There's definitely some optimisation and best practises that could be done here, but I'm putting this up because I'm mostly happy with where it's at.
Some things I need feedback on or would like to improve:

I want to add a "Completion/Mastery" category, but it would require additional thought on how to display it, i.e. should we have gold, plat, poly and show the progress shown against it in some way? (make them non-toggle-able and show as read-only?)
Filtering section doesn't make 100% sense when in camo view? Might need to add some clarity to it or change it around.
Not sure if keeping the challenge only visible on hover is best? Could be nice to show it at the top level, don't want to crowd the screen though. Suggestions?
Don't know if mobile optimisation is the best it could be in terms of card & image size
Should we be making it more obvious when the camos/weapons are being affected by a filter?
Can you think of a better way to do filtering without having 2 separate progress state/stores?

Well with the design of the filtering and the shared code we removed in the review, I wanted your vue expertise on how we can best share methods like that filtering code between vue components that work with state. Also with the requirements and default data stores I copied most of the layout from the way weapons are being stored and organised. I feel like there could be an easier way if we restructured the way we're storing camo and weapon data so there's less code overall. I'll have a further think about this and make a PR if I come up with something better.

The easiest way would be to just add some new options to the filter variable in the store, make all options toggable through props in the filter component and then just for each view (weapon/camouflage) send in which filter options should be shown. The filtering itself is done in the View files, so it should be pretty easy. I have an idea in mind on how to solve all this, can look at it this weekend.
We should be careful with restructuring the weapon progress data though, since it'll be a pain to add some migrating code for users that have already input progress using the current implementation 🤔


Add a new fan to the list

@nakhodkiin thanks!

Job gh:yegor256/elegantobjects.github.io#84 is not assigned, can't get performer

This job is not in scope


initial OPT model with compile_stage setup

Description
The code here breaks as follows: https://www.internalfb.com/phabricator/paste/view/P802001280.
Checklist:

[x] Has code been commented, particularly in hard-to-understand areas?
[x] Have you made corresponding changes to the documentation?

Stale. Closing.


isPotenitallyValid should be false when Cardholder name begins with a number

General information

SDK version: 3.85.3
Environment: Sandbox
Browser and OS: Chrome 101 / Mac OS 12.4

Issue description
isPotenitallyValid should be false when Cardholder name begins with a number. Just like when '0' is entered into the credit card field. The field has no potential to be valid from this point so isPotenitallyValid should be set to false.

👋 @cmacdonnacha thanks for reaching out. You raise an interesting use case that we need to carefully consider. Although I can see us changing this behavior, we have to do a little research to make sure that cardholders can't actually set their names to include numbers. Additionally, this could be a breaking change to what we deem "potentially valid" and not necessarily a fix in buggy behavior. I've updated the labels on this issue so that we take this feedback into consideration for the next major version,


[WIP] Use Yarn v2

Checklist to get this merged:

[x] Fix issues related to strict dependencies
[x] Fix and support PnP
[x] Fix repo setup
[ ] Wait for https://github.com/renovatebot/renovate/issues/5230
[ ] Fix release flow and maybe use https://yarnpkg.com/features/release-workflow  (blocked; needs working support for --force or support for marking all packages as "changed")

blocked; needs working support for --force or support for marking all packages as "changed")

You can do that using yarn workspaces foreach version patch --deferred


Snap binary doesn't work with os/exec?

See https://discuss.gohugo.io/t/solved-pygmentize-not-working-on-ubuntu-16-04/5063/2
/cc @anthonyfok @elopio

Hello. o/
The basic idea of the snap is to isolate your application, so by default you won't be able to call a binary that's not packaged in your snap.
There are ways to declare that the snap needs to go out of its confinement; but in this case, I think hugo can be kept safe and totally isolated by providing pygmentize inside the snap. What do you think @bep?

@elopio Pygments is currently 1 out of 2 externals Hugo calls via os/exec... Hugo's release/build process is already pretty fragmented; I was sold the Snap via a PR as something carefree.
That obviously isn't the case.
I have no knowledge about how to manage snaps and include binaries etc., and it is pretty far down on my TODO list of the things I want to spend my spare time doing.
@anthonyfok how do the binary that you get when doing apt-get install hugo in Debian and Ubuntu work in this area?

As to the fix:

We need Pygments to be included somehow. Having it inside the snap would be cool.
We need to provide a better error message for situations like this. As in: Asciidoc and RST is not supported via snap.

@bep, well, it's low maintenance. But first you need to get all your dependencies in there. Or use the classic confinement, if you don't care about the security provided by isolation.
It's simple, let me make a PR to show you.
About asciidoc, I'm not sure how you use it. Can you please explain a little more what do you want to achieve there?

I'll let @anthonyfok handle this. If he doesn't have time, we will have to remove Snap as a way of distribution. There are plenty of alternatives to get a Hugo binary on Linux.

oh, yes, there are plenty of ways. But this one is cool, with all the fancy security, channels and autoupdates ^_^
I would be sorry to see you removing the snap. But really, we are striving to get out of your way and make it as light-weight as possible. If we fail to do that, I would understand you removing it.
Just take a look at the proposed fix. The upside to bundling all your dependencies is that you will stop getting this type of questions, forever. With a simple snap install hugo your users will get hugo+pygmentize. If you distribute just the hugo binary, your users will still have to install pygmentize, and might have problems with pip, apt, the virtualenv, or might end up with an incompatible version.
Of course, snaps are awesome for me, that's why I'm working on this. However, I appreciate a lot any kind of feedback you give us to make it better.

@anthonyfok how do the binary that you get when doing apt-get install hugo in Debian and Ubuntu work in this area?

apt-get install hugo gets the .deb packaging, which is not Snap, hence no special confinement whatsoever, so it can free access pigmentize, asciidoc(tor) etc. with no limitation whatsoever.
The snap version of Hugo is installed with snap install hugo and differs quite a bit.
For the meantime, I am tempted to edit snapcraft.yaml and simply add the necessary option to remove its confinement altogether (current it can only access /home) until a better solution (more time-consuming) is found.
One thing I do wonder: Does pygmentize really have to be packaged in the same snap as Hugo?  Can't pygmentize, asciidoctor, etc. be packaged as separate snaps, and have Hugo calls pygmentize, asciidoctor etc. from within those Snaps instead?

@anthonyfok with strict confinement and no plugs to go out of it, yes, every snap needs to bundle all their dependencies.
We use interfaces connected with the declared plugs to access services provided by other snaps. If there is a snap that provides the pygmentize service, you could connect to it. But this all needs to be declared so the user knows when and why your application goes out of confinement. Otherwise we end up with the same security risks and API incompatibilities that force debian to have maintainers and complex packages.

Does pygmentize really have to be packaged in the same snap as Hugo? Can't pygmentize, asciidoctor, etc. be packaged as separate snaps, and have Hugo call pygmentize, asciidoctor etc. from within those Snaps instead?

Oh, found my answer at http://askubuntu.com/questions/787149/how-do-snap-packages-handle-shared-dependencies:

I don't think that snaps check what dependencies are already installed. It just includes all of its dependencies and runtime (which is partly why the LibreOffice snap is 287 MB and the flatpak is about 200MB).
Snaps include pretty much everything the software needs to run. I don't think anything gets shared between snaps.
When a snap updates however, it will only download the dependencies that are new, and not the entire snap.

Time to learn more about snapcraft and experiment?  :-)

@anthonyfok with strict confinement and no plugs to go out of it, yes, every snap needs to bundle all their dependencies.
We use interfaces connected with the declared plugs to access services provided by other snaps. If there is a snap that provides the pygmentize service, you could connect to it. But this all needs to be declared so the user knows when and why your application goes out of confinement. Otherwise we end up with the same security risks and API incompatibilities that force debian to have maintainers and complex packages.

Interesting...  Thank you @elopio!


MicroG has crashed on Google Pixel 7 pro

After logging into YouTube Revanced, the account is not added. It passes all verifications, but does not appear in the list of accounts, microG gives an error and closes. I try to open microG separately, it also gives an error and does not open. What should I do?

Send crashlogs using logcat. Google how to.

log.txt
my log via terminal with command - adb logcat

Issue with your OS/Will happen with upstream GmsCore as well

log.txt
log №2 with start and crash app

Issue with your OS/Will happen with upstream GmsCore as well

How to fix GmsCore?


[1.337] Deleting vertices in free-draw mode producing an error.

When you generating a mesh in free-draw mode you can select and move vertices which is very handy. However you can also delete those vertices making an error. After you trying to extrude the same shape to final mesh console logs an error message (IndexOutOfRangeException: Array index is out of range), and you cannot really do anything but cancel it and start making new shape.

I'll take a look, thanks

This has been fixed in version 1.337 that is available on the update site https://prenominal.nl/updates/
I'll close this ticket once this version is available from the asset store

This version is now available on the asset store so this ticket can be closed


Failed loading configuration file when use wdio-video-reporter with node 16

ERROR @wdio/config:ConfigParser: Failed loading configuration file: {MyPath}\wdio.conf.js: undefined
The error just happen when I require to wdio-video-reporter in configuration file and using Node 16 version.
The error not happen when I use Node 14 version
const video = require('wdio-video-reporter');
reporters: [
        ...
        [
            video,
            {
                saveAllVideos: false, // If true, also saves videos for successful test cases
                videoSlowdownMultiplier: 3, // Higher to get slower videos, lower for faster videos [Value 1-100]
            },
        ],
    ],

More info about package.json
"devDependencies": {
    "@wdio/allure-reporter": "^7.20.0",
    "@wdio/cli": "^7.20.2",
    "@wdio/dot-reporter": "^7.20.0",
    "@wdio/junit-reporter": "^7.20.0",
    "@wdio/local-runner": "^7.20.0",
    "@wdio/mocha-framework": "^7.20.0",
    "@wdio/selenium-standalone-service": "^7.20.0",
    "@wdio/spec-reporter": "^7.20.0",
    "wdio-video-reporter": "^3.2.1",
  },

So sorry, having some mistake in my package.lock.json
Now I can run wdio-video-reporter with node 16.
So I closed this issue.


Tree view only updates render when all nodes are closed and no nodes are selected

I've started to experiment with the provided example, and decided to expand it slightly to see if I could update data in the model, and have the view reflect that.
Below is the altered source code.
src/example.rs:
fn main() -> Result<(), Box<dyn Error>> {
    // Terminal initialization
    let stdout = io::stdout().into_raw_mode()?;
    let stdout = MouseTerminal::from(stdout);
    let stdout = AlternateScreen::from(stdout);
    let backend = TermionBackend::new(stdout);
    let mut terminal = Terminal::new(backend)?;

    let events = Events::new();

    // App
    let mut app = App::new();

    loop {
        terminal.draw(|f| {
            let area = f.size();

            let items = Tree::new(app.tree.items.to_vec())
                .block(
                    Block::default()
                        .borders(Borders::ALL)
                        .title(format!("Tree Widget {:?}", app.tree.state)),
                )
                .highlight_style(
                    Style::default()
                        .fg(Color::Black)
                        .bg(Color::LightGreen)
                        .add_modifier(Modifier::BOLD),
                )
                .highlight_symbol(">> ");
            f.render_stateful_widget(items, area, &mut app.tree.state);
        })?;

        match events.next()? {
            Event::Tick => {},
            Event::Input(input) => match input {
                Key::Char('q') => { break },
                Key::Left  => { app.tree.close(); },
                Key::Right => { app.tree.open(); },
                Key::Down  => { app.tree.next(); },
                Key::Up    => { app.tree.previous(); },
                Key::Backspace => {
                    // println!("Foo");
                    let tree0 = StatefulTree::with_items(vec![
                        TreeItem::new_leaf("a"),
                        TreeItem::new(
                            "b",
                            vec![
                                TreeItem::new_leaf("c"),
                                TreeItem::new("d", vec![
                                    TreeItem::new_leaf("e"),
                                    TreeItem::new_leaf("f")
                                ]),
                                TreeItem::new_leaf("g"),
                            ],
                        ),
                        TreeItem::new_leaf("h"),
                    ]);
                    let tree1 = StatefulTree::with_items(vec![
                        TreeItem::new_leaf("aa"),
                        TreeItem::new(
                            "bb",
                            vec![
                                TreeItem::new_leaf("cc"),
                                TreeItem::new("dd", vec![
                                    TreeItem::new_leaf("ee"),
                                    TreeItem::new_leaf("ff")
                                ]),
                                TreeItem::new_leaf("gg"),
                            ],
                        ),
                        TreeItem::new_leaf("hh"),
                    ]);
                    let tree2 = StatefulTree::with_items(vec![
                        TreeItem::new_leaf("aaa"),
                        TreeItem::new(
                            "bbb",
                            vec![
                                TreeItem::new_leaf("ccc"),
                                TreeItem::new("ddd", vec![
                                    TreeItem::new_leaf("eee"),
                                    TreeItem::new_leaf("fff")
                                ]),
                                TreeItem::new_leaf("ggg"),
                            ],
                        ),
                        TreeItem::new_leaf("hhh"),
                    ]);

                    // NOTE: The comparisons below require a `PartialEq` impl for `StatefulTree`:
                    /***/if app.tree == tree0 { app.tree = tree1; }
                    else if app.tree == tree1 { app.tree = tree2; }
                    else if app.tree == tree2 { app.tree = tree0; }

                },
                _ => {},
            },
        }
    }

    Ok(())
}

src/util/mod.rs:
#[derive(Clone, PartialEq)] // NEW: derive the PartialEq trait. Also necessary for any type used by `StatefulTree`.
pub struct StatefulTree<'a> {
    pub state: TreeState,
    pub items: Vec<TreeItem<'a>>,
}

Specifically, what has changed is that the code now responds to pressing Backspace by updating the tree model data.
When Backspace is pressed, the code creates 3 StatefulTrees, and cycles through them depending on the model state at that time.
Armed with this example, I've noticed that the tree doesn't (fully) respond to the Backspace key event when any node has been selected, or when any node has been opened. I say fully because if I enable the println!("Foo"); statement in the code, and open or select any node, the tree model update isn't rendered, but the "Foo" is indeed printed.
What I expected to happen instead was that the updated tree model would be reflected in the tree view the next time the tree is rendered.

Thanks for your time and interest in this library!
I needed a moment to find the reason for this but its kinda interesting.
In the end you have the if else structure which checks app.tree == tree0 which requires PartialEq. The first thing that bugged me was its incompleteness. There is an unhandled else case. So I added else { panic!("bla") }.
As you saw before when something is selected or opened nothing happened but now the panic was executed. That means something is interesting with that comparison of PartialEq as it sometimes does not match any of the if clauses.
Part of the StatefulTree is the TreeState. When you create a new StatefulTree the default state is assumed: Nothing is opened or selected. When you use the tui to select something the state changes. When comparing the default state to the new state with something selected they are different → the app.tree == treeN will be false in all 3 cases as the state will always be different.
I added a counter and checked its value instead of comparing app.tree == treeN:
counter += 1;
counter %= 3;

app.tree = if counter == 0 {
    tree0
} else if counter == 1 {
    tree1
} else {
    tree2
};

That worked fine in my testing.
I hope it helps and thanks again! :)

This also pointed the way forward for me. Thanks for your help!


Import stripe invoices into Employee portal

This feature is no more required. Hence cancelling  and closing this.


feat(model-server): Add healthcheck to model-server image

Closes #501

As not configured differently the defaults will be
interval - DURATION (default: 30s)
timeout - DURATION (default: 30s)
start-period - DURATION (default: 0s)
retries - DURATION (default: 3)
which seems sensible

@drik98 Your commit is not signed.

The base branch requires all commits to be signed. Learn more about signing commits.

There is a /health endpoint that should be used. See https://github.com/modelix/modelix.kubernetes/blob/1f62139d76482d0428a86c9fa167b7f38b441fec/helm/modelix/templates/common/model-deployment.yaml#L45-L58

I meant to use that but forgot in the implementation. Good catch.


Add HipChat Operator

Added a base HipChatAPIOperator class and a HipChatAPISendRoomNotificationOperator which sends a customized notification to a HipChat room. This uses HipChat's REST API (they currently do not have an official python client).

@jgao54 Thanks for the contribution. Can you please add some unit tests and some documentation? Then I'll merge

Almost there... Please have a look at the landscape issues that were introduced by this change. I'll merge after fix.

@bolkedebruin  done. landscape is catching some other changes elsewhere.

Can you add a Apache License header (see others) to your operator? CI is failing because of it. Then I can merge.

Coverage remained the same at 67.54% when pulling 6199860d3803389b88ab88a5803da8be878c0df7 on jgao54:hipchat_operator into 8558cbd9fc0b38a8f97619efce39947e669b21ec on airbnb:master.

:+1:  @jgao54


[Clang importer] Initial support for swift_newtype / swift_wrapper

What's in this pull request?

Adds initial support for swift_newtype(struct), and swift_newtype(enum) by treating as swift_newtype(struct).
Resolved bug number: (SR-)

Before merging this pull request to apple/swift repository:

[ ] Test pull request on Swift continuous integration.

Triggering Swift CI
The swift-ci is triggered by writing a comment on this PR addressed to the GitHub user @swift-ci. Different tests will run depending on the specific comment that you use. The currently available comments are:
Smoke Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please smoke test
    OS X platform               | @swift-ci Please smoke test OS X platform
    Linux platform              | @swift-ci Please smoke test Linux platform

Validation Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please test
    OS X platform               | @swift-ci Please test OS X platform
    Linux platform              | @swift-ci Please test Linux platform

Note: Only members of the Apple organization can trigger swift-ci.

@swift-ci please test

pexpect.TIMEOUT: Timeout exceeded.
Failing Tests (1):
swift-package-tests :: repl/test-repl-glibc.py
This seems unrelated and a problem with the CI. @shahmishal what do you think? Should I kick it off again? Are you familiar with this test?

@milseman This test failure is related to https://bugs.swift.org/browse/SR-1109

@DougGregor, can you please review these changes?

Please add a test that uses the imported results, so we're certain that name lookup finds these implicitly-imported members.

@swift-ci please test


Unable to find commands in published version of extension

VSCode Version: 1.17.2
OS Version: Windows 8.1

Steps to Reproduce:

Install the latest Cake Extension for Visual Studio Code
Open command palette
Type cake
Select Install a configuration file
You will get the following

However, this same process, when debugging the source code in Visual Studio Code, works fine.
Any ideas on what could be going on here/

Reproduces without extensions: Unable to verify, as I need extensions active

Reading your description it seems that the issue originates from an extension and not VS Code itself. Thereby I will close this issue and kindly ask you to report this issue against the extension repository.
Most extensions are on GitHub as well so it should be easy to file it against the extension. If you open an extension on the market place, click on the Support link to find out more.

Thanks again for your feedback!

@bpasero The extension in question is the one that I am creating 😄 and the error I am seeing is due to the fact that the published VSIX file doesn't contain the out folder, which as a result means that the commands can't be found at runtime.
Having dug into this some more, it looks like there was a problem with our build process.
I am still investigating a fix...

@bpasero looks like I have solved the issue.  I have fixed to an earlier version of typescript, which gets us round the publishing issue just now, and we can look to increasing to higher version, once we figure out what the typescript compilation errors are regarding.  This at least allows us to get the extension out to our users.


Cross repo tests for gems-pending PR #462

Update Nokogiri to 1.10.8 in gems-pending.

PR was merged, closing.


Especify the nugget version for Microsoft.AspNetCore.Authentication.JwtBearer depending of your Net Core Version.

[Please especify if you are using Net Core 3.1 , you should use Microsoft.AspNetCore.Authentication.JwtBearer 3.1.1]

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

ID: 393b3379-6061-50a4-0975-b3d1d82b660b
Version Independent ID: 48e4e204-ea22-c225-0cbc-0d811bdb90ed
Content: Overview of ASP.NET Core Authentication
Content Source: aspnetcore/security/authentication/index.md
Product: aspnet-core
Technology: aspnetcore-security
GitHub Login: @mjrousos
Microsoft Alias: riande

Hello @elcaytuiro ... We can't do that without explicit text in each topic for each set of versioned content, which would generate a massive amount of work 😅 for us. We do sometimes call out specific package versions, but it's more likely to be seen in our Migration topics. We rely on devs to make sure that they're using the correct versions of packages for the TFM of their app (and rely on roll-forward behavior for patch releases).


Make indicators additive list, treat secondary charts and primary chart indicators in the same list

Change toggle of indicators and overlays to additive approach.
Use indicator period length as example of customisation.

Also use OHLC selection as customisation #263
#73


An instruction to invoke opcodes on the stack

I had an idea that I've implemented (basically).
It is an opcode that uses the value from the top of stack as the opcode which is then executed.
Ex:
{ op: "push", val: 10 },
{ op: "push", val: 20 },
{ op: "push", val: 6 }, #ADD_I32 opcode
{ op: "invoke"},
{ op: "push", val: 3 },
{ op: "push", val: 8 }, #MUL_I32 opcode
{ op: "invoke"},
{ op: "ret"},
"ìnvoke" is the actual instruction. It "becomes" ADD_I32 in the first case and "MUL_I32" int he second. So the preceding code returns 90. ( (10+20)*3 )
This could be useful to implement "eval" like functions in languages that support it. Or allow to compile to a form of "dynamic code".
As of now only instructions that don't need arguments can be called this way, and there seems to be an issue with the "JUMP_STUB" opcode (it tries to update the opcode in memory). So not all opcodes make sense invoking dynamically.
Anyways.

Hi @fmonett,
This kind of an instruction is unfortunately not great for JIT compilation, because it makes it more difficult to generate efficient machine code. It would make dynamic execution less predictable.
But, worry not. We already have eval covered! The bytecode format is made of plain objects and arrays native to Zeta. If you create, in the plush language, objects that are "in the shape of a function", you can then call this as a normal function with the call opcode. You can dynamically generate new functions in memory. This is something that should already be possible with the parser in plush/parser.pls.


doxygen + travis + readme + spi

doxygen + travis + readme + spi

all seems to be ok, only I can't pust gh-pages branch to satisfy travis because of 403


Question about SimCLR

Should I use the patches in test set when I train the SimCLR model?

Ideally no. You could try to exclude the patches extracted from the testing images, but the impact is probably minor since the number of patches from the training set alone is more than enough for learning good representations.


Allow Cody to stream a code-only response

Depends on https://github.com/sourcegraph/cody/pull/610
Adds functionality so that Cody can respond with only code in a streamed response, making the CodyDo command a lot more usable as you can see how far along it is and minimise the float.
The changes can be accepted by pressing enter.

Superceded by #77


Update repository-roles-for-an-organization.md

Why:
Due to not working markdown tables and Japanese translation.

What's being changed:

To fix tables
To translate Japanese

Check off the following:

[x] I have reviewed my changes in staging (look for "Automatically generated comment" and click Modified to view your latest changes).
[x] For content changes, I have completed the self-review checklist.

Writer impact (This section is for GitHub staff members only):

[ ] This pull request impacts the contribution experience

[ ] I have added the 'writer impact' label
[ ] I have added a description and/or a video demo of the changes below (e.g. a "before and after video")

@eterny13
Thanks for opening this! Unfortunately, we are not able to accept changes for translated content. Our translation process involves an integration with an external service at crowdin.com, where all translation activity happens. We hope to eventually open up the translation process to the open-source community, but we're not there yet.
See https://github.com/github/docs/blob/main/contributing/types-of-contributions.md#earth_asia-translations.


Enable validation on root stac catalog

... and fix the missing field (needed for 1.0.0)!
For #320

Added missing validation for '/arrivals' catalog too.


Add mock test for getCodeVersion endpoint

Investigating a potential conformance endpoint test for getCodeVersion

Thank you, good job!


Draft: Update quest documentation

Summary
This PR is a feature that enhances Sphinx documentation for Quest.

It does the following

Fixes #1364

NOTE: I could get sphinx to do what I wanted with cross-references in the index.rst file. It only took one of the cross-references and claimed the others were undefined.

@kennyweiss , @gunney1 - not sure how we want to handle updating the quest docs since there were multiple parts and we're all assigned. For now, this PR just includes some new material on shaping.


How to avoid RGB camera feed from becoming dark post calibration using green screen example?

Hey Guys,
I'm trying to run the green screen example.
https://github.com/microsoft/Azure-Kinect-Sensor-SDK/tree/develop/examples/green_screen
Post running the example, the rgb camera feed becomes too dark.
The camera feed becomes alright if I unplug the cameras and connect again.
Any suggestion on how to calibrate it correctly would be helpful.
Thanks

Some things to consider:

Please make sure you are on the latest firmware.
Also what command are you using in green_screen as this can control the color exposure?
Please include pre and post green screen color camera images?
What are the lighting conditions of the environment?


Error with Jupyterhub

Hello,
I use this code for Jupyterhub, and I got 405 Error method not allowed. And I do not know how to fix this issue.
Can you give to me any instruction ?
Thank you,

the issue lies in static/main.js. the relevent callback code does not handle a username , which is part of the jupyterhub proxyed notebook url, here is my fix:

Thank you. I fixed this error.


Unable to Run Terragrunt plans with Symantec Installed

Describe the bug
Hello,
We are unable to run our Terragrunt plans to build Azure resources with Symantec Endpoint Protection installed. The Windows 11 computers blue screen with a System Service exception error, while the Windows 10 machines simply freeze and then reboot with no blue screen code. This started after installing the August updates from Microsoft.
Running the plan without Symantec Endpoint Protection installed allows the plan to run with no issues. This behaviour exists on both the RU7 and RU8 releases of Symantec Endpoint Protection.
We had been able to run the plans with no issues for years until these issues started popping up.
To Reproduce
Simply attempt to run a plan to build Azure resources and the computer bluescreens
// paste code snippets here

Expected behavior
A clear and concise description of what you expected to happen.
Nice to have

[ ] Terminal output
[ ] Screenshots

Versions

Terraform version: 1.5.4
Terragrunt version: v0.50.12
Environment details (Ubuntu 20.04, Windows 10, etc.): Windows 11

Additional context
Add any other context about the problem here.

Hello,
Where can I forward the debug logs to? I'd rather not post them on a public forum.

Hi,
please forward to<EMAIL_ADDRESS>and reference GitHub issue


[Question] Procedure to recover a volume

What should be the best procedure to recover a snapshot or a backup in rancher2/longhorn ?

We will create a document on that.
Some principle here:

When you recover (revert) to a previous snapshot, make sure the volume is attached but not mounted in the host. Otherwise, the data may be corrupted. You can see a warning in UI when you try to revert to a snapshot.
When you recover (restore) from a backup, you need to create a new volume from it.

There are some other implications when you try to restore to a certain PVC since Kubernetes control the name of the volume. We will address it in the doc.

thanks for you answer...
just one simple question i know not related to longhorn... how to do you do 1) ?
i've got my pod with my volume attached and mounted... how can i unmount it, revert the snapshot, then mount it again in rancher ?
Or is it not possible ?

You would have to stop the workload (pod) using the volume first because the OS won't expect the content of the device changed without going through the storage stack.
Here are the recommended steps:

Stop the pod. Kubernetes will detach the volume then.
Using Longhorn UI to reattach the volume to any host. Then you can safely revert the volume to any snapshot.
Using Longhorn UI to detach the volume.
Start the pod again.

thanks ;-)

We will create a document on that.
Some principle here:

When you recover (revert) to a previous snapshot, make sure the volume is attached but not mounted in the host. Otherwise, the data may be corrupted. You can see a warning in UI when you try to revert to a snapshot.
When you recover (restore) from a backup, you need to create a new volume from it.

There are some other implications when you try to restore to a certain PVC since Kubernetes control the name of the volume. We will address it in the doc.

Is there a way to automate restoring from the backups?


Interleaving deprecation [WIP]

Fixes https://github.com/cockroachdb/docs/issues/9974.
Fixes https://github.com/cockroachdb/docs/issues/9622.
Fixes https://github.com/cockroachdb/docs/issues/9267.
This PR:

Improves the documentation on deprecation/removal of interleaved tabes/indexes in the 20.2 and 21.1 docs.
Removes most of the references/recommendations for interleaved tables/indexes from the 20.2 and 21.1 docs. The exceptions being the actual INTERLEAVE IN PARENT syntax page and the 20.2.0 GA deprecation notices.

Note that this PR does not include guidance on querying crdb_internal.interleaved* tables (as suggested in https://github.com/cockroachdb/docs/issues/9974), as those tables (https://github.com/cockroachdb/cockroach/pull/61629 and https://github.com/cockroachdb/cockroach/pull/62076) have yet to make it to a release. When those PRs make it to a release branch and are part of a published release, we can update the crdb_internal page (also yet to be published: https://github.com/cockroachdb/docs/pull/8909), and then add a short example to interleave-in-parent.html.
WIP: SQL Diagram Updates
Note that opt_interleave needs to be removed from the following diagrams (and their 20.2 counterparts):

_includes/v21.1/sql/generated/diagrams/alter_primary_key.html
_includes/v21.1/sql/generated/diagrams/alter_table.html
_includes/v21.1/sql/generated/diagrams/create_index.html
_includes/v21.1/sql/generated/diagrams/create_inverted_index.html
_includes/v21.1/sql/generated/diagrams/create_table.html
_includes/v21.1/sql/generated/diagrams/grammar.html
_includes/v21.1/sql/generated/diagrams/index_def.html
_includes/v21.1/sql/generated/diagrams/stmt_block.html
_includes/v21.1/sql/generated/diagrams/table_constraint.html

This change is

Online preview: http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/31072ec1f8344f5d56f9782665a49d5f76353f16/
Edited pages:

releases/v20.2.0.md
v20.2/alter-primary-key.md
v20.2/backup.md
v20.2/cockroach-workload.md
v20.2/cost-based-optimizer.md
v20.2/create-index.md
v20.2/create-table-as.md
v20.2/create-table.md
v20.2/foreign-key.md
v20.2/hash-sharded-indexes.md
v20.2/import-into.md
v20.2/interleave-in-parent.md
v20.2/joins.md
v20.2/partitioning.md
v20.2/performance-best-practices-overview.md
v20.2/performance-tuning-insecure.md
v20.2/performance-tuning.md
v20.2/restore.md
v20.2/sql-faqs.md
v20.2/sql-feature-support.md
v20.2/sql-grammar.md
v21.1/alter-primary-key.md
v21.1/backup.md
v21.1/cockroach-workload.md
v21.1/cost-based-optimizer.md
v21.1/create-index.md
v21.1/create-table-as.md
v21.1/create-table.md
v21.1/foreign-key.md
v21.1/hash-sharded-indexes.md
v21.1/import-into.md
v21.1/interleave-in-parent.md
v21.1/joins.md
v21.1/partitioning.md
v21.1/performance-best-practices-overview.md
v21.1/performance-tuning-insecure.md
v21.1/performance-tuning.md
v21.1/restore.md
v21.1/sql-faqs.md
v21.1/sql-feature-support.md
v21.1/sql-grammar.md

Online preview: http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/ee04dd246e026ab794eadc6180c752ac7498fb27/
Edited pages:

releases/v20.2.0.md
v20.2/alter-primary-key.md
v20.2/backup.md
v20.2/cockroach-workload.md
v20.2/cost-based-optimizer.md
v20.2/create-index.md
v20.2/create-table-as.md
v20.2/create-table.md
v20.2/foreign-key.md
v20.2/hash-sharded-indexes.md
v20.2/import-into.md
v20.2/interleave-in-parent.md
v20.2/joins.md
v20.2/partitioning.md
v20.2/performance-best-practices-overview.md
v20.2/performance-tuning-insecure.md
v20.2/performance-tuning.md
v20.2/restore.md
v20.2/sql-faqs.md
v20.2/sql-feature-support.md
v20.2/sql-grammar.md
v21.1/alter-primary-key.md
v21.1/backup.md
v21.1/cockroach-workload.md
v21.1/cost-based-optimizer.md
v21.1/create-index.md
v21.1/create-table-as.md
v21.1/create-table.md
v21.1/foreign-key.md
v21.1/hash-sharded-indexes.md
v21.1/import-into.md
v21.1/interleave-in-parent.md
v21.1/joins.md
v21.1/partitioning.md
v21.1/performance-best-practices-overview.md
v21.1/performance-tuning-insecure.md
v21.1/performance-tuning.md
v21.1/restore.md
v21.1/sql-faqs.md
v21.1/sql-feature-support.md
v21.1/sql-grammar.md

Online preview: http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/7a130fea21f0a1070968f9a8b781015f0d8ac4ab/
Edited pages:

releases/v20.1.13.md
releases/v20.2.0.md
v20.2/alter-primary-key.md
v20.2/backup.md
v20.2/cockroach-workload.md
v20.2/cost-based-optimizer.md
v20.2/create-index.md
v20.2/create-table-as.md
v20.2/create-table.md
v20.2/foreign-key.md
v20.2/hash-sharded-indexes.md
v20.2/import-into.md
v20.2/interleave-in-parent.md
v20.2/joins.md
v20.2/partitioning.md
v20.2/performance-best-practices-overview.md
v20.2/performance-tuning-insecure.md
v20.2/performance-tuning.md
v20.2/restore.md
v20.2/sql-faqs.md
v20.2/sql-feature-support.md
v20.2/sql-grammar.md
v21.1/alter-primary-key.md
v21.1/backup.md
v21.1/cockroach-workload.md
v21.1/cost-based-optimizer.md
v21.1/create-index.md
v21.1/create-table-as.md
v21.1/create-table.md
v21.1/foreign-key.md
v21.1/hash-sharded-indexes.md
v21.1/import-into.md
v21.1/interleave-in-parent.md
v21.1/joins.md
v21.1/partitioning.md
v21.1/performance-best-practices-overview.md
v21.1/performance-tuning-insecure.md
v21.1/performance-tuning.md
v21.1/restore.md
v21.1/sql-faqs.md
v21.1/sql-feature-support.md
v21.1/sql-grammar.md

Online preview: http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/5b4df4eecbd4abab763b1501726fe87632b19ee8/
Edited pages:

releases/v20.1.13.md
releases/v20.2.0.md
v20.2/alter-primary-key.md
v20.2/backup.md
v20.2/cockroach-workload.md
v20.2/cost-based-optimizer.md
v20.2/create-index.md
v20.2/create-table-as.md
v20.2/create-table.md
v20.2/foreign-key.md
v20.2/hash-sharded-indexes.md
v20.2/import-into.md
v20.2/interleave-in-parent.md
v20.2/joins.md
v20.2/partitioning.md
v20.2/performance-best-practices-overview.md
v20.2/performance-tuning-insecure.md
v20.2/performance-tuning.md
v20.2/restore.md
v20.2/sql-faqs.md
v20.2/sql-feature-support.md
v20.2/sql-grammar.md
v21.1/alter-primary-key.md
v21.1/backup.md
v21.1/cockroach-workload.md
v21.1/cost-based-optimizer.md
v21.1/create-index.md
v21.1/create-table-as.md
v21.1/create-table.md
v21.1/foreign-key.md
v21.1/hash-sharded-indexes.md
v21.1/import-into.md
v21.1/interleave-in-parent.md
v21.1/joins.md
v21.1/partitioning.md
v21.1/performance-best-practices-overview.md
v21.1/performance-tuning-insecure.md
v21.1/performance-tuning.md
v21.1/restore.md
v21.1/sql-faqs.md
v21.1/sql-feature-support.md
v21.1/sql-grammar.md

New migration guide looks great! We just need to be careful because interleaved tables are not yet removed, so all the docs related to their current behavior likely need to stick around for one more release.
We should be deleting/modifying anything that promotes their use though.

Online preview: http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/1350cb84b0b577c5c7e11ce92a266b83249e22e7/
Edited pages:

releases/v20.1.13.md
releases/v20.2.0.md
v20.2/alter-primary-key.md
v20.2/cockroach-workload.md
v20.2/cost-based-optimizer.md
v20.2/create-index.md
v20.2/create-table-as.md
v20.2/create-table.md
v20.2/foreign-key.md
v20.2/interleave-in-parent.md
v20.2/joins.md
v20.2/partitioning.md
v20.2/performance-best-practices-overview.md
v20.2/performance-tuning-insecure.md
v20.2/performance-tuning.md
v20.2/sql-faqs.md
v20.2/sql-feature-support.md
v20.2/sql-grammar.md
v21.1/alter-primary-key.md
v21.1/cockroach-workload.md
v21.1/cost-based-optimizer.md
v21.1/create-index.md
v21.1/create-table-as.md
v21.1/create-table.md
v21.1/foreign-key.md
v21.1/interleave-in-parent.md
v21.1/joins.md
v21.1/partitioning.md
v21.1/performance-best-practices-overview.md
v21.1/performance-tuning-insecure.md
v21.1/performance-tuning.md
v21.1/sql-faqs.md
v21.1/sql-feature-support.md
v21.1/sql-grammar.md