text:
List all the credential groups

In the Bandada groups page, in the dashboard, list all the credential groups after My groups, so other people can use these credential groups.
The idea is that people don't have to prove that they meet the same requirement several times. If they are already part of a credential group, they don't have to prove the same for other group with the same credential.

hi, @vplasencia
I'd like to work on this.

Hey @family36!
I just assigned the issue to you. Thank you very much! Feel free to ask any questions.

hi, @vplasencia
I don't fully understand the intention of this issue:
"In the Bandada groups page, in the dashboard, list all the credential groups after My groups, so other people can use these credential groups."
・What specific operations does "use" refer to in this context?
・If we list all credential groups, what specifically becomes possible?
Could you please clarify these points?

Hey @family36!
Since the credential groups are public, it can be nice to show all the current credential groups so that people can reuse groups, and they don't have to create new ones if they can reuse the ones that have been created before.
Because you can join a credential group if you meet the group criteria even if you were not invited, anyone that meets the criteria can join the group.
For example, if you create a group for people that have contributed to a specific GitHub repository, then if someone needs to create the same group, they can just reuse yours.
Does it make sense?
The idea is to show all the credential groups after the My Groups section that you can see after you log in.
Then, there will be a section, called something like All Credential Groups where people will see all the credential groups that people have created.

hi, @vplasencia
Thank you very much. I now understand the intent of the issue.
I have completed the implementation up to the point of displaying all credential groups. I have ensured that groups with a null credential and the ones I created myself are not displayed.
Does this implementation sufficiently meet the requirements of the issue?

Hey @family36! It looks great 🤩
I think it's better to also include the ones you created, even if they were listed before. Because filters and labels can be included in the future, and it can be useful to have them all together. For example, there can be a filter to get all the groups that have GitHub followers as part of the credentials.
Then the All credentials groups section will have all the credential groups (including the credential groups you created).
What do you think?

hi, @vplasencia
I have modified the code to include the groups I created in 'All credentials groups'.
May I create a PR for this?
Separately, I noticed that the layout breaks when the group name is very long, as shown in the image. Please disregard this if an issue has already been created for it.

Hey @family36! Thank you very much. I looks great. Yes, feel free to create a PR for this issue.

Separately, I noticed that the layout breaks when the group name is very long, as shown in the image. Please disregard this if an issue has already been created for it.

Good catch! Feel free to also create a new issue and a new PR for this. Let me know if you would like to work on it too so that when you create the issue I can assign it to you.

Hey @family36! I just created this issue as a general issue to make the dashboard app responsive because there are other components that are not responsive either. If you create the issue you found, I can add it to the one I created as a subtask so that it's easier to track and manage the list of components that are not responsive yet: https://github.com/bandada-infra/bandada/issues/551

hi, @vplasencia
I have created a PR.
Thank you for creating the issue.

Hey @family36 I just merged the PR. Thank you very much!
Regarding the other issue you found related to the group cards breaking the layout, I created this new issue: https://github.com/bandada-infra/bandada/issues/553
And added it as a task to the main issue related to making the dashboard app responsive: https://github.com/bandada-infra/bandada/issues/551 to keep track of all the tasks related to making the app responsive because there are other components that are not responsive yet.

repo: bandada-infra/bandada


text:
🛑 MXN BNB Smart Chain On-ramps is down

In d98e943, MXN BNB Smart Chain On-ramps ($QUOTE_ENDPOINT) was down:

HTTP code: 500
Response time: 660 ms

Resolved: MXN BNB Smart Chain On-ramps is back up in b1f3af4 after 9 minutes.

source: gharchive/issue

repo: bandohq/upptime-monitor

license: MIT

license_type: permissive

license_source: github-api


text:
关于va_list的疑问

你在JSPatch 实现原理详解中说使用va_list咱arm64上会crash，能详细解释一下为什么会crash吗。我在arm64机上试过，并不会crash。而且在arm64上，虽然va_list结构不一样，但是细节va_arg都帮我们处理好了不是吗，麻烦解惑，感谢！

你应该没试过参数是float和struct的情况，细节原文有给文章链接 https://blog.nelhage.com/2010/10/amd64-and-va_arg/

typedef struct {
int i;
} cxs;
typedef struct {
int i;
int j;
int k;
cxs s1;
} cxs2;
static id valistTest(id slf, const char *format, ...) {
va_list args;
va_start(args, format);
NSMutableArray *list = [NSMutableArray array];
id obj;
for (const char *c = format; *c != '\0'; c++) {
switch (*c) {
case 'i':
obj = @(va_arg(args,int));
[list addObject:obj];
break;
case 'd':
obj = @(va_arg(args,double));
[list addObject:obj];
break;
case '@':
obj = va_arg(args,id);
[list addObject:obj];
break;
case 's': {
cxs s = va_arg(args,cxs);
obj = [NSString stringWithFormat:@"cxs{i=%@}",@(s.i)];
[list addObject:obj];
break;
}
case 'b': {
cxs2 s = va_arg(args,cxs2);
obj = [NSString stringWithFormat:@"cxs2{i=%@,j=%@,k=%@,s1={i=%@}}",@(s.i),@(s.j),@(s.k),@(s.s1.i)];
[list addObject:obj];
break;
}
default:
break;
}
}
NSLog(@"%@",list);
va_end(args);
return list;
}
CGFloat f1 = 2.3;
CGFloat f2 = 199.9;
valistTest(self,"idid@@sbdd@",1,f1,2,f2,@"string",[NSDate date],(cxs){.i=10},(cxs2){.i=1,.j=2,.k=3,.s1=(cxs){.i=8}},f2,f1,@"字符串");
这次程序还是可以正确输出。
不好意思，再次打扰。

试试CGRect  CGPoint

static id valistTest(id slf, const char *format, ...) {
va_list args;
va_start(args, format);
NSMutableArray *list = [NSMutableArray array];
id obj;
for (const char *c = format; *c != '\0'; c++) {
switch (*c) {
case 'i':
obj = @(va_arg(args,int));
[list addObject:obj];
break;
case 'd':
obj = @(va_arg(args,double));
[list addObject:obj];
break;
case '@':
obj = va_arg(args,id);
[list addObject:obj];
break;
case 's': {
cxs s = va_arg(args,cxs);
obj = [NSString stringWithFormat:@"cxs{i=%@}",@(s.i)];
[list addObject:obj];
break;
}
case 'b': {
cxs2 s = va_arg(args,cxs2);
obj = [NSString stringWithFormat:@"cxs2{i=%@,j=%@,k=%@,s1={i=%@}}",@(s.i),@(s.j),@(s.k),@(s.s1.i)];
[list addObject:obj];
break;
}
case 'S': {
obj = NSStringFromCGSize(va_arg(args,CGSize));
[list addObject:obj];
break;
}
case 'R': {
obj = NSStringFromCGRect(va_arg(args,CGRect));
[list addObject:obj];
break;
}
default:
break;
}
}
NSLog(@"%@",list);
va_end(args);
return list;
}

valistTest(self,"SiRdid@@sbdd@SR",size,1,rect,f1,2,f2,@"string",[NSDate date],(cxs){.i=10},(cxs2){.i=1,.j=2,.k=3,.s1=(cxs){.i=8}},f2,f1,@"字符串",size,rect);妥妥的呀

记不清也找不回以前的版本了，我再试试

哈哈 看看这个 http://www.bailopan.net/blog/?p=30 是不是类似的原原因

应该是因为va_arg(ap,type)的type需要能够编译时确定大小和内存分配，patch里面可以是任意类型的struct，没法在编译时给出占用的内存和对其方式。

看了引用文章里说的amd64下实现的要求，似乎并没有要在编译时确定的内容
而且原文提到的llvm bug已经resolve了
不知道后来有没有找到崩溃的反例？

@xilin 原来应该是对有些架构下的calling conventions处理有问题。即使现在修正了，va_arg是不考虑返回值的，在很多返回值下也是不行的。

@CodeLife2012 了解了，谢谢！

@CodeLife2012  那主要问题又变成不确定va_arg是否可靠了


text:
Added stop-words required package in requirements.txt

In trying to run example.py, there was an error saying that the stop_words module can't be found (it is used in gensim_topic_modelling.py. Added the stop-words package requirement in requirements.txt.

Good catch closes #9

source: gharchive/pull-request

repo: banjtheman/TopicBlob


text:
Update AWS cloud permission setup in readme

Q
A

Bug fix?
no

New feature?
no

API breaks?
no

Deprecations?
no

Related tickets
None

License
Apache 2.0

What's in this PR?
Update to the readme on how to set up AWS for S3-based unseal using KMS.
Why?
The original readme does not detail how.
Additional context

Gyorgy Nadaban  1 day ago
So I spent some time yesterday trying to make this work with S3/KMS unseal key storage and cert-manager signed custom external ingress.
Now I have an operator and vault deployment, but it fails the preflight checks for S3 and KMS. I realize that for an EKS cluster to use roles that allow the Vault operator to access S3 and KMS needs IAM auth in the cluster.
I scoured the net for details but got lost in the weeds about what exactly is required.

For example, I found 2 slightly different annotations for IAM role selection:

iam.amazonaws.com/role
eks.amazonaws.com/role
Could you add to the bank-vaults readme how to setup the AWS side things required by the operator?

Gyorgy Nadaban  23 hours ago
I managed to get past it, but it’d be nice if the readme had a ready-to-run sh script for this. (edited)

nandi  12 hours ago
Hi Gyorgy, sorry for that, we have no snippets for EKS currently. But if you have those snippets at hand would you mind adding it to the cloud-permissions docs under https://github.com/banzaicloud/bank-vaults/tree/master/docs/cloud-permissions#aws
in a PR? I would highly appreciate it!

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

authors: claassistantio gnadaban

repo: banzaicloud/bank-vaults

license_source: bigquery


text:
[Snyk] Security upgrade alpine from 3.14.0 to 3.18.3

This PR was automatically created by Snyk using the credentials of a real user.Keeping your Docker base image up-to-date means you’ll benefit from security fixes in the latest version of your chosen image.
Changes included in this PR

Dockerfile

We recommend upgrading to alpine:3.18.3, as this image has only 0 known vulnerabilities. To do this, merge this pull request, then verify your application still works as expected.
Some of the most important vulnerabilities in your base image include:

Severity
Priority Score / 1000
Issue
Exploit Maturity

500
Out-of-bounds Read SNYK-ALPINE314-APKTOOLS-1533752
No Known Exploit

400
Use After Free SNYK-ALPINE314-BUSYBOX-1920745
No Known Exploit

500
Buffer Overflow SNYK-ALPINE314-OPENSSL-1569445
No Known Exploit

500
Buffer Overflow SNYK-ALPINE314-OPENSSL-1569445
No Known Exploit

500
Out-of-bounds Write SNYK-ALPINE314-ZLIB-2976174
No Known Exploit

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
🛠 Adjust project settings

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Use After Free

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

authors: CLAassistant sagikazarmark

repo: banzaicloud/cloudinfo


text:
Investigate ARM support (container image level) for Pipeline components

Is your feature request related to a problem? Please describe.

Investigate which components could be run on ARM nodes out of the box and which ones require additional effort for ARM support.
Describe the solution you'd like to see

List of ARM-ready components and lists of components requiring additional efforts with the possible missing functionality if known.
Describe alternatives you've considered

Additional context

What happens with an ARM node pool on a non-ARM cluster if a workload without ARM supporting container image is scheduled there? Is it going to simply CrashLoopBackoff or is there any detection and signal mechanism built in for this particular use-case.
Start an ARM cluster with the available Pipeline components (examples:Traefik, cluster autoscaler, HPA operator, kubefed, external DNS, Anchore image validator + check Pipeline config and integrated service list for the comprehensive list) and see whether these components have ARM supporting container images (daemonsets already do).
Check Traefik latest major version whether it would support ARM environment.

The pods are eventually going to transition into CrashLoopBackOff status, generally with a log message standard_init_linux.go:211: exec user process caused "exec format error" indicating no ARM binary support in the docker image.

container image ARM support test results: (lexicographically ordered, the integrated services prefixed with IS)

❌ anchore-engine (docker image no ARM binary support)
❌ cadence (docker image no ARM binary support)
❌ canary-operator (docker image no ARM binary support)
❌ cluster-autoscaler (AWS: docker image no ARM binary support)
❌ dex (AWS: docker image no ARM binary support)
✅  grafana
❌ hpa-operator (docker image no ARM binary support)
❌ hpa-operator-kube-metrics-adapter (docker image no ARM binary support)
❌ hpa-operator-metrics-server (docker image no ARM binary support)
✅ instance-termination-handler
❌ IS velero (ark) backup service: init container not supporting ARM node (probably due to docker image)
❌ IS external-dns (docker image no ARM binary support)
✅ IS expiry
✅ IS ingress
❌ IS logging (docker image no ARM binary support)
❌ IS monitoring (docker image no ARM binary support)
✅ IS security scan
❌ IS bank-vaults
❌ kubefed-admission-webhook (docker image no ARM binary support)
❌ kubefed-controller-manager (docker image no ARM binary support)
❌ kubernetes-dashboard (docker image no ARM binary support)
✅ ldap
❌ mysql (Failed to pull image "mysql:5.7": rpc error: code = Unknown desc = no matching manifest for linux/arm64/v8 in the manifest list entries)
✅ node-pool-labels-operator
❌ postgres (docker image no ARM binary support)
❌ prometheus-operator (docker image no ARM binary support)
❌ prometheus-operator-grafana (docker image no ARM binary support)
✅ prometheus-operator-node-exporter
✅ prometheus-pushgateway
❌ spot-scheduler (docker image no ARM binary support)
❌ spot-config-webhook (docker image no ARM binary support)
✅ traefik
❌ pipeline-ui (docker image no ARM binary support)
❌ vault (docker image no ARM binary support)

Current Traefik major version works on ARM already.

The pods are eventually going to transition into CrashLoopBackOff status, generally with a log message standard_init_linux.go:211: exec user process caused "exec format error" indicating no ARM binary support in the docker image.

container image ARM support test results: (lexicographically ordered, the integrated services prefixed with IS)

❌ anchore-engine (docker image no ARM binary support)
❌ cadence (docker image no ARM binary support)
❌ canary-operator (docker image no ARM binary support)
❌ cluster-autoscaler (AWS: docker image no ARM binary support)
❌ dex (AWS: docker image no ARM binary support)
✅  grafana
❌ hpa-operator (docker image no ARM binary support)
❌ hpa-operator-kube-metrics-adapter (docker image no ARM binary support)
❌ hpa-operator-metrics-server (docker image no ARM binary support)
✅ instance-termination-handler
❌ IS velero (ark) backup service: init container not supporting ARM node (probably due to docker image)
❌ IS external-dns (docker image no ARM binary support)
✅ IS expiry
✅ IS ingress
❌ IS logging (docker image no ARM binary support)
❌ IS monitoring (docker image no ARM binary support)
✅ IS security scan
❌ IS bank-vaults
❌ kubefed-admission-webhook (docker image no ARM binary support)
❌ kubefed-controller-manager (docker image no ARM binary support)
❌ kubernetes-dashboard (docker image no ARM binary support)
✅ ldap
❌ mysql (Failed to pull image "mysql:5.7": rpc error: code = Unknown desc = no matching manifest for linux/arm64/v8 in the manifest list entries)
✅ node-pool-labels-operator
❌ postgres (docker image no ARM binary support)
❌ prometheus-operator (docker image no ARM binary support)
❌ prometheus-operator-grafana (docker image no ARM binary support)
✅ prometheus-operator-node-exporter
✅ prometheus-pushgateway
❌ spot-scheduler (docker image no ARM binary support)
❌ spot-config-webhook (docker image no ARM binary support)
✅ traefik
❌ pipeline-ui (docker image no ARM binary support)
❌ vault (docker image no ARM binary support)

Current Traefik major version works on ARM already.

repo: banzaicloud/pipeline


text:
Fix cluster status history

Q
A

Bug fix?
yes

New feature?
no

API breaks?
no

Deprecations?
no

Related tickets
related #1878

License
Apache 2.0

What's in this PR?
Quick fix for cluster status history.
Checklist

[ ] Implementation tested (with at least one cloud provider)

mine is bigger than yours: #1878

authors: sagikazarmark siliconbrain


text:
代码自动生成插件希望支持不同的文件生成到不同的目录

当前使用版本(必须填写清楚，否则不予处理)
3.2.0
这不是一个bug。只是希望能提供新的功能。
现在很多spring-boot项目都是多model的（xxx-api，xxx-service，xxx-persist等等）。
目前导出文件只能用fileOutConfigList和tableInfo 2个类还自定义输出。实现特别繁琐。
希望能重构一下，再tableInfo中加入一个属性：output，可以自定义输出到哪个目录下。
目录支持占位符，这样就能直接用配置来修改输出路径。

tableInfo 改动量较大，目前自定义输出模式虽然配置繁琐但是逻辑更加清晰

repo: baomidou/mybatis-plus


text:
Rust rinex

Hello @barbeau
Would you be interested in adding my two Rust :crab: libraries to the list?

Thanks @gwbres!

Thanks @gwbres!

Awesome, thank you Sean!

authors: barbeau gwbres

repo: barbeau/awesome-gnss


text:
Don't try to apply format on merge commits

Most our code is not formatted. We want to "get there" by steps, so we use this hook to format modified code and even then it is not always used.
When merge happens (I pull upstream changes to my topic branch), hook tries to format everything I pulled in the merge. If there is a lot of changes, format takes a lot of time. I would like it to just ignore merging commits. Even though formatting is right thing to do, merge commit is not a good time for it.
Ideas for detecting merge commits are here: https://stackoverflow.com/questions/27800512/bypass-pre-commit-hook-for-merge-commits

Strange, I should have latest. I will verify next week at work and try to debug. Thank you!

I do have changes from that PR. I added set -x on top of the hook, this is what happens:
+ set -u
+ set -o pipefail
+ readonly bash_source=.git/hooks/pre-commit
+ bash_source=.git/hooks/pre-commit
+ '[' -t 1 ']'
+ hash tput
++ tput bold
+ readonly 'b='
+ b=''
++ tput sitm
+ readonly 'i='
+ i=''
++ tput sgr0
+ readonly 'n='
+ n=''
+ declare git_test_dir=.
+ declare top_dir
+ true
++ git -C . rev-parse --show-toplevel
+ top_dir=/home2/mateuszl/git/borg-engine
+ declare git_common_dir
++ git -C . rev-parse --git-common-dir
+ git_common_dir=.git
++ cd .
++ realpath .git
++ '[' linux-gnu = linux-gnu ']'
++ readlink -m .git
+ git_common_dir=/home2/mateuszl/git/borg-engine/.git
+ declare maybe_top_dir
++ realpath /home2/mateuszl/git/borg-engine/.git/..
++ '[' linux-gnu = linux-gnu ']'
++ readlink -m /home2/mateuszl/git/borg-engine/.git/..
+ maybe_top_dir=/home2/mateuszl/git/borg-engine
+ '[' -e /home2/mateuszl/git/borg-engine/.git ']'
+ top_dir=/home2/mateuszl/git/borg-engine
+ '[' -e /home2/mateuszl/git/borg-engine/.git ']'
+ '[' -d /home2/mateuszl/git/borg-engine/.git ']'
+ break
+ readonly top_dir
+ hook_path=/home2/mateuszl/git/borg-engine/.git/hooks/pre-commit
+ readonly hook_path
++ realpath .git/hooks/pre-commit
++ '[' linux-gnu = linux-gnu ']'
++ readlink -m .git/hooks/pre-commit
+ me=/home2/mateuszl/git/borg-engine/build-tools/skrypty/python-scripts/clang-format/git-pre-commit-format
+ readonly me
+++ dirname /home2/mateuszl/git/borg-engine/.git/hooks/pre-commit
++ rel_realpath /home2/mateuszl/git/borg-engine/build-tools/skrypty/python-scripts/clang-format/git-pre-commit-format /home2/mateuszl/git/borg-engine/.git/hooks
+++ realpath /home2/mateuszl/git/borg-engine/build-tools/skrypty/python-scripts/clang-format/git-pre-commit-format
+++ '[' linux-gnu = linux-gnu ']'
+++ readlink -m /home2/mateuszl/git/borg-engine/build-tools/skrypty/python-scripts/clang-format/git-pre-commit-format
++ local -r path=/home2/mateuszl/git/borg-engine/build-tools/skrypty/python-scripts/clang-format/git-pre-commit-format
+++ realpath /home2/mateuszl/git/borg-engine/.git/hooks
+++ '[' linux-gnu = linux-gnu ']'
+++ readlink -m /home2/mateuszl/git/borg-engine/.git/hooks
++ local -r rel_to=/home2/mateuszl/git/borg-engine/.git/hooks
++ IFS=/
++ read -r -a path_parts
++ IFS=/
++ read -r -a rel_to_parts
++ (( idx=1 ))
++ (( idx<10 ))
++ '[' home2 '!=' home2 ']'
++ (( idx++ ))
++ (( idx<10 ))
++ '[' mateuszl '!=' mateuszl ']'
++ (( idx++ ))
++ (( idx<10 ))
++ '[' git '!=' git ']'
++ (( idx++ ))
++ (( idx<10 ))
++ '[' borg-engine '!=' borg-engine ']'
++ (( idx++ ))
++ (( idx<10 ))
++ '[' build-tools '!=' .git ']'
++ break
++ result=()
++ local -r first_different_idx=5
++ (( idx=first_different_idx ))
++ (( idx<7 ))
++ result+=("..")
++ (( idx++ ))
++ (( idx<7 ))
++ result+=("..")
++ (( idx++ ))
++ (( idx<7 ))
++ (( idx=first_different_idx ))
++ (( idx<10 ))
++ result+=("${path_parts[idx]}")
++ (( idx++ ))
++ (( idx<10 ))
++ result+=("${path_parts[idx]}")
++ (( idx++ ))
++ (( idx<10 ))
++ result+=("${path_parts[idx]}")
++ (( idx++ ))
++ (( idx<10 ))
++ result+=("${path_parts[idx]}")
++ (( idx++ ))
++ (( idx<10 ))
++ result+=("${path_parts[idx]}")
++ (( idx++ ))
++ (( idx<10 ))
++ '[' 7 -gt 0 ']'
+++ export IFS=/
+++ IFS=/
+++ echo ../../build-tools/skrypty/python-scripts/clang-format/git-pre-commit-format
++ echo ../../build-tools/skrypty/python-scripts/clang-format/git-pre-commit-format
+ me_relative_to_hook=../../build-tools/skrypty/python-scripts/clang-format/git-pre-commit-format
+ readonly me_relative_to_hook
++ dirname /home2/mateuszl/git/borg-engine/build-tools/skrypty/python-scripts/clang-format/git-pre-commit-format
+ my_dir=/home2/mateuszl/git/borg-engine/build-tools/skrypty/python-scripts/clang-format
+ readonly my_dir
+ apply_format=/home2/mateuszl/git/borg-engine/build-tools/skrypty/python-scripts/clang-format/apply-format
+ readonly apply_format
++ rel_realpath /home2/mateuszl/git/borg-engine/build-tools/skrypty/python-scripts/clang-format/apply-format /home2/mateuszl/git/borg-engine
+++ realpath /home2/mateuszl/git/borg-engine/build-tools/skrypty/python-scripts/clang-format/apply-format
+++ '[' linux-gnu = linux-gnu ']'
+++ readlink -m /home2/mateuszl/git/borg-engine/build-tools/skrypty/python-scripts/clang-format/apply-format
++ local -r path=/home2/mateuszl/git/borg-engine/build-tools/skrypty/python-scripts/clang-format/apply-format
+++ realpath /home2/mateuszl/git/borg-engine
+++ '[' linux-gnu = linux-gnu ']'
+++ readlink -m /home2/mateuszl/git/borg-engine
++ local -r rel_to=/home2/mateuszl/git/borg-engine
++ IFS=/
++ read -r -a path_parts
++ IFS=/
++ read -r -a rel_to_parts
++ (( idx=1 ))
++ (( idx<10 ))
++ '[' home2 '!=' home2 ']'
++ (( idx++ ))
++ (( idx<10 ))
++ '[' mateuszl '!=' mateuszl ']'
++ (( idx++ ))
++ (( idx<10 ))
++ '[' git '!=' git ']'
++ (( idx++ ))
++ (( idx<10 ))
++ '[' borg-engine '!=' borg-engine ']'
++ (( idx++ ))
++ (( idx<10 ))
++ '[' build-tools '!=' '' ']'
++ break
++ result=()
++ local -r first_different_idx=5
++ (( idx=first_different_idx ))
++ (( idx<5 ))
++ (( idx=first_different_idx ))
++ (( idx<10 ))
++ result+=("${path_parts[idx]}")
++ (( idx++ ))
++ (( idx<10 ))
++ result+=("${path_parts[idx]}")
++ (( idx++ ))
++ (( idx<10 ))
++ result+=("${path_parts[idx]}")
++ (( idx++ ))
++ (( idx<10 ))
++ result+=("${path_parts[idx]}")
++ (( idx++ ))
++ (( idx<10 ))
++ result+=("${path_parts[idx]}")
++ (( idx++ ))
++ (( idx<10 ))
++ '[' 5 -gt 0 ']'
+++ export IFS=/
+++ IFS=/
+++ echo build-tools/skrypty/python-scripts/clang-format/apply-format
++ echo build-tools/skrypty/python-scripts/clang-format/apply-format
+ apply_format_relative_to_top_dir=build-tools/skrypty/python-scripts/clang-format/apply-format
+ readonly apply_format_relative_to_top_dir
+ '[' 0 = 1 ']'
+ '[' 0 = 0 ']'
+ '[' -z .git ']'
+ '[' -x /home2/mateuszl/git/borg-engine/build-tools/skrypty/python-scripts/clang-format/apply-format ']'
++ cd /home2/mateuszl/git/borg-engine
++ git config hooks.clangFormatDiffStyle
++ echo file
+ readonly style=file
+ style=file
+ apply_format_opts=("--style=$style" --cached)
+ readonly exclusions_file=/home2/mateuszl/git/borg-engine/.clang-format-hook-exclude
+ exclusions_file=/home2/mateuszl/git/borg-engine/.clang-format-hook-exclude
+ '[' -e /home2/mateuszl/git/borg-engine/.clang-format-hook-exclude ']'
++ mktemp
+ readonly patch=/tmp/tmp.HKi94gd8aX
+ patch=/tmp/tmp.HKi94gd8aX
+ trap '{ rm -f "$patch"; }' EXIT
+ /home2/mateuszl/git/borg-engine/build-tools/skrypty/python-scripts/clang-format/apply-format --style=file --cached --style=file --cached
# now commit hangs because a lot of work is done, so I ctrl+c

If it changes anything: my repo is cloned into borg-engine, hook is in borg-engine/.git/hooks, but it links to borg-engine/build-tools/<somethingsomething>, where build-tools is a submodule.
Anyway seems to me that check is not performed. When done manually:
bd3f65d9230a72ed54b8e04c5d47cb496c946efa
$ echo $?
0

PR #18 Only adds suggestion "You appear to be committing the result of a merge. It is not recommended....". clang-format is run anyway. This is IMHO correct behavior when running apply-format manually, but for git-hook formatting shouldn't be performed at all. It is simply to time consuming on big merges.

Ah good point!
I think this was mainly designed to work when you merge a feature branch into master/your branch and you may want to fix formatting.
@cbaylis what do you think?

repo: barisione/clang-format-hooks


text:
Implemented Trivia Api Client

Summary by Sourcery
Implement a new Trivia API client to facilitate interaction with the trivia API, including fetching questions and categories, and managing session tokens. Enhance the project by adding support for Python 3.12 and 3.13, updating dependencies, and expanding the test suite to cover the new functionality.
New Features:

Introduce a Trivia API client to interact with the trivia API, including methods for fetching questions, categories, and managing session tokens.

Enhancements:

Add support for Python 3.12 and 3.13 in the tox environment and GitHub Actions workflow.

Build:

Add new dependencies: requests, urllib3, types-requests, and customtkinter to the project.

CI:

Update the GitHub Actions workflow to use Python 3.13 by default and modify the cache key for pre-commit.

Documentation:

Update the documentation to include new modules: trivia_api, models, and exceptions.

Tests:

Add comprehensive tests for the Trivia API client, covering session creation, response code handling, request making, token management, category fetching, question fetching, text decoding, and question formatting.

@sourcery-ai review

@sourcery-ai review

@sourcery-ai review

@sourcery-ai review

@sourcery-ai review

repo: bartczak-pa/trivia-game


text:
Python access?

Could you document how to access Ollama API with bearer authentication using python?

Could you document how to access Ollama API with bearer authentication using python?

Hi, thanks for your message. There's actually nothing different about accessing this compared to how you'd access Ollama. Ollama supports the OpenAI API, which makes things pretty straightforward. You can find all the details in the Ollama documentation on GitHub.
https://github.com/ollama/ollama/blob/main/docs/openai.md
All you need to do is add your API key, and you're good to go. It's a simple process that should get you up and running quickly.

试了下，不设置api key 也能访问啊

Could you document how to access Ollama API with bearer authentication using python?

Hi, thanks for your message. There's actually nothing different about accessing this compared to how you'd access Ollama. Ollama supports the OpenAI API, which makes things pretty straightforward. You can find all the details in the Ollama documentation on GitHub.
https://github.com/ollama/ollama/blob/main/docs/openai.md
All you need to do is add your API key (api_key), and you're good to go. It's a simple process that should get you up and running quickly.
Example:
client = OpenAI(
    base_url='http://localhost:11434/v1/',

    # add your api key
    api_key='sk-ollama-xxxxxxxxxxxxxxxxxxx',
)

While this works for some APIs, Ollama still does not support all of them. For example this

model = ChatOpenAI(
    model="mistral",
    api_key='sk-ollama-6c325b118f435a5b3ac6539481a537d1')

model.invoke("hello")

won't work. Is there a way to make it work?

authors: Haifeng002 bartolli nise salvatore-cipolla

repo: bartolli/ollama-bearer-auth


text:
iOS & Android Versions Numbers

for iOS, the Fastlane "increment version" is running in Bitrise.io.  But the updated project is not updated in GitHub so ..
Need to have process to grab the version number, eg 0.0.6, from the package.json and update both iOS and Android w/ that "release"

In general, you should manage the version number for yourself
and maybe have a “build number"
but don’t just auto-increment that
rather use the build number supplied by the related service
in case of bitrise.io you can use $BITRISE_BUILD_NUMBER env
or you can export it as an environment variable with envman

http://stackoverflow.com/questions/33821137/build-versioning-in-continuous-delivery/33821876#33821876

https://gist.github.com/viktorbenei/d341e74c8321473c8a67

Hi there,
I would really like to help, but first I would like to know why your fastfile uses so many sh commands. I don't really know why they are necessary and also what they do, so I am quite confused ;)
Our Fastfile looks something like this:
    sigh
    # use the UDID of the newly created provisioning profile
    ENV["PROFILE_UDID"] = lane_context[SharedValues::SIGH_UDID]

    increment_build_number
    gym
    commit_version_bump
    push_to_git_remote
    pilot

What it does is:

Deals with Provisioning Profiles
Increment the build version number (an app can only be submitted with one version number once)
Commit and Push the version bump (with a message like "Deployed version XX")
Push the builded version to the AppStore (or Testflight, dependant on the lane)

I stripped away every kind of configuration, but I would be glad to add a PR if you are uncertain, so that we can discuss this more on a code level.
Have a nice day!

That's a good question!  When I first was working w/ Fastlane it looked very similar to what you have except for the push_to_git_remote as I worried about the webhook kicking off another build and end up in a never ending recursion.
I've never worked w/ Apple before so all this Cert, App Id, Provisioning, etc is new to me.
When I was working w/ Fastlane on Bitrise, and it included the same steps almost exactly what you have, I went through a large number of builds and each build would generate a new Cert, App ID, and Prov Profile - I ended up w/ a bunch of them all defined here: https://developer.apple.com/account/ios/certificate/certificateList.action.  I had no idea which ones were active or in use or even if I needed them all.
When I mentioned this to the Bitrise.io CTO, he showed me how Bitrise handled it which is what I'm doing now.  The advantage I observed following my current approach, if you watched the videos, is that I let XCode build the 3 artifacts and during the build step those artifacts are utilized.
Once I went that route I was able to get the apps running on the devices.  Rather then beat my head against the wall, I opted to share what I had and hope someone could help clean it up.
As I mentioned in the video series on CI w/ Bitrise.io, the current implementation is just a base line to grow from, it's definitely not the end game - eventually I want Fastlane to do all the work.
If you could enhance our Fastlane implementation I'd be very grateful!

Nice to know, we ran into exactly the same issue. The reason was that fastlane somehow didn't found the provisioning profiles it had created earlier. If I remember correctly the ENV line fixed this issue, or am I wrong @dbanck?
If so I would rewrite the fastlane config to use the more verbose approach fastlane provides and add a deploy script to the package.json, so one can easily deploy it from the command line.

sounds good.
About that push_to_git_remote - are you using the Github webhook to kick of the build?  What kicks it off?

Well, we kick it of manually, this could introduce some kind of recursion in this case. But if the commit messages all have the same format, I think we could easily check if the name of the last commit matches and then ignore it. Or even better check if there is any valid commit since the last build was pushed.

This can be done manually.

authors: DanielMSchmidt bartonhammond

repo: bartonhammond/snowflake

license: mit


text:
CORS Issue with the re-captcha

Hello!
Having some issues using the re-captcha in my svelte app. I manage to get the ready state to fire, but then all I get is this error:
caught DOMException: Blocked a frame with origin "https://www.google.com" from accessing a cross-origin frame.
    at Ci.Yy.w8 (https://www.gstatic.com/recaptcha/releases/85AXn53af-oJBEtL2o2WpAjZ/recaptcha__en.js:721:217)
    at Array.<anonymous> (https://www.gstatic.com/recaptcha/releases/85AXn53af-oJBEtL2o2WpAjZ/recaptcha__en.js:40:284)
    at Object.init (https://www.gstatic.com/recaptcha/releases/85AXn53af-oJBEtL2o2WpAjZ/recaptcha__en.js:730:258)
    at https://www.google.com/recaptcha/api2/bframe?hl=en&v=85AXn53af-oJBEtL2o2WpAjZ&k=6LfetkseAAAAAM2BZdN4nLPitmM3skOeY9_jkqyq:184:30

Has anyone seen this before? I've tried adding the captcha as a div I render on it's own but I get the same issue in the end.
Does it need to be hosted on a web server rather than just localhost? Not sure why it would work for others.

Hi, the cors is probably coming from your vite dev server. Check your svelte config and look for a cors setting, may be you have something there?

Thanks for the quick reply! I'm not entirely sure where I'd be looking for such a config. The only things we have are rollup configs.

these are usually in the svelte.config.js, are you using a standard project or do you bundle with rollup yourself with custom configuration?

Here is the link to svelte vite config from the docs:
https://kit.svelte.dev/docs/configuration#vite

It's a shareable web component library, so we have some rollup configs we've added, a Form.wc.svelte component and a App.svelte for demoing of this component. We don't have a svelte vite config.
I've managed to get the captcha working on the demo if I put it in App.svelte - but as soon as it's in the Form.wc.svelte web component and I include that component in App.svelte I get the cors error.

authors: Amanowskik basaran


text:
Updated broken links in the documentation

Changed:
https://github.com/base-org/usernames/blob/master/contracts/src/L2/Registry.sol - https://github.com/base-org/basenames/blob/main/src/L2/Registry.sol
https://github.com/base-org/usernames/blob/master/contracts/src/L2/BaseRegistrar.sol - https://github.com/base-org/basenames/blob/main/src/L2/BaseRegistrar.sol
https://github.com/base-org/usernames/blob/master/contracts/src/L2/ReverseRegistrar.sol - https://github.com/base-org/basenames/blob/main/src/L2/ReverseRegistrar.sol
https://github.com/base-org/usernames/blob/master/contracts/src/L1/L1Resolver.sol - https://github.com/base-org/basenames/blob/main/src/L1/L1Resolver.sol

🟡 Heimdall Review Status

Requirement
Status
More Info

Reviews

🟡
0/1

Denominator calculation

Show calculation

1 if user is bot
0

1 if user is external
0

From .codeflow.yml

1

Additional review requirements

Show calculation

Max
0

0

From CODEOWNERS

0

Global minimum
0

Max

1

1

1 if commit is unverified
0

Sum
1

authors: bouchmann cb-heimdall

repo: base-org/basenames


text:
Feat: GetStarted page Discoverability

What changed? Why?

Added Get Started link to base-web navbar
Added Get Started link to base-docs navbar (nesting Tutorials under Learn Dropdown)
Updated baseweb hero CTAs: Get Started + Read the Docs (deprecating Bridge Assets)

Notes to reviewers
How has it been tested?
locally

🟡 Heimdall Review Status

Requirement
Status
More Info

Reviews

🟡
0/1

Denominator calculation

Show calculation

1 if user is bot
0

1 if user is external
0

From .codeflow.yml

1

Additional review requirements

Show calculation

Max
0

0

From CODEOWNERS

0

Global minimum
0

Max

1

1

1 if commit is unverified
0

Sum
1

authors: brendan-defi cb-heimdall

repo: base-org/web


text:
basho_bench tests directory seems to be ignored  [JIRA: TOOLS-100]

I have installed basho_bench the first time using RPM (previously i used it the source only). I was running into this issue:
$ basho_bench -d tests /etc/basho_bench/http.config
escript: exception error: no match of right hand side value {error,eacces}
  in function  basho_bench:test_dir/2 (src/basho_bench.erl, line 178)
  in call from basho_bench:main/1 (src/basho_bench.erl, line 47)
  in call from escript:run/2 (escript.erl, line 747)
  in call from escript:start/1 (escript.erl, line 277)
  in call from init:start_it/1
  in call from init:start_em/1

I was wondering what is going ton and after poking around I have seen https://github.com/basho/basho_bench/issues/56.
I have tried it with sudo.
[vagrant@localhost ~]$ sudo basho_bench -d tests /etc/basho_bench/http.config
16:45:47.105 [debug] Lager installed handler {lager_file_backend,
                            "/usr/lib64/basho_bench/lib/basho_bench-0.10.0/ebin/tests/20150408_164547/error.log"} into lager_event
16:45:47.105 [debug] Lager installed handler {lager_file_backend,
                            "/usr/lib64/basho_bench/lib/basho_bench-0.10.0/ebin/tests/20150408_164547/console.log"} into lager_event

I guess the following function prefixes the parameter that was passed in with -d with the CWD that is the "/usr/lib64/basho_bench/lib/basho_bench-0.10.0/ebin" in my case if the path is not a full path.
https://github.com/basho/basho_bench/blob/0.10.0/src/basho_bench.erl#L172
It would be nice to make it explicit that the path has to be absolute and relative paths will fail if the user has no access to the CWD of the basho_bench binary.
What do you guys think?

@l1x What do you think about https://github.com/basho/basho_bench/compare/bug/gh178?expand=1 ?

@slfritchie i guess I am trying to understand the intentions here. Currently the function behaves like this:

if you pass in an absolute path it takes it as it is
if you pass in a relative path it takes it and prefixes it with CWD (that is the ebin/ folder location on disk)

I guess the code should not silently do that or it should be called out. It seems this is a real issue (even though a low priority one) because I am not the first guy who ran into this.
What you are your thoughts?

The intent of the diff is to use pattern matching to create a more useful error message when something goes wrong: the path of the file with the I/O error is included in any badmatch error reporting.

I just merged #185 and will close this issue.  If there's a serious problem, or if there's a PR to alter the behavior further, please reopen.

Ummm, this GH issue was closed on May 19, 2015. Closing in JIRA.
[posted via JIRA by Scott Fritchie]

authors: Basho-JIRA l1x slfritchie


text:
Add bucket type property operations to Client

See PR #102

@brianedgerton - here you go:
https://github.com/basho/riak-nodejs-client/releases/tag/v1.8.0
https://www.npmjs.com/package/basho-riak-client

repo: basho/riak-nodejs-client


text:
HyperLogLog support

Fixes #133 (CLIENTS-775) (CLIENTS-981)

Tests pass against Riak KV 2.1.4. Code looks good. Attempting to test against Riak develop branch nightly but it errors when I attempt to create the hll bucket-type.

authors: christophermancini lukebakken

repo: basho/riak-php-client


text:
Update to support nautilus-python v4

https://gnome.pages.gitlab.gnome.org/nautilus-python/nautilus-python-migrating-to-4.html

I'm running Bookworm and can test when you're ready, thanks!

I'm running Bookworm and can test when you're ready, thanks!

Hey there. Thanks, that would be very helpful! I THINK it's ready for initial testing now. If you clone the repo, checkout the nautilus-python-4-prep branch, and install from the command line as described in the README then you'll have the current state of the mods installed. Then just report back all the errors you get :)
Make sure you remove your current installation before doing the above - this won't destroy your config.
When reporting back, can you do so with comments on the PR rather than here. Thanks

Hi, thanks, forgive my ignorance.
I know how to git clone the repo. i.e. git clone https://github.com/bassmanitram/actions-for-nautilus
How do I "checkout the nautilus-python-4-prep branch"?
Thanks,
Mark
On Tue, Dec 27, 2022, at 1:17 AM, Martin Bartlett wrote:

I'm running Bookworm and can test when you're ready, thanks!

Hey there. Thanks, that would be very helpful! I THINK it's ready for initial testing now. If you clone the repo, checkout the nautilus-python-4-prep branch, and install from the command line as described in the README then you'll have the current state of the mods installed. Then just report back all the errors you get :)
Make sure you remove your current installation before doing the above - this won't destroy your config.
When reporting back, can you do so with comments on the PR https://github.com/bassmanitram/actions-for-nautilus/pull/32 rather than here. Thanks
—
Reply to this email directly, view it on GitHub https://github.com/bassmanitram/actions-for-nautilus/issues/31#issuecomment-1365742870, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAFISDVJE4WEZH5YFXRZCDDWPKX27ANCNFSM6AAAAAARXA3AF4.
You are receiving this because you commented.Message ID: @.***>

Hi, thanks, forgive my ignorance. I know how to git clone the repo. i.e. git clone https://github.com/bassmanitram/actions-for-nautilus How do I "checkout the nautilus-python-4-prep branch"? Thanks, Mark

Hey - after you have done the clone, cd into the directory into which you cloned the repo and execute the command...
git switch nautilus-python-4-prep

then just do the rest of the manual installation process from there.

repo: bassmanitram/actions-for-nautilus


text:
Vocabulary UI

make it possible to edit Vocabularies

close in favor of this one: https://github.com/basxsoftwareassociation/basxconnect/issues/238

repo: basxsoftwareassociation/basxconnect


text:
Fixup build.zig for latest master

Attempt to fixup some comptime issues, but still not working yet. Tests not passing but the runtime components are functional enough for now.

Thanks a lot, especially for the build.zig stuff :smile:
I'll take a look at that soon, need to track which comptime test is crashing the compiler (or maybe we can just disable the comptime tests for now)

Thanks @MFAshby! I've updated the project to zig 0.13, only the comptime tests cannot run anymore due to changes in how comptime var can be used during runtime. The rest of the project is fully functional again!

authors: MFAshby batiati

repo: batiati/mustache-zig


text:
🛑 SAT - Portal CFDI is down

In 92c2490, SAT - Portal CFDI (https://portalcfdi.facturaelectronica.sat.gob.mx) was down:

HTTP code: 0
Response time: 0 ms

Resolved: SAT - Portal CFDI is back up in b5fe051 after 25 minutes.

repo: batnieluyo/sat-monitor


text:
🛑 SAT - Portal CFDI is down

In 55bc3b1, SAT - Portal CFDI (https://portalcfdi.facturaelectronica.sat.gob.mx) was down:

HTTP code: 503
Response time: 262 ms

Resolved: SAT - Portal CFDI is back up in b6dfbd1.


text:
Notify user of second device using SA F9.

From j1939-84 created by battjt: battjt/j1939-84#928
Provide notice for extraneous queries from SA F9,
When extraneous queries, not sent by the SAE J1939-84 software are observed:

Print a time stamped message in the log:
HH:MM:SS.SSSS ccccccF9 [n] XX XX XX XX XX XX XX
WARN: Unexpected Service Tool Message from SA F9 observed. Test results uncertain. False failures are possible.
Add a pop up message for the UI
Unexpected Service Tool Query from SA F9 observed. Test results uncertain. False failures are possible.
Should a 2nd Query appear while this Pop-up is displayed, a 2nd Popup will not be displayed.
This popup shall not interfere with the user interface pop ups, and allow the user to respond to them.

After II.B add the following footnote.
[xx] Implementors are encouraged to detect overlapping queries created by on-board devices using the test tool’s F9h address. Notices to the user through the implementor’s user interface, and messages in the test log of these occurrences are recommended.

I suggest that we word this as an invalid test, not a warning.  A second tool makes the test invalid; all DS transport protocol will be effected.  It's not just overlapping queries.


text:
Running locally with ./quickstart throws repeating error

Here is the warning and error:
WARNING: The FILES_VOLUME_PATH variable is not set. Defaulting to a blank string.
Creating volume "signalserver_dbdata" with default driver
Creating volume "signalserver_files" with default driver
ERROR: create .: volume name invalid: "." includes invalid characters for a local volume name, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed

I will close out this one if that's okay. Since it works on your machine. (FILE_VOLUME_PATH environment variable needs to be set.)

authors: ablwr yayoiukai

repo: bavc/signalserver


text:
Prime Offload not working after switching to hybrid mode  - Ubuntu 22.04

Running __NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only __GLX_VENDOR_LIBRARY_NAME=nvidia vkcube still uses intel iGPU:
MESA-INTEL: warning: Performance support disabled, consider sysctl dev.i915.perf_stream_paranoid=0

Selected GPU 0: Intel(R) UHD Graphics (CML GT2), type: 1

neofetch:

I've run strace on sudo envycontrol --switch hybrid (if that's of any help):
strace: Process 102252 attached
read(0, "y\n", 1024)                    = 2
newfstatat(AT_FDCWD, "/lib/udev/rules.d", {st_mode=S_IFDIR|0755, st_size=135, ...}, 0) = 0
openat(AT_FDCWD, "/lib/udev/rules.d/80-nvidia-pm.rules", O_WRONLY|O_CREAT|O_TRUNC|O_CLOEXEC, 0666) = 3
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=0, ...}, AT_EMPTY_PATH) = 0
ioctl(3, TCGETS, 0x7ffe51ec9710)        = -1 ENOTTY (Inappropriate ioctl for device)
brk(0x55cd7174a000)                     = 0x55cd7174a000
lseek(3, 0, SEEK_CUR)                   = 0
lseek(3, 0, SEEK_CUR)                   = 0
write(3, "# Automatically generated by Env"..., 1177) = 1177
close(3)                                = 0
newfstatat(AT_FDCWD, "/etc/modprobe.d", {st_mode=S_IFDIR|0755, st_size=16, ...}, 0) = 0
openat(AT_FDCWD, "/etc/modprobe.d/nvidia.conf", O_WRONLY|O_CREAT|O_TRUNC|O_CLOEXEC, 0666) = 3
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=0, ...}, AT_EMPTY_PATH) = 0
ioctl(3, TCGETS, 0x7ffe51ec9710)        = -1 ENOTTY (Inappropriate ioctl for device)
lseek(3, 0, SEEK_CUR)                   = 0
lseek(3, 0, SEEK_CUR)                   = 0
write(3, "# Automatically generated by Env"..., 176) = 176
close(3)                                = 0
newfstatat(AT_FDCWD, "/etc/debian_version", {st_mode=S_IFREG|0644, st_size=13, ...}, 0) = 0
write(1, "Rebuilding initramfs...\n", 24) = 24
openat(AT_FDCWD, "/dev/null", O_RDWR|O_CLOEXEC) = 3
pipe2([4, 5], O_CLOEXEC)                = 0
rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1], [], 8) = 0
vfork()                                 = 106238
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
close(5)                                = 0
close(3)                                = 0
read(4, "", 50000)                      = 0
close(4)                                = 0
wait4(106238, 0x7ffe51ec8f1c, 0, NULL)  = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGWINCH {si_signo=SIGWINCH, si_code=SI_KERNEL} ---
wait4(106238, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 106238
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=106238, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
write(1, "Successfully rebuilt initramfs!\n", 32) = 32
write(1, "Graphics mode set to: hybrid\nPle"..., 78) = 78
write(1, "\n", 1)                       = 1
rt_sigaction(SIGINT, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER|SA_ONSTACK, sa_restorer=0x7ff645c84520}, {sa_handler=0x55cd706c9990, sa_mask=[], sa_flags=SA_RESTORER|SA_ONSTACK, sa_restorer=0x7ff645c84520}, 8) = 0
munmap(0x7ff64531e000, 299008)          = 0
munmap(0x7ff645367000, 1048576)         = 0
exit_group(0)                           = ?
+++ exited with 0 +++

I've run prime-select on-demand and systemctl disable gpu-manager.service before switching to the hybrid mode.
xrandr --listproviders:
Providers: number : 2
Provider 0: id: 0x42 cap: 0x9, Source Output, Sink Offload crtcs: 3 outputs: 1 associated providers: 1 name:modesetting
Provider 1: id: 0x1fa cap: 0x2, Sink Output crtcs: 4 outputs: 8 associated providers: 1 name:NVIDIA-G0

any suggestions where the problems may reside will be welcomed with a lot of gratitude

Hybrid mode works out of the box without any tool, the only thing
Envycontrol does is enabling modeset and Preserve VRAM kernel driver
options.
On Sun, Jan 29, 2023, 09:00 danielkrajnik @.***> wrote:

I can't run __NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only
__GLX_VENDOR_LIBRARY_NAME=nvidia glxgears - still uses intel iGPU.
I've run strace on sudo envycontrol --switch hybrid (shown below).
Noticed that xorg.conf isn't created and /usr/share/sddm/scripts/Xsetup
isn't modified either - I thought that they need to be changed? I haven't
found anywhere in the repo any suggestion that users should do it manually?
I was hoping that it will work out of the box :). Then again, I'm using
Ubuntu...
strace: Process 102252 attached
read(0, "y\n", 1024)                    = 2
newfstatat(AT_FDCWD, "/lib/udev/rules.d", {st_mode=S_IFDIR|0755, st_size=135, ...}, 0) = 0
openat(AT_FDCWD, "/lib/udev/rules.d/80-nvidia-pm.rules", O_WRONLY|O_CREAT|O_TRUNC|O_CLOEXEC, 0666) = 3
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=0, ...}, AT_EMPTY_PATH) = 0
ioctl(3, TCGETS, 0x7ffe51ec9710)        = -1 ENOTTY (Inappropriate ioctl for device)
brk(0x55cd7174a000)                     = 0x55cd7174a000
lseek(3, 0, SEEK_CUR)                   = 0
lseek(3, 0, SEEK_CUR)                   = 0
write(3, "# Automatically generated by Env"..., 1177) = 1177
close(3)                                = 0
newfstatat(AT_FDCWD, "/etc/modprobe.d", {st_mode=S_IFDIR|0755, st_size=16, ...}, 0) = 0
openat(AT_FDCWD, "/etc/modprobe.d/nvidia.conf", O_WRONLY|O_CREAT|O_TRUNC|O_CLOEXEC, 0666) = 3
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=0, ...}, AT_EMPTY_PATH) = 0
ioctl(3, TCGETS, 0x7ffe51ec9710)        = -1 ENOTTY (Inappropriate ioctl for device)
lseek(3, 0, SEEK_CUR)                   = 0
lseek(3, 0, SEEK_CUR)                   = 0
write(3, "# Automatically generated by Env"..., 176) = 176
close(3)                                = 0
newfstatat(AT_FDCWD, "/etc/debian_version", {st_mode=S_IFREG|0644, st_size=13, ...}, 0) = 0
write(1, "Rebuilding initramfs...\n", 24) = 24
openat(AT_FDCWD, "/dev/null", O_RDWR|O_CLOEXEC) = 3
pipe2([4, 5], O_CLOEXEC)                = 0
rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1], [], 8) = 0
vfork()                                 = 106238
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
close(5)                                = 0
close(3)                                = 0
read(4, "", 50000)                      = 0
close(4)                                = 0
wait4(106238, 0x7ffe51ec8f1c, 0, NULL)  = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGWINCH {si_signo=SIGWINCH, si_code=SI_KERNEL} ---
wait4(106238, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 106238
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=106238, si_uid=0, si_status=0, si_utime=0, si_stime=0} ---
write(1, "Successfully rebuilt initramfs!\n", 32) = 32
write(1, "Graphics mode set to: hybrid\nPle"..., 78) = 78
write(1, "\n", 1)                       = 1
rt_sigaction(SIGINT, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER|SA_ONSTACK, sa_restorer=0x7ff645c84520}, {sa_handler=0x55cd706c9990, sa_mask=[], sa_flags=SA_RESTORER|SA_ONSTACK, sa_restorer=0x7ff645c84520}, 8) = 0
munmap(0x7ff64531e000, 299008)          = 0
munmap(0x7ff645367000, 1048576)         = 0
exit_group(0)                           = ?
+++ exited with 0 +++
—
Reply to this email directly, view it on GitHub
https://github.com/bayasdev/envycontrol/issues/77, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALY7IYJEHHCKLJQA4NOSAOTWUZZZPANCNFSM6AAAAAAUKIM4L4
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

thanks, hmm I'm just not sure which steps I'm missing to get prime offload to work - sorry, I'm sure it's a really basic question, but I'm digging through strace logs on vkcube command just to figure out what's missing.
Envycontrol has helped me a lot already, but any suggestion how to make the prime offload to work would be really appreciated.

Seriously, this makes no sense. There is no information how to set it up at all

PRIME offloading works, try running Firefox with __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia firefox and go to about:support it should say EGL Vendor is Nvidia Corporation.

thanks for checking this again, but it trying to run firefox with these variables didn't work - please see excerpt from the output of about:supprt here:

Try the same command after envycontrol --reset and rebooting
On Sun, Jan 29, 2023, 13:22 danielkrajnik @.***> wrote:

thanks for checking this again, but it trying to run firefox with these
variables didn't work - please see excerpt from the output of about:supprt
here:
[image: image]
https://user-images.githubusercontent.com/15096799/215347643-b90a7f5e-d2af-49eb-8a06-57c81f3b4aab.png
—
Reply to this email directly, view it on GitHub
https://github.com/bayasdev/envycontrol/issues/77#issuecomment-1407735093,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALY7IYPW6CPVHDYZ3E6INBDWU2YPBANCNFSM6AAAAAAUKIM4L4
.
You are receiving this because you commented.Message ID:
@.***>

@bayasdev Sorry, it yields the same results:

xrandr --listproviders
Provider 0: id: 0x42 cap: 0x9, Source Output, Sink Offload crtcs: 3 outputs: 1 associated providers: 1 name:modesetting
Provider 1: id: 0x1fa cap: 0x2, Sink Output crtcs: 4 outputs: 8 associated providers: 1 name:NVIDIA-G0

Sorry, I can't reproduce your problem but it sounds to me like some config in your setup is conflicting.
Since you have a Legion, you can disable Optimus from your BIOS and enjoy a better experience on Linux.

No worries, but I may try to install an entire system from scratch then, hopefully it will eventually click.

solved, I didn't install the nvidia driver properly. Running sudo apt install nvidia-driver-515 repaired it. Sorry, it was a really stupid error completely my fault.

authors: bayasdev danielkrajnik

repo: bayasdev/envycontrol


text:
Running Two Moons Notebook with PyTorch Cuda setup yields cuda error

The error seems to originate from the Consistency Model.
Here is the full stack trace:
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
File <timed exec>:1

File [~\code\python\bayesflow\examples\..\bayesflow\approximators\continuous_approximator.py:114](http://localhost:8888/lab/tree/examples/~/code/python/bayesflow/bayesflow/approximators/continuous_approximator.py#line=113), in ContinuousApproximator.fit(self, *args, **kwargs)
    113 def fit(self, *args, **kwargs):
--> 114     return super().fit(*args, **kwargs, adapter=self.adapter)

File [~\code\python\bayesflow\examples\..\bayesflow\approximators\approximator.py:82](http://localhost:8888/lab/tree/examples/~/code/python/bayesflow/bayesflow/approximators/approximator.py#line=81), in Approximator.fit(self, dataset, simulator, **kwargs)
     80     mock_data = dataset[0]
     81     mock_data = keras.tree.map_structure(keras.ops.convert_to_tensor, mock_data)
---> 82     self.build_from_data(mock_data)
     84 return super().fit(dataset=dataset, **kwargs)

File [~\code\python\bayesflow\examples\..\bayesflow\approximators\approximator.py:23](http://localhost:8888/lab/tree/examples/~/code/python/bayesflow/bayesflow/approximators/approximator.py#line=22), in Approximator.build_from_data(self, data)
     22 def build_from_data(self, data: dict[str, any]) -> None:
---> 23     self.compute_metrics(**data, stage="training")
     24     self.built = True

File [~\code\python\bayesflow\examples\..\bayesflow\approximators\continuous_approximator.py:100](http://localhost:8888/lab/tree/examples/~/code/python/bayesflow/bayesflow/approximators/continuous_approximator.py#line=99), in ContinuousApproximator.compute_metrics(self, inference_variables, inference_conditions, summary_variables, stage)
     97     else:
     98         inference_conditions = keras.ops.concatenate([inference_conditions, summary_outputs], axis=-1)
--> 100 inference_metrics = self.inference_network.compute_metrics(
    101     inference_variables, conditions=inference_conditions, stage=stage
    102 )
    104 loss = inference_metrics.get("loss", keras.ops.zeros(())) + summary_metrics.get("loss", keras.ops.zeros(()))
    106 inference_metrics = {f"{key}/inference_{key}": value for key, value in inference_metrics.items()}

File [~\code\python\bayesflow\examples\..\bayesflow\networks\consistency_models\consistency_model.py:252](http://localhost:8888/lab/tree/examples/~/code/python/bayesflow/bayesflow/networks/consistency_models/consistency_model.py#line=251), in ConsistencyModel.compute_metrics(self, x, conditions, stage)
    251 def compute_metrics(self, x: Tensor, conditions: Tensor = None, stage: str = "training") -> dict[str, Tensor]:
--> 252     base_metrics = super().compute_metrics(x, conditions=conditions, stage=stage)
    254     # The discretization schedule requires the number of passed training steps.
    255     # To be independent of external information, we track it here.
    256     if stage == "training":

File [~\code\python\bayesflow\examples\..\bayesflow\networks\inference_network.py:45](http://localhost:8888/lab/tree/examples/~/code/python/bayesflow/bayesflow/networks/inference_network.py#line=44), in InferenceNetwork.compute_metrics(self, x, conditions, stage)
     43     xz_shape = keras.ops.shape(x)
     44     conditions_shape = None if conditions is None else keras.ops.shape(conditions)
---> 45     self.build(xz_shape, conditions_shape=conditions_shape)
     47 metrics = {}
     49 if stage != "training" and any(self.metrics):
     50     # compute sample-based metrics

File [~\AppData\Local\miniconda3\envs\bf\Lib\site-packages\keras\src\layers\layer.py:225](http://localhost:8888/lab/tree/examples/~/AppData/Local/miniconda3/envs/bf/Lib/site-packages/keras/src/layers/layer.py#line=224), in Layer.__new__.<locals>.build_wrapper(*args, **kwargs)
    223 with obj._open_name_scope():
    224     obj._path = current_path()
--> 225     original_build_method(*args, **kwargs)
    226 # Record build config.
    227 signature = inspect.signature(original_build_method)

File [~\code\python\bayesflow\examples\..\bayesflow\networks\consistency_models\consistency_model.py:160](http://localhost:8888/lab/tree/examples/~/code/python/bayesflow/bayesflow/networks/consistency_models/consistency_model.py#line=159), in ConsistencyModel.build(self, xz_shape, conditions_shape)
    158 for i, n in enumerate(unique_n):
    159     disc = self._discretize_time(n)
--> 160     discretized_times[i, : len(disc)] = disc
    161     discretization_map[n] = i
    162 # Finally, we convert the vectors to tensors

File [~\AppData\Local\miniconda3\envs\bf\Lib\site-packages\torch\_tensor.py:1151](http://localhost:8888/lab/tree/examples/~/AppData/Local/miniconda3/envs/bf/Lib/site-packages/torch/_tensor.py#line=1150), in Tensor.__array__(self, dtype)
   1149     return self.numpy()
   1150 else:
-> 1151     return self.numpy().astype(dtype, copy=False)

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

Thanks for reporting! I think the fix in #232 will solve this specific error, I will later test whether there are other CUDA-specific errors in that code.

I have tested the notebook on a GPU, this problem seems to be resolved. There is still a problem regarding the data adapter, but I will open a different issue for this.

authors: sjedhoff vpratz

repo: bayesflow-org/bayesflow


text:
Add unit tests for actions

#47

@nolleto check this PR instead of #49

repo: bayesjs/bayesjs-editor


text:
oci_push won't work when cross compiling.

See https://github.com/aspect-build/bazel-lib/issues/747

I'm sorry, this isn't enough of an issue report. I can't tell what oci_push is doing or what you expect it to do.

authors: BoleynSu alexeagle


text:
feat: add rules_diff@1.0.0-alpha.3

Brings two rules:

diff_file_test
diff_directory_test

Uses diff from ape so is hermetic and consistent across operating systems, even Windows.
Negates the non-hermetic-ness of bazel_skylib#diff_test that uses diff from the system.
A new module for diff related rules makes sense, in the future we may want to enable a three file comparison rule with diff3, byte-by-byte comparison with cmp or other possible differencing rules.
This module also exposes the hermetic toolchains for use in other modules:

@rules_diff//diff/toolchain/diff:type
@rules_diff//diff/toolchain/diff3:type
@rules_diff//diff/toolchain/sdiff:type
@rules_diff//diff/toolchain/cmp:type

At this time, we're in alpha as the rules need to be fleshed out and tested in more situations. For example, we are not fully testing with all possible combinations of runfiles.

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

authors: bazel-io mattyclarkson

repo: bazelbuild/bazel-central-registry


text:
bump platforms to latest.

Force the integration test (stardoc and packaging) to run with bazel 7.0.0.
Bazel at head seems to have broken --noenable_bzlmod in some cases. See #808.
This also bumps platforms to the latest, but that was a red herring from the error message in the underlying problem

Whoopie.  CI is green again.


text:
Add scrooge toolchain

Scrooge toolchain, part of #940
I've grouped deps mostly mechanically, and also glued some of the code together to have less dependency groups. I think it' a perfect time to review grouping, naming and if needed refactor them.

@blorente, @wisechengyi I would appreciate your input!

Thank you for putting this together! I ran out of time today, but will review it by EOD tomorrow.

@ianoc @beala-stripe @andyscott your inputs would be appreciated as well

Does this avoid the host/target deps mixing problem that caused the revert for the protobuf rules?

Does this avoid the host/target deps mixing problem that caused the revert for the protobuf rules?

Probably it doesn't avoid, the question if that's a problem or not. I would appreciate if someone can point this out.

Mixing host/target deps and having both sets of deps on the dependencies for targets is a problem yeah -- bloats all targets by doubling the jars involved, duplicate classes and slows down compilation. We had to revert using deps on the toolchain of the protobuf stuff since it was bad enough to users/experience

one issue related to this was https://github.com/bazelbuild/rules_scala/issues/797

I'm still in the process of trying to use this change with our code, but I noticed something:
If I understand correctly, if I want to express "I want //external:io_bazel_rules_scala/dependency/thrift/scrooge_core to instead be //some/internal/target", I'd need to at least declare a declare_deps_provider for every current one that expresses a dependency on it, so compile_classpath_provider, aspect_compile_classpath_provider and compiler_classpath_provider.
This is because the rules under twitter_scrooge are not toolchain-aware, and therefore they can't just pull the deps they need from a common toolchain.
If this is the case, I think it would be good to make the rules toolchain-aware (would be happy to work on it), and then separate the dependencies to have one provider for each dep, allowing for easy swapping in and out.
This way, I think we'd also avoid mixing host and target deps, as they can pull what they need from the toolchain when building the classpath.

For what it's worth, I think this change as it exists now won't mix the host/target dependencies in the same way as #797, as long as people are careful with which dep providers overwrite.

I'm still in the process of trying to use this change with our code, but I noticed something:
If I understand correctly, if I want to express "I want //external:io_bazel_rules_scala/dependency/thrift/scrooge_core to instead be //some/internal/target", I'd need to at least declare a declare_deps_provider for every current one that expresses a dependency on it, so compile_classpath_provider, aspect_compile_classpath_provider and compiler_classpath_provider.

Yes

This is because the rules under twitter_scrooge are not toolchain-aware, and therefore they can't just pull the deps they need from a common toolchain.
If this is the case, I think it would be good to make the rules toolchain-aware (would be happy to work on it), and then separate the dependencies to have one provider for each dep, allowing for easy swapping in and out.

deps provider is what I call a group of deps. How much granularity and how those groups are used are what need to be designed here. There may be multiple ways to design it: have less groups, but include the same dep into multiple groups, or have fine grained providers for each dep. I think conceptually having 1 to 1 mapping between provider and the dep is less flexible. For example, adding a new dependency will require changes in the rule implementation. BUT, from my expedience, most of the mappings we have rarely change and it's hard to predict how it will change if ever. I believe as a user of the scrooge rules you know better which of these patterns are better for the ruleset.
@blorente feel free to make scrooge rules toolchain aware. Let me know if you want me close this PR.

@blorente I might be misunderstanding your post, was tough to parse the links -- but I think the notion is mixing up host dependencies vs compile dependencies. Its not good to export the scrooge compiler but the issue isn't that its the scrooge compiler coming, its dependencies from the host toolchain (since the scrooge compiler can exist in both the host and target toolchains).

I think we have two options with this toolchain:

Do not merge and wait until toolchains fully support configuration transitions (not clear when)
Merge, for folks that need transitions, they can get them with bazel 3.5.0 with a flag --incompatible_override_toolchain_transition

Other alternatives welcome! Can we agree on which option we go? I am personally biased towards option 2.

Personally, I'm okay with option 2. As it stands, after bdc6952, this PR is an improvement over the previous version of the code, and while it complicates things for Twitter a bit, it also brings amazing flexibility.

For (2) should we be following https://github.com/bazelbuild/bazel/issues/11584 which seems to suggest using rule options until everyone has migrated and things can be flipped. I believe that would probably limit the splash damage of any change to inside rules_scala and avoid other rules of people's breaking?
Given this can break ~any other rule set if you flip this option from reading the issues on it, I'd be -1 to requiring it in for scrooge without duplicate classes. It makes the usual case a regression. -- but if we can flip it for the rule + add a test to ensure we don't have duplicated classes(the proto test can probably be copied and pasted over is my guess). We would just have the rules require the latest bazel which we've done before.

I think the only reasonable implementation for (2) is to use --incompatible_override_toolchain_transition flag. Otherwise users will be forced to upgrade bazel during the migration. If having flag is too confusing, I think it's worth waiting until new toolchain transitions are enabled by default on bazel.

@liucijus Its not that I think the flag is confusing, but my understanding the flag changes the behavior of all rules and isn't localized. To use the flag you need a recent version of bazel anyway. We've mandated bazel updates before to update the rules. So unless you update bazel you'd have a regression in performance/size of outputs, and possibly some correctness issues as was seen in the scalapb, which feel like bigger issues than a version bump?  to me anyway

(personally I think requiring bazel 3.5 isn't a big deal, eventually ~everyone is going to have to do this in order to follow the migration guideline of this feature I believe)

I'm ok with requiring 3.5 given we can clearly articulate the need (and it sounds that here we can)

I've thought about it some more (thanks @liucijus for clarifying some more on the various options) and I think @ianoc's approach is best. Let's require 3.5 and add the incompatible_use_toolchain_transition to the rule definition.
I understand we'll need to break people again when incompatible_use_toolchain_transition will be removed/renamed/whatever and I think that price is worth it (compared to requiring people to turn on the flag for every rule set)

I have added a test to verify if there are host deps in the classpath

I think this PR is ready to be merged

Just to clarify, I haven't added incompatible_use_toolchain_transition = True to rules, because I was unable to reproduce a problem with a test: https://github.com/bazelbuild/rules_scala/pull/1116/commits/6b71671d5f8650c44cc6a7868c5011f7add64b6a

Thanks. Sounds reasonable.
@blorente ill merge this on Friday in case you want to try and show the need for the attribute with a failing test by then

Sorry for not responding quicker, I was on PTO and didn't have a chance to look at it. This PR looks good, thanks @liucijus for adding the test!

authors: blorente ianoc ittaiz liucijus


text:
rubocop v0.29.1 crashed when auto-correct hash with double splat (**)

Given this file:
Hash(foo: 'bar',
  **extra_params
)

when you run: bundle exec rubocop -DR --auto-correct, will yield errors:
$ rcc null/example.rb
Inspecting 1 file

0 files inspected, no offenses detected
undefined method `loc' for nil:NilClass
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/cop/style/align_hash.rb:239:in `block in autocorrect'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/cop/corrector.rb:46:in `call'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/cop/corrector.rb:46:in `block in rewrite'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/cop/corrector.rb:45:in `each'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/cop/corrector.rb:45:in `rewrite'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/cop/team.rb:83:in `autocorrect_one_cop'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/cop/team.rb:65:in `autocorrect'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/cop/team.rb:35:in `inspect_file'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/runner.rb:129:in `inspect_file'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/runner.rb:100:in `block in do_inspection_loop'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/runner.rb:94:in `loop'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/runner.rb:94:in `do_inspection_loop'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/runner.rb:72:in `process_file'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/runner.rb:53:in `block in inspect_files'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/runner.rb:51:in `each'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/runner.rb:51:in `inspect_files'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/runner.rb:30:in `run'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/lib/rubocop/cli.rb:24:in `run'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/bin/rubocop:13:in `block in <top (required)>'
/Users/Juan/.rubies/ruby-2.2.2/lib/ruby/2.2.0/benchmark.rb:303:in `realtime'
/Users/Juan/.gem/ruby/2.2.2/gems/rubocop-0.29.1/bin/rubocop:12:in `<top (required)>'
/Users/Juan/.gem/ruby/2.2.2/bin/rubocop:23:in `load'
/Users/Juan/.gem/ruby/2.2.2/bin/rubocop:23:in `<main>'

And for some reason, I cannot upgrade my rubocop (locked at v0.29.1) :sweat:
Any pointers on how could I fix this? Thanks!

The problem is still present on the current master.

repo: bbatsov/rubocop


text:
support-multiple-themes-android-app-part-2

推荐理由 : app中支持多主题
原文链接 : http://www.hidroh.com/2015/02/25/support-multiple-themes-android-app-part-2/

@chaossss  你的菜啊~

好哒

authors: bboyfeiyu chaossss

repo: bboyfeiyu/android-tech-frontier


text:
NN optimization algorithm

Implement NN optimization.
AC:

use NNPropagation
implement NN training

Done.

Where code? :D
You can, and actually should, tag either this issue in the commit message eg like "fixes #x" where x is issue number, or manually
See https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue

authors: micdol pkomoro

repo: bbrozyna/light-propagation


text:
Landing page - internal users

User Story
As an analyst, I want a portal website so that I can review applications.
Acceptance Criteria
Landing page url: www.connectingcommunitiesbc.ca/analyst
"Login with IDIR" button leads directly to IDIR login page.
Design
Landing Page
https://www.figma.com/file/nhOquOVmWD1P3BxEY0KIh5/CCBC-Intake?node-id=5431%3A23182

Related to [ticket #26]? (https://app.zenhub.com/workspaces/ccbc---delivery-board-61c0c1204c8bcb001491c5f3/issues/bcgov/conn-ccbc-portal/26)

Related to [ticket #26]?

Would definitely be a pre-requisite before this, since we wouldn't want to deploy with this being accessible to any auth user.

Should this ticket and #26 be merged? The "Login with IDIR" button is in the acceptance criteria

Merging with #26 and closing this

authors: AntBush matthieu-foucault zoeyli-46

repo: bcgov/CONN-CCBC-portal


text:
Donations: Change title for Step 2 in CRA list option | PG-bugfix-0012

Donations: Change title for Step 2 in CRA list option | Ticket
Change title on Step 2 Donation Flow annual campaign

Could you please update the migration checklist ? I need that for migration planning.
Thank you.
done

repo: bcgov/PECSF


text:
UX/UI for Ignore Restriction - Bypass List

User Story
As a Ministry user, I need the ability to Ignore restrictions through the interface, as well as see some limited historical details of any ignored restrictions
Acceptance Criteria

[x] Build a page for when the Ministry selects an application and selects "Restrictions Management" from the left panel.
[x] Applications are eligible for this ignore restriction bypass once they have been submitted and have an application number.
[ ] Ignore the content section in the mockup below, do not include.
[ ] Change the heading to sentence case "History of bypassed restrictions" to align with other pages.

Technical

[x] Not available for Public Institutions.
[x] Create a new link in the left menu named "Restrictions Management".

[x] Disable the link for draft applications.

[x] Create the new list "History of Bypassed Restrictions" (use Vuetify table).

[x] No server-side pagination needed.
[x] Order the list DESC by creation date (most recent entry on the top).
[x] "Restriction type" and "Restriction code" from sims.restrictions, and "Restriction status" (is_active) populated from sims.student_restrictions. Use the same formatting and chip status from the restrictions page.
[x] Buttons related to modals present in the #3691 ticket should be present but disabled.

[x] Suggested API endpoints

GET aest/application-restriction-bypass/application/:applicationId

[x] E2E tests

Get bypasses

Should get a list of restrictions bypasses when there are restrictions bypassed for a Student Application.

Supporting Mockups
Ministry 'Application Restrictions' Page

@CarlyCotton @Joshua-Lakusta Let me know if OK with you, and we can move straight to Lather.

@HRAGANBC How does the ministry user access that first "Application Restriction Management" screen?

@CarlyCotton Added following note next to the first mockup - please dont make me adjust the mockups themselves :)
Ministry should be able to access this page by selecting an application, and then selecting "Application Restriction Management" from the left-hand panel along with "Assessments"; "Parent 1 Info"; "Parent 2 Info", etc...

@lewischen-aot Based on questions raised to me re content, I've added two ACs to clarify the content expectations of the page:

[ ] Ignore the content section in the mockup below, do not include.
[ ] Change the heading to sentence case "History of bypassed restrictions" to align with other pages.

FYI @dheepak-aot @Joshua-Lakusta

@CarlyCotton there was a question raised by @andrewsignori-aot in PR on the data that is displayed in the Restriction type column of the data table. The question is, for the Restriction type column are we expected to map the restriction category? as per the image, because the restriction type according to us is Federal | Provincial

@dheepak-aot Can we use restriction_category for that column? It tells us if it's Federal (which is critical that we know about) and a little more info about the type of Provincial restriction.
FYI @andrewsignori-aot @lewischen-aot

Thanks @CarlyCotton for adding the additional ACs, and we certainly can use restriction_category for column "Restriction Type" to give a little more info about the type of Provincial restriction.

@lewischen-aot I've added some biz ACs based on some conversation today.
FYI @andrewsignori-aot @Joshua-Lakusta

authors: CarlyCotton HRAGANBC JasonCTang dheepak-aot lewischen-aot

repo: bcgov/SIMS


text:
Keyboard for PIN Entry after phone sleep not showing and cannot unlock wallet

Description of problem
When the What is a Contact screen is displayed from a proof request or a credential offer (and may be other areas of the app that uses that type of modal?), when you let the wallet sleep long enough to have to unlock with the PIN, you can't get the keyboard to display to enter said PIN.
Expected behavior
Able to enter PIN
Steps to reproduce
Get a Credential Offer
on the offer screen, in the Added to contacts box click the [i] info button
The What is a contact screen is displayed.
Put the phone down and let is sit a while so that you wallet locks and requires a PIN entry
Open the phone.
The wallet will go to the PIN entry screen but you will not be able to activate the keyboard to enter the PIN.
Screenshots and/or log output

Environment

[ ] Occurs on Android
[x] Occurs on iOS

Build #: 978
Android Device Model:
iOS Device Model: iPhone 6s, iOS 15.7.1
Workaround
Close the wallet and reopen.
Severity

[ ] High
[x] Medium
[ ] Low

@nodlesh Are you able to confirm this issue with the new workflow. When I scan a QR code I go to the Chat screen now.

I'll check again, but it happens from the proof request or credential offer, is the "What is a Contact" link gone from the request and offer?

This is still an issue with build 1071.

Just an update. The issue exists on both the app store version and our latest build. Only seems to happen on iOS. Happens whenever the wallet sleeps with a modal open (which includes the 'What are Contacts' modal). I also noticed that the 'You've been logged out' modal does not appear or need to be dismissed like it usually does when the app is woken up.

This is fixed in 1094.

authors: bryce-mcmath jleach nodlesh

repo: bcgov/bc-wallet-mobile


text:
Populate the OCA Source file for the Person credential

Given that we are close to agreement on the Person credential, it would be good to get going on the OCA implementation in the Bifold Wallet.  To start, we need to have an OCA Source file for the credential that we can process.
I've created a start for the OCA Source file here.
Please work on the english elements of the spreadsheet.  For the French portion, I recommend using a formula that sticks "FR-" in front of the english values.
If you know who on the Quebec team that could help with the translation, please do so and share the document with them. If not, please let me know and I'll find some help.
Note: As soon as I can, I'll provide details, guidance on how to test the OCA Source data -- e.g. convert the OCA Source into an OCA Bundle and review the results on screen.
Bonus points:

Create a second spreadsheet that is the starting point for future OCA Source files, with instructions.
Create another OCA Source file for the credential that we are using temporarily for those that are "part of the program" -- the one that gets the person the Person credential.

Note that I'm asking @alexgmetcalf to work on this sooner than later to kickstart this OCA effort.  That is not following the Scrum methodology the team is following. Feel free to adjust the timing of this work as appropriate.

Spreadsheet updated with draft content.

We've been contributing some translations for the Bifold project so we had a go at this. Since we don't have write permission I've created a copy and attached the .xlsx file here. All columns have been translated at the exception of the Attribute Name.
OCA Source Pan-Canadian Person Schema.xlsx

@alexgmetcalf @PatStLouis -- I've updated the description of this task to give details of how you can test and revise the spreadsheet. Note that I've used a new Google Sheet as the source so that we can collaborate on the work. The Google Sheet should be the source for the eventual OCA file we create.
As noted above, the key to the exercise is making sure that what we're putting into the spreadsheet will actually look good in the wallet, and to note anything that we need that is missing from the OCA file.

authors: PatStLouis alexgmetcalf swcurran


text:
DESCW-911 Dynamic / custom pattern interface

Adds a custom post type for "Custom Patterns"
Registers any categorised Custom Pattern post type as patterns within the pattern picker according to the category

repo: bcgov/bcgov-wordpress-block-theme


text:
Telemetry UI Updates

Description of Changes

Updated styling of Add telemetry device dialog
Changed edit telemetry details to render each device as a card
Minor changes to Individual animals nomenclature
Styling improvements on individual animals table
Styling improvements on general animal form
Minor bug fix in /deployments api

I add a single animal to a survey.
When the survey page loads now I'm getting the following console error:
Warning: Encountered two children with the same key, `taxon`. Keys should be unique so that components maintain their identity across updates. Non-unique keys may cause children to be duplicated and/or omitted — the behavior is unsupported and could change in a future version.
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
GridColumnHeadersInner@http://localhost:7107/static/js/bundle.js:128052:9
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
GridColumnHeaders@http://localhost:7107/static/js/bundle.js:127158:9
GridColumnsHeaders@http://localhost:7107/static/js/bundle.js:123752:9
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
./node_modules/@mui/x-data-grid/components/containers/GridMainContainer.js/GridMainContainer<@http://localhost:7107/static/js/bundle.js:128715:100
GridBody@http://localhost:7107/static/js/bundle.js:124781:7
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
GridRoot@http://localhost:7107/static/js/bundle.js:128866:100
GridContextProvider@http://localhost:7107/static/js/bundle.js:133348:29
DataGrid@http://localhost:7107/static/js/bundle.js:121736:84
CustomDataGrid@http://localhost:7107/static/js/bundle.js:17329:19
SurveyAnimalsTable@http://localhost:7107/static/js/bundle.js:49264:28
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
Box@http://localhost:7107/static/js/bundle.js:118389:72
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
Box@http://localhost:7107/static/js/bundle.js:118389:72
SurveyAnimals@http://localhost:7107/static/js/bundle.js:44226:81
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
Paper@http://localhost:7107/static/js/bundle.js:103888:83
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
Box@http://localhost:7107/static/js/bundle.js:118389:72
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
Grid@http://localhost:7107/static/js/bundle.js:97032:87
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
Grid@http://localhost:7107/static/js/bundle.js:97032:87
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
Box@http://localhost:7107/static/js/bundle.js:118389:72
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
Container@http://localhost:7107/static/js/bundle.js:117455:32
SurveyPage@http://localhost:7107/static/js/bundle.js:46042:73
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
Box@http://localhost:7107/static/js/bundle.js:118389:72
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
Box@http://localhost:7107/static/js/bundle.js:118389:72
ProjectsLayout@http://localhost:7107/static/js/bundle.js:60594:19
Route@http://localhost:7107/static/js/bundle.js:274891:29
RouteWithTitle@http://localhost:7107/static/js/bundle.js:63199:7
Switch@http://localhost:7107/static/js/bundle.js:275060:29
SurveyRouter
ObservationsContextProvider@http://localhost:7107/static/js/bundle.js:19543:93
SurveyContextProvider@http://localhost:7107/static/js/bundle.js:20004:85
Route@http://localhost:7107/static/js/bundle.js:274891:29
CheckIfUserHasProjectRole@http://localhost:7107/static/js/bundle.js:16904:7
WaitForProjectParticipantInfo@http://localhost:7107/static/js/bundle.js:16749:84
ProjectRoleRouteGuard@http://localhost:7107/static/js/bundle.js:16579:7
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
Box@http://localhost:7107/static/js/bundle.js:118389:72
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
Box@http://localhost:7107/static/js/bundle.js:118389:72
ProjectsLayout@http://localhost:7107/static/js/bundle.js:60594:19
Route@http://localhost:7107/static/js/bundle.js:274891:29
RouteWithTitle@http://localhost:7107/static/js/bundle.js:63199:7
ProjectContextProvider@http://localhost:7107/static/js/bundle.js:19881:85
ProjectAuthStateContextProvider@http://localhost:7107/static/js/bundle.js:19729:85
Route@http://localhost:7107/static/js/bundle.js:274891:29
RouteWithTitle@http://localhost:7107/static/js/bundle.js:63199:7
Switch@http://localhost:7107/static/js/bundle.js:275060:29
ProjectsRouter
CodesContextProvider@http://localhost:7107/static/js/bundle.js:19055:85
Route@http://localhost:7107/static/js/bundle.js:274891:29
CheckIfAuthenticatedUser@http://localhost:7107/static/js/bundle.js:16779:56
WaitForKeycloakToLoadUserInfo@http://localhost:7107/static/js/bundle.js:16715:39
CheckForKeycloakAuthenticated@http://localhost:7107/static/js/bundle.js:16686:56
AuthenticatedRouteGuard@http://localhost:7107/static/js/bundle.js:16616:7
main
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
Box@http://localhost:7107/static/js/bundle.js:118389:72
DialogContextProvider@http://localhost:7107/static/js/bundle.js:19367:98
div
./node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js/withEmotionCache/<@http://localhost:7107/static/js/bundle.js:65443:66
Box@http://localhost:7107/static/js/bundle.js:118389:72
BaseLayout@http://localhost:7107/static/js/bundle.js:60464:19
Route@http://localhost:7107/static/js/bundle.js:274891:29
RouteWithTitle@http://localhost:7107/static/js/bundle.js:63199:7
Switch@http://localhost:7107/static/js/bundle.js:275060:29
AppRouter@http://localhost:7107/static/js/bundle.js:213:82
Router@http://localhost:7107/static/js/bundle.js:274563:30
BrowserRouter@http://localhost:7107/static/js/bundle.js:274078:35
AuthStateContextProvider@http://localhost:7107/static/js/bundle.js:18966:95
KeycloakProvider@http://localhost:7107/static/js/bundle.js:161152:47
ConfigContextProvider@http://localhost:7107/static/js/bundle.js:19216:78
ThemeProvider@http://localhost:7107/static/js/bundle.js:115989:7
ThemeProvider@http://localhost:7107/static/js/bundle.js:117623:7
ThemeProvider@http://localhost:7107/static/js/bundle.js:114273:9
App

Also, I'm getting a 503 error from the http://localhost:6107/api/project/1/survey/1/deployments endpoint when the survey page loads.

authors: JeremyQuartech NickPhura

repo: bcgov/biohubbc


text:
Bug/12321 new

Issue #: /bcgov/entity###
https://github.com/bcgov/entity/issues/12321
Description of changes:
Added validation on click on "file and save"
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the bcrs-entities-create-ui license (Apache 2.0).

update npm version and commit package-lock

authors: ritvick shabeeb-aot

repo: bcgov/business-create-ui


text:
Columns in the REPORTING_ACTIVITY table have meaningful metadata

Relates to #1455
The comments on the columns of our database tables are potentially lacking in context. Column comments probably don't need to be as detailed as table comments (#1455), but should still provide a reader from outside the dev team (new dev, external DBA) with enough context to understand the data and its relationships.
Some columns are pretty self explanatory & require little extra context.
examples:
id: unique id for the <object> table. Primary key.
created_by: ID of the user who created the record. Foreign key to erc.user
created_at: Timestamp with timezone of when the record was created
Other columns need more context. Mostly the ones that are domain/dataset specific:
Examples from CIIP:

ciip.gas.is_ciip_emission: "'boolean column indicates whether this record should be included when totalling emissions in the context of CIIP (CleanBC Industrial Incentive Program)'
ciip.application.swrs_report_id: 'The swrs id of the swrs report (swrs.report.swrs_report_id). This id is the id assigned by SWRS (Single Window Reporting System) when the report was filed federally. This id is different from report_id (swrs.report.id) as that ID is generated by our ETL process'

Tips:

Write out acronym definitions
Define relationships (foreign key, composite key...)
Describe what the column is used for if it isn't likely to be clear to someone unfamiliar with the dataset
Don't use jargon that would someone outside the domain would be unfamiliar with

AC:

[ ] Assess column metadata
[ ] Update column metadata for columns that need more context
[ ] No columns have blank metadata

Another tag for @dleard - is this issue being addressed by the work we're doing in Reporting?

We can close this one actually. I wrote more meaningful metadata for this table's columns when I renamed it a while ago from 'reporting_activity' to 'activity' :)

authors: dleard patriciarussellCAS

repo: bcgov/cas-registration


text:
Release process setup and documented

Description:
As a developer, I want to have a release process implemented and documented, so that I can deploy releases of the Reporting app
Implement release-it
Document release process
Acceptance Criteria:
Given I am a developer
When I want to cut a release
Then I have the step-by-step documentation
And following it creates a release
Development Checklist:

[ ] Checklist item
[ ] Checklist item
[ ] Checklist item
[ ] Meets the DOD

Definition of Ready (Note: If any of these points are not applicable, mark N/A)

[ ] User story is included
[ ] User role and type are identified
[ ] Acceptance criteria are included
[ ] Wireframes are included (if required)
[ ] Design / Solution is accepted by Product Owner
[ ] Dependencies are identified (technical, business, regulatory/policy)
[ ] Story has been estimated (under 13 pts)

Definition of Done (Note: If any of these points are not applicable, mark N/A)

[ ] Acceptance criteria are tested by the CI pipeline
[ ] UI meets accessibility requirements
[ ] Configuration changes are documented, documentation and designs are updated
[ ] Passes code peer-review
[ ] Passes QA of Acceptance Criteria with verification in Dev and Test
[ ] Ticket is ready to be merged to main branch
[ ] Can be demoed in Sprint Review
[ ] Bugs or future work cards are identified and created
[ ] Reviewed and approved by Product Owner

Notes:

Closing, this is unnecessary since we're not publishing packages

repo: bcgov/cas-reporting


text:
As an Industrial Reporter, I want to download my uploaded attachments so that I can preview what I uploaded

Description:
As an Industrial Reporter, I want to download my uploaded attachments so that I can preview what I uploaded and make sure it is the correct attachment.
Acceptance Criteria:
Given I have uploaded an attachment
When I click on the attachment
Then the attachment will download
attn: @pbastia should the attachment download to the computer, OR can it open in a new tab? As a user it might be annoying that I have a duplicate file now that I have to delete, but sometimes when I click an attachment it pops it open in my browser in a new tab.
Development Checklist:

[ ] Checklist item
[ ] Checklist item
[ ] Checklist item
[ ] Meets the DOD

Definition of Ready (Note: If any of these points are not applicable, mark N/A)

[ ] User story is included
[ ] User role and type are identified
[ ] Acceptance criteria are included
[ ] Wireframes are included (if required)
[ ] Design / Solution is accepted by Product Owner
[ ] Dependencies are identified (technical, business, regulatory/policy)
[ ] Story has been estimated (under 13 pts)

Definition of Done (Note: If any of these points are not applicable, mark N/A)

[ ] Acceptance criteria are tested by the CI pipeline
[ ] UI meets accessibility requirements
[ ] Configuration changes are documented, documentation and designs are updated
[ ] Passes code peer-review
[ ] Passes QA of Acceptance Criteria with verification in Dev and Test
[ ] Ticket is ready to be merged to main branch
[ ] Can be demoed in Sprint Review
[ ] Bugs or future work cards are identified and created
[ ] Reviewed and approved by Product Owner

Blocked By/Blocking
Notes:

API
The API side of that can be done very easily by returning a FileResponse:
@router.get(
    "report-version/{report_version_id}/attachments/{file_id}",
    response={200: Any, custom_codes_4xx: Message},
    tags=EMISSIONS_REPORT_TAGS,
    description="""Downloads a file attached to the report""",
    auth=authorize("approved_industry_user"),
)
def download_report_attachment_file(request: HttpRequest, report_version_id: int, file_id: int):

    report_attachment = ReportAttachment.objects.get(id=file_id, report_version_id=report_version_id)

    return FileResponse(
        report_attachment.attachment.open(), as_attachment=True, filename=report_attachment.attachment_name
    )

NextJS
The NextJS side is a bit more complex. There are a few options:

(Preferred) API passthrough can be done with a simple rule in the rewrite() in next.config.js, but we'd have to figure out how to add the authentication in there (or generate one-time, single-use URLs which would be its own set of problems)
Streaming through a server action manually can be possible, but it seems like we'd have to prepare the request on the server?

Download: https://dev.to/nombrekeff/download-file-from-blob-21ho
https://developer.mozilla.org/en-US/docs/Web/API/Streams_API/Using_readable_streams

We could also build an ad-hoc API endpoint on the Next server pod

https://nextjs.org/docs/app/building-your-application/routing/route-handlers#streaming

Frontend
Just position the href properly (if Next/API rewrites are properly setup) or add a server action with an onClick handler


text:
Common Cloud Components (Compute and Storage) PIA

Describe the issue
Complete a PIA for the common cloud services (grouped into higher level service categories) that focuses on AWS.
The scope of this PIA covers the following:
•	The landing zones created for any cloud infrastructure and platform;
•	The vendor neutral service categories outlined above that ministry developers may use when building applications; and
•	Amazon Web Services (AWS) Infrastructure as a Service (IaaS) and Platform as a Service (PaaS) for the landing zone.
Which Sprint Priority is this issue related to?
This is an Epic.
Definition of done
The PIA is drafted, reviewed by relevant stakeholders and signed by all signatories.

All tasks associated with this Epic are complete. The PIA is completely signed and the file is closed.

repo: bcgov/cloud-pathfinder-business-process