open-source issueshttps://git.panter.ch/groups/open-source/-/issues2024-03-28T01:11:01+01:00https://git.panter.ch/open-source/google-signin-client/-/issues/1Dependency Dashboard2024-03-28T01:11:01+01:00Panter User for API accessDependency DashboardThis issue lists Renovate updates and detected dependencies. Read the [Dependency Dashboard](https://docs.renovatebot.com/key-concepts/dashboard/) docs to learn more.
## Repository problems
Renovate tried to run on this repository, but...This issue lists Renovate updates and detected dependencies. Read the [Dependency Dashboard](https://docs.renovatebot.com/key-concepts/dashboard/) docs to learn more.
## Repository problems
Renovate tried to run on this repository, but found these problems.
- WARN: Detected empty commit - aborting git push
## Other Branches
These updates are pending. To force MRs open, click the checkbox below.
- [ ] <!-- other-branch=renovate/lock-file-maintenance -->chore(deps): lock file maintenance
## Detected dependencies
<details><summary>cargo</summary>
<blockquote>
<details><summary>Cargo.toml</summary>
- `async_cell 0.2.2`
- `js-sys 0.3.69`
- `log 0.4.21`
- `wasm-bindgen 0.2.92`
- `web-sys 0.3.69`
</details>
</blockquote>
</details>
<details><summary>gitlabci</summary>
<blockquote>
<details><summary>.gitlab-ci.yml</summary>
- `docker.io/library/rust 1.77.0`
- `docker.io/library/rust 1.77.0`
- `renovate/renovate 37.273.0`
</details>
</blockquote>
</details>https://git.panter.ch/open-source/endpoint-security-dashboard/-/issues/1Dependency Dashboard2024-03-28T01:20:44+01:00Panter User for API accessDependency DashboardThis issue lists Renovate updates and detected dependencies. Read the [Dependency Dashboard](https://docs.renovatebot.com/key-concepts/dashboard/) docs to learn more.
## Open
These updates have all been created already. Click a checkbo...This issue lists Renovate updates and detected dependencies. Read the [Dependency Dashboard](https://docs.renovatebot.com/key-concepts/dashboard/) docs to learn more.
## Open
These updates have all been created already. Click a checkbox below to force a retry/rebase of any.
- [ ] <!-- rebase-branch=renovate/reqwest-tracing-0.x -->[fix(deps): update rust crate reqwest-tracing to 0.4.8](!480)
- [ ] <!-- rebase-branch=renovate/yew-nested-router-0.x -->[fix(deps): update rust crate yew-nested-router to 0.6.3](!256)
- [ ] <!-- rebase-branch=renovate/reqwest-0.x -->[fix(deps): update rust crate reqwest to 0.12.2](!497)
- [ ] <!-- rebase-branch=renovate/lock-file-maintenance -->[chore(deps): lock file maintenance](!500)
- [ ] <!-- rebase-all-open-prs -->**Click on this checkbox to rebase all open MRs at once**
## Detected dependencies
<details><summary>cargo</summary>
<blockquote>
<details><summary>backend-artifact/Cargo.toml</summary>
- `actix-web 4.5.1`
- `actix-web-static-files 4.0.1`
- `static-files 0.2.3`
- `async-graphql 7.0.3`
- `async-graphql-actix-web 7.0.3`
- `env_logger 0.11.3`
- `log 0.4.21`
- `prometheus 0.13.3`
- `actix-web-prometheus 0.1.2`
- `thiserror 1.0.58`
- `actix-4-jwt-auth 1.2.0`
- `serde 1.0.197`
- `serde_json 1.0.115`
- `static-files 0.2.3`
</details>
<details><summary>backend-impl/Cargo.toml</summary>
- `async-graphql 7.0.3`
- `lazy_static 1.4.0`
- `serde 1.0.197`
- `log 0.4.21`
- `config 0.14.0`
- `google-sheets4 5.0.4`
- `thiserror 1.0.58`
- `reqwest-tracing 0.4.7`
- `tokio 1.36.0`
- `hyper 1.2.0`
- `tower 0.4.13`
- `tower-http 0.5.2`
- `tracing 0.1.40`
</details>
<details><summary>frontend/Cargo.toml</summary>
- `wasm-bindgen 0.2.92`
- `wasm-bindgen-futures 0.4.42`
- `yew 0.21.0`
- `yew-nested-router 0.6.2`
- `patternfly-yew 0.5.6`
- `graphql_client 0.14.0`
- `reqwest 0.11.27`
- `serde 1.0.197`
- `serde_json 1.0.115`
- `log 0.4.21`
- `wasm-logger 0.2.0`
- `web-sys 0.3.69`
- `thiserror 1.0.58`
- `wasm-timer 0.2.5`
- `tokio 1.36.0`
- `jwt 0.16.0`
- `lazy_static 1.4.0`
- `console_error_panic_hook 0.1.7`
- `regex 1.10.4`
- `gloo 0.11.0`
- `google-signin-client 0.1.3`
- `anyhow 1.0.81`
</details>
</blockquote>
</details>
<details><summary>dockerfile</summary>
<blockquote>
<details><summary>Dockerfile</summary>
- `docker.io/library/rust 1.77.0`
</details>
<details><summary>Dockerfile.compiletest</summary>
- `node 21.7.1`
- `docker.io/library/rust 1.77.0`
</details>
</blockquote>
</details>
<details><summary>gitlabci</summary>
<blockquote>
<details><summary>.gitlab-ci.yml</summary>
- `node 21.7.1`
- `docker.io/library/rust 1.77.0`
- `gcr.io/kaniko-project/executor v1.22.0-debug`
- `docker.io/library/rust 1.77.0`
- `renovate/renovate 37.273.0`
</details>
</blockquote>
</details>
<details><summary>npm</summary>
<blockquote>
<details><summary>frontend/node/package.json</summary>
- `@fortawesome/fontawesome-free ^6.3.0`
- `@patternfly/patternfly ^5.0.4`
</details>
</blockquote>
</details>https://git.panter.ch/open-source/dependency-track-uploader/-/issues/3Dependency Dashboard2024-03-28T06:46:46+01:00Panter User for API accessDependency DashboardThis issue lists Renovate updates and detected dependencies. Read the [Dependency Dashboard](https://docs.renovatebot.com/key-concepts/dashboard/) docs to learn more.
## Repository problems
Renovate tried to run on this repository, but...This issue lists Renovate updates and detected dependencies. Read the [Dependency Dashboard](https://docs.renovatebot.com/key-concepts/dashboard/) docs to learn more.
## Repository problems
Renovate tried to run on this repository, but found these problems.
- WARN: Detected empty commit - aborting git push
## Other Branches
These updates are pending. To force MRs open, click the checkbox below.
- [ ] <!-- other-branch=renovate/lock-file-maintenance -->chore(deps): lock file maintenance
## Open
These updates have all been created already. Click a checkbox below to force a retry/rebase of any.
- [ ] <!-- rebase-branch=renovate/base64-0.x -->[fix(deps): update rust crate base64 to 0.22.0](!385)
## Detected dependencies
<details><summary>cargo</summary>
<blockquote>
<details><summary>api/Cargo.toml</summary>
- `serde ^1.0.197`
- `serde_derive ^1.0.197`
- `serde_json ^1.0.115`
- `url ^2.5.0`
- `uuid ^1.8.0`
- `log 0.4.21`
- `serde_with 3.7.0`
- `reqwest ^0.12.2`
</details>
<details><summary>cli/Cargo.toml</summary>
- `reqwest 0.12.2`
- `clap 4.5.4`
- `thiserror 1.0.58`
- `tokio 1.36.0`
- `env_logger 0.11.3`
- `base64 0.21.7`
- `log 0.4.21`
- `uuid 1.8.0`
- `serde_json 1.0.115`
</details>
</blockquote>
</details>
<details><summary>dockerfile</summary>
<blockquote>
<details><summary>Dockerfile</summary>
- `cyclonedx/cyclonedx-cli 0.25.0`
</details>
</blockquote>
</details>
<details><summary>gitlabci</summary>
<blockquote>
<details><summary>.gitlab-ci.yml</summary>
- `docker.io/library/rust 1.77.0`
- `gcr.io/kaniko-project/executor v1.22.0-debug`
- `docker.io/library/rust 1.77.0`
- `renovate/renovate 37.273.0`
</details>
</blockquote>
</details>https://git.panter.ch/open-source/dependency-track-uploader/-/issues/1Dependency Dashboard2023-11-02T20:45:02+01:00Stefan BakocsDependency DashboardThis issue lists Renovate updates and detected dependencies. Read the [Dependency Dashboard](https://docs.renovatebot.com/key-concepts/dashboard/) docs to learn more.
This repository currently has no open or pending branches.
## Detect...This issue lists Renovate updates and detected dependencies. Read the [Dependency Dashboard](https://docs.renovatebot.com/key-concepts/dashboard/) docs to learn more.
This repository currently has no open or pending branches.
## Detected dependencies
<details><summary>cargo</summary>
<blockquote>
<details><summary>api/Cargo.toml</summary>
- `serde ^1.0.190`
- `serde_derive ^1.0.190`
- `serde_json ^1.0.108`
- `url ^2.4.1`
- `uuid ^1.5.0`
- `log 0.4.20`
- `reqwest ^0.11.22`
</details>
<details><summary>cli/Cargo.toml</summary>
- `reqwest 0.11.22`
- `clap 4.4.7`
- `thiserror 1.0.50`
- `tokio 1.33.0`
- `env_logger 0.10.0`
- `base64 0.21.5`
- `log 0.4.20`
- `uuid 1.5.0`
- `serde_json 1.0.108`
</details>
</blockquote>
</details>
<details><summary>dockerfile</summary>
<blockquote>
<details><summary>Dockerfile</summary>
- `cyclonedx/cyclonedx-cli 0.25.0`
</details>
</blockquote>
</details>
<details><summary>gitlabci</summary>
<blockquote>
<details><summary>.gitlab-ci.yml</summary>
- `gcr.io/kaniko-project/executor v1.17.0-debug`
</details>
</blockquote>
</details>https://git.panter.ch/open-source/aoz-003/-/issues/476List group offers2023-02-09T09:52:25+01:00Kosta SimandirakisList group offershttps://git.panter.ch/open-source/aoz-003/-/issues/475Create Assignment2023-02-06T15:51:08+01:00Kosta SimandirakisCreate Assignmenthttps://git.panter.ch/open-source/aoz-003/-/issues/474Perf: Assignment edit - GET /assignments/:id/edit2023-02-06T15:52:10+01:00Kaspar Vollenweidervok@panter.chPerf: Assignment edit - GET /assignments/:id/edit[trace-assignments-edit-2023-01-17T211531_0100.log](/uploads/23189ee6b41f5d847ea74d74a2142f96/trace-assignments-edit-2023-01-17T211531_0100.log)
```
GET /assignments/:id/edit
params:
controller: assignments
action: edit
id: '876'
...[trace-assignments-edit-2023-01-17T211531_0100.log](/uploads/23189ee6b41f5d847ea74d74a2142f96/trace-assignments-edit-2023-01-17T211531_0100.log)
```
GET /assignments/:id/edit
params:
controller: assignments
action: edit
id: '876'
duration: 0.56784
Total allocated: 520.34 MB (93300 objects)
Total retained: 287.69 kB (1931 objects)
```https://git.panter.ch/open-source/aoz-003/-/issues/473Perf: Volunteer index - GET /volunteers2023-02-06T20:31:21+01:00Kaspar Vollenweidervok@panter.chPerf: Volunteer index - GET /volunteers[trace-volunteers-index-2023-01-17T210300_0100.log](/uploads/d3f11ac0dbccdaa14b26bc5fb5486967/trace-volunteers-index-2023-01-17T210300_0100.log)
```
GET /volunteers(.:format) volunteers#index
params:
controller: volunteers
action:...[trace-volunteers-index-2023-01-17T210300_0100.log](/uploads/d3f11ac0dbccdaa14b26bc5fb5486967/trace-volunteers-index-2023-01-17T210300_0100.log)
```
GET /volunteers(.:format) volunteers#index
params:
controller: volunteers
action: index
duration: 1.35086
Total allocated: 113.04 MB (978931 objects)
Total retained: 23.48 MB (44576 objects)
```
Quite a bit of performance and memory improvement can be achieved quickly [in the volunteers controller](https://git.panter.ch/open-source/aoz-003/-/blob/develop/app/controllers/volunteers_controller.rb#L8):
```ruby
@q = policy_scope(Volunteer).includes(
:clients, :assignments, :group_assignments, :user,
:contact, :language_skills
).ransack(params[:q])
```
https://git.panter.ch/open-source/aoz-003/-/commit/a639829a495f9766d7e79d44261fe7b4cef00d87
[trace-volunteers-index-2023-01-18T113030_0100.log](/uploads/6909efb727b25b65f3e62bcdbd8e0778/trace-volunteers-index-2023-01-18T113030_0100.log)
```
params:
controller: volunteers
action: index
duration: 0.755127
Total allocated: 28.51 MB (257107 objects)
Total retained: 1.28 MB (11105 objects)
```https://git.panter.ch/open-source/aoz-003/-/issues/472Perf: Download coplaner XLSX - GET /coplaners.xlsx2023-02-06T15:51:12+01:00Kaspar Vollenweidervok@panter.chPerf: Download coplaner XLSX - GET /coplaners.xlsxAction -> Remove realtime export
[trace-coplaner_exports-index-2023-01-17T212611_0100.log](/uploads/4d440154ec2fd673b11cda8afabd5e69/trace-coplaner_exports-index-2023-01-17T212611_0100.log)
```
GET /coplaners.xlsx coplaner_exports#i...Action -> Remove realtime export
[trace-coplaner_exports-index-2023-01-17T212611_0100.log](/uploads/4d440154ec2fd673b11cda8afabd5e69/trace-coplaner_exports-index-2023-01-17T212611_0100.log)
```
GET /coplaners.xlsx coplaner_exports#index
params:
controller: coplaner_exports
action: index
format: xlsx
duration: 341.732666
Total allocated: 10.49 GB (80210986 objects)
Total retained: 274.44 MB (2887910 objects)
```
This Excel download is so slow, because it produces one Excel file with many sheets inside (tabs).
## Produce each sheet for entity seperately
We could just as well produce each sheet in that excel separately into a file for each first, and then zip them into one sheet afterwards.
## SQL query optimizations
Plus some query optimizations using `.eager_load` or `.includes` and done as an active job, I'm sure this coplaner excel can be optimized to work with Heroku.https://git.panter.ch/open-source/aoz-003/-/issues/471Perf: GroupOffer edit - GET /group_offers/:id/edit2023-02-06T20:28:50+01:00Kaspar Vollenweidervok@panter.chPerf: GroupOffer edit - GET /group_offers/:id/edit[trace-group_offers-edit-2023-01-17T210610_0100.log](/uploads/5ae89e4122a68b48cc9c3e254299e3f1/trace-group_offers-edit-2023-01-17T210610_0100.log)
```
GET /group_offers/:id/edit group_offers#edit
params:
controller: group_offers
act...[trace-group_offers-edit-2023-01-17T210610_0100.log](/uploads/5ae89e4122a68b48cc9c3e254299e3f1/trace-group_offers-edit-2023-01-17T210610_0100.log)
```
GET /group_offers/:id/edit group_offers#edit
params:
controller: group_offers
action: edit
id: '78'
duration: 1.325926
Total allocated: 591.50 MB (603623 objects)
Total retained: 2.89 MB (24030 objects)
```https://git.panter.ch/open-source/aoz-003/-/issues/470Perf: SemesterProcess create - POST /semester_processes2023-01-20T10:48:23+01:00Kaspar Vollenweidervok@panter.chPerf: SemesterProcess create - POST /semester_processes[trace-semester_processes-create-2023-01-17T210943_0100.log](/uploads/a904a108f68d5c6d3b2630034e9feb57/trace-semester_processes-create-2023-01-17T210943_0100.log)
```
POST /semester_processes(.:format) semester_processes#create
params...[trace-semester_processes-create-2023-01-17T210943_0100.log](/uploads/a904a108f68d5c6d3b2630034e9feb57/trace-semester_processes-create-2023-01-17T210943_0100.log)
```
POST /semester_processes(.:format) semester_processes#create
params:
semester_process:
kind: mail
semester: '2022,2'
controller: semester_processes
action: create
semester: '2022,2'
duration: 44.169822
Total allocated: 2.96 GB (24872579 objects)
Total retained: 20.05 MB (177034 objects)
```https://git.panter.ch/open-source/aoz-003/-/issues/469Perf: SemesterProcess new - GET /semester_processes/new2023-02-06T20:47:37+01:00Kaspar Vollenweidervok@panter.chPerf: SemesterProcess new - GET /semester_processes/new[trace-semester_processes-new-2023-01-17T210705_0100.log](/uploads/1e6e78f0fc3e4543777601cc13790614/trace-semester_processes-new-2023-01-17T210705_0100.log)
```
GET /semester_processes/new(.:format) semester_processes#new
params:
se...[trace-semester_processes-new-2023-01-17T210705_0100.log](/uploads/1e6e78f0fc3e4543777601cc13790614/trace-semester_processes-new-2023-01-17T210705_0100.log)
```
GET /semester_processes/new(.:format) semester_processes#new
params:
semester: '2022,2'
controller: semester_processes
action: new
duration: 12.778534
Total allocated: 1.08 GB (4322312 objects)
Total retained: 23.47 MB (267841 objects)
```
Since this task is a periodic thing, they want to do on two dates during the year, I think this could be refactored to be prepared for them on the day they wish by scheduled task.
And I think the queries in there could probably also be faster, if `.eager_load` or `.includes` are done at the right places in the right manner.https://git.panter.ch/open-source/aoz-003/-/issues/468Perf: Volunteer edit - GET /volunteers/:id/edit2023-02-06T20:42:55+01:00Kaspar Vollenweidervok@panter.chPerf: Volunteer edit - GET /volunteers/:id/edit[trace-volunteers-edit-2023-01-17T204629_0100.log](/uploads/f29c290010224ae42d928ae57cba0ff3/trace-volunteers-edit-2023-01-17T204629_0100.log)
```
GET /volunteers/1855/edit
params:
controller: volunteers
action: edit
id: '1855'
du...[trace-volunteers-edit-2023-01-17T204629_0100.log](/uploads/f29c290010224ae42d928ae57cba0ff3/trace-volunteers-edit-2023-01-17T204629_0100.log)
```
GET /volunteers/1855/edit
params:
controller: volunteers
action: edit
id: '1855'
duration: 1.305161
Total allocated: 647.86 MB (1075908 objects)
Total retained: 23.85 MB (46115 objects)
```
Speed could be improved by doing `.eager_load` in the [volunteers_controller](https://git.panter.ch/open-source/aoz-003/-/blob/develop/app/controllers/volunteers_controller.rb#L164-167)
```ruby
def set_volunteer
v_scope = Volunteer.eager_load(group_assignments: [:trial_period, :group_offer])
.eager_load(:group_assignment_logs)
.eager_load(:assignment_logs)
.eager_load(
assignments: [
:trial_period,
client: [:contact,
involved_authority: [profile: [:contact]]],
creator: [profile: [:contact]]
]
)
.eager_load(:contact)
.eager_load(:relatives)
.eager_load(:group_offer_categories)
.eager_load(:language_skills)
if current_user.superadmin?
v_scope = v_scope.eager_load(invited_by: [profile: [:contact]])
.eager_load(accepted_by: [profile: [:contact]])
.eager_load(undecided_by: [profile: [:contact]])
.eager_load(rejected_by: [profile: [:contact]])
.eager_load(resigned_by: [profile: [:contact]])
end
@volunteer = v_scope.find(params[:id])
authorize @volunteer
end
```
0ac507a13d872f556243c71b5be14ed6712090ce
The memory trace with this and some template fixes is:
[trace-volunteers-edit-2023-01-18T113246_0100.log](/uploads/7dc5e373c05b4c0625943cb8a0cf6ade/trace-volunteers-edit-2023-01-18T113246_0100.log)
```
GET /volunteers/556/edit
params:
controller: volunteers
action: edit
id: '556'
duration: 0.88495
Total allocated: 553.58 MB (428570 objects)
Total retained: 2.74 MB (18512 objects)
```Heroku Deployablehttps://git.panter.ch/open-source/hub-screen/-/issues/2feat: use nextBookingToday instead of nextBooking2019-10-02T15:43:50+02:00Marco Wettsteinfeat: use nextBookingToday instead of nextBookingnextBookingToday is limited to todaynextBookingToday is limited to todayRemo ZumstegRemo Zumsteghttps://git.panter.ch/open-source/hub-screen/-/issues/1date time wrong format2019-10-02T15:43:15+02:00Marco Wettsteindate time wrong formathttps://api.hub.panter.cloud/graphql returns timestamps in UTC, but the hub screen ignores the timezone and just uses the timepart. so every date is 2hours shiftedhttps://api.hub.panter.cloud/graphql returns timestamps in UTC, but the hub screen ignores the timezone and just uses the timepart. so every date is 2hours shiftedRemo ZumstegRemo Zumsteghttps://git.panter.ch/open-source/dashboard.panter.ch/-/issues/30Automatic deployment2018-01-09T11:12:40+01:00Andi Staubandi@denteo.comAutomatic deploymenthttps://git.panter.ch/open-source/mikrotik-ss-java/-/issues/1Improve usability for non-tech-user2017-07-27T17:19:53+02:00Andreas KönigImprove usability for non-tech-user* visualize the measured values
* give a tipp or explaination for values if possible* visualize the measured values
* give a tipp or explaination for values if possible