Pagination (from, to)

If a root query (i.e., { Get { Class {} has many results or if a cross-reference contains many results, there is no way to request the results in a specific range (currently, this has to be solved after receiving the data on application level). Besides the technical implications (@etiennedi, @antas-marcin) I would like to understand what the potential UX (@laura-ham) implications are.
To kick off the discussion I would propose the following from an interface POV (described following Weaviate's GraphQL design principles):
{
  <Function> {
      <Class>(
         form: int # <== FROM (optional)
         to: int   # <== TO (optional)
      ) {
        <property>
        <cross_reference-property>(
         form: int # <== FROM (optional)
         to: int   # <== TO (optional)
        ) {
            ... on <ClassOfBeacon> {
                <property>
            }
        }
      }
  }
}

Renamed to Pagination

UX

We already have a parameter limit to limit the sets of results, so to insn't needed (and would imho also be redundant)
I'd suggest the more widely used offset instead of from. So (offset: 100, limit: 10) would retrieve results from 101-110
Pagination on ref props creates a major UX problem in my opinion: The result list typically contains more than one result which all a very different amount of cross-refs. Their pagination would all be controlled by a single parameter (not good practice in my opinion) with varying effects depending on the number of refs. For example, if objects 1 has 100 refs, but object two has just 5, 9 of 10 pages would make sense for result object 1, but would show no results for object 2. A cross-ref pagination would in my opinion only have a clean UX if the root query has limit:1 set. Furthermore, I can't think of a situation in an end application where the user would click on "next page" and expect multiple datasets to be paged. I think the intuitive expectation when clicking on "next page" is that exactly one thing is being paged. This makes me think that it might be 10 times cleaner to solve pagination of refs at the application level.
As a follow-up to the above, if we decide we want pagination on ref props, we also have to think about nested props. The confusion from above will only multiply if there is not one level, but many

Technical
We need to be aware that with Weaviate being a distributed nosql db, pagination is essentially just querying more data and discarding the first results. Especially with multiple shards, shards will not know where the cutoff point is going to lie until they have been aggregated. So if a cluster has 10 shards, and you set offset 100, limit 10, Weaviate will retrieve a total 1100 objects (110 per shard) only to display 10 objects. In other words, the cost is high and increases with each page.

Mark as not stale. This is prioritized.

Great! I definitely need the pagination for a WooCommerce search & filters.
Is there a plan to release the fix soon?


Use lintrunner

🐛 Describe the bug
It isn't obvious how to run lints locally. lintrunner, used by pytorch main repo, makes this very easy.
Versions
master

The instructions regarding linting are here: https://github.com/pytorch/vision/blob/main/CONTRIBUTING.md#code-formatting-and-typing. Let us know if they're not clear enough.
As far as I know, our process predates (by a lot) the existence of linterunner and its adoption by torch core. We're using tools and processes that are closer to what other major repos are using, and it's been working fine for us.

I think my big problem was https://github.com/pytorch/vision/pull/7462

I also want to point out that your CONTRIBUTING docs don't include pydocstyle, which I just tripped over in my PR. lintrunner makes it easy to make sure you ran ALL of the lints, not just each one individually.
Anyway, you don't have to do it, I mostly want permission to do the switch if someone decides they want to do it.


Rewriting to 404 page in Gatsby.js causes 500 error.

Before opening, please confirm:

[X] I have checked to see if my question is addressed in the FAQ.
[X] I have searched for duplicate or closed issues.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.
[X] I have removed any sensitive information from my code snippets and submission.

App Id
private at this stage - happy to share in private message
AWS Region
ap-northeast-1
Amplify Hosting feature
Redirects
Describe the bug
In the Gatsby.js Rewrite and Redirect settings, the rewrite to a 404 page worked fine until now, but recently I've been getting an Internal Server Error: target response exceeds 1MB limit. It's not displaying properly. I changed the rewrite setting to redirect and it worked, but I don't know why, so please let me know.
Expected behavior
Successful rewrite to 404 screen.
Reproduction steps
Add the following to Amplify's rewrite and redirect settings.

source address:/<*>  target address:/404/index.html input:404(rewrite)
Create pages/404.tsx on the Gatsby side.
500 error occurs when deploying to Amplify.

Build Settings
No response
Log output

# Put your logs below this line

Additional information
No response

Hey @t-sugimoto0914 👋 , thanks for raising this! We are investigating into this behavior and we'll keep you posted with our findings.


Model wishlist

Please let us know what model architectures you would like to be added!

[x] mistralai/Mistral-7B-Instruct-v0.1
[x] mistralai/Mistral-7B-Instruct-v0.2
[x] mistralai/Mixtral-8x7B-Instruct-v0.1
[x] meta-llama/Llama-2-13b-hf
[x] google/gemma-7b-it
[x] microsoft/phi-2
[ ] stabilityai/stablelm-2-1_6b
[ ] 01-ai/Yi-6B
[ ] RWKV/rwkv-6-world-1b6 and RWKV/rwkv-5-world-1b5
[ ] yzsydlc/qwen2
[ ] adept/persimmon-8b-chat
[ ] mosaicml/mpt-7b

Quantized architectures:

[x] llama
[ ] phi

Mistral v0.2
It currently doesn't work with the mistral-gguf setup.
$ ./target/release/mistralrs-server --port 1234 --log output.txt mistral-gguf -t mistralai/Mistral-7B-Instruct-v0.2 -m TheBloke/Mistral-7B-Instruct-v0.2-GGUF -f mistral-7b-instruct-v0.2.Q4_K_M.gguf
2024-04-06T04:23:47.390913Z  INFO mistralrs_server: avx: true, neon: false, simd128: false, f16c: true
2024-04-06T04:23:47.390932Z  INFO mistralrs_server: Sampling method: penalties -> temperature -> topk -> topp -> multinomial
2024-04-06T04:23:47.390935Z  INFO mistralrs_server: Loading model `mistralai/Mistral-7B-Instruct-v0.2` on Cuda(CudaDevice(DeviceId(1)))...
2024-04-06T04:23:47.390949Z  INFO mistralrs_server: Model kind is: quantized from gguf (no xlora)
config.json [00:00:00] [██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████] 596 B/596 B 3.50 KiB/s (0s)Error: invalid type: null, expected usize at line 19 column 24

I think this is related to an error on config.json? https://huggingface.co/mistralai/Mistral-7B-Instruct-v0.2/blob/main/config.json#L19
v0.2 doesn't have sliding-window attention indeed https://huggingface.co/mistralai/Mistral-7B-Instruct-v0.2

Thank you for raising this. I have fixed the issue, and mistral v0.2 should work now.

Is it currently possible to use models that are not tuned for instructions? It seems that only chat models are supported.
$ target/release/mistralrs-server --port 1234 mistral --model-id mistralai/Mistral-7B-v0.1
(...)
No specified chat template, loading default chat template at `./default.json`.

@hugoabonizio, I just merged support for models with no chat template, so now models that are not tuned for instructions are supported.

@EricLBuehler, thank you for the quick reply! I'm trying to run lm-eval against mistral.rs to compare it with the Python implementation, but I'm having some issues since it calls the completions endpoint (/completions) instead of the chat completions (/chat/completions). I'll try to hack that in over the weekend.

@hugoabonizio, #107 just added the /completions endpoint. Hopefully that is helpful!

@EricLBuehler wow, that's faster than I can think! :satisfied:
I'm getting an OOM error using non-quantized Mistral on an A100 80GB. Do you have any clue why?
$ target/release/mistralrs-server --port 1234 mistral --model-id mistralai/Mistral-7B-v0.1

$ curl http://localhost:1234/v1/completions -H "Content-Type: application/json" -H "Authorization: Bearer EMPTY" -d '{
"model": "",
"prompt": "What is Rust?"
}'
{"message":"DriverError(CUDA_ERROR_OUT_OF_MEMORY, \"out of memory\")","partial_response":{"id":"0","choices":[{"finish_reason":"error","index":0,"text":"\n\nRust is a malicious programming language that frustrates and irritates users. It’s activated by the RustM.exe file hiding on your device, disguised as the Windows Adobe Flash Player update “admin123.exe” file.\n\nUpon installing, the virus blackmails the victim to send bitcoin or pay money to remove Rust.\n\nRecently, the virus has been often distributed via an infection email titled: “Adobe Flash Player”‘.\n\nTherefore, it’s crucial to carefully read the document, since any presented data is commonly false.\n\nYou should never open anything from a stranger on the internet, as the Rust infection can catch you off guard and take control of your device.\n\nFurthermore, you shouldn’t click files that end on ‘.doc’ and ‘.exe’. As you know, these could be easily disguised as something innocent, but rather be something dangerous.\n\n## How to Get Rust Virus and How to Remove Rust From Your Device\n\nAs we already mentioned, it’s very easy to get Rust on your computer. The Rust virus distributor sends an email like you’re just any other bad driver.\n\nAs links and file documents with different extensions can be disguised as a game, email with some new data, or an update that easily infects your computer.\n\nMalicious malware viruses like the Rust virus blackmail the victim with pictures of their computer video feed. Through camera pictures and what seems like a screenshot, the Rust virus feels dangerous and frustrating.\n\nEspecially when the presentation is complete with good spellings and grammar.\n\nThis is a way of gaining the victim’s trust. Meaning that some believe what they are being told.\n\nThis in turn can cause fear, as the virus has installed completely and the device now belongs to the virus.\n\nTake into account, that everything seems innocent and easy to use, but in reality, the victim needs a solution as fast as possible.\n\nThe virus doesn’t give the victim options when to pay or send the amount of money they request for the “ransom”.\n\nRemembering that there’s no guarantee that he’ll really send the files back or not.\n\nSo that’s why VirusPro can help you solve the problem by offering you the options to always be safe and protected when it comes to Viruses like Rust.\n\n## VirusPro\n\nVirusPro is an antivirus that works best with Mac.\n\nThey offer tips and tutorials for utilizing information provided by them, such as installation and data/spam scanning. Also","logprobs":null}],"created":1712927025,"model":"mistralai/Mistral-7B-v0.1","system_fingerprint":"local","object":"text_completion","usage":{"completion_tokens":579,"prompt_tokens":5,"total_tokens":584,"avg_tok_per_sec":30.635262,"avg_prompt_tok_per_sec":32.467533,"avg_compl_tok_per_sec":30.62034,"avg_sample_tok_per_sec":77.887436,"total_time_sec":19.063,"total_prompt_time_sec":0.154,"total_completion_time_sec":18.909,"total_sampling_time_sec":7.498}}}

The process starts with ~14GB of memory and grows limitless until OOM. With fewer max_tokens, e.g. 500, it reaches ~64GB of memory and returns successfully.

One thing that I noticed is that the error only happens on non-quantized models. Quantized models do not seem to have that problem. I've tested the llama-index integration, which works with a large amount of output tokens (easily more than 500) on an A10 with 24GB. #44 seems to be similar, and I'm not really sure why this is happening. I'll take another look.

@EricLBuehler yeah, it seems like it's overgrowing the kv-cache or something like that. It doesn't happen with the Candle's original implementation BTW.

@lucasavila00, do you think you can take a look at this? I've been trying to find what is wrong but made no progress and maybe a second pair of eyes would help. I have the nonquant_oom_branch where I have been playing around in case you want to try that out.
Interestingly, during debugging, I discovered that even after disabling the mistral.rs KV cache mechanism and reverting to the Candle official implementation, the problem persists. Additionally, this is not a problem for the quantized models.

@EricLBuehler I'll give it a shot.  But I'll try CPU or a if that doesn't work, a VM.

Thanks! Let me know if you find anything.

I can reproduce it on CPU.
Te generate this amount of text:
Once upon a time, in a land far, far away, there was a kingdom ruled by a wise and just king. The kingdom was prosperous and peaceful, but there was one problem: the code written by the programmers in the kingdom was prone to errors.

The king knew that errors in code could lead to disastrous consequences, so he called upon his most trusted advisors to find a solution. After much deliberation, they came up with a plan: they would implement error handling in the code.

It used 6gb RAM unquant, and 100mb RAM quant. Both running on CPU.
As far as I know the quantization should differ only on the weights, right? The activations and KV cache is still full precision on quantized models, right? So they're going to use F32 in GPU and F32 in CPU, right? So the RAM usage should increase by the same amount no matter if quantized... :thinking:

@EricLBuehler I did a heap dump of it, and, weirdly, 5gb were on repeat kv - also 2gb on kvconcat

Compared to quantized, where no memory leaked:

Thanks, that is very useful. Were you running an X-LoRA model? It looks like xlora_models' repeat_kv shows up in the heap track, and that should not be happening.

I'm running:
heaptrack ./target/release/mistralrs-server --prompt "Tell me 6 jokes." mistral-gguf

and
heaptrack ./target/release/mistralrs-server --prompt "Tell me 6 jokes." mistral

I'm looking at the dumps and the gguf leaks no memory at all (only the model).
The regular version leaks.
I opened the biggest leaks here:

It is very strange that mistralrs_core::xlora_models::mistral::Attention::repeat_kv is reported as being called if you are not running an X-LoRA model. That is very strange, as when I added a panic to that function on my machine, it doesn't run. I'll assume the profiler means the regular mistral repeat_kv implementation. Can you please run this on the Candle mistral so we can get some idea of how they perform?

Yeah, it's weird. Once I added the panic too it reports the correct function.
I also enabled debug symbols with the profiling build profile:
__GI___clone3 in libc.so.6
start_thread in libc.so.6
std::sys::pal::unix::thread::Thread::new::thread_start::h40e6fd3f8ce15a14 in mistralrs-server
_$LT$alloc..boxed..Box$LT$F$C$A$GT$$u20$as$u20$core..ops..function..FnOnce$LT$Args$GT$$GT$::call_once::hd05b2dc112b7a972 in mistralrs-server
_$LT$alloc..boxed..Box$LT$F$C$A$GT$$u20$as$u20$core..ops..function..FnOnce$LT$Args$GT$$GT$::call_once::h32ae492e80523c39 in mistralrs-server
core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::he7bc82b7859d27ea in mistralrs-server
std::thread::Builder::spawn_unchecked_::_$u7b$$u7b$closure$u7d$$u7d$::he395973212fd5227 in mistralrs-server
std::panic::catch_unwind::h8125d48c000381b5 in mistralrs-server
std::panicking::try::h836c71900e4592ac in mistralrs-server
std::panicking::try::do_call::h5884dae2f150ed49 in mistralrs-server
_$LT$core..panic..unwind_safe..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::h51ad0e79282fb9d5 in mistralrs-server
std::thread::Builder::spawn_unchecked_::_$u7b$$u7b$closure$u7d$$u7d$::_$u7b$$u7b$closure$u7d$$u7d$::h3efed42a53913f56 in mistralrs-server
std::sys_common::backtrace::__rust_begin_short_backtrace::h863a1d42df1f38d4 in mistralrs-server
mistralrs_core::MistralRs::new::_$u7b$$u7b$closure$u7d$$u7d$::h249bbc6d80598a29 in mistralrs-server
mistralrs_core::engine::Engine::run::h3480a4c2af3a7266 in mistralrs-server
_$LT$mistralrs_core..pipeline..mistral..MistralPipeline$u20$as$u20$mistralrs_core..pipeline..Pipeline$GT$::forward::h287e96e269b84bac in mistralrs-server
mistralrs_core::models::mistral::Model::forward::h05a3b38fcb45cb34 in mistralrs-server
mistralrs_core::models::mistral::DecoderLayer::forward::hf23bc1b1ec28acc3 in mistralrs-server
mistralrs_core::models::mistral::Attention::forward::hcc85fe9de1682d7a in mistralrs-server
mistralrs_core::models::mistral::Attention::repeat_kv::hc26597baed00693a in mistralrs-server
candle_core::tensor::Tensor::reshape::hf1f9f0a4912f0217 in mistralrs-server
candle_core::device::Device::alloc_uninit::h56d57331a20cfef6 in mistralrs-server
_$LT$candle_core..cpu_backend..CpuDevice$u20$as$u20$candle_core..backend..BackendDevice$GT$::alloc_uninit::hd74b7fc8acf5858a in mistralrs-server

cargo build --release --example mistral
heaptrack ./target/release/examples/mistral --prompt "Tell me a joke." --sample-len 50

No leaks. It even freed the model.
I also watched the system resource monitor and it never went above the 29gb it takes to load the model initially.

It seems the memory leak is only on DecoderLayer and under. No layer above seemed to leak. All layers under seem to leak.

Thank you for getting those traces! I wish we had something like miri for CUDA, that would be very helpful here. After my testing on the branch I mentioned above the only difference is that we use a custom Candle branch. The only changes are for CUDA though, so I'm a bit confused as to why this is happening. I'll take a deeper look.

Disabling kv cache fixes it on my end.
I ran the same heap profile for the quantized version and it doesn't leak anything, either with or without KV cache.
heaptrack ./target/profiling/mistralrs-server --no-kv-cache --prompt "Hello!" mistral

Moved to #156.


labeled Hackcon I talks

Hackcon I talks have a distinctly different flavor than Hackcon II talks (e.g.) or any other organizer videos, so I think it makes some sense to label them (or maybe make a sub-category under videos for them)

Great, thanks for all the updates!


Investigate performance regression on clean assembleDebug on santaTrackerAndroidBuild with clean transforms cache

It seems like some changes to the santa-tracker project exposed a performance regression on master: https://builds.gradle.org/repository/download/Gradle_Check_PerformanceExperimentCoordinator/25756287:id/report-performance-performance-tests.zip!/report/tests/clean-assembleDebug-on-santaTrackerAndroidBuild-with-clean-transforms-cache.html?redirectSupported=false
We should understand the regression and then decide how to handle it.

cc: @gradle/build-cache

Rebaselined in https://github.com/gradle/gradle/commit/ec4e70eab0b9e175a723090e3f348d31deaa2349 to unblock master.

Note that we are running 20 warmups and 40 runs, which each iteration taking around 15s, so a total of 15 minutes for each experiment 😱 .

It looks like @adammurdoch's changes caused the regression: https://github.com/gradle/gradle/compare/09b076e1fb397ea23a925b36f7442b878c8fbac5...8d02d273e7e89ad49f3efc3d9fc120ced2bfa41e
This in an ad-hoc performance test before the changes: https://builds.gradle.org/viewLog.html?buildId=25790230&buildTypeId=Gradle_Util_Performance_AdHocPerformanceScenarioLinux&tab=buildChangesDiv&branch_Gradle_Util_Performance=wolfs%2Fsnapshot-change-detection
And this is the failing one after the changes: https://builds.gradle.org/viewLog.html?buildId=25790233&buildTypeId=Gradle_Util_Performance_AdHocPerformanceScenarioLinux&tab=buildChangesDiv&branch_Gradle_Util_Performance=wolfs%2Fsnapshot-change-detection
I don't understand why, though...

Done, for the fix see https://github.com/gradle/instant-execution/issues/71.


Errors running Prisma on GitHub Actions (linux)

What I did
Set up a new prisma2 project with the following options:

Starter Project
Javascript
GraphQL + Auth
SQLite

I then set up CI using Github Actions, to npm install and run the build command.
Expected Behaviour
The project should build and the dist folder generated on completion.
Describe the bug
prisma2 generate fails with:
$ npm -s run generate
18
Error: Error: Command failed with exit code 2 (ENOENT): /github/workspace/node_modules/prisma2/query-engine-linux-glibc-libssl1.1.0 cli --dmmf
19
spawn /github/workspace/node_modules/prisma2/query-engine-linux-glibc-libssl1.1.0 ENOENT
20
error Command failed with exit code 1.
21
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
22
##[error]Docker run failed with exit code 1

To Reproduce
I've set up a repo with said options and github actions https://github.com/iRoachie/prisma2-github-ci

Prisma Version: 2.0.0-preview015

Borales/actions-yarn uses node:10.16-alpine which is actually not supported right now #702
So I think I can close this as a duplicate of #702

I would’ve never assumed that from that error 🙈 thanks for the triage


Upgrade to react-native 0.25

Hi,
there are some deprecation notice from react-native please see broken changes on
the following link https://github.com/facebook/react-native/releases/tag/v0.25.1
ps :  @sibeliusseraphini provides tool for update to 0.25
https://github.com/sibeliusseraphini/codemod-RN24-to-RN25

Hi, Thanks for this.
Updated in v1.6.0


feat(plugin-seo): add Turkish translation

We're about to launch v3 soon, would you mind making a PR for adding this to beta as well please? We can then merge both

Thank you for both!


Amendments cannot be submitted in some cases [6]

A bug is blocking the submission of a few amendments. The issue is caused by a combination of things: A trigger that protects archived table records (archived_records_are_immutable) is getting fired and throwing an error when submitting an amendment if a general revision has been applied after the amendment was created where the general revision has deleted an attachment (Note: I’ve only seen this with attachments, but the issue could be broader). This might also get triggered if a general revision removed a contact or manager.
Probability (how likely the bug is to happen, scored from 1-5): 2
Effect (how bad the bug is when it does happen, scored from 1-5): 4
Steps to reproduce the behaviour:

Create a project with a couple attachments & submit it (should only need the project overview & attachments stuff)
Create an amendment & leave it in pending (don’t apply it)
Create a general revision, delete an attachment and apply it
Return to the amendment & attempt to apply it.
An error will be thrown when attempting to apply the amendment

Per discussion on Oct 25, we need to implement what we had previously been referring to as rebasing the project revisions when one is commit on a project with another open revision. If there is an open amendment, and a general revision is committed on that project, the changes need to be made in the open amendment as well. In the case of attachments and mangers, this means deleting the records entirely as they never would have existed if the amendment had been opened from the latest committed version of the project.

This work has been merged to develop but is staying in the review in progress column since we're going to have the CIF team test it out in Test before we deploy it to prod.
cc @patriciarussellCAS  / @pbastia

Scratch the above comment, moving this along and writing up a new card for the follow up testing with CIF staff.


Stream quality is fixed. How to increase Stream quality in Jio TV Botallen 2.0.0 addon

How to increase stream quality in Jio TV Botallen 2.0.0 addon

You have to enable it from settings.
Goto My-addons > VideoPlayer InputStream > Inputstream Adaptive and open settings. In settings change Stream Selection from Auto to Manual video
And then you can switch between multiple stream quality from the OSD menu
Closing this issue it's not related to add-on.


Commas in iati-identifier break csv output

Describe the bug
Where there is a comma in an iati-identifier (not ideal but there are instances), returning the activity in csv and opening in a spreadsheet causes the columns to be output incorrectly.
To Reproduce
Use this query to return activity 'GB-GOV-3-Governance, Education and Culture-ID':
https://iatidatastore.iatistandard.org/search/activity?q=(iati_identifier:"GB-GOV-3-Governance%2C%20Education%20and%20Culture-ID")&wt=xslt&tr=activity-csv.xsl&rows=2500
Import into Excel and see the columns misaligned:

Expected behavior
Quoting the iati-identifier in the csv output should prevent this from happening.

Re-tested and looks good. Please feel free to close 👍


Releases page - different downloads

In the releases page (https://github.com/atom/atom-shell/releases), there are two zip files for each platform in a release, one with symbols in the file name and one without. I'm not sure what are the differences between the two, perhaps the "symbol" versions contain extra debugging information? Whatever it means, I think it should be mentioned in README.md.
Maybe a link to docs/tutorial/using-selenium-and-webdriver.md or a short description for chromedriver is also needed (in README.md).

The ones with -symbols in their filenames are purely debugging symbols, which are usefully to generate a meaningful stack trace from uploaded crash reports.
I agree we should mention it in README.


fix: main filed

fixed https://github.com/GoogleChromeLabs/squoosh/issues/1034

@googlebot I signed it!


fix(Dashboard): Missing dashboardId when refreshing Explore

SUMMARY
This PR fixes an issue for which the dashboardId was lost when refreshing Explore.
BEFORE
Fixes #17244
AFTER
https://user-images.githubusercontent.com/60598000/140949428-9dde82ee-7ccc-4916-a60b-e2adf06b077f.mp4
TESTING INSTRUCTIONS

Open a Chart in Explore from a Dashboard with custom label colors
Refresh Explore
Make sure the custom label colors are not lost

ADDITIONAL INFORMATION

[x] Has associated issue: #17244
[ ] Required feature flags:
[ ] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

/testenv up


Cannot run scripts as-directed because they are not signed

Describe the bug

The documentation page at https://github.com/Azure/Azure-Network-Security/tree/master/Cross Product/Find Dangling DNS Records has instructions to download/clone the repo and then run the script in PowerShell.
By default, PowerShell on Windows will not run downloaded scripts unless they are signed. So I get the below error:

PS C:\Users\Stuff\Find Dangling DNS Records> ./Get-DanglingDnsRecords.ps1
./Get-DanglingDnsRecords.ps1 : File C:\Users\Stuff\Find Dangling DNS Records\Get-DanglingDnsRecords.ps1 cannot be loaded.
The file C:\Users\Stuff\Find Dangling DNS Records\Get-DanglingDnsRecords.ps1 is not digitally signed. You cannot run this script on the current system.

Reproduce
(See above)
Expected behavior
I expected this script, from Microsoft, no-less, to be signed and ready to execute without needing to jump through any hoops to appease the PowerShell security gods.
Screenshots
If applicable, add screenshots/images to help explain your problem.
Environment- if applicable
PS C:\Users\Stuff\Find Dangling DNS Records> Get-Host

Name             : ConsoleHost
Version          : 5.1.19041.546
InstanceId       : f53aa37d-e823-4130-a656-8b07844a1d45
UI               : System.Management.Automation.Internal.Host.InternalHostUserInterface
CurrentCulture   : en-GB
CurrentUICulture : en-US
PrivateData      : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy
DebuggerEnabled  : True
IsRunspacePushed : False
Runspace         : System.Management.Automation.Runspaces.LocalRunspace

Desktop (please complete the following information if applicable):
Windows 10 Pro for Workstations, version 2004.
Logs- if applicable
None
Additional context
None

We have published the module to https://www.powershellgallery.com/packages/AzDanglingDomain which should resolve the issue.

@Arun-Mudiraj Thanks


remove timestamp type guessing

Type recognition for timestamps was removed in
https://github.com/crate/crate/pull/3061 because of the issue reported
here https://github.com/crate/crate/issues/3042
But it was only removed for top level columns and the issue is still
present for object columns.
This commit fixes that and removes it completely.

ack


Use dev 9.0 image which contains GA bits.

Description
There isn't a final build of the dotnet dev container image available yet so until it is out we can use this image which seems to contain the GA bits.
Microsoft Reviewers: Open in CodeFlow

/azp run

/azp run


I can't play the song

I play using software from version 1.3.0 in version 1.20.1, but nothing happens after tuning

You can update your Minecraft version and use 1.3.1/1.3.0 in the updated game version and you can use viafabric to connect to the server which are in the old version.GOOD LUCKS!

1.20.1 here too (can't update due to many mods). 1.3.0 tunes and gets stuck at 0:00 (both on single- and multiplayer), but 1.2.5 works.

My guess is that me making the playback async causes some issues, because somehow the playback thread crashes or gets denied to do it's function because of some other mod or OS restriction.
Can you please be a bit more specific about it?

Was it in Singleplayer or Multiplayer?
How often does it happen? Did it happen when starting your first song or some specific song?
Does it help to first stop the current song, then playing the next song (/discjockey stop, the play again)?
Does it happen if you disable most/all other mods? What mods do you use?

If the playback thread crashes it should also print the reason for it to the console. Can you send the relevant part of the log search for any stacktraces that include the mod?
A stack trace might look roughly like this:

If your launcher doesn't show you your logs, you can try to let it open your minecraft folder. The most recent logs should be located under logs/latest.log (it's a text file you can open with any text editor). Then it's best to use CTRL+F and search for disc_jockey and logs that look similar to the above.

Seems like #17 is a duplicate of this and #18 and #19 are kinda copies of #17 as well. Best to discuss it here, since this is the first report of this bug.

For me:

it happens in both singleplayer and multiplayer
always
first song
no
haven't tried, but can if needed
no

Somehow didn't think to check the logs until now, sorry! (I use Quilt, for the record.)
[21:17:09] [Thread-34/ERROR]: Uncaught exception in thread "Thread-34"
java.lang.NoSuchMethodError: 'void net.minecraft.class_634.method_52787(net.minecraft.class_2596)'
	at semmiedev.disc_jockey.SongPlayer.tickPlayback(SongPlayer.java:169) ~[disc-jockey-1.3.0.i0:0/:?]
	at semmiedev.disc_jockey.SongPlayer.lambda$startPlaybackThread$0(SongPlayer.java:79) ~[disc-jockey-1.3.0.i0:0/:?]
	at java.lang.Thread.run(Unknown Source) ~[?:?]

Interesting. Maybe it's some incompatibility with quilt mappings? I have never used quilt, but afaik they sometimes have slightly different mappings.
The Method that could not be found should be one in this line: https://github.com/SemmieDev/Disc-Jockey/blob/9a925470193ff480ab8d9c69ae567bedb6d5a960/src/main/java/semmiedev/disc_jockey/SongPlayer.java#L169
Likely:
I tried finding out what method it should be with this handy tool: https://wagyourtail.xyz/Projects/MinecraftMappingViewer/App?version=1.20.1&mapping=YARN,QUILT&search=method_52787
It doesn't seem to find it oddly. When though I also had difficulties switching it to Yarn build 1, which this mod uses in 1.20.1.
So maybe a quilt incompatibility or just some outright issue when mapping. Maybe old cache not updating the method from an older version when @SemmieDev built the mod and me just doing a fresh build resolved it. :shrug:
This also proves that the fix will likely not fix anything for you in theory. All it would have done is print you that stacktrace every tick to the logs, as I surrounded the method with a try-cratch to prevent any potential new crash.


PyLint bug with import

Hi, I get a trouble with PyLint the I import your lib

pyCharm is having the same problem


Make Empty View move with Pull-to-Refresh

New issue checklist

[x] I have reviewed the README and documentation
[x] I have searched existing issues and this is not a duplicate

Current Situation
IGListAdapter has a delegate callback called, emptyViewForListAdapter, which allows users to configure a view that should appear when their CollectionView has no data. However, I've found that when the CollectionView also has a Refresh Control (available by default in iOS 10 and above), the experience isn't great.

Fix Proposal 1: (Short-term solution)
Assuming this is something that community wants, we could modify IGListAdapter so that it takes whatever view is provided by the user, and simply put it inside a plain UICollectionViewCell whose size is that of the entire CV.
Fix Proposal 2: (Less hacky, more work)
Introduce a new function emptyCellForListAdapter: or emptyControllerForListAdapter: which returns either a UICollectionViewCell, or a IGSectionController (respectively). The cell or section controller that is returned would be used to display something when the collection view is empty, thus making the empty view move when the Refresh Control is pulled.
This call would supercede emptyViewForListAdapter and it would be marked deprecated for future releases.
Fix Proposal 3: (No Changes Necessary)
Simply create my own IGSectionController for empty states and wire it up to my own ListAdapter. I would simply choose to not use emptyViewForListAdapter:.
Going Forward
Obviously there are a number of ways to tackle this, I'm really interested to see what the community thinks! This is what I'm going for:

Questions

Should Empty View move with Pull-to-Refresh by default?
Is this behavior something that users would want to be able to turn on/off? (I imagine it would start as an IGListExperiment to start.
If there is no PTR, should the empty state view be able to move?

Looking forward to everyone's response!

+1 for this.
In case of no data I am currently returning a specific NoDataSectionController and ignoring the emptyView method, exactly to resolve this issue

@dshahidehpour awesome write up here w/ examples. I'm absolutely down w/ this idea now. Let's do it!
We probably want to avoid adding a cell+section b/c that'll make translating index paths and collection view updates a nightmare. We could probably add the view right into the collection view maybe?
Do you want to take on this PR? Would be awesome.

@rnystrom I'm actually working on a pull request right now! I went the route of adding a section controller/cell. It wasn't painful at all, but, I might have done something horribly wrong. I'll put the PR up here so the community can see it, and if it's not what you want, I'll change it :)

@dshahidehpour I agree with @rnystrom Since the refresh view is not part of the data, it should not be a cell/section, which is binding to the data model.
IMH, something like UIRefreshControl in UITableView might be a better choice.
Or something like DZNEmptyDataSet may be better for overall design 🤔? b/c unlike UITableView, collectionView does not restrict scroll direction. And pull-to-refresh is not suitable for horizontal scrolling.

@zhubofei small misunderstanding, I think. @dshahidehpour is going to change the empty view so it scrolls w/ the background. I don't think we're going to tough the PTR at all, esp since its built in w/ iOS 10 on UICollectionView.
I actually used the bg view b/c of exactly that sort of "empty view" design. But I think that scrolling w/ the PTR is a totally valid case, and its weird when the content doesn't scroll w/ the PTR.

UPDATE: Me trying to add a section controller was a terrible idea. I have a clean fix, just cleaning up. Expect to see a diff here soon :)

#462 BOOM

@racer1988 I just landed a fix for this in fce3286ae


validate() is not a function in ember-cp-validation

Environment

Ember Version:
Ember CLI Version:
Ember CP Validations Version:

Steps to Reproduce
I am using ember-cp-validation in ember js application for validation. using validate() method in components page. but i am getting error(validate is not a function). I referred this link
In models page(profile.js),
import DS from 'ember-data';
import { validator, buildValidations } from 'ember-cp-validations';

const Validations = buildValidations({
    name: validator('presence', true),

    address:[
        validator('presence', true),
        validator('length', { max: 300}),
    ],

    pincode: validator('presence', true),

    email:[
        validator('presence', true),
        validator('format', {type:'email'})
    ]

});

export default DS.Model.extend(Validations,{
    name: DS.attr('string'),
    address: DS.attr('string'),
    pincode: DS.attr('number'),
    email: DS.attr('string')
});

And Components page,
import Ember from 'ember';

export default Ember.Component.extend({
    actions: {
        authenticate() {
            let profile = this.get('profile');
            profile.validate().then(({ validations }) => {
                if(validations.get('isValid')){
                    this.transitionToRoute("welcome");
                }
            });
        }
    }
});

get stack in same place. Do you know any solution?

Still now not getting any solution.
On Fri, Sep 1, 2017 at 10:47 PM, Kamil Lewandowski<EMAIL_ADDRESS>
wrote:

get stack in same place. Do you know any solution?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/offirgolan/ember-cp-validations/issues/495#issuecomment-326636415,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AXS3Abtw132P2F-Tu9ir5kfCqZPQUCBhks5seDwYgaJpZM4NLmtK
.

--
Thanks & regards,
Arunprasath.C

Can you guys recreate this in a twiddle so I can debug the issue?

Sure. Here is repo https://github.com/Kamill90/ember_validation
There is only one model candidate with validation and register-form component.
What am I missing?

@arunprasath416 @Kamill90 the issue is quite old. Is it still relevant or can we close it?

Closing some old issues as wontfix for now. If this issue is still relevant, please feel free to open a new one!


Railway template not working

The railway template keeps crashing with this error message:
Error: Prisma schema validation - (get-config wasm)
Error code: P1012
error: Error validating datasource db: the URL must start with the protocol postgresql:// or postgres://.
-->  schema.prisma:8
|
7 |   provider   = "postgresql"
8 |   url        = env("DATABASE_URL")
|
Validation Error Count: 1
[Context: getConfig]
Prisma CLI Version : 4.16.2
error Command failed with exit code 1.

Hey, sorry for the issue. I think it's because of a missing database URL. Can you watch this video  or check the documentation  on how to obtain the Supabase URL? (railway's PostgreSQL doesn't support pgvector)

That was it, thank you very much! I greatly appreciate your super-quick response =)


RabbitMQ Clustering docs

Added documentation around the UseCluster functionality. Had to alter header syntax to allow a 3rd heirarchy tier.
#563

Rebased/merged.


Switching assetId doesn't update the decimals value in amount

https://user-images.githubusercontent.com/97480229/166861786-8ebe1107-aea5-4154-a2c4-bacc16544f64.mov

 Resolve issue #189


IDEA: Add a Better Font.

Rather than using Times New Roman, I can use much better fonts like Poppins, or Raleway, or Montserrat.
I would like to implement it on all pages of this website using Google Fonts, and my knowledge of HTML and CSS.

@vivekv2810 Please assign me this issue. Also, please add the Hacktoberfest and GSSoC Extended Labels. Thank you!!

we will look for fonts later, for now we are closing this issue.

we will look for fonts later, for now we are closing this issue.

Alright! Thank you very much for your time!


[💡 FEATURE REQUEST]: Allow setting routing_key dynamically when publishing a job to a pipeline

Description
This is a reference to the original ticket for the per-message routing_key implementation: https://github.com/roadrunner-server/roadrunner/issues/1555
Planning to include in the RR v2023.3.0.
CC: @rauanmayemir

The routing_key should be in the headers that JOBS client sends to the RR.
Key -> x_routing_key, value -> routing key (string).
This change is for the amqp driver only. RR will check for this key and send data to the queue with the provided routing key.


[CT-851] [Feature] Friendlier error messages when packages.yml is malformed

Is this your first time opening an issue?

[X] I have read the expectations for open source contributors

Describe the Feature
I just tried to freehand install a package. It went horribly.
Mistake 1: No version defined for a Hub-hosted package
packages:
  - package: dbt_utils

(dbt-prod) joel@Joel-Labes joel-sandbox % dbt clean && dbt deps
00:41:46  Encountered an error while reading the project:
00:41:46    ERROR: Runtime Error
  The packages.yml file in this project is malformed. Please double check
  the contents of this file and fix any errors before retrying.

  You can find more information on the syntax for this file here:
  https://docs.getdbt.com/docs/package-management

  Validator Error:
  {'package': 'dbt_utils'} is not valid under any of the given schemas

Instead:
I would have expected it to say something like "When installing from the package index, version is a required property". I know that it's technically possible that they provided version: 0.8.6 as the singular property and not package, but that seems way less likely so even if we just protect against the most common issue that'd be good.
Mistake 2: No company namespace
packages:
  - package: dbt_utils
    version: ">0.8.0"

00:45:50  Encountered an error:
Package dbt_utils was not found in the package index

Instead:
If there's not a / in the package name, we could say "dbt_utils was not found in the package index. Packages on the index require a namespace, e.g. dbt-labs/dbt_utils" (note that this would be a hardcoded example, it hasn't magically gone and worked out which package we meant. But it sure is a good guess!)
Eventually:
I clicked through to the correct syntax from the error message, so thanks for including the link to that!
Describe alternatives you've considered
No response
Who will this benefit?
People with hubris
Are you interested in contributing this feature?
Yep! I think I can deal with part 2 myself, but will probably need a pointer on the first part
Anything else?
No response

Thanks for opening @joellabes! Such a good exercise to wind ourselves back to an earlier set of knowledge and assumptions, and see how we might fare.

People with hubris

For trying to install software without errors, the gods will never forgive us

Yep! I think I can deal with part 2 myself, but will probably need a pointer on the first part

The error message that's being raised comes from dbt's (hologram's) not-so-friendly dataclass validation. Specifically, when package isn't supplied, it raises an error because it's not an "optional" field:
https://github.com/dbt-labs/dbt-core/blob/e03d35a9fc606f5b1fc7e94c0bc04dbe88f558cf/core/dbt/contracts/project.py#L74-L78
Unfortunately, the exact code to get this working is escaping me, so we'll need the Language team to advise on that piece.
I'd hope for something like:
@dataclass
class RegistryPackage(Package):
    package: str
    version: Optional[Union[RawVersion, List[RawVersion]]] = None
    install_prerelease: Optional[bool] = False

    ...

    @classmethod
    def validate(cls, data):
        if not data.get('version'):
            raise ValidationError("All Hub packages must have versions")
            # or, should this just always install 'latest'?
            # that's a feature request :)
        super().validate(data)

But that doesn't seem to do the trick. Nor does switching out validate for __pre_deserialize__.

For anyone else coming across this, https://github.com/dbt-labs/dbt-jsonschema is also a way to be notified that your packages file is wrong!


Improves test coverage

Fixes #41

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@76c52cb). Click here to learn what that means.
The diff coverage is 100%.

@@            Coverage Diff            @@
##             master      #55   +/-   ##
=========================================
  Coverage          ?   90.06%
=========================================
  Files             ?       17
  Lines             ?      433
  Branches          ?        2
=========================================
  Hits              ?      390
  Misses            ?       43
  Partials          ?        0

Impacted Files
Coverage Δ

core/src/main/scala/config/reads/datastax.scala
98.71% <100%> (ø)

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 76c52cb...118b1eb. Read the comment docs.


stack_data, executing, and pure_eval

Hi! I've recently created a few libraries that are helpful for extracting information from frames and tracebacks, and I think they could be very useful to sentry.

executing can identify the exact AST node being executed by a frame in many cases. It's always disappointed me that Python only points to a line in each frame in tracebacks, especially when the expression/statement at fault spans many lines. Sometimes it can be really hard to interpret. Currently executing is used in IPython (in master, unreleased) to highlight the node, here's what it looks like:

executing can also infer a function __qualname__ from a code object, meaning your traceback can say lorem/ipsum.py in MyClass.__init__ at line 123 instead of just __init__, which is much more informative.
pure_eval can safely evaluate certain AST nodes without side effects, so that if the source for a frame contains expressions like self.foo and bar[key] their values can often be shown alongside plain variables.
stack_data collects data from tracebacks for the purpose of formatting and displaying them. It uses executing and pure_eval and also provides a lot of functionality of its own. For example, in this frame:

there are lines from complex_filter which the user doesn't need to see, and stack_data knows how to filter those out by only collecting lines which belong in the current scope. I integratedstack_data into IPython which allowed removing a lot of flaky custom introspection code, fixing several bugs and making the code more maintainable.

stack_data identifies the locations of variables and evaluated expressions in the source lines. An intelligent UI could use this, for example, to allow the user to hover over a variable in source code to see its value rather than scroll through a list to find it.

Overall there are lots of possibilities. What would interest you? I'm willing to make a PR and make any necessary changes to the libraries.

Hey @alexmojaki, this seems like a nice library!

We want to avoid adding more dependencies than absolutely necessary, which is why you'll find we have no external dependencies beyond urllib3 and certifi.
I have strong concerns about the runtime overhead of this library, not only for the happy path when nothing is crashing but also when reporting a 500 to Sentry. Particularly concerning your idea to transfer the values of sub-expressions to sentry.

I'm only going to comment on the ideas you presented.

there are lines from complex_filter which the user doesn't need to see, and stack_data knows how to filter those out by only collecting lines which belong in the current scope.

Please keep in mind that you have no guarantee of the filename containing valid sourcecode, for example in Jinja templates that isn't the case (it's also one of the reasons we have refrained from adding syntax highlighting to Sentry, the other reason being laziness).

An intelligent UI could use this, for example, to allow the user to hover over a variable in source code to see its value rather than scroll through a list to find it.

We would have to establish how to send this kind of information to the server in a way that makes sense for other languages than Python.
I believe an initial PoC, of whichever feature you're thinking of implementing, should pull those libraries in as optional dependency only. before_send seems like a very cheap way to hook into the SDK since its hint object will contain exc_info and you have access to the entire payload that is sent to sentry.
Hope that helps,
Markus

OK, if these are going to be optional dependencies, I'm going to avoid stack_data, as that would just make the code more complicated.
I've made PRs for a couple of the features mentioned. There's some finicky details I haven't handled - for example the tests currently assume that the optional libraries are installed. But you can see the general idea well enough for a PoC as you said. Before I polish things up, can you confirm if the concept is proven?
The feature that would interest me the most is the first one I listed - highlighting the executing node. This would require changes on the server side in order to render the information. Shall I just ignore that complication for now and make another PoC PR which adds the data to the frame and we can worry about rendering later?

Shall I just ignore that complication for now and make another PoC PR which adds the data to the frame and we can worry about rendering later?

Yes, preferrably behind an integration like mentioned in https://github.com/getsentry/sentry-python/pull/749. The server can handle superfluous attributes, sort of.

@alexmojaki did I get it right if I say that pure_eval is py3-only?

Yes.

Ok cool. Just so you know you're in charge of creating the sentry-docs PRs. There should be one per integration so one for executing and one for pure_eval, unless you plan to refactor those further.

I'm going to make a docs PR for pure_eval. I don't know how I can add an integration suggestion for it when the integration has three dependencies: pure_eval, executing, and asttokens.
For executing, I don't think there's much point in people using it unless the feature for highlighting the node range goes through. I've made a server side PR which I don't think I can complete on my own.

Makes sense. I think pure-eval has most value anyway. Still unsure what to do about the server-side changes. We would probably need to review the exact protocol changes with others in the company.


Add in my-app module to preprocessors for coveralls coverage reports

This is more for downstream applications that want to use this karma file.

:+1:


Enable Service Key on config file

Documentation about new feature adding availability to service key configuration

Hi @xmnlab , can you help me checking this PR
I have build the page and updated jupiter notebook

@joel5vega , are you still up to work on this PR? if so, please check all my comments.
use chatgpt (or something similar) to improve the text, and use text just for sugar.
the text is mixed with makim text as well

Yes @xmnlab , I will check it

@joel5vega , I am closing this PR because it is not moved since february.
feel free to re-open that when you start to work on that again! thank you!


cmd: Add log parser

Add a "cc-log-parser" tool that reads multiple logfmt [*] logfiles and
writes their output in time order showing time differences between log
entries.
Fixes #578.
[*] - https://brandur.org/logfmt
Signed-off-by: James O. D. Hunt<EMAIL_ADDRESS>

Note the FIXME but it's benign - we can simply remove one of the time formats once https://github.com/clearcontainers/runtime/pull/652 lands.

The FIXME is now fixed! ;)

Hi @iphutch - please could you review the README on this PR (https://github.com/clearcontainers/tests/pull/590/files#diff-c294cba5b0c553706556ef34aa2e7429)?

@jodh-intel, tried this tool and got an error when merging logs from proxy and runtime:
cloud@ubuntu-dev:~$ ./go/bin/cc-log-parser proxy.log runtime.log
ERROR: agent log entry unpack failed for {TimeDelta:0s Filename:proxy.log Line:5 CCLogEntry:{Time:2017-10-09 07:27:56.798534493 +0000 UTC Pid:0 Level:debug Msg:[    0.317409] brd: module loaded Source:qemu Name: Data:map[vm:7ddcff5ec12e9e2f00ca5c8957b4df794e2c5efe2eb63f3cfea1506fe1ebd64c]}}: invalid character 'b' after top-level value

I have the -log debug option for the cc-proxy service and
enable_debug = true on the runtime configuration.toml

Hi @chavafg - thanks for testing. I think the problem you are seeing is because the latest clear-containers.img file doesn't yet have the required fixes. In fact, I'm a bit confused as the latest seems to be 17270 according to:

https://github.com/clearlinux-pkgs/clear-containers-image/commits/master

... but that was from 23 August:

https://download.clearlinux.org/releases/17270/clear/

@jcvenegas, @gorozco1  - am I getting confused here or do we need to update the image (I thought we were doing it weekly as part of the release process)? Which reminds me: https://github.com/clearcontainers/runtime/issues/632 :)

@jodh-intel the image was not updated last week, the agent was not tagged for a release, I updated to master anyway on Friday, let me send a PR to updated.

Thanks @jcvenegas!

@jodh-intel and ouch let me write a docuement about image  update.

Hi @iphutch - branch updated.

Failing on F26 due to the kill_test.go issue:
• Failure [18.183 seconds]
docker kill
/home/jenkins/go/src/github.com/clearcontainers/tests/integration/docker/kill_test.go:129
  killing container
  /home/jenkins/go/src/github.com/clearcontainers/tests/vendor/github.com/onsi/ginkgo/extensions/table/table.go:96
    with '1' signal [It]
    /home/jenkins/go/src/github.com/clearcontainers/tests/vendor/github.com/onsi/ginkgo/extensions/table/table_entry.go:46

    Expected
        <int>: 0
    to equal
        <int>: 1

    /home/jenkins/go/src/github.com/clearcontainers/tests/integration/docker/kill_test.go:95

Branch updated now that the shim also produces structured logs (https://github.com/clearcontainers/shim/pull/84).

As mentioned on #603, unless you use https://github.com/clearcontainers/osbuilder, you'll need to use clear-18220-containers.img or newer for the agent unpack to work.

Found a bug - the agent unpack doesn't work if you have hypervisor debug enabled in the runtime config file, so you'll need to ensure that enable_debug= option is either commented out or set to false.
I'll see if there is a clean way to add a new field for hypervisor output that can be added to the agent so cc-log-parser can distinguish between hypervisor boot output and other agent output...

hi @jodh-intel , did you find a way to solve the issue you described above? or should we add in the README a statement to indicate not use with enable_debug = true

Hi @chavafg - yes, I've found a way and updated the branch.
To test it fully, you'll need to use the latest shim built from source (./configure && make && sudo make install) and then you'll need to change the runtime config to use that shim:
[shim.cc]
path = "/usr/local/libexec/cc-shim"

But alternatively, just don't pass cc-log-parser a shim.log ;)

Hi @chavafg - does this work for you now?

Hi @jodh-intel, unfortunately still have issues:
I am running with enable_debug = true using Clear Containers image 18250.
cloud@ubuntu-dev:~$ ~/go/bin/cc-log-parser proxy.log runtime.log shim.log
ERROR: logfmt syntax error at pos 127 on line 516: invalid quoted value

Taking a look at the log files, the only file which has 516 lines is the proxy, and the error is because of this line:
time="2017-10-16T05:33:51.308880831Z" level=debug msg="Welcome to \\x1b[1;35mClear Linux OS for Intel Architecture\\x1b[0m!" name=cc-proxy pid=1899 source=qemu vm=7276d3d7548b4f72831a3f7f5ea86016bbdfbf1db0dd    c75c923af61c69e17770

I'm going to close this PR as the plan is now to move the tool to https://github.com/kata-containers/tests/.

Replaced by https://github.com/kata-containers/tests/pull/98.


Oh my zsh is getting stuck

Since I am having issue that it's taking time to return command response. I am using Mac and this is the screenshot of the process it is running:

Reopen if this issue persists, and run zsh -xv to enable debug mode so as to see the exact instruction where zsh hangs.


Avoid using generic labels in checks [daemonset-check]

Hi folks!
I started testing kuberhealthy in this week and I like it a lot.
I have got a small problem with daemonset-check because it using "app" label with ephemeral names of created pods and every day it creates multiple entries in my logging system (grafana loki).

I think we should avoid using generic labels and instead of use labels for example with a prefix such as "kh_". I've looked at the source code and this label is using only for getting proper pod to delete so renaming shouldn't cause any problems.

Hey @randrusiak thanks for the feedback! This totally makes sense to change in the daemonset check. Feel free to put up a pr yourself if you'd like to do so :)


Remove proxy value from init log #2943

Description
Same as #2943
How can this be tested?
Same as #2943
Checklist

[ ] Unit tests have been updated/added
[x] PR is labeled accordingly with a single label
[x] I have read and understood the contribution guidelines

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 67.23%. Comparing base (4445790) to head (552b439).
 Consider uploading reports for the commit 7eb3f72 to get more accurate results

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2944   +/-   ##
=======================================
  Coverage   67.23%   67.23%
=======================================
  Files         262      262
  Lines       14190    14190
=======================================
  Hits         9540     9540
  Misses       3837     3837
  Partials      813      813

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Support for libraries

When creating non-SHR IGs, its very helpful to still use some SHR definitions (especially core ones like CodeableConcept, Quantity, but also ones like Observation -- so that the FHIR mappings can be re-used).
Currently, if an IG wants these, it needs to include their text definitions with its own files.  This has three main drawbacks:

They might unintentionally (or perhaps intentionally) modify definitions of core SHR elements -- which can be confusing.
With the new config feature, the SHR elements get de-branded and take on the brand of the IG (including the base URL in the URL identifiers).  This results in things like Acme CodeableConcept.
The SHR elements get republished in their IG and perhaps detract from the focus of the IG.

We should consider first how the SHR definitions can be re-used, but remain in tact with their own branding -- and not be republished in a custom IG.  This might be done through a library concept.
Once the library concept is in place, perhaps it could be used to bring in other IGs too (not just SHR).

This is already part of the modularity discussion.  https://github.com/standardhealth/shr_spec/wiki/Modularity-and-Packaging


Pasting on Chrome with preserveWhitespace option creates additional list bullets

Steps:

Create auto generated text from https://loripsum.net/ with the list options turned on
Click the Copy text to clipboard! button
Paste in the editor here https://codepen.io/anon/pen/wVBQyQ

Result: there are many additional bullets created upon paste
Browser: Chrome, latest
System: MacOS or Windows

Turns out their API returns preformatted html.


chore: simplyfy formatting for byte slice

Checklist

[x] I have read the coding guide
[ ] My change requires a documentation update and I have done it
[x] I have added tests to cover my changes.
[x] I have filled out the description and linked the related issues

Description
Closes #3157

This change is

@mrekucci

I'd suggest renaming the function to ParseBatchID since this is also the convention in the stdlib.

Convention for HexToBatchID name was chosen analogously to ethereum functions HexToHash and HextToAddress.
I personally prefer this convention, because it implies that hex is converted to BatchID.
Also semantically this functionality is not parsing but converting. Conversion is process of translating object from one context to another where both object could be considered equal - eg. 123 and "123". Parsing is process where we translate object from one context to another, such that both object could be vary different thing.
I would consider avoiding explicit connotation in this case since.

Can you drop this library and use the Golang standard testing package so the tests are consistent across the codebase.

I would consider adopting this library for writing our tests because it provides many handy tools for writing tests. Also support is vary good (vary popular and has many contributors).

On the side note, it would be easier for use to communicate if comments are made separately for each point using github's comment functionality.

After seeing concerns for introduction of new type swarm.BatchID this PR will be closed in flavor for #3220 where fmt.Sprintf is replaced with  hex.EncodeToString and where possible formatting is left to type.
New issue #3221 was opened to to serve as panel / proposal for introduction of such type.


Scheduled page show old version's duplicated links in Page List block after version got published

I think it's something to do with page index doesn't handle properly?
Steps to reproduce

Visit a already-published page.
Schedule to publish in a future date and approve.

Change the page description so that we can tell which version the Page List block is using to show

Wait for scheduled time.

Visit the page where it has Page List block which contains the page.
Page List block shows old version's page twice.

Visit the scheduled page.
Go back to Page List page. The PL block only show one entry and display the scheduled version properly.

Originally reported by a Japanese user.
https://concrete5-japan.org/community/forums/chat/post-16277/

This should be fixed. I meant to bundle my latest commits into a pull request so it could be reviewed but totally spaced that.
Here are the relevant commits:
https://github.com/concrete5/concrete5/commit/4901ffb66c602c3dc9e7dd51681c16a2c3e369d2
https://github.com/concrete5/concrete5/commit/7f9dcdf1280d368d89f2a8df780a936f9562131a (make publish end date work in the page list, immediately return 404)


Use the longest regex match when searching for a Ref

Fixes #1813 (from my limited testing)
I didn't change the regex to startswith, because that would be a bigger change requiring changing class names.
Issue #, if available:
#1813
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thanks @benbridts


Expand integer range checking to new entry points

Include range checking for ENABLE_VALIDATE_ARGS around;
https://github.com/rampantpixels/rpmalloc/blob/master/rpmalloc/malloc.c#L226
and
https://github.com/rampantpixels/rpmalloc/blob/master/rpmalloc/malloc.c#L236
Both cases if the caller assumes they have been returned valid pointers, they would start to over write the heap causing various issues.

Would #27 suffice for validation?

Yeah looks good, I'll just close it now, thanks


Enhance priorities info

Remove "ActiveEffect" and "ActiveColor"
Add this information to a priority, when it is a effect or color
For a better overview add a "who set it" identifier (App, WebUI, System (for capture devices) which needs to be added to your request (eg color, effect and proto sources)

An example
origin : AndroidApp
type : color
value : name, color values, duration
priority : 200

origin : Webinterface
type : effect
value : effect name, effect values, duration
priority : 250

origin : System
type : dispmanx
priority : 800

origin : HyperionScreenCap
type<EMAIL_ADDRESS>priority : 900

'value' is just used for effects and colors with additional inormations that has been shown in activeEffect, activeColor
Duration is moved to 'value' due to the point a capture has no duration.
'origin' is a identifier which is delivered from a request or 'system' if it is nothing external. requests with a missing identifier are rejected
'type' replaces the content of the current origin, if it's a effect, the field contains 'effect' and the same for color with the values.

So leave some feedback :)
With this change it's perfect :)
@redPanther @Paulchen-Panther

Source ip address ?

Possible, but i think it's not that handy if you could already place a name instead (to remember). If you use the android app on a tablet and smartphone you could confirgure the origin name to your needs.
Or you need a ip for something different than identify for yourself?

Mostly for troubleshooting user problems on the forums.
Things are going to get more complicated with home automation - nest, amazon echo, homegrown perl/python scripts etc...

update example
@redPanther what do you think? If this is done, it's perfect for(almost)ever? Maybe after the color area is finished :)

Yes, after color and webui saving


Devel

Maybe a good idea to start a new branch off latest master and rebase your changes onto it :-)


Module Dependency Support

Will module support dependency, such as Module1 depends on Module A, or an array of Modules, etc.?

It seems that dependsOn is automatically generated when referencing the outputs of the module from other modules. Therefore, I think there is a not need for an additional dependency definition mechanism.

In some cases, we are not able to figure out dependencies between modules. To deal with that, users need to be able to set the dependencies however they need. This will be accomplished via explicit dependsOn just like with resources.


Improved the performance of argmax.

The fix got almost 2 times faster than current one without loosing the feature of "unique" option.
If we can use elements.max() instead of np.max(elemements), that would get the function much faster.
http://stackoverflow.com/questions/10943088/numpy-max-or-max-which-one-is-faster

I think elements.max() may be not safe. `elements' may be a built-in list.

I think elements.max() may be not safe. `elements' may be a built-in list.

In this case, elements should be transformed into np.array first, or we will get an empty result.
Also notice that the returned candidates is np.array if unique is set to False.

In this case, elements should be transformed into np.array first, or we will get an empty result.
Also notice that the returned candidates is np.array if unique is set to False.

I missed that. Thank you for pointing that. It seems there is no code that use argmax with "False" option and fortunately there is no degradation on the project but I can make another pull request if you want to return list in case of "False" option.

I missed that. Thank you for pointing that. It seems there is no code that use argmax with "False" option and fortunately there is no degradation on the project but I can make another pull request if you want to return list in case of "False" option.

@findmyway Thanks for your response. I tested the first case, even if elements is a built-in list, np.where will work well without transformation to np.array. My understanding is that maxValue is returned by np.max, so it's a np type.

a = [1., 2.0, 3.0, 2.0]
b = np.max(a)
b
3.0
np.where(a == b)
(array([2]),)
np.where(a == 3.0)
(array([], dtype=int64),)

@findmyway Thanks for your response. I tested the first case, even if elements is a built-in list, np.where will work well without transformation to np.array. My understanding is that maxValue is returned by np.max, so it's a np type.

a = [1., 2.0, 3.0, 2.0]
b = np.max(a)
b
3.0
np.where(a == b)
(array([2]),)
np.where(a == 3.0)
(array([], dtype=int64),)

Ah, sorry.  I forget that np.max will return a numpy type.
In [2]: type(np.max([1., 2.0, 3.0, 2.0]))
Out[2]: numpy.float64

Ah, sorry.  I forget that np.max will return a numpy type.
In [2]: type(np.max([1., 2.0, 3.0, 2.0]))
Out[2]: numpy.float64

Although it does work, I think it will be safer to add np.asarray. And although it's ok to return an np.array, I think it will be better to return a list for the sake of API consistency. Thanks again!

Although it does work, I think it will be safer to add np.asarray. And although it's ok to return an np.array, I think it will be better to return a list for the sake of API consistency. Thanks again!


timedrun proper signal handler initialization.

being 'nicer' when forgetting arguments.

thanks!

out in 1.6.0!


License

Please add a license statement to the repo.
To create a RPM package for the Fedora Package Collection I need to know that license the code is under. Thanks.

Yes, please add license statement. Its being pulled from Home Assistant because of this

duplicate of https://github.com/JasonCarter80/concord232/issues/17


No parameters when invoking shell script from file with #! at the beginning

When launching shell script via
az vm run-command invoke --command-id RunShellScript --script<EMAIL_ADDRESS>--parameters="Param1"
I get two different results when I insert #!/bin/bash at the beginning of foo.sh.
foo.sh:
#!/bin/bash
printenv

Result:
[stdout]
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
PWD=/var/lib/waagent/run-command/download/2
LANG=en_US.UTF-8
SHLVL=4
_=/usr/bin/printenv

[stderr]

Second version:
foo.sh:
printenv

Result:
Enable succeeded:
[stdout]
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
PWD=/var/lib/waagent/run-command/download/3
LANG=en_US.UTF-8
arg1=Param1
SHLVL=4
_=/usr/bin/printenv

[stderr]

In short: all arguments passed via --parameter option in azure-cli disappear. Please advise
No target date

@qwordy add to next Sprint.

Thank you for finding this problem. Similar to this issue https://github.com/Azure/azure-cli/issues/10400. We are still investigating it.

Could you check the new line character? Use a Linux style \n.

@kkoyot  Did you check what @qwordy  suggested?

The request body:
{"commandId": "RunShellScript", "script": ["#!/bin/bash\r\nprintenv"], "parameters": [{"name": "arg1", "value": "Param1"}]}

No "param1" in ENV.
If I use
az vm run-command invoke -g rg -n vm --command-id RunShellScript --scripts '#!/bin/bash' 'printenv' --parameters 'Param1'

request body is
{"commandId": "RunShellScript", "script": ["#!/bin/bash", "printenv"], "parameters": [{"name": "arg1", "value": "Param1"}]}

I can get the correct result.
@koralski Can you help with this issue?

Duplicate issue with #10400, where there are more comments. We will update status of this problem in that issue. Close this issue.


combine_lang_model not found

I tried to train tesseract v4.0 and got 'combine_lang_model not found' error. This code was added 4 days ago so I tried to build latest master and got '.cppan/storage/etc/static/generate.cmake:106 (message):
cppan command '0' not found '. Can somone build and share latest tesseract binaries for Windows. Thanks in advance.

You can use windows binaries linked from
https://github.com/UB-Mannheim/tesseract/wiki
ShreeDevi

भजन - कीर्तन - आरती @ http://bhajans.ramparivar.com
On Thu, Aug 10, 2017 at 9:47 PM, iuriigalaida<EMAIL_ADDRESS>wrote:

I tried to train tesseract v4.0 and got 'combine_lang_model not found'
error. This code was added 4 days ago so I tried to build latest master and
got '.cppan/storage/etc/static/generate.cmake:106 (message):
cppan command '0' not found '. Can somone build and share latest tesseract
binaries for Windows. Thanks in advance.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/tesseract-ocr/tesseract/issues/1071, or mute the
thread
https://github.com/notifications/unsubscribe-auth/AE2_o1WOfX1TDTRm1RTyJ-aE72OC9GiZks5sWy0dgaJpZM4OzqP3
.

Yes. It worked. Thanks a lot ShreeDevi!


[Fluent UX] Image Resizer

PowerToys should do its best to look like a system level integration. Image Resize is a great example of where we can be but needs a little bit more polish.
Latest Fluent Design concept by @niels9001

WinUi 2.6 (UWP) source code here: https://github.com/niels9001/imageresizerux

My inspiration was always a multi-page task dialog. I'd mock up a UI using the TaskDialogIndirect function and copy the look into XAML. I hope that API gets a Fluent refresh too...

Here's my attempt!
Maybe make it resemble the UWP Photos app? :)

If multiple images are selected, maybe present them in a grid? :)

Wow!!!!

Here's my attempt!

Hard to make it any better than this!

@zeealeid Looks stunning, love it <3!
@crutkas Can we use XAML Island for this feature as well? I'd happy to start some XAML work to turn @zeealeid's into reality!

We should be able to do it without even an island with WinUI 3. In theory settings will be same way

If we do the work inside a 19h1 xaml island now, we could ship this at Build with winui3

I made a working XAML proto based on @zeealeid's awesome UX concept. I made some changes to the proposed gridview.
Maybe a listview could show some relevant information such as filenames and the ability to de-select images? Additionally, information such as the original dimensions (and the new ones?) could be shown as well.

Light theme:

UX alignment with PowerRenamer?
It would be nice to have a common UX for these configuration/action windows within PowerToys. Since we're also working on bringing Fluent to the PowerRename powertoy, aligning the two might be useful? Issue here:

XAML can be found in this repo. Happy to port the right stuff over once we have a working XAML Island project.

Where it says "Ignore the orientation of pictures" is this the equivalent of "Constraining Proportions", where width or height is set automatically to maintain the aspect ratio when entering a value?

Where it says "Ignore the orientation of pictures" is this the equivalent of "Constraining Proportions", where width or height is set automatically to maintain the aspect ratio when entering a value?

think that is the actual verbiage there now.  @bricelam would be able to verify

Not exactly. You can’t “constrain” the values in the UI since every image may be a different aspect ratio. Instead it has Fill, Fit, and Stretch to maintain the original ratio, crop, or stretch.
Ignore orientations is for when you have several photos where some are landscape and some are portrait. If it’s checked and you specify 1024x768, the portrait ones will be 768x1024. If it’s not checked, they’ll be 576x768.

It'd be great as part of this improved UX to have an option/mode for interactive crop.  This means adjusting the aspect ratio of every photo and re-framing each image.
If I could set the resolution/settings for my final output, but then just speed through each image and move and resize a crop region with the fixed aspect ratio around to get the frame I want for that image and click next, that'd be great!
There's an Image Cropper component in the Windows Community Toolkit which could handle the UX for the crop.

@hawkerm  IMO, this is starting to overlap the Photos app's capabilities.  Image Resizer is a batch process for multiple selected images - unless you are proposing a batch crop operation - it may be better to keep the suggestions for batch processes, rather than something designed for single image selections.

@mdtauk this is still about batch processing. I want all the photos I've selected to have an aspect ration of 16:9 or in my case a specific size of 1280x800. However, if the image isn't already in the right aspect ratio and thus can't be scaled without some crop (or just an option to review all anyway),
I want to quickly just be able to 1) choose that crop - be it a segment slid out of the original photo or extracting a partial inner part of the photo, then 2) click next and have it automatically apply and scale and move to the next.
With Photos, I'd still have to 1) navigate to each photo, 2) hit the crop button, 3) select the aspect ratio (and I don't even get to see/choose what the actual pixel resolution of the output I'm making is there), and then 4) click the save button...

I agree with @hawkerm on this one. Having some more features (like cropping) would be super nice.
The other day I wanted to crop desktop screenshots, so I could remove the taskbar. Had to do this manually, which was cumbersome.
I also want to propose a 'custom' variant: just a slider so I can make pictures 25% smaller. This is handy in situations where large images (such as my 4k resolution screenshots) are too big to share. Having a quick slider/UI to decrease the width manually without define exact pixel sizes (while keeping the aspect ratio) would be great.

@niels9001  In that case, the cropping interface from the toolkit would need to be reconsidered.  You can't guarantee every image being cropped will be of the same size and aspect ratio.
The values for each edge should probably be referenced as a minus value.
Pixel values or percentages make the most sense.
Would there be a visualisation of what the new image sizes will be for the list of images about to be processed?
If a crop and resize operation is taking place at the same time, does the resized size chosen, affect the image before or after the crop?

Yeah, it would require a lot of thinking. Not sure if this is in scope at all.
If we move towards WinUI with the ImageResizer UI, let's make sure we design a UI that can be extended later on with additional features.

It'd be great as part of this improved UX to have an option/mode for interactive crop.  This means adjusting the aspect ratio of every photo and re-framing each image.
If I could set the resolution/settings for my final output, but then just speed through each image and move and resize a crop region with the fixed aspect ratio around to get the frame I want for that image and click next, that'd be great!
There's an Image Cropper component in the Windows Community Toolkit which could handle the UX for the crop.

Good idea but out of scope here for this issue . Please create a new issue.

Here's an updated mock-up for ImageResizer based on my previous concept.

Would be nice if we can somehow predict what the new file size would be and preview that. This also takes into account that whatever changes you make (on the selected template) can be saved as a preset by ticking the CheckBox.

I'm in love with it. This looks great 👌

I've been thinking about this for a bit. Should the list be on the left or right?  I feel like the UX is flipped.  Is there another spot we can point to for reference?
The main work here is left based, where most spots in the UX it is right based in Windows.

I've been thinking about this for a bit. Should the list be on the left or right?  I feel like the UX is flipped.  Is there another spot we can point to for reference?
The main work here is left based, where most spots in the UX it is right based in Windows.

I think that makes sense. You mean something like the earlier concepts posted, right?
We can easily swap them around. I'm looking for a similiar example - only thing I can come up with are the properties panels in e.g. Blend, Visual Studio.
In a minimized state, we can hide the entire preview pane and only show the config bar.

imo the options on the right would be better because most of the photo-editing apps (like Lightroom, Photos app etc) have the options on the right so, placing options on the right would make it more in-line with the photo-editor in the Photos app. I think that would make the user feel right at home :)

The photos app has a right-hand sidebar with it's photo editing options.
Also should the file list view adapt it's items view?  If there are only a few photos, could they appear as thumbnails in a grid - rather than a details view?

In @niels9001's mockup, the list view shows some info like the resolution and file sizes. That is quite helpful imo. I think if there's a single image selected then there should be a big preview of the image with info below it. :)

@mdtauk @zeealeid Thanks for the feedback!
I think we could support different grid/listview templates. As @zeealeid pointed out the idea behind the listview is to mostly show details (like new dimensions).

In a minimized mode, we could even collapse the entire Preview pane, so only the properties panel stays.

Other feedback, band the data grid.

The area on the left could mimic File Explorer, with its multiple views, DataGrid headers for a details view, but the information below the thumbnail for a grid view, if the space and amount of images allows

Did some tweaks based your recommendations - see the latest version in light/dark above.
I think preview pane could support some other views, but maybe not crucial at start. Having a preview of the new width / height would come in handy I imagine. I left out the filesizes for now, since that requires some additional thinking on how to do it.
WinUI 2.4 source code here: https://github.com/niels9001/ImageResizerUX
Hopefully we can re-use most of this XAML once we move to WinUI 3 :).

Oehw, I'm excited to see when it gets "published" :)
One idea for the view: Maybe a few buttons on the top to select "small icons", "large icons", "details"? Or try to use the same thing Explorer has, if possible.
Some headers above the Detail view would be nice too, like "Filename | Original size | New size".

If the text on the button says Resize, but the action is "Resize and close", then that's not 100% correct. Would it be better to update the text to match the action, or to change the action to match the text? My vote is for Rename only. That makes it possible to do several different resizing actions quickly after each other.
(Same principle for Power Rename and FZ Editor)

@bricelam @crutkas @niels9001
what is the current plan for the new UI?
I'm asking because we are currently working on the Image Resizer accessibility bugs and since there are a few, we would like to make sure we are not doing this work for nothing ;)
These are the Priority-1 (there are no Priodity-0)
https://github.com/microsoft/PowerToys/issues?q=is%3Aopen+is%3Aissue+label%3A"Product-Image+Resizer"+label%3AArea-Accessibility+label%3APriority-1

@enricogior, we should discuss options.  Depending on the amount of work, we can have the discussion with the team

Did some tweaks based your recommendations - see the latest version in light/dark above.
I think preview pane could support some other views, but maybe not crucial at start. Having a preview of the new width / height would come in handy I imagine. I left out the filesizes for now, since that requires some additional thinking on how to do it.
WinUI 2.4 source code here: https://github.com/niels9001/ImageResizerUX
Hopefully we can re-use most of this XAML once we move to WinUI 3 :).

Like the mock-up.

I like the file size feature and we should implement it in the future.
I think if someone select a size in the drop-down and then changes the values, the name (f. e. "Small") should change to "custom" because the values are not the same as defined in the resize definition.

@niels9001
Issue needs tag-fix: in-progress

Suggestion: use MDL2 E799 "AspectRatio" for the [fil/fill/strecht] button

Idea: what about including the file format settings in the right pane? Could be handy when you want to use a different, custom format, just for one single time.

Idea: what about including the file format settings in the right pane? Could be handy when you want to use a different, custom format, just for one single time.

@niels9001 Have you found time to look at my input in your fork? Just curious.

@niels9001 Have you found time to look at my input in your fork? Just curious.

@niels9001 Have you found time to look at my input in your fork? Just curious.

This is currently not actively worked on due to WinUI limitations - I'll make sure to look at any outstanding PRs if we continue any work - seems like good suggestions to enhance.  Just curious.

This is currently not actively worked on due to WinUI limitations - I'll make sure to look at any outstanding PRs if we continue any work - seems like good suggestions to enhance. Might be useful to come up with a spec beforehand as well, to determine what additional (UX) features we'd like to enable.

Here's my latest take on Image Resizer vNext. Mostly a UI refresh adopting W11 Fluent, while adding a new feature: the ability to easily tweak a preset and save it within the editor itself.

WinUi 2.6 (UWP) source code here: https://github.com/niels9001/imageresizerux

@Cleancodedeveloper Moving the WinUI discussing to this topic :).
1.0.1 seems ro solve quite some bugs, with 1.0.2 incoming according toTwitter. Also 1.1 should launch before July (based on the announcements made in the Community call and roadmap) so it might be nice to try to see if it holds up?

it might be nice to try to see if it holds up?

Okay, I'm in. Are the mockup up-to-date? There is one open PR in your repo (https://github.com/niels9001/imageresizerux).
I really like the simplicity of your latest mock up (https://github.com/microsoft/PowerToys/issues/1053#issuecomment-929929516) and would vote to implement it like this..

it might be nice to try to see if it holds up?

Okay, I'm in. Are the mockup up-to-date? There is one open PR in your repo (https://github.com/niels9001/imageresizerux).
I really like the simplicity of your latest mock up (https://github.com/microsoft/PowerToys/issues/1053#issuecomment-929929516) and would vote to implement it like this.

Yup, that repo contains the latest code!

My idea was to add a ImageResizer.Logic and a ImageResizer.WinUI3 project. The logic project will contain the everything from the previous ImageresizerUI project except the UI/XAML stuff. Your mockups would be added to the WinUI3 project.
Not as easy as I thought it would be.
ImageResizer uses a lot of stuff from System.Windows.Media.Imaging (PresentationCore.dll)
There are a lot of changes regarding Encoders. We had separate encoders classes before
new BmpBitmapEncoder();
new GifBitmapEncoder();
new JpegBitmapEncoder();
new PngBitmapEncoder();
new TiffBitmapEncoder();
new WmpBitmapEncoder();

But now it is only BitmapEncoder which seems to be able to encode everything but the API is entirely different.
Other classes I badly miss are
TransformedBitmap();
BitmapMetadata();
BitmapSource();
CroppedBitmap();

My desperate attempt can be found here:
https://github.com/CleanCodeDeveloper/PowerToys/tree/imageresizer-winui3-migration

+1 Switching from WPF to Windows.Graphics.Imaging is a big chunk of work. Especially given its async-only nature.
I also suspect we can get a significant perf improvement by using a custom SynchronizationContext since resizing is about 50% CPU and 50% I/O.
https://github.com/microsoft/PowerToys/blob/52709ddc4a657d3678b150cdbc6e49b6e5fc8e93/src/modules/imageresizer/ui/Models/ResizeBatch.cs#L58-L61

Here's my latest take on Image Resizer vNext. Mostly a UI refresh adopting W11 Fluent, while adding a new feature: the ability to easily tweak a preset and save it within the editor itself.

WinUi 2.6 (UWP) source code here: https://github.com/niels9001/imageresizerux

As discussed, we might be able to pull this off by moving away from the deprecated ModernWPF to WpfUI. Will investigate.

Not WinUi3?

Not WinUi3?

That would require a rewrite - which for this app, is probably not worth it😣. I was able to come very close to the UI proposal in the OT with WpfUI.. which is mostly style changes only. If all things check out that should give us a way to modernize the look and feel of other WPF utilities (like ColorPicker and FancyZones) and bring them inline with the W11 look and feel.

I had a look into migrating Image Resizer to WinUi 3 but as niels said, this would be a rewrite and I did not had the time to do this so i gave up.

This was done in: https://github.com/microsoft/PowerToys/pull/26858


After reading response in global filter I am not able to get any response not even error from post man?

I am reading response data from downstream services here I want to modify response data. but after placing this global filter I am able to read response data. but it is not pushing to the caller like the postman.
`@Component
public class ModifyBodyGatewayFilterImpl implements GlobalFilter, Ordered {
@Override
public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {

	ServerHttpResponse response = exchange.getResponse();
	DataBufferFactory dataBufferFactory = response.bufferFactory();

	ServerHttpResponseDecorator decoratedResponse = new ServerHttpResponseDecorator(response) {

		@Override
		public Mono<Void> writeWith(Publisher<? extends DataBuffer> body) {
			if (body instanceof Flux) {
				Flux<? extends DataBuffer> flux = (Flux<? extends DataBuffer>) body;

				return super.writeWith(flux.buffer().map(dataBuffers -> {
					ByteOutputStream outputStream = new ByteOutputStream();
					dataBuffers.forEach(i -> {
						byte[] array = new byte[i.readableByteCount()];
						i.read(array);
						outputStream.write(array);
					});
					//outputStream.write("somedata".getBytes()); //With this and with out this also same
					return dataBufferFactory.wrap(outputStream.getBytes());
				}));
			}
			return super.writeWith(body);
		}
	};

	ServerWebExchange swe = exchange.mutate().response(decoratedResponse).build();
	return chain.filter(swe);
}

@Override
public int getOrder() {
	return -2;
}

}
`
I have followed this stack overflow example here they are using GatewayFilter
Link

you can refer to  https://github.com/IBlogLab/enhance-gateway.git

I would suggest that you use the modify response filter from the Gateway rather than trying to do this yourself.  You can only read the response once and this requires a fair bit of manipulation to get right in a way that does no cause errors for other filter/clients. http://cloud.spring.io/spring-cloud-static/Greenwich.RELEASE/single/spring-cloud.html#_modify_response_body_gatewayfilter_factory

I am not using Gateway Handler Mapping. by using below code it is resolving handler mappings automatically but in RouteLocator I think I have to pass route path or prefix as per my requirement I want to intercept all the response for adding some data in the response body. I think it won't serve my requirement please correct me if I am wrong.
@bean public DiscoveryClientRouteDefinitionLocator discoveryClientRouteDefinitionLocator(DiscoveryClient discoveryClient,DiscoveryLocatorProperties properties) { return new DiscoveryClientRouteDefinitionLocator(discoveryClient, properties); }
when I try below code it is truncating response
`
public class ModifyBodyGatewayFilterImpl implements GatewayFilter {
@Override
public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {

    logger.info("\n\nexchange.getAttributes():\n {}\n\n", exchange.getAttributes());

    ServerHttpResponse response = exchange.getResponse();
    DataBufferFactory dataBufferFactory = response.bufferFactory();

    ServerHttpResponseDecorator decoratedResponse = new ServerHttpResponseDecorator(response) {

        @Override
        public Mono<Void> writeWith(Publisher<? extends DataBuffer> body) {

            Flux<? extends DataBuffer> flux = (Flux<? extends DataBuffer>) body;

            Flux<? extends DataBuffer> f = flux.flatMap( dataBuffer  -> {

                byte[] origRespContent = new byte[dataBuffer.readableByteCount()];
                dataBuffer.read(origRespContent);

                System.out.println("content::: " + (new String(origRespContent)));

                //alocating a new buffer size does not help.
                DataBuffer b = dataBufferFactory.allocateBuffer(256);
                b.write("0123456789abcdefg".getBytes());

                return Flux.just(b);
            });

            return super.writeWith(f);
        }
    };

    ServerWebExchange swe = exchange.mutate().response(decoratedResponse).build();
    return chain.filter(swe);
}

}
`

I am not using Gateway Handler Mapping.

Not sure what you mean.
Based on my understanding you are trying to modify the response body that is exactly what the modify response body filter is meant to do.

Yes I want to modify response body in Global  GatewayFilter

So why not have your global filter delegate to the modify response body filter?

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.

Closing due to lack of requested feedback. If you would like us to look at this issue, please provide the requested information and we will re-open the issue.


Support parameters in external route refs

While playing around with the new routing, I noticed that external route refs can't have parameters yet. So I gave it a try. I'm not sure if it's the correct thing to do or the right way to go 😆
While working on that, I was a bit wondering how to resolve this comment, especially if we plan to move the route refs back to plugin-catalog. That would require a circular dependency. On the other side, routeRefs should probably be exported by a plugin or only used internally.
:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[ ] Added or updated documentation
[ ] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)

Tugboat has finished building the preview for this pull request!
Link:

https://pr4628-ffeprjrkswxtsyurn9m1tteffs8g6ohj.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/6033d17d65f8175d39f6d747

Tugboat has finished building the preview for this pull request!
Link:

https://pr4628-ffeprjrkswxtsyurn9m1tteffs8g6ohj.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/6033d17d65f8175d39f6d747

@dhenneke suggested a solution for the <EntityRefLink> topic: One could let the user of that component pass an external route ref (or the route) into the component. But that also feels quite complicated. This would also require every plugin to define an external route for the entity page that one has to bind in their app. But in the end it's always the same entity route for every plugin?

Picked this up to merge it together with optional external route refs and possibly allow for parameter mapping and sub route refs while Fox32 is OOO, work ongoing in https://github.com/backstage/backstage/tree/feat/external-route-ref

Merged in #4792


Tests broken after updating default encryption algorithm

Report: one of my tests that hits https://dev.c19.cards/api/test/encrypt-for-did stopped working recently

No longer using DIDs


Saving of checkpoints

Is there any way to control how many times the checkpoint is saved, can we modify the code to just save best and last checkpoint?

eval_interval on config or change the code


Does this library support RTL?

Unfortunately, TableView doesn't support this feature yet. But, I have already written down this request.
You can also check #15 issue.


Implement JSON AST parser

This is initial PR for JSON AST parser. It works, reduce memory more than 5 times and format configurable from PDP server (-pfmt option).
There are several points that need to be improved.

Whereas policies and rules parsed as they come from the stream, some objects that assumed to be small are parsed as whole (algorithm, rule, obligation, condition etc).
Error messages format for jast looks not good: jcon helpers are used to process stream and it leads to incompatibility between jcon.boundError and ast.boundError (they have private bind methods)
jcon/helpers should be moved to separate package.

I'll proceed with these improvements.

I think that there is possibility to remove boundError from common JSON parser library itself. So it will just propagate error returned from callbacks to upper level. While its own errors can be just of standard error type.

Sooner or later we need to get rid of "small objects assumption" because some external PAP implementation can be not so good to keep small objects small.

All mentioned above points have been addressed

Merging with decreased coverage as coverage enhance and some other grooming is going as separate PR


Found: @angular/cdk@undefined

🐞 Bug report
I am updating to angular 11.2.14 and receive the following error.
🔥 Exception or Error
npm ERR! Found: @angular/cdk@undefined
npm ERR! node_modules/@angular/cdk
npm ERR!   dev<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer<EMAIL_ADDRESS>from<EMAIL_ADDRESS>npm ERR! node_modules/@angular/flex-layout
npm ERR!   dev<EMAIL_ADDRESS>from the root project

The error was reported once in #10167 but was closed due to the lack of feedback.
Is this a regression?
Yes, the previous version in which this bug was not present was: 11.1.0
Description
Content of package.json:
    "@angular-builders/custom-webpack": "11.2.14",
    "@angular-devkit/build-angular": "11.2.14",
    "@angular/animations": "11.2.14",
    "@angular/cdk": "^11.2.14",
    "@angular/cli": "11.2.14",
    "@angular/common": "11.2.14",
    "@angular/compiler": "11.2.14",
    "@angular/compiler-cli": "11.2.14",
    "@angular/core": "11.2.14",
    "@angular/flex-layout": "11.0.0-beta.33",
    "@angular/forms": "11.2.14",
    "@angular/language-service": "11.2.14",
    "@angular/material": "11.2.14",
    "@angular/platform-browser": "11.2.14",
    "@angular/platform-browser-dynamic": "11.2.14",
    "@angular/router": "11.2.14",

🌍 Your Environment

Angular CLI: 12.0.4
Node: 16.2.0
Package Manager: npm 7.15.0
OS: darwin arm64

Angular:
... animations, cdk, common, compiler, compiler-cli, core
... flex-layout, forms, language-service, material
... platform-browser, platform-browser-dynamic, router

Package                         Version
---------------------------------------------------------
@angular-devkit/architect       0.1200.4 (cli-only)
@angular-devkit/build-angular
@angular-devkit/core            12.0.4 (cli-only)
@angular-devkit/schematics      12.0.4 (cli-only)
@angular/cli                    12.0.4 (cli-only)
@schematics/angular             12.0.4 (cli-only)
rxjs                            6.6.7 (cli-only)
typescript
webpack

Can you please run npm ls @angular/cdk?

I deleted the node_modules directory and installed the packages from scratch. The issue disappeared


use babel-preset-yoctol

Coverage remained the same at 89.286% when pulling bbac747f4c26566268793939b54dc10e9b4a48aa on preset into ac6abf7ccc02cdf4f2fd9b7364c4e6501797f6e2 on master.