Exam mode: Improve usability and understandability of exam results

Checklist
General

[ ] I tested all changes and their related features with all corresponding user types on a test server.
[x] Language: I followed the guidelines for inclusive, diversity-sensitive, and appreciative language.
[x] I chose a title conforming to the naming conventions for pull requests.

Client

[x] Important: I implemented the changes with a very good performance, prevented too many (unnecessary) REST calls and made sure the UI is responsive, even with large data.
It might be possible to further reduce the requests atfer publishing results - directly after the exam no additional requests are made
[ ] I followed the coding and design guidelines.
[ ] I added multiple integration tests (Jest) related to the features (with a high test coverage), while following the test guidelines.
[x] I documented the TypeScript code using JSDoc style.
[ ] I added multiple screenshots/screencasts of my UI changes.
[x] I translated all newly inserted strings into English and German.

Motivation and Context

Description

Steps for Testing

Prerequisites:

1 Instructor
2 Students
1 Programming Exercise with Complaints enabled

Log in to Artemis
Navigate to Course Administration
...

printPdf

expand problem statement before printing
reset to previous state
notification sidebar no longer printed over exam summary

Exam Mode Testing

Prerequisites:

1 Instructor
2 Students
1 Exam with a Programming Exercise

Log in to Artemis
Participate in the exam as a student
Make sure that the UI of the programming exercise in the exam mode stays unchanged. You can use the exam mode documentation as reference.
...

Review Progress

Performance Review

[ ] I (as a reviewer) confirm that the client changes (in particular related to REST calls and UI responsiveness) are implemented with a very good performance
[ ] I (as a reviewer) confirm that the server changes (in particular related to database calls) are implemented with a very good performance

Code Review

[ ] Code Review 1
[ ] Code Review 2

Manual Tests

[ ] Test 1
[ ] Test 2

Exam Mode Test

[ ] Test 1
[ ] Test 2

Test Coverage

Class/File
Line Coverage
Confirmation (assert/expect)

theme.service.ts
92.55%
✅ ❌

[plagiarism-case-instructor-detail-view.component.ts](https://bamboo.ase.in.tum.de/browse/ARTEMIS-TESTS5501/latest/artifact/shared/Coverage-Report-Client-Tests/app/course/plagiarism-cases/instructor-view/detail-view/plagiarism-case-instructor-detail-view.componen

t.ts.html)
98.87%
✅ ❌

exam-general-information.component.ts
100%
✅

exam-result-summary.component.ts
88.57%
✅ ❌

file-upload-exam-summary.component.ts
76.92%

✅ ❌

[exam-result-summary-exercise-card-header.component.ts](https://bamboo.ase.in.tum.de/browse/ARTEMIS-TESTS5501/latest/artifact/shared/Coverage-Report-Client-Tests/app/exam/participate/summary/exercises/header/exam-result-summary-exercise-card-header.component.ts.h

tml)
100%
✅

modeling-exam-summary.component.ts
100%
✅

programming-exam-summary.component.ts
39.39%

✅ ❌

text-exam-summary.component.ts
100%
✅

exam-result-overview.component.ts
95.58%
✅ ❌

file-upload-submission.component.ts
87.02%
✅ ❌

modeling-submission.component.ts
85.31%
✅ ❌

modeling-editor.component.ts
80.64%
✅ ❌

[programming-exercise-example-solution-repo-download.component.ts](https://bamboo.ase.in.tum.de/browse/ARTEMIS-TESTS5501/latest/artifact/shared/Coverage-Report-Client-Tests/app/exercises/programming/shared/actions/programming-exercise-example-solution-repo-downlo

ad.component.ts.html)
100%
✅

example-solution.component.ts
100%
✅

feedback.component.ts
88.03%
✅ ❌

feedback.utils.ts
37.93%
✅ ❌

result.component.ts
65.18%
✅ ❌

text-editor.component.ts
83.33%
✅ ❌

grading-key-overview.component.ts
100%
✅

button.component.ts
100%
✅

clone-repo-button.component.ts
90.54%
✅ ❌

resizeable-container.component.ts
68.42%
✅ ❌

Screenshots

Looking good except for some small feedback/questions :)


How to Add or create a mirror reflector according to the panel position to calculate the Front and back side radiance??

I need to add a new mirror reflector object to calculate the radiance

Image didn't came through, you might need to paste into the issue directly through Github and not by mail (which seems to be the method)
https://github.com/NREL/bifacial_radiance/issues/372#issuecomment-1031566729

Like this image

Is it possible to integrate

And also like this image

I need to calculate the rear panel radiance
mirror could be curve or flat

A "perfect" mirror has an albedo of 1, so I would assume what you can do is set the albedo = 1 in the code or in the GUI - that will mean you will get a flat mirror.

How does it work in the case of a curved mirror ??

@yjkm  I just added a tutorial example (Tutorial 22) on development branch showing how to do your first image, I hope it helps.
Regarding curved mirror, you can import a CAD, or look into radiance code itself it does have some 'genrev' surfaces. However, using curved surfaces in the raytrace is not ideal as it tesellates the curvature, so you end up with WAY TOO MANY surfaces which slows down, and you might get some weird artifcats. I'd suggest approximating the curved surface by a good amount of flat surfaces placed properly to simulate the curve. More on this forum.  https://discourse.radiance-online.org/t/curved-mirror-surfaces/685

Member

Can we reposition the mirror object as our requirement

Yes. See the tutorial and calculate the position on where you want them.

I need to calculate the rear panel radiation
mirror could be curve or flat

For this image we can follow the tutorial_22 ????

Your simulation will be stored in D:\new Bifacial\bifacial_radiance\bifacial_radiance\TEMP
path = D:\new Bifacial\bifacial_radiance\bifacial_radiance\TEMP
Loading albedo, 1 value(s), 0.200 avg
1 nonzero albedo values.
Getting weather file: USA_VA_Richmond.724010_TMY2.epw
... OK!
8760 line in WeatherFile. Assuming this is a standard hourly WeatherFile for the year for purposes of saving Gencumulativesky temporary weather files in
EPW folder.
Coercing year to 2021
Saving file EPWs\metdata_temp.csv, # points: 8760
Calculating Sun position for Metdata that is right-labeled  with a delta of -30 mins. i.e. 12 is 11:30 sunpos
Module Name: test-module
Module test-module updated in module.json
Pre-existing .rad file objects\test-module.rad will be overwritten
Created tutorial_22.oct
Linescan in process: tutorial_22_Front
Linescan in process: tutorial_22_Back
Saved: results\irr_tutorial_22.csv
Result without mirror:  <module 'unittest.result' from 'C:\Users\kushal.kumar\.conda\envs\bifi1\lib\unittest\result.py'>
Material exists, overwriting...
Added material testmirror to file ground.rad
Module Name: test-mirror
Module test-mirror updated in module.json
Pre-existing .rad file objects\test-mirror.rad will be overwritten
Created tutorial_22.oct
Linescan in process: tutorial_22_withMirror_Front
message: rtrace: fatal - bad number of arguments for mirror "testmirror"
Linescan in process: tutorial_22_withMirror_Back
message: rtrace: fatal - bad number of arguments for mirror "testmirror"
(bifi1) D:\new Bifacial\bifacial_radiance\bifacial_radiance>python mirroring.py
Your simulation will be stored in D:\new Bifacial\bifacial_radiance\bifacial_radiance\TEMP
path = D:\new Bifacial\bifacial_radiance\bifacial_radiance\TEMP
Loading albedo, 1 value(s), 0.200 avg
1 nonzero albedo values.
Getting weather file: USA_VA_Richmond.724010_TMY2.epw
... OK!
8760 line in WeatherFile. Assuming this is a standard hourly WeatherFile for the year for purposes of saving Gencumulativesky temporary weather files in
EPW folder.
Coercing year to 2021
Saving file EPWs\metdata_temp.csv, # points: 8760
Calculating Sun position for Metdata that is right-labeled  with a delta of -30 mins. i.e. 12 is 11:30 sunpos
Module Name: test-module
Module test-module updated in module.json
Pre-existing .rad file objects\test-module.rad will be overwritten
Created tutorial_22.oct
Linescan in process: tutorial_22_Front
Linescan in process: tutorial_22_Back
Saved: results\irr_tutorial_22.csv
Result without mirror:  <module 'unittest.result' from 'C:\Users\kushal.kumar\.conda\envs\bifi1\lib\unittest\result.py'>
Material exists, overwriting...
Added material testmirror to file ground.rad
Module Name: test-mirror
Module test-mirror updated in module.json
Pre-existing .rad file objects\test-mirror.rad will be overwritten
Created tutorial_22.oct
Linescan in process: tutorial_22_withMirror_Front
message: rtrace: fatal - bad number of arguments for mirror "testmirror"
Linescan in process: tutorial_22_withMirror_Back
message: rtrace: fatal - bad number of arguments for mirror "testmirror"
Traceback (most recent call last):
File "D:\new Bifacial\bifacial_radiance\bifacial_radiance\mirroring.py", line 146, in
withMirror = bifacial_radiance.load.read1Result('results\irr_tutorial_22_withMirror.csv')
File "d:\new bifacial\bifacial_radiance\bifacial_radiance\load.py", line 164, in read1Result
resultsDF = pd.read_csv(selectfile)
File "C:\Users\kushal.kumar.conda\envs\bifi1\lib\site-packages\pandas\util_decorators.py", line 311, in wrapper
return func(*args, **kwargs)
File "C:\Users\kushal.kumar.conda\envs\bifi1\lib\site-packages\pandas\io\parsers\readers.py", line 680, in read_csv
return _read(filepath_or_buffer, kwds)
File "C:\Users\kushal.kumar.conda\envs\bifi1\lib\site-packages\pandas\io\parsers\readers.py", line 575, in _read
parser = TextFileReader(filepath_or_buffer, **kwds)
File "C:\Users\kushal.kumar.conda\envs\bifi1\lib\site-packages\pandas\io\parsers\readers.py", line 933, in init
self._engine = self._make_engine(f, self.engine)
File "C:\Users\kushal.kumar.conda\envs\bifi1\lib\site-packages\pandas\io\parsers\readers.py", line 1217, in _make_engine
self.handles = get_handle(  # type: ignore[call-overload]
File "C:\Users\kushal.kumar.conda\envs\bifi1\lib\site-packages\pandas\io\common.py", line 789, in get_handle
handle = open(
FileNotFoundError: [Errno 2] No such file or directory: 'results\irr_tutorial_22_withMirror.csv' this error will come after running  the "Mirror_and_Module.py" file

I suspect you don't have the latest version of development that fixed a bug on how the material gets saved; I published this bug fix with the journal, and it changes the number of arguments for primitives (materials) of 'mirror' type to 3.
To confirm which version you are running ,pleas eprint
bifacial_radiance.version
It should be '0.4.0-dev2'       or something like that.

I have a question so this mirror is working like a mirror reflector. Or not????

I suspect you don't have the latest version of development that fixed a bug on how the material gets saved; I published this bug fix with the journal, and it changes the number of arguments for primitives (materials) of 'mirror' type to 3.
To confirm which version you are running ,pleas eprint
bifacial_radiance.version
It should be '0.4.0-dev2' or something like that.

I have a question so this mirror is working like a mirror reflector. Or not????

Yes, it is; is there another option or what is the question? If you notice on the example I provided there is a very big increase from including the mirror on the simulation vs no mirror; that is the sanity check.
You will have to play with the coordinates to create the mirror in the position you want for your example.


fix: constrain nbformat version, trying to ensure notebook compatibility

Description

Related Issue

Checklist

[x] I've formatted the PR title in accordance with the structure of the conventional commit messages.
[x] I've updated the code style using pre-commit if needed.
[x] I've updated or supplemented the documentation as needed.
[x] I've read the CODE_OF_CONDUCT.md document.
[x] I've read the CONTRIBUTING.md guide.

closing in favor of #598


[API] add is_symbolic value to references schema

To be able to filter all symbolic references, we need a new column into the references source.

Rooted repositories can't have symbolic references so neither can the reference schema.


Multiple outputs implementation

Hello,
Suppose my model returns multiple outputs. How should the functional approach be modified to handle this?
Thanks.

With the grad cache decorator, you can return a tuple of tensors.


[New architecture] Emoji misaligned in context menu and message reaction.

If you haven't already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

This issue is related to the ongoing new architecture adoption. It was reported on the build with new architecture enabled on the relevant PR.

Version Number: 1.4.42-1
Reproducible in staging?: no
Reproducible in production?: no
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: @ishpaul777 here
Slack conversation:
Action Performed:
Break down in numbered steps
Expected Result:
Emojis appear in correct position
Actual Result:
They are misaligned
Workaround:
Not investigated yet.
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[ ] Android: mWeb Chrome
[x] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
Available in the linked comment.

View all open jobs on GitHub

Will be tested once the PR is deployed.


Settings button isn't translated

The settings button doesn't have any localisation attached, which we could resolve in the code behind the MainView but I would rather this was in xaml.
The best idea I've seen so far is to add this (or similar)
<NavigationView.PaneFooter>
    <Button Background="Transparent" BorderThickness="1" HorizontalAlignment="Center"
            Height="40" Width="40"
            Click="SettingsButton_OnClick">
        <SymbolIcon Symbol="Setting"/>
    </Button>
</NavigationView.PaneFooter>

And set IsSettingsVisible="False" on the NavigationView, but this'll cuase a few other problems.
I'm open to opinions however.

No need, I fixed that already

Solved in #50

Solved already in #50 @Plootie  :D


Automator: update istio/api@master dependency in istio/istio@master

Generated by Automator - 2021-06-15T17:14:48+00:00

@istio-testing: PR needs rebase.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

The changes in this PR are already merged. We do have an issue where we have too much automation across the repos and api/proxy/client-go? cause update-feps.sh to be run multiple times and one of the PRs wins, and others then end up in this scenario where the PR changes are already added.


Can't use reth-revm as a dependency

Describe the bug
Title. Similar to #3454 but the workaround doesn't work.
Steps to reproduce

Add reth-revm to Cargo.toml
Run cargo check

name = "reth-revm-test"
version = "0.1.0"
edition = "2021"

[dependencies]
reth-revm = { git = "https://github.com/paradigmxyz/reth.git", package = "reth-revm" }

Node logs
Checking reth-db v0.1.0-alpha.8 (https://github.com/paradigmxyz/reth.git#39a6fa1b)
    Checking reth-revm-inspectors v0.1.0-alpha.8 (https://github.com/paradigmxyz/reth.git#39a6fa1b)
error[E0609]: no field `precompiles` on type `&mut EVMData<'_, DB>`
   --> /home/asdf/.cargo/git/checkouts/reth-36d3ea1d1152b20c/39a6fa1/crates/revm/revm-inspectors/src/tracing/js/mod.rs:371:41
    |
371 |         self.register_precompiles(&data.precompiles);
    |                                         ^^^^^^^^^^^ unknown field
    |
    = note: available fields are: `env`, `journaled_state`, `db`, `error`

error[E0609]: no field `precompiles` on type `&mut EVMData<'_, DB>`
   --> /home/asdf/.cargo/git/checkouts/reth-36d3ea1d1152b20c/39a6fa1/crates/revm/revm-inspectors/src/tracing/js/mod.rs:433:41
    |
433 |         self.register_precompiles(&data.precompiles);
    |                                         ^^^^^^^^^^^ unknown field
    |
    = note: available fields are: `env`, `journaled_state`, `db`, `error`

error[E0609]: no field `precompiles` on type `&EVMData<'_, DB>`
   --> /home/asdf/.cargo/git/checkouts/reth-36d3ea1d1152b20c/39a6fa1/crates/revm/revm-inspectors/src/tracing/mod.rs:111:17
    |
111 |         if data.precompiles.contains(to) {
    |                 ^^^^^^^^^^^ unknown field
    |
    = note: available fields are: `env`, `journaled_state`, `db`, `error`

For more information about this error, try `rustc --explain E0609`.
error: could not compile `reth-revm-inspectors` (lib) due to 3 previous errors
warning: build failed, waiting for other jobs to finish...

Platform(s)
Linux (x86)
What version/commit are you on?
39a6fa1b5723466d98de3df66a5eae76e3846a28
What database version are you on?
N/A
If you've built Reth from source, provide the full command you used
No response
Code of Conduct

[X] I agree to follow the Code of Conduct

I got the same error today and patching revm dependency worked.
Cargo.toml
[patch.crates-io]
revm = { git = "https://github.com/bluealloy/revm/", branch = "release/v25" }
revm-primitives = { git = "https://github.com/bluealloy/revm/", branch = "release/v25" }

In Cargo.lock
there should be one instance of revm listed and it should look something like this:
[[package]]
name = "revm"
version = "3.3.0"
source = "git+https://github.com/bluealloy/revm/?branch=release/v25#6084e0fa2d457931cd8c9d29934bca0812b5b8d6"
dependencies = [
 "auto_impl",
 "revm-interpreter",
 "revm-precompile",
]

without patch it fails with the same error mentioned above and in Cargo.lock there is
[[package]]
name = "revm"
version = "3.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f293f351c4c203d321744e54ed7eed3d2b6eef4c140228910dde3ac9a5ea8031"
dependencies = [
 "auto_impl",
 "revm-interpreter 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
 "revm-precompile 2.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
]

I got the same error today and patching revm dependency worked.
Cargo.toml
[patch.crates-io]
revm = { git = "https://github.com/bluealloy/revm/", branch = "release/v25" }
revm-primitives = { git = "https://github.com/bluealloy/revm/", branch = "release/v25" }

In Cargo.lock
there should be one instance of revm listed and it should look something like this:
[[package]]
name = "revm"
version = "3.3.0"
source = "git+https://github.com/bluealloy/revm/?branch=release/v25#6084e0fa2d457931cd8c9d29934bca0812b5b8d6"
dependencies = [
 "auto_impl",
 "revm-interpreter",
 "revm-precompile",
]

without patch it fails with the same error mentioned above and in Cargo.lock there is
[[package]]
name = "revm"
version = "3.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f293f351c4c203d321744e54ed7eed3d2b6eef4c140228910dde3ac9a5ea8031"
dependencies = [
 "auto_impl",
 "revm-interpreter 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
 "revm-precompile 2.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
]

We are working on updating to newest revm, patch is needed until than.

we're currently using these patches
https://github.com/paradigmxyz/reth/blob/19e03ee9cdb7c08124734a8cfbe98a32fd38460f/Cargo.toml#L80-L82


feat: Sync from noir

Automated pull of development from the noir programming language, a dependency of Aztec.
BEGIN_COMMIT_OVERRIDE
chore: add regression test for issue 4449 (https://github.com/noir-lang/noir/pull/4503)
chore: pass macro processors by reference (https://github.com/noir-lang/noir/pull/4501)
chore: bump bb to 0.26.3 (https://github.com/noir-lang/noir/pull/4488)
fix: handling of gh deps in noir_wasm (https://github.com/noir-lang/noir/pull/4499)
fix: iterative flattening pass (https://github.com/noir-lang/noir/pull/4492)
chore: Move templated code for assert_message into the stdlib (https://github.com/noir-lang/noir/pull/4475)
chore: pull out separate function for compiling and running a test
chore: update cargo deny config (https://github.com/noir-lang/noir/pull/4486)
feat: run tests in parallel in nargo test  (https://github.com/noir-lang/noir/pull/4484)
END_COMMIT_OVERRIDE

Benchmark results
Metrics with a significant change:

circuit_simulation_time_in_ms (base-rollup): 1,321 (+103%)
circuit_simulation_time_in_ms (merge-rollup): 5.71 (-32%)
tx_sequencer_processing_time_ms (0): 0.0272 (-100%)
l2_block_building_time_in_ms (8): 16,338 (+51%)
l2_block_building_time_in_ms (32): 65,318 (+52%)
l2_block_building_time_in_ms (64): 130,705 (+53%)
l2_block_rollup_simulation_time_in_ms (8): 12,445 (+75%)
l2_block_rollup_simulation_time_in_ms (32): 49,463 (+73%)
l2_block_rollup_simulation_time_in_ms (64): 99,648 (+77%)
l1_rollup_execution_gas (8): 194,104 (-71%)
l1_rollup_execution_gas (32): 500,126 (-49%)
l1_rollup_execution_gas (64): 908,526 (-35%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Values are compared against data from master at commit fed729da and shown if the difference exceeds 1%.
L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
8 txs
32 txs
64 txs

l1_rollup_calldata_size_in_bytes
5,700
18,884
36,452

l1_rollup_calldata_gas
66,156
238,820
469,268

l1_rollup_execution_gas
:warning: 194,104 (-71%)
:warning: 500,126 (-49%)
:warning: 908,526 (-35%)

l2_block_processing_time_in_ms
1,181 (+2%)
4,463 (+3%)
8,866 (+4%)

note_successful_decrypting_time_in_ms
199 (+1%)
539 (+3%)
990 (+4%)

note_trial_decrypting_time_in_ms
107 (-2%)
58.8 (+45%)
124 (+47%)

l2_block_building_time_in_ms
:warning: 16,338 (+51%)
:warning: 65,318 (+52%)
:warning: 130,705 (+53%)

l2_block_rollup_simulation_time_in_ms
:warning: 12,445 (+75%)
:warning: 49,463 (+73%)
:warning: 99,648 (+77%)

l2_block_public_tx_process_time_in_ms
3,864 (+4%)
15,614 (+9%)
30,896 (+6%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 16 txs.

Metric
5 blocks
10 blocks

node_history_sync_time_in_ms
13,933 (-3%)
26,900 (-1%)

note_history_successful_decrypting_time_in_ms
1,242
2,436 (+2%)

note_history_trial_decrypting_time_in_ms
89.1 (-9%)
142 (+38%)

node_database_size_in_bytes
18,776,144
35,541,072

pxe_database_size_in_bytes
29,923
59,478

Circuits stats
Stats on running time and I/O sizes collected for every circuit run across all benchmarks.

Circuit
circuit_simulation_time_in_ms
circuit_input_size_in_bytes
circuit_output_size_in_bytes

private-kernel-init
252 (+2%)
44,736
28,001

private-kernel-ordering
193 (+1%)
52,625
14,627

base-rollup
:warning: 1,321 (+103%)
177,932
933 (-6%)

root-rollup
70.0 (+3%)
4,192 (-3%)
825

private-kernel-inner
322 (+3%)
73,715
28,001

public-kernel-app-logic
196 (+21%)
32,254
25,379

merge-rollup
:warning: 5.71 (-32%)
2,712 (-5%)
933 (-6%)

Tree insertion stats
The duration to insert a fixed batch of leaves into each tree type.

Metric
0 deployed contracts

tx_size_in_bytes
19,179

Transaction processing duration by data writes.

Metric
0 new note hashes
1 new note hashes

tx_pxe_processing_time_ms
2,584 (-2%)
1,376 (+2%)

Metric
0 public data writes
1 public data writes

tx_sequencer_processing_time_ms
:warning: 0.0272 (-100%)
479 (+5%)


Add search query to /pep command

The /pep command can have two optional arguments:

number
query

You must specify exactly one option. Number just returns that pep, whereas query will use fuzzy searching to search the peps by their titles. This is also the easiest way to introduce fuzzy searching to the codebase.

I can do this

Already experimenting with it.

Can somone also create a command that lets you fuzzy search mcoding videos and return link.

Can somone also create a command that lets you fuzzy search mcoding videos and return link.

Maybe read through the issues first :/ (#54)

I'm going to wait until #57 is merged before this.

nvm i'll do it now


Feature Request: Light theme

Feature Requested
A version of the theme using light (white?) background colours.
Relevant Screenshots
I'm thinking based on the old Mac aesthetic:

A light version of this theme while keeping it as colourful and having the gradients, but with a pure white background and everything else, would be awesome.
Checklist

[x] The feature would be useful to more users than just me. (→ If it's only relevant to you, have you considered using a CSS Snippet?)

Thrown together a mock-up of what this might look like. @firinael is this what you envisioned?

The green and yellow need tweaking to prevent the h3 from looking so muddy, but other than that I'm liking the Apple logo colors

Your mock-up looks really good! Would you be able to push your dev branch, so I could check it out for myself?

sure, heres the branch https://github.com/WillsterJohnson/royal-velvet/tree/light-theme

Just checked it out. I'm impressed by how good it looks, considering you only changed the color vars. I really like that code blocks etc. are lighter than the background. Would you be willing to iron out the small issues?

I'm impressed by how good it looks, considering you only changed the color vars

It's a well designed bit of CSS, totally customisable off the back of just a few vars.

Would you be willing to iron out the small issues?

sure, I think the only problems are the transparent colors and the muddy h3 gradient.
It would make sense to change the names of some of the variables given that they're no longer dark theme specific (eg, --black is white in light theme), so I'll change those to be more light/dark agnostic also. The color names are close enough to keep.
I'd like to know your thoughts on reducing the .theme-dark and .theme-light sections down to just some hue variables and doing the rest in css math. The dark theme would remain visually identical, and the light theme would fall into strict boundaries.
My reasoning being is that the entire UI being controlled by a handful of variables would mean that customising this theme via a snippet would be incredibly easy and take up about 10 lines of css.
That reduction aside, I'll get the colors corrected and start hunting bugs tonight.

It would make sense to change the names of some of the variables given that they're no longer dark theme specific (eg, --black is white in light theme), so I'll change those to be more light/dark agnostic also. The color names are close enough to keep.

go ahead

I'd like to know your thoughts on reducing the .theme-dark and .theme-light sections down to just some hue variables and doing the rest in css math.

Could you provide a quick example?

instead of;
.theme-dark {
  --pink: hsl(330, 100%, 75%);
  --pink-100: hsla(330, 100%, 75%, 0.1);
  // all other colors
}
.theme-light {
  --pink: hsl(...);
  --pink-100: hsla(...);
  // all other colors
}
// snippet must overwrite all colors and color variants directly

do;
.theme-dark {
  --global-sat: 100%;
  --global-lit: 75%;
  --pink-hue: 330;
  // other hues only
}
.theme-light {
  // same here
}
body {
  --pink: hsl(var(--pink-hue), var(--global-sat), var(--global-lit);
  // etc
}
// snippet need only modify ~10 values (sat, lit, hues of pink/orange/yellow/green/cyan/purple/red/pink-purple)

The low level control also will make any future style settings customisations easier if they alter color in any way.
I'm not tied to it, this is just my preference when working on websites; if things are related, enforce it with a --var

This makes perfect sense. Just wanted to make sure we are on the same track. I'm not all that familiar with CSS as this theme is basically the only place where I use it.

cool, I'll get to work on the following

[ ] reduce theme to hues & sat/lit
[ ] theme agnostic variable naming
[ ] implement light theme w/ new variable layout
[ ] bug hunt
[ ] a11y considerations for light theme

#30 implemented a light mode. I will keep this issue open for now, for feedback purposes.

#43 is related to this, @LEFD or @WillsterJohnson you have more context on the light variant than I do, do you have thoughts about how to resolve?

@caro401 #43 seems to be related to both light and dark mode, but I'll look into it.


Pass arbitrary kwargs from run_docker/run_k8s to run_native

Changing the signature of run_native (e.g. to add an option changing the logging behavior), requires editing 3 other files: run_kubernetes, run_docker, and the __main__.py. This PR allows run_kubernetes and run_docker to pass arbitrary arguments to run_native provided that they are serializable with json. A side effect is that run_kubernetes can now take an actual configuration dictionary rather than a url pointing to one.
It also tidies up the implementation of run_kubernetes especially. run_docker still has some unavoidable logic to do with creating the bind-mounts, but is slightly cleaner now too.

@mcgibbon FYI, functools wraps doesn't enforce that the signatures match:
>>> from functools import wraps
>>> def f(a,b):
...     pass
...
>>> @wraps(f)
... def g(a):
...     pass
...
>>> g(10)


Add receiver-side enforced amount constraint for zero-valued invoices

When a zero-valued invoice is created, the receiver has no control over the amount that is possibly accepted. This can be fixed by creating the invoice as a hodl invoice and inspecting the amount before settling. An external application is required though for tracking the invoices.
With recurring AMP payments, it arguably is more important to have control over the amount range and in particular the minimum amount. Otherwise someone can fill up the invoice db with large numbers of recurring 1 msat payments. The fix above cannot be used, because AMP-hodl invoices are not (yet) supported.
An alternative would be to consider the amount range as a basic property of a zero-valued amp or regular invoice and enforce it in the invoice registry.
This change would also make recurring AMP almost completely compatible with lnd-based wallets that support ln address. See https://twitter.com/joostjgr/status/1455503401366827008

Another approach would be allowing for deletion of settled invoices

Take the money, but delete the record - how is that related to enforcing an amount range?

Otherwise someone can fill up the invoice db with large numbers of recurring 1 msat payments.

Allowing you to manage your invoice db allows you to mitigate this issue and still receive 1 msat payments


Contest profile page of a user

Reading activity graph (processed in API)
Activity split (processed in API)
Top 5 tags (api call)
Scores per language
Updates

Activity split is not present yet, being deprioritized.


Add pagination to transaction lists

Can be done by storing payments in a DB
Also, LND doesn't have a way to get total number of transactions. It also has separate methods for incoming and outgoing payments which makes it tricky while setting offset

We now store transactions in a table so this should be possible without LNClient limitations

@stackingsaunter said it would be better to use shadcn pagination rather than infinite scroll for Alby Hub. In this case, we need to know the total number of transactions, which would need to be part of the response body (I think SWR cannot read headers unless we add extra logic to our fetcher in swr.ts).


Add ability to pause/resume subscriptions

Summary
This change:

Adds the ability to pause subscriptions for either a specified amount of time or an indefinite amount of time
Adds endpoints to pause and resume subscriptions
Integrates pause/resume buttons on the subscription admin page

How
Adds a paused boolean column to the subscriptions table.

The paused attribute acts as a sub-state of active. This is a logical approach because paused subscriptions should still be considered active.

Subscriptions can be paused with a scheduled activation (corresponding to the actionable_date) or indefinitely (set the actionable_date to nil).

The soonest allowed actionable date (for pausing and resuming) is the next day to avoid issues with processing subscriptions
Subscriptions can also be resumed with a scheduled activation or immediately (next day)

Additional note: Credit for implementation goes to @ikraamg and @rainerdema I just extended their work for this PR.

@aldesantis


extra files in aci after run

I'm attempting to use acbuild on CentOS 7 (systemd 208).  Running on a patched branch of #141 to address issues I reported in #140, I'm seeing extra files in the ACI aside from the mandatory rootfs and manifest.
Steps to reproduce (the dependency should be publicly accessible for the time being):
[root@localhost ~]# /tmp/acbuild/bin/acbuild begin
[root@localhost ~]# /tmp/acbuild/bin/acbuild dependency add s3.amazonaws.com/bsd-aci/base/centos7 --label version=4b6264c-14
[root@localhost ~]# /tmp/acbuild/bin/acbuild mount add resolvconf /etc/resolv.conf --read-only
[root@localhost ~]# /tmp/acbuild/bin/acbuild set-name whatev
[root@localhost ~]# /tmp/acbuild/bin/acbuild set-exec /bin/bash
[root@localhost ~]# /tmp/acbuild/bin/acbuild run /bin/true
Downloading s3.amazonaws.com/bsd-aci/base/centos7: [===========] 47 MB/47 MB
[root@localhost ~]# /tmp/acbuild/bin/acbuild write foo.aci
[root@localhost ~]# tar -tzvf foo.aci
drwxr-xr-x 0/0               0 2015-12-05 04:03 rootfs
drwxr-xr-x 0/0               0 2015-12-05 04:04 rootfs/etc
lrwxrwxrwx 0/0               0 2015-12-05 04:04 rootfs/etc/localtime -> ../usr/share/zoneinfo/Etc/UTC
-rw-r--r-- 0/0               0 2015-12-05 04:04 rootfs/etc/resolv.conf
drwxr-xr-x 0/0               0 2015-12-05 04:04 usr
drwxr-xr-x 0/0               0 2015-12-05 04:04 usr/share
drwxr-xr-x 0/0               0 2015-12-05 04:04 usr/share/zoneinfo
drwxr-xr-x 0/0               0 2015-12-05 04:04 usr/share/zoneinfo/Etc
-rw-r--r-- 0/0             118 2015-12-05 04:04 usr/share/zoneinfo/Etc/UTC
-rw-r--r-- root/root       393 2015-12-05 04:04 manifest

Since I didn't add or modify any files, the ACI rootfs should be completely empty, but as you can see rootfs/etc/localtime and rootfs/etc/resolv.conf exist.  The usr/share/zoneinfo files should definitely not be in the tarball, if I'm reading the spec correctly (only rootfs and manifest should be in the ACI).
I'm guessing the zoneinfo/localtime stuff is related to #134, even though /etc/localtime is in fact a symlink in the CentOS 7 ACI I'm building from.

The rootfs/etc/resolv.conf comes from systemd-nspawn I believe, but I agree that the usr/share/zoneinfo files should be removed after the run. Perhaps if they didn't originally exist, acbuild created them, and their modified time hasn't changed since creation, then acbuild would remove them.
I'll put together a PR to implement that.


[Usage]: how do I pass in the JSON content-type for ASYNC Mistral 7B offline inference

Your current environment
PyTorch version: 2.2.2
Is debug build: False
CUDA used to build PyTorch: None
ROCM used to build PyTorch: N/A

OS: macOS 14.5 (x86_64)
GCC version: Could not collect
Clang version: 15.0.0 (clang-15<IP_ADDRESS>)
CMake version: Could not collect
Libc version: N/A

Python version: 3.11.6 (v3.11.6:8b6ee5ba3b, Oct  2 2023, 11:18:21) [Clang 13.0.0 (clang-13<IP_ADDRESS>)] (64-bit runtime)
Python platform: macOS-14.5-x86_64-i386-64bit
Is CUDA available: False
CUDA runtime version: No CUDA
CUDA_MODULE_LOADING set to: N/A
GPU models and configuration: No CUDA
Nvidia driver version: No CUDA
cuDNN version: No CUDA
HIP runtime version: N/A
MIOpen runtime version: N/A
Is XNNPACK available: True

CPU:
Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz

Versions of relevant libraries:
[pip3] mypy-extensions==1.0.0
[pip3] numpy==1.26.4
[pip3] sentence-transformers==2.2.2
[pip3] torch==2.2.2
[pip3] torchvision==0.17.2
[pip3] transformers==4.42.3
[conda] Could not collect
ROCM Version: Could not collect
Neuron SDK Version: N/A
vLLM Version: N/A
vLLM Build Flags:
CUDA Archs: Not Set; ROCm: Disabled; Neuron: Disabled
GPU Topology:
Could not collect

How would you like to use vllm
Similar to #7030 , I would like to use the JSON mode for Mistral 7B while doing offline inference using the generate method, but asynchronously. We would like to stream the response to our app and thought that we can use the Async Llm Engine to do that.  Llm Class wraps the Sync LlmEngine and inserts the json schema thanks to a recent PR, but there is no wrapper class for the Asnyc Engine and hence we cannot supply a schema to it using the plain AsyncLLMEngine class. Is there a plan to integrate a wrapper (an AsyncLlm class) for the async engine? We appreciate any suggestions. Thank you
Before submitting a new issue...

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

I'd need this too. Would be great to understand if there's some way to make this happen with the current version 🙂


public struct Options has generic name that cannot be disambiguated

Because of Regex is both the name of the struct and the module, then as discussed in Swift bug SR-5304 Regex's struct Option cannot be disambiguated using Regex.Options. Method to workaround this issue are less than ideal https://stackoverflow.com/a/38508385/592739
Renaming either the module or the struct would break existing code. Would it be terrible to rename Options to something like RegexOptions. Or instead adding a public typealias RegexOptions = Options might work.

Thanks for raising this!
I think nesting Options inside Regex would make a lot of sense. We could then add public typealias Options = Regex.Options, and hopefully even include a deprecation warning that it will be removed in a future release.
Would you be interested in opening a pull request to that effect?


Add support for WMTS BoundingBoxes

According to WMTS spec, there may be zero or more BoundingBox elements.
Each BoundingBox can specify the CRS for its coordinates.

The force pushes are a rebase, I initially based the commit on my other PR with CI fixes but decided to  keep these issues separate.

@kordian-kowalski merged :)
test failures not related to this PR.


⚠ Jenkins Plugins Artifactory has degraded performance

In eb5d3ff, Jenkins Plugins Artifactory (https://get.jenkins.io/plugins/artifactory/) experienced degraded performance:

HTTP code: 200
Response time: 1125 ms

Resolved: Jenkins Plugins Artifactory performance has improved in b202dbf after 12 minutes.


Customize which release of overture to use

Right now overture data is hard coded to just be the latest release at the time of creating this plugin.
Ideally we'd have a drop down of the previous releases (at least the ones with BBOX), and also a way to update to the latest release. This may need some coordination with overture, or maybe they have a 'latest' redirect I don't yet know about.
It could be good to also just have a 'release string' that lets a user enter a newer string, if there's not an easy way for us to automatically get it. Then we can cut a new release (or better update some file that gets read dynamically) when there's a new overture version, and so people just use the string when it's a brand new overture release.

Talked to Overture about this, sounds like doing a 'latest' symlink on object stores isn't a thing, but that they're working on a STAC Catalog that would be able to point at the latest releases, so when that's out we can investigate using it. But likely good to just add this soon, or at least when Overture cuts a next release.


Workflow for Proteogenomics 1

In the course of testing for Smörgåsbord , I came across a few error swith the workflow for https://training.galaxyproject.org/training-material/topics/proteomics/tutorials/proteogenomics-dbcreation/tutorial.html

The workflow fails because, in the Tabular-to-FASTA step, the "Title column" is blank (should be 1) and the "Sequence Column" is 2 (when it should be CustomProDB Merged Fasta).
The workflow fails on the FreeBayes tool, with the following error: "unable to find FASTA index entry for 'chr10'
ERROR(freebayes): Target region coordinates (chr1 0 195471971) outside of reference sequence bounds (chr1 30427671) terminating.
unable to find FASTA index entry for 'chr11'
unable to find FASTA index entry fo"
The workflow fails on the gffCompare step with the following error: "Traceback (most recent call last):
File "/cvmfs/main.galaxyproject.org/shed_tools/toolshed.g2.bx.psu.edu/repos/galaxyp/gffcompare_to_bed/7e572e148175/gffcompare_to_bed/gffcompare_to_bed.py", line 132, in
main()
File "/cvmfs/main.gala"

It's also worth noting that the tutorial assumes that the user will know to use the regex "Replace text in a specific column" for the Change the chromosome names in the Ensembl GTF to match a UCSC genome reference step.
I feel like that should be more explicit.

Thank you @assuntad23 for testing our training. I tested the workflow but I couldn't replicate the Freebayes and gffcompare error in Galaxy(https://usegalaxy.eu/u/galaxyp/h/test) . However, I have provided a note regarding the "Tabular-to-Fasta" step in the GTN ( to specify column 1 as title). Also, I have added additional information regarding "Replace text in a specific column" regex statement.

@subinamehta I think this is because the GTF used as input for StringTie in the tutorial is the original uploaded version and not the one we've manipulated the chromosome names of. I am working on a few clarifications in #2368 and mention it there.


Don't Merge! PR real time test for target branch full build

Docs Build status updates of commit e0eda1e:
:clock10: Full build: the average full build time is 5 min(s) 59 sec(s), this is based on the last 601 build(s) for this repository.

Docs Build status updates of commit e0eda1e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details
Dependent Files

docs-ref-conceptual/testing.md
:bulb:Suggestion
View (azure-cli-latest) View (azure-cli-2017-03-09-profile) View (azure-cli-2018-03-01-hybrid)
Details

docs-ref-conceptual/testing.md

[Suggestion] Missing attribute: either ms.prod or ms.service is required. Use ms.prod for on-premise products, or ms.service for cloud services.
[Suggestion] Missing attribute: title. Add a title string to show in search engine results.
[Suggestion] Missing attribute: either ms.prod or ms.service is required. Use ms.prod for on-premise products, or ms.service for cloud services.
[Suggestion] Missing attribute: title. Add a title string to show in search engine results.
[Suggestion] Missing attribute: either ms.prod or ms.service is required. Use ms.prod for on-premise products, or ms.service for cloud services.
[Suggestion] Missing attribute: title. Add a title string to show in search engine results.

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


fix: Escape => Error

A picture tells a thousand words
Before this PR
After this PR

Coverage decreased (-0.3%) to 37.223% when pulling f19396d9e1000cbecd72f22418bf408f52f26cae on bjornreppen:esc into 3b72236854c8697949bfb2bc891664758158ac4a on Artsdatabanken:master.


Memory Usage for Datasets GDELT and WIKI

Hello,
I was trying to run TLogic on the datasets GDELT and WIKI (GDELT (Lee-
taru and Schrodt, 2013); WIKI (Leblay and Chekol, 2018)) , (can be found e.g. here: https://github.com/INK-USC/RE-Net/tree/master/data).
GDELT	WIKI
1734399	539286 num_triples_train
238765	67538 num_triples_valid
305241	63110 num_triples_test
2975	231 num_timesteps
For both Datasets I have issues when running apply.py. Either I have memory issues when running multiple processes ( >1.5TB for e.g. 10 processes for WIKI, with windowsize=200), or I have runtime issues (e.g. no results after >20 days for 1 process for WIKI, with windowsize=200).
I am able to get results for WIKI with 8 processes with windowsize=10.
Have you tried running TLogic on these datasets?
Is there any other parameter that I could set, to improve memory usage (besides less processes which leads to very very long runtime, and very small window sizes, which potentially leads to lower scores)?
This question is especially important, when I want to try multistep prediction (ie. w=-1), because for this I cannot set the windowsize, and thus will always run into memory issues.
Do you know any solution to this problem? Or are these datasets simply not suited for TLogic?
Kind regards and thank you for your reply.
Julia

Hi Julia,
we did not try running TLogic on these two datasets. Besides running multiple processes and decreasing the window size, you could check the performance for shorter rules (lengths 1 and 2) or decrease the number of minimum candidates (which is probably already rather small if you did not change the default value).
Since TLogic finds all possible body matchings, there might be scalability issues with large (or dense) datasets so that direct application might not be feasible. One solution could be to only apply the top-k rules or filter the rules based on minimum confidence or minimum body support (see apply.py line 42). One other solution could be to take a subset (e.g., through sampling) of the matching edges (modification to get_window_edges, match_body_relations, or match_body_relations_complete in rule_application.py necessary).
For multi-step prediction, I believe that you can also set a fixed time window, possibly increasing the time window with each prediction step.


cast roi as ints

Camera control ROI fails to work with current version of numpy, as they have dropped support for indexing with floats. I just cast the index as integers.

Hi Chris - thanks for spotting this


Add a simple image recognizon example

I would love to have an example like this one: https://blog.insightdatascience.com/tensorflow-image-recognition-on-a-raspberry-pi-3645a1634c66
Check CgImageSupport app for our images support.

I have a simple label_image example in @SergeStinckwich's Pharo TensorFlow binding repo.

Wow. That's sooooo cool. Can't wait to having it working... Thanks for pointing it out!!

I already us it for lectures. It works very well :-)

Excellent!  Were there more examples added to the pharo port that were not originally in Cuis? If so, please point them!

Hi @freedomtan
Now that we got this working, do you know of any example of "Object Detection"? Something like this or this or this.
I wonder if we can download pre-trained models with that and then display the images from Smalltalk. Did you ever try? @SergeStinckwich ?

nope, i didn't try to do object detection  with TensorFlow C API (tried object detection, semantic segmentation, etc. in TensorFlow Lite C API before). As far as I know, for inference only, it's not hard.

make sure that processing ops are included in the libraries (should be yes, otherwise you have implement post-processing such as non-maximum suppression)
run it and collect results like what we do in label_image

I've been taking a look at
https://github.com/tensorflow/models/blob/477ed41e7e4e8a8443bc633846eb01e2182dc68a/object_detection/object_detection_tutorial.ipynb
and it's VERY possible to use any of the frozen models from
https://github.com/tensorflow/models/blob/477ed41e7e4e8a8443bc633846eb01e2182dc68a/object_detection/g3doc/detection_model_zoo.md
to get the boxes for the detected objects in images from COCO (
http://cocodataset.org/).
We don't need anything else, all is there. I will try to code what the
notebook does (In Smalltalk). I just need one full hour I estimate. I
checked already, and all we need is there... probably reading the label_map
file is the most complicated operation... but I'm sure we can figure it out

alright, the labelmap is a pbtxt, and very simple, so we can definately
load it somehow. it looks like:
item {
name: "background"
id: 0
display_name: "background"
}
item {
name: "/m/01g317"
id: 1
display_name: "person"
}
frim
https://github.com/tensorflow/models/blob/master/research/object_detection/data/mscoco_complete_label_map.pbtxt

This is great ! We need some way to download datasets/serialized networks more easily.

I moved this conversation to a new issue #5  and I will close this one as we can considered it done.


Feature request.

Hi, I would love a feature where you can have a "Wand" to right click a chest and sell all of it's contents (that exists in d-s) to dynamic shop.
Or use the Quick sell feature to bind to an item in config, that could sell everything form a chest when you right or left click it.(Can be optional in config)

Hey @sketrick. I'm not dev for this plugin, but  SellStick currently allows you to sell items from a chest like you said, but does NOT hook into DynamicShop just yet. I've created an issue that would allow for this to happen.

Hey @sketrick. I'm not dev for this plugin, but  SellStick currently allows you to sell items from a chest like you said, but does NOT hook into DynamicShop just yet. I've created an issue that would allow for this to happen.

https://github.com/7sat/SSDynamicShop/commit/191252fdcfae01b3d334b52fcf8893fe8eb43275
Issues will be tracked here : https://github.com/7sat/SSDynamicShop/issues/43


[RFC][WIP] Eliminate liferay-theme-deps-* packages

This is just a WIP; there a bunch of failing tests because I haven't tackled the places where we have a dynamic resolution in place (where we look for "liferay-theme-deps-*" packages at runtime and use that to switch the "require" behavior).
Just pushing this as an early preview anyway. With this PR, the "packages/" dir contains:

generator-liferay-theme
liferay-theme-es2015-hook
liferay-theme-mixins
liferay-theme-tasks

Related: https://github.com/liferay/liferay-themes-sdk/issues/168
Disclaimer: built on top of #167 so it redundantly includes that commit as the first one in the chain.

I'm going to re-push this as a draft.


Allow vi (or a more friendly editor) to work in single user mode

Spun off from https://github.com/helloSystem/ISO/issues/68#issuecomment-753427257

… critically, vi does not work.

`vi: No terminal database found

Have you tried nano?

Have you tried nano?

Don't forget mount -uw / to mount r/w

Don't forget mount -uw / to mount r/w

Thanks, I had performed the mount command on previous occasions.
Continuation of the VirtualBox session:

Thanks, I had performed the mount command on previous occasions.
Continuation of the VirtualBox session:

Seems related:
https://lists.freebsd.org/pipermail/freebsd-bugs/2005-April/012630.html
Maybe you can figure something out.
Are we still shipping vi? It may be a candidate for removal to get the ISO smaller.

Seems related:
https://lists.freebsd.org/pipermail/freebsd-bugs/2005-April/012630.html
Maybe you can figure something out.
Are we still shipping vi? It may be a candidate for removal to get the ISO smaller.

Result of exit – an unexpected halt:

Expected: exit to multi-user mode.
Guest machine reset. Reproducible with a simple exit immediately after gaining the command prompt in single user mode:
https://user-images.githubusercontent.com/192271/103453231-c317f300-4ccf-11eb-9643-6599fb977190.mp4
hello-13.0-CURRENT-2d0fc2a-amd64.iso

I see (probably older) hello-13.0-CURRENT-488dd3a-amd64.iso at https://github.com/helloSystem/ISO/releases – I'll retry with that.

Result of exit – an unexpected halt:

Expected: exit to multi-user mode.
Guest machine reset. Reproducible with a simple exit immediately after gaining the command prompt in single user mode:
https://user-images.githubusercontent.com/192271/103453231-c317f300-4ccf-11eb-9643-6599fb977190.mp4
hello-13.0-CURRENT-2d0fc2a-amd64.iso

I see (probably older) hello-13.0-CURRENT-488dd3a-amd64.iso at https://github.com/helloSystem/ISO/releases – I'll retry with that.

vi
https://github.com/helloSystem/ISO/issues/75#issuecomment-753443170

… may be a candidate for removal to get the ISO smaller.

I dislike vi but removal may be highly contentious.
Defocusing from single user mode
It's not yet clear whether my (environment) preference for nano in lieu of vi is contributory to mergemaster misbehaving; see the foot of https://lists.freebsd.org/pipermail/freebsd-current/2021-January/078083.html.

vi
https://github.com/helloSystem/ISO/issues/75#issuecomment-753443170

… may be a candidate for removal to get the ISO smaller.

I dislike vi but removal may be highly contentious.
Defocusing from single user mode
It's not yet clear whether my (environment) preference for nano in lieu of vi is contributory to mergemaster misbehaving; see the foot of https://lists.freebsd.org/pipermail/freebsd-current/2021-January/078083.html.

I dislike vi but removal may be highly contentious.

I see, it is currently in base... let's not remove it for now then.

I dislike vi but removal may be highly contentious.

I see, it is currently in base... let's not remove it for now then.

Can we close this issue since nano works?

Can we close this issue since nano works?

Can we close this issue since nano works?

Can we close this issue since nano works?

Above https://github.com/helloSystem/ISO/issues/75#issuecomment-753442991 I could not find nano in the file system.
More generally, commands such as these fail unexpectedly in single user mode:

find
which
uname

Above https://github.com/helloSystem/ISO/issues/75#issuecomment-753442991 I could not find nano in the file system.
More generally, commands such as these fail unexpectedly in single user mode:

find
which
uname

Let's not change any FreeBSD defaults for single user mode. That is "low level stuff" and it best works if it is 1:1 FreeBSD.

Let's not change any FreeBSD defaults for single user mode. That is "low level stuff" and it best works if it is 1:1 FreeBSD.

Please clarify that with "single user mode" you mean a Live system booted with -s or an installed system booted with -s.
Only the latter should work as usual in FreeBSD. The former is not for users, only for the developers of the Live system.
You will land here:
https://github.com/helloSystem/ISO/blob/1adff8e926328ba98fcaa02cea8b24190945640e/overlays/ramdisk/init.sh#L45

Please clarify that with "single user mode" you mean a Live system booted with -s or an installed system booted with -s.
Only the latter should work as usual in FreeBSD. The former is not for users, only for the developers of the Live system.
You will land here:
https://github.com/helloSystem/ISO/blob/1adff8e926328ba98fcaa02cea8b24190945640e/overlays/ramdisk/init.sh#L45

To clarify:

booting from FreeBSD-13.0-CURRENT-amd64-20201224-3cc0c0d66a0-255241-disc1.iso in single user mode works as expected – uname and the other commands
booting from a helloSystem .iso in single user mode does not allow use of the commands

To clarify:

booting from FreeBSD-13.0-CURRENT-amd64-20201224-3cc0c0d66a0-255241-disc1.iso in single user mode works as expected – uname and the other commands
booting from a helloSystem .iso in single user mode does not allow use of the commands

Yes, because the single user mode in helloSystem is used to debug its ramdisk. So I think this works as intended.

Yes, because the single user mode in helloSystem is used to debug its ramdisk. So I think this works as intended.


[PE-D][Tester E] Renametag does not rename the tag in filter predicate

filter t/bug

renametag t/bug t/hi. Filter applied is still bug.

Labels: severity.Low type.FunctionalityBug
original: seah-minlong/ped#16

issue solved


uint vs uint16 for vcpus?

How come the setter and getter for CPU's isn't the same type?
Eg:
func (d *VirDomain) SetVcpus(vcpu uint) error
vs.
func (i *VirDomainInfo) GetNrVirtCpu() uint16
Or did I miss something? If not, LMK what we prefer, I'm happy to write the patch.

Switching uint16 to uint seems a good move for me.

I've added a patch for this: https://github.com/rgbkrk/libvirt-go/pull/121


Automated cherry pick of #9646

Cherry pick of #9646 on release-6.4.
/cc  @koox00
NONE

Will try to auto merge this PR once all tests and checks are passing. This might take up to an hour.

Trying to auto merge this PR.

Pull Request successfully merged
SHA: 562b6f6004fba0b665982185f2418f27f543064c


Program that Replaces Specified Text String In a Text File

For interest, this can be done in a one line sed command
sed 's/foo/bar/g' hello.txt

Link
But the Python approach is nice as part of a larger application.

For interest, this can be done in a one line sed command
sed 's/foo/bar/g' hello.txt

Link
But the Python approach is nice as part of a larger application.

Fair point. I was just being consistent with the repo name "Python" and this script is good for Windows users and Linux newbies like me (lol).


Feature/rca scatter

RCA toggle for scatters

What is not done,
COPY for ES

added translation on<PHONE_NUMBER>fdc90f1d3cb3d17611bd9ec8d08ed7

http://ci-deploys.cid-labs.com/cid-harvard/atlas-subnational-frontend/feature/rca-scatter/191/
ACCEPTANCE:
Scatter plots can filter RCA value in change characteristics.

Checks out.


Vector processing issue

Added tests that fails.
WIP

@vpisarev Vadim, could you take a look on this issue?
Are there any layout policy to std::vector? Should it be "row vector" or "column-vector" (or may be used somehow in both cases, that actually doesn't work well)?

initially vector was meant as Nx1 matrix (single column-vector). However later I found quite a bit of code where vector is treated as single-row matrix. So now we just try not to break any function. And of course it's not only about OpenCV itself, but also about the user code.

:+1:


Create new app

I get started with ignite, i can't create base proyect
▶ ignite new igniteAndross  --boilerplate andross
-----------------------------------------------
  (                  )   (
  )\ )   (        ( /(   )\ )    *   )
 (()/(   )\ )     )\()) (()/(  ` )  /(   (
  /(_)) (()/(    ((_)\   /(_))  ( )(_))  )\
 (_))    /(_))_   _((_) (_))   (_(_())  ((_)
 |_ _|  (_)) __| | \| | |_ _|  |_   _|  | __|
  | |     | (_ | | .` |  | |     | |    | _|
 |___|     \___| |_|\_| |___|    |_|    |___|
-----------------------------------------------

An unfair headstart for your React Native apps.
https://infinite.red/ignite

-----------------------------------------------

🐉 You're using a prerelease version of Ignite CLI (ignite --version). Please report bugs!
   While it should be reasonably stable, we'd love more testing.
   Thank you for being a prerelease tester and please report bugs!
   https://github.com/infinitered/ignite/issues

🔥 igniting app igniteAndross
✔ using the Infinite Red boilerplate v2 (code name 'Andross')
✔ added React Native 0.59.3 in 39.29s
✔ Would you like Ignite Development Screens? · Yes
✔ What vector icon library will you use? · react-native-vector-icons
✔ What internationalization library will you use? · react-native-i18n
✔ What animation library will you use? · react-native-animatable
✔ Would you like to include redux-persist? · Yes
✔ added ignite-andross in 52.06s
an error occured while installing ignite-andross boilerplate.
TypeError: Cannot read property 'toLowerCase' of undefined
    at Object.install (/home/juan/gits/igniteAndross/node_modules/ignite-andross/boilerplate.js:182:79)
    at process._tickCallback (internal/process/next_tick.js:68:7)
error installing boilerplate

▶ node -v
v10.15.3

▶ ignite -v
3.0.0-beta.3

This is fixed with the release of Ignite 3 and the latest boilerplates.


where I can find the app

Hello, I'm new here and still a beginner. can someone please explain to me where I can find the app

@riwad17

where I can find the app

The simple answer to the question is that the Android Corona-Warn-App is published and available on the Google Play Store.
You can also search on your mobile Android device for corona-warn-app in Google Play Store.
The pre-requisites are listed on https://www.coronawarn.app/en/faq/#availability, for Android, this is Android version 6 or higher and Google Play services must also be installed.
In addition, if your Google account is not linked to Germany, you can only access the app if your account country is on the list on https://www.coronawarn.app/en/faq/#international, which basically includes Germany and other European countries.
Assuming that your device fulfills the pre-requisites, another way to find the app is through
Settings > Google > COVID-19 Exposure Notifications
then tap "Select your region" > Germany > Continue
which finds "Corona-Warn-App" and allows you to install it.

Hi @riwad17,
Thanks for the question. We appreciate that you want to install the app. Your question was answered by @MikeMcC399. Did you have success in installing the app or do you have more questions?
Best, DS

Corona-Warn-App Open Source Team

@dsarkar
This issue should be closed. The question is answered and there was no further response from @riwad17.


pkg/analysis_server/test/integration/analysis/package_root_test is flaky

I'll mark it as Pass, RuntimeError.
Build: https://ci.chromium.org/p/dart/builders/luci.dart.try/pkg-linux-release-try/3427
Full log: https://logs.chromium.org/v/?s=dart%2Fbuildbucket%2Fcr-buildbucket.appspot.com%2F8944373507169891616%2F%2B%2Fsteps%2Fpackage_unit_tests%2F0%2Fstdout
FAILED: none-vm-checked release_x64 pkg/analysis_server/test/integration/analysis/package_root_test
Expected: Pass
Actual: RuntimeError
--- Command "vm" (took 04.000028s):
DART_CONFIGURATION=ReleaseX64 out/ReleaseX64/dart-sdk/bin/dart --no-preview-dart-2 --enable_asserts --enable_type_checks --ignore-unrecognized-flags --packages=/b/s/w/ir/cache/builder/sdk/.packages /b/s/w/ir/cache/builder/sdk/pkg/analysis_server/test/integration/analysis/package_root_test.dart
exit code:
255
stdout:
00:00 +0: SetAnalysisRootsTest | test_package_root
00:02 +0 -1: SetAnalysisRootsTest | test_package_root [E]
  NoSuchMethodError: The getter 'iterator' was called on null.
  Receiver: null
  Tried calling: iterator
  dart:core-patch/dart:core/object_patch.dart 46                              Object.noSuchMethod
  pkg/analysis_server/test/integration/analysis/package_root_test.dart 65:39  SetAnalysisRootsTest.test_package_root.<fn>

Closing as obselete.


Support newer react-navigation

On the peer dependencies only version 1 and 2 are supported, thus I'm having this warning:
warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^2.0.0".
Could you please update the peer dependency on your package.json?

hi, thanks for reporting, this is fixed in v1.3.2

support react-navigation 5


Added checks to prevent incorrect member behavior

Making sure we really don't remove us from the member cache and check whether the member was actually in the guild or not.
If this contains an incorrect change let me know as I'm not too sure it would help.

In the situation, I am pretty sure that the member is null because it is actually referencing the selfMember which was removed already in an out of order GUILD_DELETE. I'd like to have some testing done on this, but either way, im not sure that an error needs to be printed to the console in any case.


Overlaying map with different colors to each state/countries

Hi Team,
I am new to open layers development. I have requirement to draw different colors on the US states based on the US state co-ordinates. I managed to draw the borders on the US map. But unable to set different colors to each states. Is there any option to set different colors to each states or countries. I want to populate the color like attached snapshot. If i get any quick help with solution would be great helpfull to continue the research.
I would really appreciate your speedy response.

Please ask usage questions on StackOverflow. Regarding your question I would recommend you to take a look at the documentation (e.g. Understanding Style or ol.Style).


Add third parameter's sortByKeysParameter to Arr::only

Haven't third parameter
$array = ['size' => 10, 'name' => 'Desk', 'price' => 100, 'orders' => 10];
$array = Arr::only($array, ['name', 'price', 'size']);

array:3 [
  "size" => 10
  "name" => "Desk"
  "price" => 100
]

Have third parameter
$array = ['size' => 10, 'name' => 'Desk', 'price' => 100, 'orders' => 10];
$array = Arr::only($array, ['name', 'price', 'size'], true);

array:3 [
  "name" => "Desk"
  "price" => 100
  "size" => 10
]

Why sort the named parameters?
This is not a claim.
An interesting task in which it would be useful

@MammutAlex There is a function to export Excel, so I need to sort the names.
JSON in testing is only the order of test result.
Sorry, I'm not good at English.

This is a breaking change to the method signature of the only method and at the very least should be sent to the master branch.


Emmet balance commands not working on html files with unclosed tag

Issue Type: Bug

Open a file like:

      First part of file

Place cursor at opening

Open command palette
Run Emmet command; eg 'Emmet: Balance (Outward)'

This should highlight from the
 to
 inclusive. Currently does nothing with no error either appearing or in Developer Console.
After closing  and  functions as expected.
This occurs with all extensions disabled, and in the latest Insiders build.
VS Code version: Code 1.51.1 (e5a624b788d92b8d34d1392e4c4d9789406efe8f, 2020-11-10T23:34:32.027Z)
OS version: Windows_NT x64 10.0.19042

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-6800K CPU @ 3.40GHz (12 x 3400)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: disabled_offopengl: enabled_onprotected_video_decode: unavailable_offrasterization: enabledskia_renderer: disabled_off_okvideo_decode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
31.90GB (19.37GB free)

Process Argv
--disable-extensions

Screen Reader
no

VM
0%

Extensions disabled

Interesting use case.
I'll mark this as a duplicate of #99896 but keep this case in mind

Although not a common practice within modern development, it's still an extremely common practice within WordPress theme development for example to open tags in a different file than you close them.
It would be very useful to be able to still use emmet within those files.

I will un-duplicate this issue because there's a problem within the balancing algorithm itself, rather than just the HTML parser.

\closedWith 483bd40

Verifier:

Create an HTML file with the following contents

      First part of file

Place cursor on the word "First"
Run Emmet: Balance (outward) command twice. Verify range from
 to
 is selected.
Run Emmet: Balance (inward) command twice. Verify cursor is in same location as in step 2.

/verified

/verified


Catch HTTPStatusErrors on delete kernel session

Deleting kernel session after successful execution of a notebook can sometimes fail due to Noteable server errors; this PR adds an except clause to be more defensive with these errors.

Added 0.0.17 release changes as well


CC Licenses added in PT-BR books section

What does this PR do?
Add info based on https://github.com/EbookFoundation/free-programming-books/issues/11355
For resources
Description

Sistemas Operacionais: Conceitos e Mecanismos - Carlos A. Maziero (PDF)
License (CC BY-NC-SA) found at page 3
Inteligência artificial: avanços e tendências - Fabio G. Cozman, Guilherme Ary Plonski, Hugo Neri (PDF)
License (CC BY-NC-SA) found at page 4
Processamento de Linguagem Natural: Conceitos, Técnicas e Aplicações em Português - Helena M. Caseli, Maria G. V. Nunes (PDF)
License (CC BY-NC-ND) found in the right side of the webpage
A Internet das Coisas - Eduardo Magrani (PDF)
License (CC BY-SA) found at page 4

Why is this valuable (or not)?
How do we know it's really free?
For book lists, is it a book? For course lists, is it a course? etc.

It's a book

Checklist:

[x] Read our contributing guidelines.
[x] Search for duplicates.
[x] Include author(s) and platform where appropriate.
[x] Put lists in alphabetical order, correct spacing.
[x] Add needed indications (PDF, access notes, under construction).
[x] Used an informative name for this pull request.

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

Merge conflicts resolved.


Video stream doesnt add in SipML5

a) Before posting your issue you MUST answer to the questions otherwise it
will be rejected (invalid status) by us
b) Please check the issue tacker to avoid duplication
c) Please provide network capture (Wireshark) or Javascript console log
if you want quick response

What steps will reproduce the problem?
1. Install asterisk 13 using the following guide:
https://kunjans.wordpress.com/2015/01/09/web-sip-client-sipml5-with-asterisk-13-
on-centos-6-6/
2. Use PJSIP as the sip driver, and allow alaw,ulaw,vp8
3. Login with 2 endpoints on SipML5 demo

What is the expected output?
When the call is answered, there is audio and Video flowing.

What do you see instead?
On Chrome I get call terminated when anwering it, and i see this errors in the
Asterisk logs:
WARNING[1844][C-00000010]: res_srtp.c:407 ast_srtp_unprotect: SRTP unprotect
failed with: authentication failure 10
WARNING[1844][C-00000010]: res_srtp.c:407 ast_srtp_unprotect: SRTP unprotect
failed with: authentication failure 110

On FireFox, only audio is working, but the call works without errors.

When I call from a zoiper client, to a SipMl5 endpoint, I see video from SipML5
on the zoiper client. But not the other way around.

What version of the product are you using?
I use the demo of SipML5 r230

On what operating system?
Windows 8.1 64 bit

On what browser:
Chrome 41.0.2272.101 m
FireFox 36.0.4

On what native client:
Zoiper 3.6.25251

Please provide any additional information below.

I have used all kinds of patches, like the opus vp8 patch. But this didnt work
either. It looks like the video stream doesn't add into the html of SipML5.

With working accounts from OnSIP it doesnt work either, only audio. But when I
use JSSIP with OnSIP I have audio and video. That gets me thinking that de
video of SipML5 is broken?

Original issue reported on code.google.com by<EMAIL_ADDRESS>on 2 Apr 2015 at 9:11

This problem is solved?


Prepare-Release script should handle outdated devops extension

For folks that are using Prepare-Release script with a newer az cli (> 2.30.0) and an older azure-devops extension (< 0.22.0) they will hit an error similar to:
ERROR: Before you can run Azure DevOps commands, you need to run the login command(az login if using AAD/MSA identity else az devops login if using PAT token) to setup credentials.  Please see https://aka.ms/azure-devops-cli-auth for more information.

This is because the authentication between the extension and the cli was broken. To fix this folks need to update the version of the azure-devops extension (az extension update --name azure-devops).
We should just do that for them inside of our Prepare-Release script by always updating to the latest version of the extension at https://github.com/Azure/azure-sdk-tools/blob/main/eng/common/scripts/Update-DevOps-Release-WorkItem.ps1#L32.

I fixed this in another place so will apply it for this issue as well.


Allow users to create their own aliases (and store them in the settings file).

What settings file? In the project json file? Or something more global? I guess I thought that went away :P
My only concern here is then sharing that project file without the global settings file including the aliases would cause problems.
Two thoughts on this...

I already wanted to add bibliopixel gen_project_template or something that would spit out a template to start from to whatever file you specified.
Now I think we should add bibliopixel dist <project_file> or similar, that would resolve any aliases or anything else that might be user local specific.

The settings file still exists - we just don't put anything in it!

My only concern here is then sharing that project file without the global settings file including the aliases would cause problems.

:-o
That's actually a really good point that cannot be gotten over.
If we dump custom aliases, do we really need bibliopixel dist?  What else do we get out of it?
Are we really going to look at all the cruft that people have installed in the PYTHONPATH and force this on all users of their casual one-liner JSON?
I think we should not have a bibliopixel dist. I think we should be encouraging people to use as bare a virtualenv as possible and instead rely on gitty loading for all their third-party projects.


Compilation Error: No resource found that matches the given name

Your Environment

Plugin version: Latest
Platform: Android
OS version: I have no idea
Device manufacturer and model: None because it doesn't compile.
React Native version: v0.55.3
Plugin configuration options:

BackgroundGeolocation.configure({
            desiredAccuracy: BackgroundGeolocation.HIGH_ACCURACY,
            stationaryRadius: 2,
            distanceFilter: 2,
            notificationTitle: 'Background tracking',
            notificationText: 'enabled',
            debug: true,
            startOnBoot: false,
            stopOnTerminate: false,
            locationProvider: BackgroundGeolocation.ACTIVITY_PROVIDER,
            interval: 5000,
            fastestInterval: 5000,
            activitiesInterval: 5000,
            stopOnStillActivity: false
});

Link to your project:

Context
I am attempting to track locations in the background since React's own navigation doesn't work when the screen turns off. I found this module and am trying to get it to work, but I get errors on compilation.
Expected Behavior
I'm expecting this to compile with react-native run-android, so I can see the location updates.
Actual Behavior
"node_modules\react-native-mauron85-background-geolocation\android\common\build\intermediates\res\merged\preoreo\debug\drawable\common_google_signin_btn_icon_light_normal.xml:3: error: Error: No resource found that matches the given name (at 'drawable' with value '@drawable/common_google_signin_btn_icon_light_normal_background')."
And other similar for other backgrounds. I have installed every single version of the Android SDK, I've tried editing the build.gradle for this module itself to use Version 23.0.2 like React Native is, I've tried editing both to use 26.0.2 and nothing fixes the errors. I've enabled Long Paths in Windows and restarted multiple times, and it's driving me up the wall that I can't just drop it in and have it work.
Possible Fix
N/A
Steps to Reproduce

npm install react-native-mauron85-background-geolocation
react-native link react-native-mauron85-background-geolocation
react-native run-android
???
Not Profit.

Context

Debug logs
:react-native-mauron85-background-geolocation-common:mergePreoreoDebugResources
:react-native-mauron85-background-geolocation-common:processPreoreoDebugManifest UP-TO-DATE
:react-native-mauron85-background-geolocation-common:processPreoreoDebugResources
node_modules\react-native-mauron85-background-geolocation\android\common\build\intermediates\exploded-aar\com.google.android.gms\play-services-base\15.0.1\res\drawable\common_google_signin_btn_icon_dark_normal.xml:3:29-91: AAPT: No resource found that matches the given name (at 'drawable' with value '@drawable/common_google_signin_btn_icon_dark_normal_background').
node_modules\react-native-mauron85-background-geolocation\android\common\build\intermediates\exploded-aar\com.google.android.gms\play-services-base\15.0.1\res\drawable\common_google_signin_btn_icon_light_normal.xml:3:29-92: AAPT: No resource found that matches the given name (at 'drawable' with value '@drawable/common_google_signin_btn_icon_light_normal_background').
node_modules\react-native-mauron85-background-geolocation\android\common\build\intermediates\exploded-aar\com.google.android.gms\play-services-base\15.0.1\res\drawable\common_google_signin_btn_text_dark_normal.xml:3:29-91: AAPT: No resource found that matches the given name (at 'drawable' with value '@drawable/common_google_signin_btn_text_dark_normal_background').
node_modules\react-native-mauron85-background-geolocation\android\common\build\intermediates\exploded-aar\com.google.android.gms\play-services-base\15.0.1\res\drawable\common_google_signin_btn_text_light_normal.xml:3:29-92: AAPT: No resource found that matches the given name (at 'drawable' with value '@drawable/common_google_signin_btn_text_light_normal_background').
node_modules\react-native-mauron85-background-geolocation\android\common\build\intermediates\res\merged\preoreo\debug\drawable\common_google_signin_btn_icon_dark_normal.xml:3: error: Error: No resource found that matches the given name (at 'drawable' with value '@drawable/common_google_signin_btn_icon_dark_normal_background').
node_modules\react-native-mauron85-background-geolocation\android\common\build\intermediates\res\merged\preoreo\debug\drawable\common_google_signin_btn_icon_light_normal.xml:3: error: Error: No resource found that matches the given name (at 'drawable' with value '@drawable/common_google_signin_btn_icon_light_normal_background').
node_modules\react-native-mauron85-background-geolocation\android\common\build\intermediates\res\merged\preoreo\debug\drawable\common_google_signin_btn_text_dark_normal.xml:3: error: Error: No resource found that matches the given name (at 'drawable' with value '@drawable/common_google_signin_btn_text_dark_normal_background').
node_modules\react-native-mauron85-background-geolocation\android\common\build\intermediates\res\merged\preoreo\debug\drawable\common_google_signin_btn_text_light_normal.xml:3: error: Error: No resource found that matches the given name (at 'drawable' with value '@drawable/common_google_signin_btn_text_light_normal_background').
:react-native-mauron85-background-geolocation-common:processPreoreoDebugResources FAILED
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':react-native-mauron85-background-geolocation-common:processPreoreoDebugResources'.

com.android.ide.common.process.ProcessException: Failed to execute aapt

reading gradle error log play-services-base\15.0.1, I would say this version is incompatible with this plugin (and most other plugins too).

Hi Mauron,
Unfortunately this didn't fix the issue, even forcing it to compile with play-services-location 11.8.0, and setting google's maven links in the root build.gradle
Is there anything else I can try? How can I downgrade the play-services-base?

Basically, I need this module or else the entire point of the app I am developing is useless. I'm at a point where I either get this to work, or have to try using the other module that can do this - and that has a $300 license fee for just 1 app.
I am willing to basically try anything to get this to just work.


Use Snowflake as backend and dialect

In this whole example, it will be better to use Snowflake as transformation backend and dialect in this query:
https://help.keboola.com/tutorial/manipulate#transformation-script

fixed in 9ebfee59c5ec703250a69faeebfc72dc27a379b0


Symbolic link for yaml-storage gives java.nio.file.FileAlreadyExistsException

Ahoy!
I have a few servers on the same machine with split storage
split-storage:
  enabled: true
  methods:
    user: MySQL
    group: yaml
    track: yaml
    uuid: MySQL
    log: MySQL

Its much, much easier to manage permissions using flatfiles while keeping user data and logs in MySQL, the only issue I have is with multiple servers having their own Groups in YAML it gets very messy when updating and changing plugins on one server, and having to copy them over to another, the simplest solution I could think of was a Symbolic link for the yaml-storage folder to the other server so then I could edit one set of permissions and set per-server or per-world in this one set of permissions!
Sadly when booting the second server, it threw  a bunch of errors;
[16:43:17] [Server thread/INFO]: [LuckPerms] Loading configuration...
[16:43:18] [Server thread/INFO]: [LuckPerms] Loading storage provider... [SPLIT STORAGE]
[16:43:18] [Server thread/WARN]: java.nio.file.FileAlreadyExistsException: /home/user/folder/plugins/LuckPerms/yaml-storage
[16:43:18] [Server thread/WARN]: 	at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:94)
[16:43:18] [Server thread/WARN]: 	at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
[16:43:18] [Server thread/WARN]: 	at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:116)
[16:43:18] [Server thread/WARN]: 	at java.base/sun.nio.fs.UnixFileSystemProvider.createDirectory(UnixFileSystemProvider.java:389)
[16:43:18] [Server thread/WARN]: 	at java.base/java.nio.file.Files.createDirectory(Files.java:689)
[16:43:18] [Server thread/WARN]: 	at java.base/java.nio.file.Files.createAndCheckIsDirectory(Files.java:796)
[16:43:18] [Server thread/WARN]: 	at java.base/java.nio.file.Files.createDirectories(Files.java:742)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.common.util.MoreFiles.createDirectoriesIfNotExists(MoreFiles.java:57)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.common.storage.implementation.file.AbstractConfigurateStorage.init(AbstractConfigurateStorage.java:159)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.common.storage.implementation.file.SeparatedConfigurateStorage.init(SeparatedConfigurateStorage.java:151)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.common.storage.implementation.split.SplitStorage.init(SplitStorage.java:86)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.common.storage.Storage.init(Storage.java:115)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.common.storage.StorageFactory.getInstance(StorageFactory.java:88)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.common.plugin.AbstractLuckPermsPlugin.enable(AbstractLuckPermsPlugin.java:146)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.bukkit.LPBukkitBootstrap.onEnable(LPBukkitBootstrap.java:161)
[16:43:18] [Server thread/WARN]: 	at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:264)
[16:43:18] [Server thread/WARN]: 	at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:316)
[16:43:18] [Server thread/WARN]: 	at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405)
[16:43:18] [Server thread/WARN]: 	at org.bukkit.craftbukkit.v1_12_R1.CraftServer.enablePlugin(CraftServer.java:395)
[16:43:18] [Server thread/WARN]: 	at org.bukkit.craftbukkit.v1_12_R1.CraftServer.enablePlugins(CraftServer.java:344)
[16:43:18] [Server thread/WARN]: 	at net.minecraft.server.v1_12_R1.DedicatedServer.init(DedicatedServer.java:223)
[16:43:18] [Server thread/WARN]: 	at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:616)
[16:43:18] [Server thread/WARN]: 	at java.base/java.lang.Thread.run(Thread.java:834)
[16:43:18] [Server thread/INFO]: [me.lucko.luckperms.lib.hikari.HikariDataSource] luckperms-hikari - Starting...
[16:43:18] [Server thread/INFO]: [me.lucko.luckperms.lib.hikari.HikariDataSource] luckperms-hikari - Start completed.
[16:43:18] [Server thread/ERROR]: [LuckPerms] Failed to init storage implementation
[16:43:18] [Server thread/WARN]: java.lang.RuntimeException: One of the backings failed to init
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.common.storage.implementation.split.SplitStorage.init(SplitStorage.java:93)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.common.storage.Storage.init(Storage.java:115)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.common.storage.StorageFactory.getInstance(StorageFactory.java:88)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.common.plugin.AbstractLuckPermsPlugin.enable(AbstractLuckPermsPlugin.java:146)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.bukkit.LPBukkitBootstrap.onEnable(LPBukkitBootstrap.java:161)
[16:43:18] [Server thread/WARN]: 	at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:264)
[16:43:18] [Server thread/WARN]: 	at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:316)
[16:43:18] [Server thread/WARN]: 	at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405)
[16:43:18] [Server thread/WARN]: 	at org.bukkit.craftbukkit.v1_12_R1.CraftServer.enablePlugin(CraftServer.java:395)
[16:43:18] [Server thread/WARN]: 	at org.bukkit.craftbukkit.v1_12_R1.CraftServer.enablePlugins(CraftServer.java:344)
[16:43:18] [Server thread/WARN]: 	at net.minecraft.server.v1_12_R1.DedicatedServer.init(DedicatedServer.java:223)
[16:43:18] [Server thread/WARN]: 	at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:616)
[16:43:18] [Server thread/WARN]: 	at java.base/java.lang.Thread.run(Thread.java:834)
[16:43:18] [Server thread/INFO]: [LuckPerms] Loading messaging service... [BUNGEE]
[16:43:18] [Server thread/INFO]: [LuckPerms] Loading internal permission managers...
[16:43:18] [Server thread/INFO]: [LuckPerms] Performing initial data load...
[16:43:18] [Server thread/WARN]: java.util.concurrent.CompletionException: java.lang.NullPointerException
[16:43:18] [Server thread/WARN]: 	at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:314)
[16:43:18] [Server thread/WARN]: 	at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:319)
[16:43:18] [Server thread/WARN]: 	at java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1739)
[16:43:18] [Server thread/WARN]: 	at java.base/java.util.concurrent.CompletableFuture$AsyncRun.exec(CompletableFuture.java:1728)
[16:43:18] [Server thread/WARN]: 	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
[16:43:18] [Server thread/WARN]: 	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
[16:43:18] [Server thread/WARN]: 	at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
[16:43:18] [Server thread/WARN]: 	at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
[16:43:18] [Server thread/WARN]: 	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
[16:43:18] [Server thread/WARN]: Caused by: java.lang.NullPointerException
[16:43:18] [Server thread/WARN]: 	at java.base/java.nio.file.Files.provider(Files.java:100)
[16:43:18] [Server thread/WARN]: 	at java.base/java.nio.file.Files.newDirectoryStream(Files.java:471)
[16:43:18] [Server thread/WARN]: 	at java.base/java.nio.file.Files.list(Files.java:3698)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.common.storage.implementation.file.SeparatedConfigurateStorage.loadAllGroups(SeparatedConfigurateStorage.java:287)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.common.storage.implementation.split.SplitStorage.loadAllGroups(SplitStorage.java:173)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.common.storage.Storage.lambda$loadAllGroups$10(Storage.java:195)
[16:43:18] [Server thread/WARN]: 	at me.lucko.luckperms.common.storage.Storage.lambda$makeFuture$1(Storage.java:99)
[16:43:18] [Server thread/WARN]: 	at java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1736)
[16:43:18] [Server thread/WARN]: 	... 6 more
[16:43:19] [Server thread/INFO]: [LuckPerms] Successfully enabled. (took 1177ms)

Searching for java.nio.file.FileAlreadyExistsException gives me this stack overflow which says that its when the same file is already open in another thread.
https://stackoverflow.com/a/43669557/381907

I think it’s best for you to use the context feature of luckperms to have per world/server permission. https://github.com/lucko/LuckPerms/wiki/Context

I think it’s best for you to use the context feature of luckperms to have per world/server permission. https://github.com/lucko/LuckPerms/wiki/Context

How would I use contexts with multiple servers? Just have 1 instance of LuckPerms on the bungee server and not on each server itself then setting contexts in the bungee?
At present I have it on the bungee with no perms, then installed LuckPerms on each server, each server has its own folder with its own yaml-storage folder.

You need to have luckperms of all server and sync them to a common sql database. Then, use context to set permissions/groups to a per server/world basis.
https://github.com/lucko/LuckPerms/wiki/Context

Yeah, I've had a shared database for users for years, I'm not looking to move permissions to mysql, they need to stay as flatfile, that's why I tried the symbolic link. I've found multiple other posts saying they did the same thing with success.
I already have got it on my bungee and all servers, all already linked to mysql for users (see my first post explaining with my data structures/
) I just want a shared tank permissions where I can set contexts for per server in the same config files, then I can share perms.

they need to stay as flatfile

No they don’t. You’d be the first person ever to actually need to use YAML.
I mean you’re trying to do what using a database does with YAML. That’s a recipe for disaster.
Using symlinks is not a supported setup. Not because it’s impossible or even hard to do but because it means you have severe flaws in your storage concept. If you need to have YAML files synced you’re doing it wrong.
Now I’m giving you the benefit of the doubt. While I do think that the setup you’re attempting to use is fundamentally flawed I want to give you the opportunity to explain what you are trying to do and why you think that syncing YAML files between servers is the best way to go about things instead of just using a database.

Different workflows.
Why Flatfile beats MySQL for just permissions not users/logs, see first post I never doubted that have used MySQL for users/logs for years.
All 4 servers are on the same machine. I have a basic structure:

Minecraft Folder

Server_1/plugins/LuckPerms /yaml-storage/groups
Server_2/plugins/LuckPerms /yaml-storage/groups
Server_3/plugins/LuckPerms /yaml-storage/groups
Server_4/plugins/LuckPerms /yaml-storage/groups

I have 80 plugins, All of them have YAML configs, I have access to all of them from a local copy in VSCode using the VSCode workspace.

All 4 of my servers are accessible on the same structure easily from one window in VsCode, same single editor for all plugins, no need to separate this for 1 plugin.

I can edit and push a permission change without needing to Login to Minecraft/console not run any commands, not need to open a web browser, not do any of the extra 3-4 steps to use the web UI.

I have the full scope of VsCode or whatever edtior I need for the specific tasks at hand to quickly search and replace, organize, copy/paste, manage all my permissions locally, in a fast way using an editor, and offline.

My recommendation is an addition to the file-watcher service included with luckperms, you could easily have the file-watcher trigger a copy/run a script when it detects a change, for example, when it detects that default.yml has changed it could copy that file to 3 other locations, which on those servers will automatically update due to the file watcher.
A bit like rsync, alternatively, I could keep 4 separate copies and use rsync, if I could get a script to trigger on the event of file changes, if none of this happens, then I guess I will just have to setup rsync from a script and either put it on cron or write my own monitor for changes, all will be much simpler than having to, login to minecraft/console run a command to get a URL, somehow edit my hundreds of permissions in a web UI, I always am searching using regex, save the changes and then re-paste the URL to update it, all without the peolpe online bugging me to do XYZ where as I could do all this before wihtout needing to log into minecraft or hunt down a URl thats already passed me in my console by chat messages moving so fast.
Another alternative is to have the web UI allow server owners to have their own proper subdomain with auth, so there is no need to constantly re-login and re-create the temporary permissions each time, then its just a bookmark, this could also be done using DNS to prove that server owns the domain its editing the permissions on.

While i do completely agree that using YAML files is a very very dumb idea, and knowing i will probably get flamed and/or worse, i can give you a hint (not a working solution) on how you can achieve this, assuming you are fully aware that you want to go that road and also me not taking any responsibility for any kind of damages.
Setup a version control of your choice (like gitlab) and put your files inside a repository. Then setup a CD job, that will update all the YAML files you need at any desired locations (and restart your servers if needed etc) , then hook your VScode to the version-control repo and voila. You change something - you push it and you have it.
As someone up said it, you have severe flaws in your storage concept BUT this way it might: 1) work 2) become a bit easier to debug problems 3) have at least a backup (of some sorts) of your old yml files and their contents. Again, this is a very stupid way of not-using-database, and a tricky workaround, but if setup properly it should work :D

While i do completely agree that using YAML files is a very very dumb idea

You should read this workflow; https://github.com/lucko/LuckPerms/issues/2525#issuecomment-668592381
Just FYI, not a new server owner. 7+ years, just FYI I most likely understand the benefit of MySQL over 99.9% of most developers I see on spigot, but in this specific case, a YAML workflow for just permissions (NOT USERS & LOGS) is a better workflow for what ive already described as the pitfalls of the current system.
I have also given a few good improvements to solve the issues with the current bottlenecks in the web UI workflow you two are so keen on (I'm a web developer)
I will create my own script to do what I want until this is fixed.

I have also given a few good improvements to solve the issues with the current bottlenecks in the web UI workflow you two are so keen on

have you?

I have also given a few good improvements to solve the issues with the current bottlenecks in the web UI workflow you two are so keen on

have you?
https://github.com/lucko/LuckPerms/issues/2525#issuecomment-668592381

I will simplify them for you.

Addition to the file-watcher service to run script/command, so we can have our own scripts do XYZ when it notices a file has been updated.
Drastically improve the Web UI by allowing custom subdomains with auth, so there is no need to constantly re-login and re-create the temporary permissions each time, easily done using DNS to prove that server owns the domain its editing the permissions on.

Either would solve the current issues with the web UI "workflow".

Until someone does a PR for it, it is very unlikely to be added to the plugin by Luck or myself.

Or scrap all that and fix symbolic links which was my initial report.

Drastically improve the Web UI by allowing custom subdomains with auth, so there is no need to constantly re-login and re-create the temporary permissions each time, easily done using DNS to prove that server owns the domain its editing the permissions on.

Well it sounds like you aren't quite aware of how the web editor works:
To keep it simple, when opening a new session the data is uploaded to a central pastebin service hosted by Luck and for this plugin.
So a custom domain or whatever wouldn't solve the issue, as the editor never communicates directly with the server.
I've been toying with the idea of creating an extension for LP that allows the edtior to work live on the data. The main issue here being security.

Now onto the more intersting discussion: Your work flow.
From what I've gathered the main issue you face is that you are constantly updating the servers. Now to me that sounds like bad practice assuming you are not first testing everything on a test server. In case you don't that's what you should do.
Once you do this you can edit everything directly on the test server with YAML files and once you're done, export your permission changes, upload the export and a run a command. Nothing really changes about your workflow when configuring the plugins. The only thing that changes in your workflow is that you only need to upload everything once and it's done.
This also makes sure nothing bad happens during these times.

Like I already said in this ticket, https://github.com/lucko/LuckPermsWeb/issues/300
If you have a web application running locally, why on earth would you choose to send data to a remote server to then pull the data into the web application when you have direct access via the database as you are using NodeJS installed locally which is fully capable of database queries.
This would no longer require the need for silly logging into the game to run a command to get a url to upload your permissions to a remote thrid party server, to then display it in a JS app just to edit it.
Ironic really, since I requested fixing Symbolic links to keep it simple, yet your workflow requires 100x more effort and steps and overly complicates simply editing a permissions file.
Symbolic links are just industry standard. They should be supported, end of.

Symlinks were already somewhat supported - must be something unique about your setup which is causing that error to occur.. anyway, should be resolved by the above commit.

Symlinks were already somewhat supported - must be something unique about your setup which is causing that error to occur.. anyway, should be resolved by the above commit.

Thank you so much! So if it can be ignored it was nothing to be worried about in the first place? Just a warning from java?