www/nginx: Potential race-condition with ngx_autoblock.php

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:
[+] I have read the contributing guide lines at https://github.com/opnsense/plugins/blob/master/CONTRIBUTING.md
[+] I have searched the existing issues and I'm convinced that mine is new.
[+] The title contains the plugin to which this issue belongs
Describe the bug
I recognized very high load (avg. load of >15) and found the root cause being that the ngx_autoblock.php was running several (>20) times.
To Reproduce
Currently unclear; already appeared several times during normal operations.
Expected behavior
No high avg. load.
Screenshots
last pid: 52742;  load averages: 10.94, 10.87,  7.91                                              up 3+22:55:52  10:13:05
97 processes:  16 running, 81 sleeping
CPU: 36.7% user,  0.0% nice, 63.3% system,  0.0% interrupt,  0.0% idle
Mem: 337M Active, 32M Inact, 41M Laundry, 377M Wired, 98M Buf, 169M Free
Swap: 2048M Total, 152M Used, 1896M Free, 7% Inuse

  PID USERNAME    THR PRI NICE   SIZE    RES STATE    TIME    WCPU COMMAND
52023 root          1  73    0    46M    23M RUN      0:01   7.56% php
18591 root          1  49    0    66M    44M RUN      0:13   5.37% php
16351 root          1  73    0    46M    23M RUN      0:01   4.92% php
63923 root          1  72    0    36M    24M RUN      0:03   3.61% python3.7
62005 root          1  72    0    66M    43M RUN      0:09   3.20% php
96638 root          1  49    0    65M    44M wait     0:04   3.14% php
99442 root          1  45    0    67M    45M wait     0:08   2.68% php
43785 root          1  42    0    66M    44M RUN      0:03   2.24% php
55430 root          1  52    0    65M    44M wait     0:04   1.78% php
99810 root          1  49    0    65M    44M wait     0:11   1.72% php
68122 root          1  46    0    66M    44M wait     0:04   1.38% php

mf@waf-prod:~ % sudo ps aux -dww
USER      PID %CPU %MEM     VSZ   RSS TT  STAT STARTED       TIME COMMAND
root        0  5.0  0.0       0   400  -  DLs  Wed11     15:41.57 [kernel]
root        1  0.0  0.0    9592   156  -  ILs  Wed11      0:00.53 - /sbin/init --
(...)
root    98937  0.0  0.1   99392   988  -  Is   07:52      0:00.36 |-- nginx: master process /usr/local/sbin/nginx
www     38464  0.0  0.9   98444  8932  -  S    07:52      1:24.51 | `-- nginx: worker process (nginx)
root    99033  0.0  0.1 1061280   924  -  Ss   Wed11      0:07.93 |-- /usr/sbin/cron -s
root      602  0.0  0.2 1061412  1980  -  S    10:10      0:00.03 | |-- cron: running job (cron)
root    55430  1.0  2.3   44584 22764  -  Rs   10:10      0:00.56 | | `-- /usr/local/bin/php /usr/local/opnsense/scripts/nginx/ngx_autoblock.php
root     2277  0.0  0.2 1061412  1980  -  I    10:02      0:00.03 | |-- cron: running job (cron)
root    62901  1.0  4.5   67148 45336  -  Ss   10:02      0:14.81 | | `-- /usr/local/bin/php /usr/local/opnsense/scripts/nginx/ngx_autoblock.php
root    61745  1.0  0.3 1060916  2600  -  R    10:10      0:00.05 | |   `-- /sbin/pfctl -t nginx_autoblock -T add <IP_ADDRESS>
root    41398  0.0  0.2 1061412  1980  -  I    10:04      0:00.02 | |-- cron: running job (cron)
root    51544  3.0  4.5   67128 45320  -  Ss   10:04      0:10.55 | | `-- /usr/local/bin/php /usr/local/opnsense/scripts/nginx/ngx_autoblock.php
root    94551  0.0  0.3 1061348  2988  -  R    10:10      0:00.03 | |   `-- sh -c /sbin/pfctl -t nginx_autoblock -T add '<IP_ADDRESS>'
root    42891  0.0  0.2 1061412  1980  -  I    10:06      0:00.03 | |-- cron: running job (cron)
root    99810  1.0  4.5   67012 45300  -  Ss   10:06      0:07.49 | | `-- /usr/local/bin/php /usr/local/opnsense/scripts/nginx/ngx_autoblock.php
root    40348  0.0  0.1    1684   684  -  R    10:10      0:00.05 | |   `-- /sbin/pfctl -t nginx_autoblock -T add <IP_ADDRESS>
root    45832  0.0  0.2 1061412  1980  -  I    09:59      0:00.02 | |-- cron: running job (cron)
root    45880  1.0  4.5   67152 45324  -  Ss   09:59      0:23.12 | | `-- /usr/local/bin/php /usr/local/opnsense/scripts/nginx/ngx_autoblock.php
root    22212  1.0  0.0    1272   448  -  R    10:10      0:00.01 | |   `-- sh -c /sbin/pfctl -t nginx_autoblock -T add '<IP_ADDRESS>'
root    46092  0.0  0.2 1061412  1980  -  I    10:08      0:00.01 | |-- cron: running job (cron)
root    99442  1.0  4.6   68236 46556  -  Ss   10:08      0:03.97 | | `-- /usr/local/bin/php /usr/local/opnsense/scripts/nginx/ngx_autoblock.php
root    78486  1.0  0.1    1684   676  -  R    10:10      0:00.04 | |   `-- /sbin/pfctl -t nginx_autoblock -T add <IP_ADDRESS>
root    57188  0.0  0.2 1061412  1980  -  I    10:01      0:00.01 | |-- cron: running job (cron)
root     4015  1.0  4.5   66864 45084  -  Ss   10:01      0:16.48 | | `-- /usr/local/bin/php /usr/local/opnsense/scripts/nginx/ngx_autoblock.php
root    36677  2.0  0.0    1364   484  -  R    10:10      0:00.04 | |   `-- /sbin/pfctl -t nginx_autoblock -T add <IP_ADDRESS>
root    57245  0.0  0.2 1061412  1980  -  I    10:07      0:00.03 | |-- cron: running job (cron)
root    62005  1.0  4.5   67084 45364  -  Ss   10:07      0:05.86 | | `-- /usr/local/bin/php /usr/local/opnsense/scripts/nginx/ngx_autoblock.php
root    58786  1.0  0.3 1060904  2576  -  R    10:10      0:00.05 | |   `-- /sbin/pfctl -t nginx_autoblock -T add <IP_ADDRESS>
root    61987  0.0  0.2 1061412  1980  -  I    10:09      0:00.02 | |-- cron: running job (cron)
root    68122  0.0  2.9   52176 29084  -  Is   10:09      0:01.24 | | `-- /usr/local/bin/php /usr/local/opnsense/scripts/nginx/ngx_autoblock.php
root    59396  0.0  1.1   24704 11160  -  R    10:09      0:00.12 | |   `-- /usr/local/sbin/nginx -s reopen
root    65380  0.0  0.2 1061412  1980  -  I    10:05      0:00.02 | |-- cron: running job (cron)
root    18591  2.0  4.5   67108 45384  -  Ss   10:05      0:09.21 | | `-- /usr/local/bin/php /usr/local/opnsense/scripts/nginx/ngx_autoblock.php
root    77962  0.0  0.3   12288  2532  -  R    10:10      0:00.05 | |   `-- /sbin/pfctl -t nginx_autoblock -T add <IP_ADDRESS>
root    85949  0.0  0.2 1061412  1984  -  S    10:10      0:00.01 | |-- cron: running job (cron)
root    44365  0.0  0.2 1060528  2328  -  Ss   10:10      0:00.03 | | `-- /usr/local/bin/flock -n -E 0 -o /tmp/filter_update_tables.lock /usr/local/opnsense/scripts/filter/update_tables.py
root     1367  0.0  0.9   19584  8992  -  R    10:10      0:00.41 | |   `-- /usr/local/bin/python3 /usr/local/opnsense/scripts/filter/update_tables.py (python3.7)
root    95249  0.0  0.2 1061412  1980  -  I    10:00      0:00.01 | |-- cron: running job (cron)
root    96455  1.0  4.5   67008 45224  -  Ss   10:00      0:19.32 | | `-- /usr/local/bin/php /usr/local/opnsense/scripts/nginx/ngx_autoblock.php
root    20845  0.0  0.3 1061028  2648  -  R    10:10      0:00.05 | |   `-- /sbin/pfctl -t nginx_autoblock -T add <IP_ADDRESS>
root    98918  0.0  0.2 1061412  1980  -  I    10:03      0:00.01 | `-- cron: running job (cron)
root    38222  1.0  4.5   67116 45300  -  Ss   10:03      0:12.51 |   `-- /usr/local/bin/php /usr/local/opnsense/scripts/nginx/ngx_autoblock.php
root    27283  2.0  0.3 1060920  2608  -  R    10:10      0:00.05 |     `-- /sbin/pfctl -t nginx_autoblock -T add <IP_ADDRESS>
(...)

Relevant log files
If applicable, information from log files supporting your claim.
Additional context
I recognized that the problem initially occurs as the script is being executed twice during one execution:
root    27311  0.0  0.2 1061412  1988  -  I    10:17      0:00.01 | |-- cron: running job (cron)
root    75828  8.0  4.5   66952 45304  -  Ss   10:17      0:03.36 | | `-- /usr/local/bin/php /usr/local/opnsense/scripts/nginx/ngx_autoblock.php
root    72900  0.0  0.0       0    16  -  R    10:17      0:00.02 | |   `-- /usr/local/bin/php /usr/local/opnsense/scripts/nginx/ngx_autoblock.php

So it seems hat the script forks itself. For me it's unclear how that happens.
Environment
OPNsense 20.7.7_1 (amd64, OpenSSL)
Intel(R) Xeon(R) Platinum 8171M CPU @ 2.60GHz (1 cores)
1 GB RAM (+2 GB SWAP)

I believe the issue is caused by mass-adding aliases to the nginx_autoblock pf table. The script readds each already existing alias to the table again for each execution (ie. each minute). In my installation I have a big number of entries already in the table (>2k), which results in 2k executions of pfctl -t nginx_autoblock -T add <ip> per minute. If that process takes longer than a minute, cron already executes the next cycle and the pf table is potentially accessed twice from two different processes.
@fabianfrz There's a comment in the ngx_autoblock.php script:
// all ips are used because the others may not be set for some reason
foreach ($model->ban->iterateItems() as $entry) {
    add_to_blocklist($autoblock_alias_name, (string)$entry->ip);
}

Is this really required to mass re-add those entries? Why would entries ever fall out?
I see two possible workarounds/solutions:
Solution 1
Maybe there should be two mechanisms in place:

High frequency (1/min): add new entries
Low frequency (1/h): mass-add existing entries (required e.g. after reboot)

Solution 2
Query existing pf table and add only differences.

I believe the issue is caused by mass-adding aliases to the nginx_autoblock pf table. The script readds each already existing alias to the table again for each execution (ie. each minute). In my installation I have a big number of entries already in the table (>2k), which results in 2k executions of pfctl -t nginx_autoblock -T add <ip> per minute. If that process takes longer than a minute, cron already executes the next cycle and the pf table is potentially accessed twice from two different processes.
@fabianfrz There's a comment in the ngx_autoblock.php script:
// all ips are used because the others may not be set for some reason
foreach ($model->ban->iterateItems() as $entry) {
    add_to_blocklist($autoblock_alias_name, (string)$entry->ip);
}

Is this really required to mass re-add those entries? Why would entries ever fall out?
I see two possible workarounds/solutions:
Solution 1
Maybe there should be two mechanisms in place:

High frequency (1/min): add new entries
Low frequency (1/h): mass-add existing entries (required e.g. after reboot)

Solution 2
Query existing pf table and add only differences.


How to always start from 0

<animated-number/> seems to always start counting from 0 OR the last value it counted to - this makes sense for many use cases. My use case requires that I always start counting from 0. I'm using <animated-number/> within a component that is loaded on each page, with a different value per page. Each page is not concerned with the previous page's value and should start counting from 0.
Any advice would be very welcome :)

Hi @danbohea, it would be easier to debug if you show your code. But I'm guessing maybe it's related to the duration you set? try removing it if you have a duration set.

Thanks for responding but I've fixed this now; I wasn't forcing a fresh instance of my component to be built each time (fixed by adding a :key to my router-view that was loading the component in question).


Improved the "Button" UI component

Overview
Improved the src/components/ui/Button.tsx file to match it with the Figma design since it was nearly the default state generated by shadcn/ui.
Changes

Defined three types of variants (primary/error/cancel)
Defined three sizes, adjusting to make the buttons' sizes as close as possible to the Figma design.
Capitalized the file name to make it conventional.

Note
-[ ] #60 must be reviewed and merged to the base branch prior to this PR because this PR depends on it.

Great job! Button component is refined much better now!
Please let me hear your opinion on adding "icon" variant to Button component,
and except for that, I think we can merge this change!

@kanta1207
Thank you for your prompt review! It would be better to create another component solely for icons.


fix: increase default mem for scanner-v4-matcher to fix CI

Description
Apparently we have many CI failures related to scanner-v4-matcher OOMing since we've enabled it by default.
https://issues.redhat.com/browse/ROX-22015
This is an attempt to fix this by setting higher default for scanner-v4-matcher memory.
Checklist

[x] Investigated and inspected CI test results
[ ] Unit test and regression tests added
[ ] Evaluated and added CHANGELOG entry if required
[ ] Determined and documented upgrade steps
[ ] Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)

If any of these don't apply, please comment below.
Testing Performed
Here I tell how I validated my change
TODO(replace-me)
Use this space to explain how you validated that your change functions exactly how you expect it.
Feel free to attach JSON snippets, curl commands, screenshots, etc. Apply a simple benchmark: would the information you
provided convince any reviewer or any external reader that you did enough to validate your change.
It is acceptable to assume trust and keep this section light, e.g. as a bullet-point list.
It is acceptable to skip testing in cases when CI is sufficient, or it's a markdown or code comment change only.
It is also acceptable to skip testing for changes that are too taxing to test before merging. In such case you are
responsible for the change after it gets merged which includes reverting, fixing, etc. Make sure you validate the change
ASAP after it gets merged or explain in PR when the validation will be performed.
Explain here why you skipped testing in case you did so.
Have you created automated tests for your change? Explain here which validation activities you did manually and why so.
Reminder for reviewers
In addition to reviewing code here, reviewers must also review testing and request further testing in case the
performed one does not seem sufficient. As a reviewer, you must not approve the change until you understand the
performed testing and you are satisfied with it.

/retest

FYI @RTann


HTML event model

This is being implemented in https://github.com/mvahowe/proskomma-render

This is being implemented in https://github.com/mvahowe/proskomma-render


fix: wait xpath until it appears

 Target ghcr.io/dedsxc/unixbot:5-dev-1.4.2 (alpine 3.17.5)
Vulnerabilities (2)

Package
ID
Severity
Installed Version
Fixed Version

libcrypto3
CVE-2023-5363
HIGH
3.0.11-r0
3.0.12-r0

libssl3
CVE-2023-5363
HIGH
3.0.11-r0
3.0.12-r0

No Misconfigurations found
Target Python
Vulnerabilities (1)

Package
ID
Severity
Installed Version
Fixed Version

pip
CVE-2023-5752
MEDIUM
23.2.1
23.3

No Misconfigurations found


Suggestion: trim down text on first issue

There's a lot of explanation on the first issue. I think we might have a better engagement rate with the course if we instead take the first PR as an opportunity to explain the script. I like the pattern of introducing a change, and then commenting with an explanation of what that change offers. The effect of this would look something like this:

Use the FS module to use a templated comment
We will make the following changes to the current workflow file:
Add the actions/checkout action so we can read the templated response file located at .github/ISSUE_RESPONSES/comment.md
Add JavaScript to use the Node.js File System module to place the contents of our templated response as the body of the issue comment.

This is another example of a step that would be better in a suggested PR comment. Currently, it's explained, and the learner is asked to copy-and-paste a lot of code. It's a perfect opportunity to, instead, help them commit the code, and then use in-line comments to explain what just happened.

I would love to see the be a more data driven decision.  I really don't like seeing content split up because it makes it harder for me to see the full picture when it is.  That's a personal preference, as I feel like breaking it up is.

The flow I feel works best for courses is

issues explain the content
pulls have learner practice the objective
pull comments give feedback on learner practice

To me that's the flow that makes logical sense.

If we can come up with a way to test or A/B test this I'd be down. But for clarity, I think we're talking about 2 different things here:

Folks are likely to gloss over large blocks of text and this course has these large blocks right off the bat
Feedback being contextualized to code the learner is engaging with.

I would love to A/B test stuff like this.
I also think the position this course is in the learning path makes a difference.  If this was the first course in the path then I would agree with you 100%, but it's the exact opposite of that, it's the final course in the learning path.
So by the time they get here they will have quite the understanding of everything and where it works in the actions ecosystem.

A/B testing is something we've brought up in the past, but have never implemented as far as I know. @hectorsector @mattdavis0351 do you know if there is an issue open in learning-lab requesting this feature for course-authors?

I’ve moved this discussion over to https://github.com/github/learning-lab-content/issues/42 since we’re talking about general testing of assumptions, not just for this course.
Feel free to close this issue if the decision is not to make these changes at this time!


Upgrade to Keycloak 7.0.0

Upgrade the DockerFile to point to 7.0.0

This may not be as simple as it seems. Please make sure to test and make sure our customizations are applied correctly.

We should upgrade as far as we can without issue. So if that means going up to 5.0.0, then 6.0.0 and then finally 7.0.0, so be it.
At whatever version we hit an issue, we can track down and fix the issue


Socket does not write until data is read

On iOS, when connected with TLS, if there is a read pending (i.e., it's waiting for data), and I attempt to write data to the socket, the socket will not actually writing anything until something is read. There are no errors when writing to the socket.
The code I'm using to connect:
let configuration = SSLService.Configuration()
socket.delegate = try SSLService(usingConfiguration: configuration)
try socket.connect(to: "...", port: 1337)

Everything works fine if I don't connect with TLS. I tried other libraries and this doesn't occur, so it seems to be an issue with BlueSSLService (and not the server).

Upon further investigation, it seems that this is intentional. The SSLReadWriteDispatcher is a serial queue that is used to dispatch read and write operations. Does anyone know the reason for this? Would it be safe to remove?

SSLReadWriteDispatcher is intended to serialize the read/write calls to allow for synchronous read/write calls.  For async usage, try calling try socket.setBlocking(mode: false) once created.  You'll likely have to buffer your reads yourself if you do this.


Upgrade on alpine arm errors

kairos-agent upgrade --source \
> oci:quay.io/kairos/alpine:3.19-standard-arm64-rpi4-v2.4.3-k3sv1.28.3-k3s1
WARNING: jsonschema: '' does not validate with file:///home/kairos/schema.json#/required: missing properties: 'users'
INFO[2024-01-10T20:08:27Z] kairos-agent version v2.6.2
WARN[2024-01-10T20:08:27Z] failed reading installation state: open /run/initramfs/cos-state/state.yaml: no such file or directory
E0110 20:08:27.117404    2909 mount_linux.go:232] Mount failed: exit status 32
Mounting command: mount
Mounting arguments: -t auto -o rw /dev/sda2 /run/cos/state
Output: mount: /run/cos/state: mount(2) system call failed: No error information.
       dmesg(1) may have more information after failed mount system call.

ERRO[2024-01-10T20:08:27Z] Failed mounting device /dev/sda2 with label COS_STATE
ERRO[2024-01-10T20:08:27Z] failed mounting %s partition: %vsda2mount failed: exit status 32
Mounting command: mount
Mounting arguments: -t auto -o rw /dev/sda2 /run/cos/state
Output: mount: /run/cos/state: mount(2) system call failed: No error information.
       dmesg(1) may have more information after failed mount system call.
1 error occurred:
        * mount failed: exit status 32
Mounting command: mount
Mounting arguments: -t auto -o rw /dev/sda2 /run/cos/state
Output: mount: /run/cos/state: mount(2) system call failed: No error information.
       dmesg(1) may have more information after failed mount system call.

This is what the state directory looks like:
/home/kairos # ls -las /run/initramfs/cos-state/
total 36
 4 drwxr-xr-x 7 root root  4096 Jan 10 18:28 .
 0 drwxr-xr-x 3 root root    60 Jan  1  1970 ..
 4 drwxr-xr-x 2 root root  4096 Jan 10 18:28 cOS
 4 drwxr-xr-x 3 root root  4096 Jan 10 18:28 etc
 4 drwxr-xr-x 6 root root  4096 Jan 10 18:28 grub2
16 drwx------ 2 root root 16384 Jan 10 18:28 lost+found
 4 drwxr-xr-x 2 root root  4096 Jan 10 18:28 var

I was able to upgrade successfully on v3.1.0


Integration with DefectDojo is not working

What would you like to be added:
The integration with Defect Dojo is not working correctly, when trying to import JSON
error message:
An exception error occurred during the report import:invalid literal for int() with base 10: ''

I use dd-import and have no issues with import. Can you provide a report you tried to import?

Closed since this issue was solved by DefectDojo #6563


Weird behavior when using Trainer.tune

I have two cells in a notebook in colab:
Cell1:
litmodel = LitModel(num_classes, 10.00017, len(dstrain), 64, model)
trainer = Trainer(gpus=1, auto_lr_find=True, max_epochs=epochs)
trainer.tune(litmodel, train_dataloader=dltrain, val_dataloaders=dlval)
trainer.fit(litmodel, dltrain, dlval)

Cell2:
litmodel = LitModel(num_classes, 10.00017, len(dstrain), 64, model)
trainer = Trainer(gpus=1, auto_lr_find=True, max_epochs=epochs)
trainer.tune(litmodel, train_dataloader=dltrain, val_dataloaders=dlval)
trainer2 = Trainer(gpus=1, auto_lr_find=True, max_epochs=epochs)
trainer2.fit(litmodel, dltrain, dlval)

Cell2 produces much better results. The loss right at the beginning of the first epoch is about 8 for Cell1 and 0.8 for Cell2. Furthermore I get the following warning when running Cell1 right at the beginning of  trainer.fit():

/usr/local/lib/python3.6/dist-packages/torch/optim/lr_scheduler.py:136: UserWarning: Detected call of lr_scheduler.step() before optimizer.step(). In PyTorch 1.1.0 and later, you should call them in the opposite order: optimizer.step() before lr_scheduler.step().  Failure to do this will result in PyTorch skipping the first value of the learning rate schedule. See more details at https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate
"https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate", UserWarning)

This is the configure_optimizers function I use:
def configure_optimizers(self):
    optimizer = torch.optim.Adam(self.parameters(), lr= self.learning_rate)
    scheduler = {
            'scheduler': torch.optim.lr_scheduler.OneCycleLR(optimizer,
             max_lr = self.learning_rate,
             total_steps = 2 * self.stepsize),
            'interval': 'step',
            'frequency': 1
    }

    return [optimizer], [scheduler]

pytorch-lightning version is 1.1.4.
This problem does not appear in pytorch-lightning version is 1.1.2.

same problem appears in .fit(), I'm sure that it's caused by 'interval': 'step'

same problem appears in .fit(), I'm sure that it's caused by 'interval': 'step'

mind trying to upgrade to the latest version?

I can confirm that this still happens on PyTorch Lightning 1.1.8. I get the "Detected call of lr_scheduler.step() before optimizer.step()" error and I get a crazy high initial loss value, much higher than when I just manually specify the learning rate that the LR finder suggests. My model also uses 'interval': 'step' in the lr dictionary returned by configure_optimizers, so I think it's something to do with that.

I can confirm that this still happens on PyTorch Lightning 1.1.8. I get the "Detected call of lr_scheduler.step() before optimizer.step()" error and I get a crazy high initial loss value, much higher than when I just manually specify the learning rate that the LR finder suggests. My model also uses 'interval': 'step' in the lr dictionary returned by configure_optimizers, so I think it's something to do with that.

Same here, I'm using torch 1.7.1, and PyTorch Lightning 1.1.8.  Also using 'interval': 'step'.

@SkafteNicki mind have look? :]

Let's discuss the warning UserWarning: Detected call of `lr_scheduler.step()` before `optimizer.step()`. issue in #101 since it can be addressed independently of the performance issue.

any update here? :]


Failing git commit with no error

Auto-fixing this PR is failing with no obvious error: https://github.com/All-Hands-AI/openhands-resolver/issues/141
This will probably need closer investigation by running it locally to figure out the issue.

This is probably fixed.


Bluetooth LE: Add feature to allow profiles to change ADV data at RPA updates

Problem
An upcoming Bluetooth (GATT based) specifications require that the data advertised is updated at the same time as the Resolvable Private Address updates.
Feature
This request covers adding a mechanism for a profile to update the advertisement data and scan response data between updating the address and re-enabling advertisements.
Requirements
It is important that:

not a single advertisement is sent with the new address and the old data
not a single advertisement is sent with the old address and the new data
the implementation ensures that actions performed by the profile during the update of the data do not trigger a new RPA update.
The current advertisement API supports only a single user (advertisement instance), hence the solution could support only a single advertisement instance, but should be prepared for supporting multiple instances.

Solutions
I see two different solutions:

Generic Address_changing() call-back - when we get adv-ext it would include the identity-reference.
It will be called with states set in a way that allows new adv data to be set using the existing API's, but the callback can be used to perform any action.
Adv data update only call-back such as address_change_update_data(pointers to same arguments as bt_le_adv_update_data). This will allow only to update the adv data - the call-back can perform other actions, but the BT-interface cannot be called(to protect against state changes during a state change).

There are two cases that needs to be handled:

Host handling RPA update - this should be trivial as everything can be handled within the host stack.
Controller handling RPA update - This seems impossible with the current HCI interface - Please provide input for this.

@joerchan I see you have a commit for advertisement extensions - do you have comments on this topic?

@Casper-Bonde-Bose I'm not sure if you are aware of this, but somebody already created a PR for the address callback solution which was closed since we couldn't solve all the issues with that. You have already outlined the controller RPA update issue.
https://github.com/zephyrproject-rtos/zephyr/pull/22524
Your second solution might be better suited. Since the undirected advertiser uses the host RPA, and the scanner/initiator use the controller RPA. Directed advertiser use the controller RPA, but has no data.
Is this something that has to be exposed to the application, or can we keep it inside the host itself?
Regarding Advertising Extension, maybe the duration parameter of the advertiser could be used in some way. I'm still working on how to handle privacy together with the use of the duration parameter. If the duration parameter was to be set to the same as the RPA timeout. Then advertising data could be updated in the stopped event, and the advertiser started again.

@joerchan I was not aware of #22524, thanks for the reference.
I believe it is limited to the profiles in the host stack - in the future there might be a need to call from the profile to the application to get parts of the advertisements data but currently I do not see a need for this.
I was not aware that a mix of host and controller RPA handling was used - this means we do not need to handle controller RPA updates - as only undirected advertisements are needed for this feature. And if that is true also for advertisement ext. then we do not need to do any coordination between duration and RPA timeout as a consequence of this feature.
If you suggest to replace this feature with using adv-ext + period < RPA timeout, that is also an option. It would require the RPA timeout is per advertisement instance, and that the RPA timer is started when the advertisement instance is enabled - and that a new address is generated at each call to enable. (the enable API could have an option to instruct the stack to generate a new RPA.

If you suggest to replace this feature with using adv-ext + period < RPA timeout, that is also an option. It would require the RPA timeout is per advertisement instance, and that the RPA timer is started when the advertisement instance is enabled - and that a new address is generated at each call to enable. (the enable API could have an option to instruct the stack to generate a new RPA.

That was my suggestion yes. Except it is duration, there is a period parameter as well.
Using the Privacy feature together with advertising duration would mean that we could set the duration equal to the RPA timeout, and update advertising data and re-start the advertiser in the advertiser stopped callback. I think that is the best solution.

CC: @Vudentz @jhedberg Any comments to the suggested solution? It wouldn't require any changes to the proposed API of Advertising Extension since we can use the duration parameter and the stopped callback.

@joerchan no other comments except that it sounds like a good plan forward


About page

Hello! My bad for the mix up, but here is the About page that I did earlier. I looked at what Clive created and worked. Let me know if there's anything you want me to fix. Thank you!

@MrBarker47 no worries, I did the same thing for my first PR so it kinda marked me :D !
Looks good for our prototype👍 !


chore: Removed v1beta2 samples and tests

Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly:

[ ] Make sure to open an issue as a bug/issue before writing your code!  That way we can discuss the change, evaluate designs, and agree on the general idea
[ ] Ensure the tests and linter pass
[ ] Code coverage does not decrease (if any source code was changed)
[ ] Appropriate docs were updated (if necessary)

Fixes #<issue_number_goes_here> ☕
On February 15th, all Java batch processing samples started to fail, and more recently all v1beta2 samples are failing for similar reasons. These failures are blocking our releases and other PRs to the Document AI Java github repo.
There has been attempts by the engineering team to fix the issue with no success. Since v1beta2 is in maintenance mode we should start directing users to use the supported versions. A step in directing users to use supported versions is to remove the v1beta2 samples and tests.

Hi @kolea2, yes this will not break any existing samples documentation that referenced these samples have been removed.


Refurbished Goods broken - Cydonia Denis Averin

Always less than 5 items to bring back to Denis after clearing the specified location, even if the stage is set (ex. Acquire 5 Grendels) and you are pointing back to Mars.
I got real bored to use console commands to fill up the quota, to bring back items to one of the most annoying characters in the game.
"Do not take the quest then". Yes. I am always aware of that.
It seems to be an issue with newest patches 1.10.31 -> 1.10.32.

Game Version
1.10.32
Language
English (EN)
New Game
Yes
Reproduction Steps
Recreated on NG+5

Just to add some detail to this, the items are added correctly to myBossContainer in FFCydoniaR02QuestScript, you can verify that by getting the refid for the container, then loading a save from before the location was discovered and checking its contents in the console (i.e. for locations where you don't land at them). The problem is at quest stage 200, when the player arrives at the location and the objective changes, the contents of myBossContainer is getting reset except for the one item added as an alias.
The only (extremely ugly) way I could think of to fix it was in the script fragment for stage 200, but it would require editing FFCydoniaR02QuestScript as well as you need to know what myItem is in order to re-add the required number to myBossContainer after the reset. Perhaps someone knows of a better way to do this, ideally preventing that reset.

I've just realized even adding the items to the container at stage 200 isn't enough if the boss container is in an internal cell, it still gets reset after this.
tbh this quest as a whole is a mess. It reports that you have enough items when you just pick up one, and there's also supposed to be a alternative route where you're given the option to hand over items already in your inventory and only optionally go to the location, but this never triggers at all. Oof.

And there's no way to make a the generated container immune to any cell reset with some flag and remove it at the quest end stage ? (very naive input)

Following a touch on this in discord, if it is within the scope of the project, would changing the requirement to 1 item not 5 be a satisfactory workaround? The required item does spawn, just as a single unit not batch of 5 after the issues xtc highlighted above.

Should be fixed now, see the SFCP discord. I'll probably add a standalone patch to Nexus later.

https://www.nexusmods.com/starfield/mods/12336


Issue #394 fix

Description
This PR fixes #
issue #394
Notes for Reviewers
Added the required information in the docs as specified in the issue
Signed commits

[ ✅] Yes, I signed my commits.

Can you please sign your commits @aryanas159?


Wasm: Bug fix in the unreachable state

We need to reset the Unreachable state before emitting the Else block in an if/else expression.
Otherwise we won't emit the code the the else block thinking we are in unreachable code

This change is

@MikeHolman @Krovatkin @arunetm @commonlisp Can you guys review this please ?

LGTM, though i need to catch up on the exact implementation details of unreachable


Some minor grammer fixes

:+1: Thank you!
Can you squash the commits before merging and when merging please don't use the Github merge button since it always creates a merge bubble. Instead push directly to master. Alternatively this script can also do it for you https://github.com/CommBank/wrangler/blob/master/bin/gh-merge.

Done :)


⚠ MorethanTV has degraded performance

In 29af191, MorethanTV ($MTV) experienced degraded performance:

HTTP code: 200
Response time: 10288 ms

Resolved: MorethanTV performance has improved in 3b8f187 after 9 minutes.


wttr.in down

I get no response from the server:
$ curl wttr.in/casablanca
curl: (52) Empty reply from server

It should work now. Please check


Vertical alignment

Hi, like we can see on this screen the picker item Text isn't align vertically:
https://github.com/koukibadr/Bottom-Picker/blob/main/example/bottom_picker_custom_picker_text_style.png?raw=true
It would be great to accep't a Widget (Center() or Align() maybe?) in items property or to add one to allow that.
Wrapping picker item in an Align and add his Alignment property to BottomPicker constructor maybe?
Thanks.

Thanks for the suggestion I will work on it

@koukibadr To achieve this, only two changes are required. I will open a PR.

A new version has been published


Update UAMI recommendation and paramaters

Since caching is now available, we implemented a feature in the policy that enables you to use a single centralized UAMI. Leading to the following changes in the documentation:

The recommendation to use an Identity per subscription no longer applies.
Added information about the restrictBringYourOwnUserAssignedIdentityToSubscription parameter that can used to enable/ disable the centralized UAMI.

#sign-off

@barclayn - docs/identity/managed-identities-azure-resources/how-to-assign-managed-identity-via-azure-policy.md might benefit from an edit pass. An editor will notify the listed author and recent contributors.


Add macOS Support

Missing extension:

[ ] NSAttributedString
[ ] UIColor (NSColor)

Codecov Report

Merging #30 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #30   +/-   ##
=======================================
  Coverage   81.28%   81.28%
=======================================
  Files          84       84
  Lines        5338     5338
=======================================
  Hits         4339     4339
  Misses        999      999

Continue to review full report at Codecov.

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


Quality of life improvement: Set a flag that truncates all distributions

Description
Sometimes I'm working with distributions that I know to be positive, e.g., life expectancy, height, the ratios of two positive values, etc. I can use leftTruncate(_,0) everywhere which is what I'm currently doing, but it would be nice to get a flag to do this automatically.
Note: Ozzie suggested mapping
l(x)=leftTruncate(x, 0)
l(normal(1,2)

which does work

I don't see any great fix for this. It's a principle we could try to implement through a combination of other changes, but I'm not sure how to do this directly in a way that's not a huge hack. Will keep it in mind.


UIServer cannot be started in 1.0.0-beta5

Running the Code:
`import org.deeplearning4j.ui.api.UIServer;
public class Test {
public static void main(String[] args) {
UIServer uiServer = UIServer.getInstance();
}
}`
results in:
java.lang.IllegalArgumentException: Don't know how to bind argument of type class net.jodah.typetools.TypeResolver$Unknown
at play.routing.RoutingDsl.pathBindableFor(RoutingDsl.java:290)
at play.routing.RoutingDsl.with(RoutingDsl.java:239)
at play.routing.RoutingDsl.access$000(RoutingDsl.java:91)
at play.routing.RoutingDsl$PathPatternMatcher.build(RoutingDsl.java:553)
at play.routing.RoutingDsl$PathPatternMatcher.routingTo(RoutingDsl.java:360)
at org.deeplearning4j.ui.play.PlayUIServer.createRouter(PlayUIServer.java:245)
at play.core.server.JavaServerHelper$$anon$4.router(Server.scala:331)
at play.BuiltInComponentsFromContext.createHttpRequestHandler(BuiltInComponentsFromContext.java:217)
at play.libs.F$LazySupplier.get(F.java:372)
at play.BuiltInComponentsFromContext.httpRequestHandler(BuiltInComponentsFromContext.java:205)
at play.BuiltInComponentsFromContext.createApplication(BuiltInComponentsFromContext.java:138)
at play.libs.F$LazySupplier.get(F.java:372)
at play.BuiltInComponentsFromContext.application(BuiltInComponentsFromContext.java:125)
at play.core.server.JavaServerHelper$.forRouter(Server.scala:330)
at play.core.server.JavaServerHelper.forRouter(Server.scala)
at play.server.Server$Builder.build(Server.java:231)
at play.server.Server.forRouter(Server.java:135)
at org.deeplearning4j.ui.play.PlayUIServer.runMain(PlayUIServer.java:194)
at org.deeplearning4j.ui.api.UIServer.getInstance(UIServer.java:67)
at org.deeplearning4j.ui.api.UIServer.getInstance(UIServer.java:45)
Attached is the pom file (as .txt to make it uploadable).
pom.txt

Hm, that didn't really work, so here is the pom file (as .txt).
pom.txt

Didn't work, so here it is:

The UI currently has the limitation that it only works on Java 8. You will have to install java 8 (e.g. from https://adoptopenjdk.net/?variant=openjdk8&jvmVariant=hotspot) if you want to use it.

That solved it. Thanks a lot!

I'll reopen this. we've had occasional reports of exactly this issue but I had been unable to track it back to the underlying cause based on those reports.
A Java 8 limitation for the UI (both minimum, due to Play, and maximum, due to this issue) is IMO unacceptable, and needs to be fixed.
@Storm-cev what java (distribution + version) specifically were you using, both originally and now?

Original Java Versio: Java SE 13.0.1
Now:  Java SE Runtime Environment 8u202

I've merged a PR here that replaces the Play framework with Vertx
https://github.com/KonduitAI/deeplearning4j/pull/68
that will be merged back to Eclipse
Note that there is no user-facing API changes. However, there were some changes in module names:
deeplearning4j-ui_2.1x -> deeplearning4j-ui
deeplearning4j-play_2.1x gone
deeplearning4j-vertx added
No more UI scala dependency here.
All existing modules, listeners etc still work as before, it should be a seamless internal change for users.
It will be merged to eclipse/deeplearning4j shortly, and should be on snapshots soon after that.


CDS-50832 - Added Azure Artifact, Google Cloud Storage and removed AMI, Bamboo from list of artifact sources supported for TAS in NG

Added Azure Artifact, Google Cloud Storage and removed AMI, Bamboo from list of artifact sources supported for TAS in NG
Harness Developer Pull Request
Thanks for helping us make the Developer Hub better. The PR will be looked at
by the maintainers.
What Type of PR is This?

[ ] Issue
[x] Feature
[ ] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

Issue(s)

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[x] Tested Locally
[ ] Optional Screen Shoot.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app


fix: shopee hangon request  bug based on #246

Based on issue #246 I fixed the code following @marcplouhinec solution by checking codecSpec is empty and key is need to be a string

Thank you for your contribution, and sorry - I first noticed the newer PR by Marc, so I merged that one.
Great job nonetheless, thanks again!


Unable to focus element inside shadowRoot

Example JSFiddle: https://jsfiddle.net/ze0dpj85/3/
Expected behavior:
"Button inside shadow DOM" is focused by default and is focusable with Tab or Shift-Tab.
Actual behavior:
Unable to focus "Button inside shadow DOM".
Steps to reproduce the problem:

Create a custom element with a button.
Pass the element to a modal's body through a slot.
Try to focus the button.
Unable to focus the button.

Screenshots

@davidrleonard, I would suggest using an idea from iron-focusables-helper:
https://github.com/PolymerElements/iron-overlay-behavior/blob/b7afaae994d527c8582d6ae8a2694e81c571e092/iron-focusables-helper.html#L104
They are using a recursive check of shadow doms of nested elements in order to produce right focus behavior.
This can be fixed once in px-modal. Otherwise, each developer should keep in mind that every component inside px-modal needs to implement the fix that you are describing (a functionality to operate focus), because of your code that handles tab button:
https://github.com/PredixDev/px-modal/blob/74afbada164b509a69f756e34d08c425e15f2cdb/px-modal.html#L314
Yet another option can be removing this code from px-modal, what will relieve developers from making an extra code for each component.

@toshegg, say again, looks like you know you're way around this. Want to help us make this better with a PR? Thanks.


Use ConfigRecorder SNS topic to notify of ConfigRule status changes

Summary
Once we move away from AWS LandingZone, we can setup our own ConfigRecorder with a dedicated SNS topic and subscription that posts ConfigRule status changes into Slack.

ConfigRules have been removed by #148


In navigation item title?

Hi,
Is there a way to this:
navigationItem.title = "\(String.fontAwesomeIcon(name: .cube)) Some Text Here"

Thanks

I'm having the same issue.  It seems to be specific to creating the icon as a string.  Ever find a workaround?

Maybe this suggestion to a previous issue is helpful: #166 Combination of icon + text -> text gets cut


RFC: Retry on 'soft' errors + sideEffect false

Mechanics
Endpoints with sideEffects are not safe to retry, as it cannot be guaranteed where they failed - which means issuing them multiple times could result in undesirable effects!
'hard' errors indicate they should not be ignored. Most commonly this indicates there is a real problem that won't be fixed by refetching - for instance if the fetch is not authorized. In these cases, retrying would simply delay the inevitable.
'soft' errors on the other hand often indicate transient issues like a flaky wifi connection.
Implementation

Add retryPolicy to ExtendedEndpointOptions.

e.g., (retry, { error, count }) => setTimeout(retry, 20)

NetworkManager to schedule retries on soft errors
Provide policy generator method (number of retries, backoff period, handle offline/online)
RestEndpoint to do one retry after 40ms; and do native/web feature detection for online/offline support

Due to network offline
const retryPolicy = (retry, { error, count }) => {
  if (error.becauseOffline) {
    if (navigator.onLine) { retry(); }
    window.addEventListener('online', () => { retry() });
  }
  if (count < 2) setTimeout(retry, 10);
}

If something is being retried - it must be considered 'in flight' for network manager

@notwillk

I'm @notwillk and I approve this message

Closing in favor of discussion: https://github.com/data-client/rest-hooks/discussions/2401


can it work (or be made to work) with input iterators?

eg:
  iterator infinite(): int {.closure.} =
    var i = 0
    while true:
      writelnL "ok1"
      yield i
      inc i

let a = infinite-->
           map(it*2).
           take(10)

@timotheecour with #22 it is now possible to create own inline iterators with --> iter(myIterName) - they are not as fancy as closure iterators and cannot be moved around to other functions, but they are efficient.
Also with the additions of take, drop and enhancements of sub that have already been merged to master, could we close this issue now?


Websocket connection failing few seconds after getting connected

Websocket connection is failing in a particular android device(Xiaomi POCO X2) with the below error, it is happening after handshake is succeded.
Websocket connection Failed Read error: ssl=0xb400006da8515bc8: Failure in SSL library, usually a protocol error error:1e000065:Cipher functions:OPENSSL_internal:BAD_DECRYPT (third_party/openssl/boringssl/src/crypto/fipsmodule/cipher/e_aes.c:1065 0x6fef330bee:0x00000000) error:1000008b:SSL routines:OPENSSL_internal:DECRYPTION_FAILED_OR_BAD_RECORD_MAC (third_party/openssl/boringssl/src/ssl/tls_record.cc:294 0x6fef330bee:0x00000000)
okHttpVersion - okhttp:4.9.3

This is not something we can help with.
Try stackoverflow to diagnose this particular issue.
If all the certificates are fine and it's still failing, then you'll need to report to conscrypt or Xiaomi.


Remove gpr_get/set_allocation_functions

This is an experimental PR to deprecate functions:

gpr_get_allocation_functions
gpr_set_allocation_functions

DO NOT MERGE THIS.

We should probably tag this with "release_notes: yes" and change the PR description to reference the gRFC.

Thank you for the review and I agree with the idea tagging this with "release_notes: yes".


2423 - Upgrades Tailwind to v3

Released in early December, Tailwind v3 represents a pretty significant upgrade over v2:
https://tailwindcss.com/blog/tailwindcss-v3
I decided to take a stab at upgrading our inject-tailwind branch to v3 by following along with their upgrade guide:
https://tailwindcss.com/docs/upgrade-guide
Fortunately, we were already using the jit engine, so a majority of the changes revolved around renamed attributes and minor config changes.
Closes #2423

@jeffsee55 I did encounter one warning:
vite v2.5.0 building for production...
transforming (1) src/index.ts[vite:css] Nested @tailwind rules were detected, but are not supported.
Consider using a prefix to scope Tailwind's classes: https://tailwindcss.com/docs/configuration#prefix
Alternatively, use the important selector strategy: https://tailwindcss.com/docs/configuration#selector-strategy
1  |  .tina-tailwind {
2  |    @tailwind base;
   |     ^
3  |    @tailwind components;
4  |    @tailwind utilities;
✓ 39 modules transformed.

This seems to be related to postcss-nested.  From what I can tell, everything still worked, but I'm wondering if you encountered this before and possibly solved it?

Off the top of my head I don't remember that exact error, though I know the nesting there isn't something css or tailwind tools were happy with, we've been ignoring those lint errors. There may be a better approach but basically all we care about is that all of tailwind's classes get namespaced 🤷

Looks like some styles where added that effect the users site
The basic starter on this branch

The basic starter on main

Maybe some css resets is being applied?
cc @Enigmatical @spbyrne

I'll take a look at that, @logan-anderson

It appears this is coming from @tailwind base;, which is essentially a browser reset and not encompassed by the important: '.tina-tailwind', wrapping logic, likely because it has styles that apply to the html and/or body elements. When we used to wrap things the 'wrong' way it fixed the issue.

Removing the important flag and going back to using the wrapper class works (with a small caveat) but gives that ugly warning, not sure how to get around that. Apparently that came with the introduction of the new JIT mode in Tailwind.

Closing this after encountering a "bug" (?) with preflight not getting wrapped in !important: class which causes them to affect the entire site.

Scott B:
Hey, spent some time digging around to figure out an issue in that Tailwind 3 PR. Basically the @tailwind base; styles are actually a browser reset and aren’t affected by their important: '.class'  wrapper, oddly (even though it includes things like button resets). We need them in the wrapper class but can’t do that without also reverting that important change & getting the big ugly yellow warning every build.

Chris D:
Yeah...

Scott B:
Can they be suppressed with ts-ignore or is it coming from tailwind itself? I wonder if some clever configuration can get us around the issue given it’s basically them saying there’s an issue when there isn’t actually anything wrong.


I need to insert geo coordinates inside context

Hi,
I'm trying to insert gps positions as Extensions into Context Object.
When I call the object i can't find how to insert the values.
This is the code I use to write a context part in the statement

var objContext = new Context();
objContext.extensions = new TinCan.Extensions();
how can now insert the user gps positions?
"http://id.tincanapi.com/extension/latitude" = userLatCoord;
"http://id.tincanapi.com/extension/longitude" = userLongCoord;

Thanks in advance...
Andrea

@brianjmiller @uest555
Hi. Was there ever a solution to this?
I have been trying to add extensions to my statements without any luck.
I did this:
statement.result.extensions = new TinCan.Extensions();
It created an empty array.
To add to the extension, I tried what @brianjmiller suggested.
I did this:
JObject extensionsObject = new JObject();
extensionsObject.Add("http://id.tincanapi.com/extension/duration", value);
statement.result.extensions = new TinCan.Extensions(extensionsObject);

Doing the above I get this error:
The type 'JObject' is defined in an assembly that is not referenced. You must add a reference to assembly 'Newtonsoft.Json, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed'.
It seems that it is looking for a different version of Newtonson.Json. I've been looking around but it seems that it does not exist.
Any help would be great. Thanks.

Nevermind. I realize I was using an older version of Newtonsoft.Json. I updated it and it worked perfectly.
@uest555 I know this is a very old post but this worked for editing your extensions.
JObject extensionsObject = new JObject();
extensionsObject.Add("http://id.tincanapi.com/extension/duration", value);
statement.result.extensions = new TinCan.Extensions(extensionsObject);

Ooooh …sooooo many thanks!!!!!!!!!!!!!!!!!!!

Il giorno 19 ago 2020, alle ore 03:22, Jonathan Valderrama<EMAIL_ADDRESS>ha scritto:
Nevermind. I realize I was using an older version of Newtonsoft.Json. I updated it and it worked perfectly.
@uest555 https://github.com/uest555 I know this is a very old post but this worked for editing your extensions.
JObject extensionsObject = new JObject();
extensionsObject.Add("http://id.tincanapi.com/extension/duration", value);
statement.result.extensions = new TinCan.Extensions(extensionsObject);
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/RusticiSoftware/TinCan.NET/issues/33#issuecomment-675797792, or unsubscribe https://github.com/notifications/unsubscribe-auth/AD2RBP6RMXOU6OVKQTXMCT3SBMSMNANCNFSM4EMRDTUQ.


⚠ Avatar API Endpoint has degraded performance

In a5974b2, Avatar API Endpoint (https://avatar.roblox.com/v1/avatar-rules) experienced degraded performance:

HTTP code: 200
Response time: 5088 ms

Resolved: Avatar API Endpoint performance has improved in 2c18a4d after 11 minutes.


Fix mapping for 12PlO

Before:
kikitimâki-ohpikihikonawa
Prt+4Sg/Pl+12PlO+ s/he raises s.o. in poverty; s/he raises s.o. as an orphan    +?

After:
s/he/they raise you and us in poverty; s/he/they raise you and us as an orphan

@aarppe

Yup, and we might want to check this for the noun possessors as well, i.e. +Px12Pl should become Px21Pl+.

Good idea. The noun FST is using Px12Pl, which matches the tag map. I’ll add a test.
https://github.com/giellalt/lang-crk/blob/develop/src/transcriptions/transcriptor-cw-eng-noun-entry2inflected-phrase-w-flags.xfscript#L7

Codecov Report

Merging #1 (41744eb) into phrase_translate (0ef331e) will not change coverage.
The diff coverage is n/a.

@@                Coverage Diff                @@
##           phrase_translate       #1   +/-   ##
=================================================
  Coverage             82.12%   82.12%
=================================================
  Files                    70       70
  Lines                  2708     2708
  Branches                408      408
=================================================
  Hits                   2224     2224
  Misses                  414      414
  Partials                 70       70

Impacted Files
Coverage Δ

CreeDictionary/phrase_translate/crk_tag_map.py
100.00% <ø> (ø)

...eDictionary/phrase_translate/crk_translate_test.py
100.00% <ø> (ø)

CreeDictionary/phrase_translate/translate.py
42.57% <ø> (ø)

Continue to review full report at Codecov.

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


Add descriptor support in HTTP Local Rate Limiting

Commit Message: Add descriptor support in HTTP Local Rate Limiting
Additional Description:
Risk Level:
Testing:
Docs Changes:
Release Notes:
Platform Specific Features:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Deprecated
:]
This adds descriptor support in HTTP Local Rate Limiting so that rate limiting can happen on certain attributes.
It's trying to reuse the features in HTTP Global Rate Limiting, so that it's easier for users to configure.
Sending it as Draft Pull Request as want to get feedback on the below design.
Also, want to add ability to override as I feel that would be really useful but would have to combine it with token algorithm.
I was thinking to extend rate_limiter_impl to support this. We can use RateLimitOverride.requests_per_unit as tokens_bucket.tokens_per_fill and ask users to set type.v3.RateLimitUnit a multiple of fill_interval. Then maintain ratelimit state for these descriptors in  rate_limiter_impl.
Please let me know what you guys think...

/cc @rgs1 @mattklein123 @kyessenov @mandarjog

A common use case is to have local overrides for the service account of the client.
Local and global RL configurations are unexpectedly different. It would be nice to this of local rate limit exactly as global with the global scope == in-proxy implementation. This means overrides are set in the "server side config". It does not need to happen in this PR, but it would be good to have convergence.

Taking the yaml from the test and editing it a little bit this is the scenario, I think we should enable:
static const std::string descriptor_config_yaml = R"(
stat_prefix: test
token_bucket:
max_tokens: 10
tokens_per_fill: 1000
fill_interval: 60s
filter_enabled:
runtime_key: test_enabled
default_value:
numerator: 100
denominator: HUNDRED
filter_enforced:
runtime_key: test_enforced
default_value:
numerator: 100
denominator: HUNDRED
response_headers_to_add:

append: false
header:
key: x-test-rate-limit
value: 'true'
descriptors:
entries:

key: client_id
value: foo
key: path
value: "/foo/bar"
limit:
requests_per_unit: 10
unit: MINUTE

entries:

key: client_id
value: foo
limit:
requests_per_unit: 100
unit: MINUTE
)";

What this says is that for any route, we allow 1000request/min but if "client_id" is "foo" and path is "foo/bar" we only allow 10 requests per min and if just "client_id" is "foo" then we allow 100 requests per minute.
As said in the description above, I am thinking to map request_per_unit to tokens_per_fill and unit to fill_interval in token bucket algo implementation.
Also, @mattklein123 https://github.com/envoyproxy/envoy/blob/master/api/envoy/extensions/common/ratelimit/v3/ratelimit.proto mentions the use of "client_id", how can we get that from Ratelimit actions(https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/rate_limit_filter#composing-actions)? I feel this is something we should add using ssl info...

/retest

@mattklein123 , @rgs1 : Can you please review this again and see if design makes sense now?
/cc @kyessenov

@mattklein123 , @rgs1 : Can you please review this again and see if design makes sense now?

Can you fix CI and I will look?

Please merge main to fix CI and then I will take another pass.
/wait

Hey Matt,
I am restructuring config descriptors to be inside rate_limit_impl itself
as you suggested to remove fillDescriptor as its used only once..does that
sound ok?
Will update the whole thing at once..
On Wed, Dec 16, 2020 at 12:12 PM Matt Klein<EMAIL_ADDRESS>wrote:

Please merge main to fix CI and then I will take another pass.
/wait
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/envoyproxy/envoy/pull/14172#issuecomment-746939497,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AI634YWC5FWHLH4TD3YZ2YDSVEICLANCNFSM4UBQEMLQ
.

--
Thanks,
Nupur

@mattklein123 , @kyessenov : All tests are passing but coverage is failing with this error:
Code coverage for source/extensions/filters/http/local_ratelimit is lower than limit of 96.6 (94.3)
Is it possible to get where coverage is missing and get this number quickly locally?

@gargnupur Coverage is uploaded in CI logs. https://storage.googleapis.com/envoy-pr/0cc63b2/coverage/index.html.

@gargnupur Coverage is uploaded in CI logs. https://storage.googleapis.com/envoy-pr/0cc63b2/coverage/index.html.
@kyessenov
Woww! this is amazing.. didn't know this existed! It was basically missing tests for all the null returns. Added them..

@mattklein123 , @kyessenov : This is ready for review again!

@gargnupur I think maintainers are on vacation till next week.
@mattklein123 I can take over this PR or any follow-ups. Waiting for the feedback.

/retest

@gargnupur I think maintainers are on vacation till next week.
@mattklein123 I can take over this PR or any follow-ups. Waiting for the feedback.

@kyessenov : Thanks a lot! The failed test in coverage run is passing locally and in another test target on CI too, so retesting.
Also, coverage complained about less coverage in wasm extension and not in the code I touched :(

Please check CI. Also, DCO needs to be fixed and I'm going to review the whole thing again anyway, so please just squash the whole thing, rebase on main, and force push. @kyessenov if you want to open a fresh PR since you said you were going to finish it, let me know. That's fine also. Thank you!
/wait

Please check CI. Also, DCO needs to be fixed and I'm going to review the whole thing again anyway, so please just squash the whole thing, rebase on main, and force push. @kyessenov if you want to open a fresh PR since you said you were going to finish it, let me know. That's fine also. Thank you!
/wait

Closing in favor of the other PR.

Closing in favor of the other PR.


PublishCodeCoverageResults & Merge reports

Hello,
I have 2 phases in my build process, each phase has:

Publish Test Results
Publish Code Coverage

On the summary of the build, I have a nice overview of tests (with the 2 phases)
But on Code Coverage I get only 1 output of "Publish Code Coverage", 1 phase is missing.
How should I merge the 2 reports?

file: cobertura-coverage.xml
folder: lcov-report

Thank you for your help

@jycouet, currently this feature is not supported. @PBoraMSFT will address the feature request.

Hi @PBoraMSFT
Do you have an idea of when you will be able to address this? :)
Thank you

Sorry to come back to this... I would actually need this soon :)
I would like to know if you are working on it, or I should try to make a PR?
Let me know please @nigurr @PBoraMSFT
Thank you

@jycouet - This is on our backlog, but not scheduled yet.
You can workaround by writing a task to merge the code coverage files and then publish them using the publish code coverage task.
I am closing this issue here as we don't track backlog items here.


Reduced workflow permissions

Current dependencies on/for this PR:

main

PR #1793   👈

This comment was auto-generated by Graphite.


License?

Have played with the demo on your blog, this is really cool! I would like to check out the source but don't see a license. Can you add a license file to indicate what OSS license you are using for this code?

Feel free to use the code however you like, I will add the license whenever
I can.
2014-12-23 13:19 GMT-08:00 John Arthorne<EMAIL_ADDRESS>
Have played with the demo on your blog, this is really cool! I would like
to check out the source but don't see a license. Can you add a license file
to indicate what OSS license you are using for this code?
—
Reply to this email directly or view it on GitHub
https://github.com/diervo/html5rubik/issues/1.

--
Diego Ferreiro Val
@diervo


IoT Hub landing page - Incorrect links

Hello Docs Team,
There is an issue on that page :
https://github.com/MicrosoftDocs/azure-docs/blob/master/articles/iot-hub/index.yml
(live here https://docs.microsoft.com/en-us/azure/iot-hub/)
The 5 Minutes Quickstart table links are not in the proper column when there is no quickstart with cloud shell (see Control a device for example).
As this page is YAML-based, I'm not sure what fix is more appropriate, that's why I opened an issue and not a PR.
Available if needed.

@cmaneu  Thanks for bringing this to our attention. We are currently investigating and will update you shortly.

@timlt  @dominicbetts Could you please check this and provide your suggestions?

#in-progress
Submitted PR fix in private repo, pending merge.

@timlt Thanks for the quick fix.


Lib build error TypeError: Cannot read property 'tapAsync' of undefined

Current Behavior
Build failed TypeError: Cannot read property 'tapAsync' of undefined
Expected Behavior
Build.
Steps to Reproduce
Init by nx g @nx-plus/vue:lib vue-core --publishable and moved from libs to packages.
project.json :
{
  "root": "packages/vue-core",
  "sourceRoot": "packages/vue-core/src",
  "projectType": "library",
  "targets": {
    "lint": {
      "executor": "@nrwl/linter:eslint",
      "options": {
        "lintFilePatterns": [
          "packages/vue-core/**/*.{ts,tsx,vue}"
        ]
      }
    },
    "build": {
      "executor": "@nx-plus/vue:library",
      "options": {
        "dest": "dist/packages/vue-core",
        "entry": "packages/vue-core/src/index.ts",
        "tsConfig": "packages/vue-core/tsconfig.lib.json"
      }
    },
    "test": {
      "executor": "@nrwl/jest:jest",
      "outputs": [
        "coverage/packages/vue-core"
      ],
      "options": {
        "jestConfig": "packages/vue-core/jest.config.js",
        "passWithNoTests": true
      }
    }
  },
  "tags": []
}

Failure Logs
Error when nx build vue-core --verbose:
> nx run vue-core:build --verbose

⠹  Building for production as library (commonjs,umd,umd-min)...

 DONE  Compiled successfully in 2744ms                                                                                3:55:37 PM

⠴  Building for production as library (commonjs,umd,umd-min)...

 ERROR  Failed to compile with 1 error                                                                                3:55:38 PM

  TypeError: Cannot read property 'tapAsync' of undefined

  - ExternalModuleFactoryPlugin.js:59 ExternalModuleFactoryPlugin.apply
    [d2-craft]/[webpack]/lib/ExternalModuleFactoryPlugin.js:59:39

  - ExternalsPlugin.js:30
    [d2-craft]/[webpack]/lib/ExternalsPlugin.js:30:63

  - Hook.js:154 SyncHook.lazyCompileHook
    [d2-craft]/[cli-service]/[tapable]/lib/Hook.js:154:20

  - Compiler.js:665
    [d2-craft]/[cli-service]/[webpack]/lib/Compiler.js:665:23

  - Hook.js:154 AsyncSeriesHook.lazyCompileHook
    [d2-craft]/[cli-service]/[tapable]/lib/Hook.js:154:20

  - Compiler.js:662 Compiler.compile
    [d2-craft]/[cli-service]/[webpack]/lib/Compiler.js:662:28

  - Compiler.js:328 Compiler.runAsChild
    [d2-craft]/[cli-service]/[webpack]/lib/Compiler.js:328:8

  - compiler.js:75
    [d2-craft]/[html-webpack-plugin]/lib/compiler.js:75:19

  - new Promise

  - compiler.js:74 Object.compileTemplate
    [d2-craft]/[html-webpack-plugin]/lib/compiler.js:74:10

  - index.js:71
    [d2-craft]/[html-webpack-plugin]/index.js:71:42

  - Hook.js:154 AsyncParallelHook.lazyCompileHook
    [d2-craft]/[cli-service]/[tapable]/lib/Hook.js:154:20

  - Compiler.js:669
    [d2-craft]/[cli-service]/[webpack]/lib/Compiler.js:669:20

 DONE  Compiled successfully in 2918ms                                                                                3:55:38 PM

Build failed with errors.

———————————————————————————————————————————————

>  NX   ERROR  Running target "vue-core:build" failed

  Failed tasks:

  - vue-core:build

  Hint: run the command with --verbose for more details.

Environment

>  NX  Report complete - copy this into the issue template

  Node : 14.18.1
  OS   : darwin x64
  npm  : 6.14.15

  nx : undefined
  @nrwl/angular : undefined
  @nrwl/cli : 13.2.3
  @nrwl/cypress : 13.2.3
  @nrwl/devkit : 13.2.3
  @nrwl/eslint-plugin-nx : 13.2.3
  @nrwl/express : undefined
  @nrwl/jest : 13.2.3
  @nrwl/linter : 13.2.3
  @nrwl/nest : undefined
  @nrwl/next : undefined
  @nrwl/node : undefined
  @nrwl/nx-cloud : 13.0.1
  @nrwl/react : 13.2.3
  @nrwl/react-native : undefined
  @nrwl/schematics : undefined
  @nrwl/tao : 13.2.3
  @nrwl/web : 13.2.3
  @nrwl/workspace : 13.2.3
  @nrwl/storybook : 13.2.3
  @nrwl/gatsby : undefined
  typescript : 4.4.4
  rxjs : 6.6.7
  ---------------------------------------
  Community plugins:
  	 @nx-plus/vue: 12.2.0

Normal init and not moved still error.

Nx13 only support Webpack5. Seem this repo vue-cli4.5 not match.


[Bug]: no way of getting the updated sourceModuleId for existing modules after convert API from consumer side is called

Is there an existing issue for this?

[X] I have searched the existing issues

Description
When convert query to module is done, Under the hood , package is republished,
in that session, if we add another module instance from the same package(except from the newer module) , we have the older sourceModuleId that is being sent in the payload
Because of this , we are getting error from backend, dealing with stale data
Steps To Reproduce

In an app, create a module from existing query (Make sure to add it in an existing package and not NEW package)
Now without page refresh, try to add another instance from the same previous package (Don't create instance from the newly created module in the previous step)
error will be thrown, dealing with older version/stale data

Public Sample App
No response
Environment
Production
Issue video log
No response
Version
Self hosted

Not fixed on release-ee @ashit-rath @ankitakinger

This is happening because on conversion, a package is re-published, which was leading to user not being able to create a new module instance from the previously existing modules in that package (as it has stale sourceModuleId linked which needs an update).
To fix this, simply fetching modules wouldn't have helped as the sourceModuleId for the existing module instances on the page no more matches any of the module ids from the newly fetched moduleMetadata. Hence we need to also re-fetch all the module instances to fix stale module instances.
It doesn't make sense though to update everything modules and packages related all over the app just because a user converted 1 single query to module instance. I think we should look into package versioning and solve this in a better way since before re-publishing the package, the other modules were not touched. We do not change the ids of any entity at all just coz it got updated.
Moving this to needs info pipeline.

RCA
We need to fetch all module instances for the current page to avoid this while adding the newly created module to an existing package. This is because publish is done at the package-level and during publish we create a new version of everything thus it changes the sourceModuleId in the existing module instances as part of the auto-upgrade process.


Cannot read property 'extend' of undefined

Chart.types.Line.extend({
});
For this it says "Uncaught TypeError: Cannot read property 'extend' of undefined"

@hemanjosko this is expected in v2. New chart types are created by extending controllers. See http://www.chartjs.org/docs/#advanced-usage-writing-new-chart-types

Is it possible to get some examples of these "extend" feature ? I found a working code with the old Chart.js version 1.0.2, see https://jsfiddle.net/fhxv0vL7/32/, but there are really few working examples of advanced capacities with last version.
How to get the same result using the new writing ? Something like
Chart.controllers.area = Chart.DatasetController.extend({ ... })
or
Chart.controllers.area = Chart.controllers.line.extend({ ... })
maybe ?

@JordanBrouns Your second guess seems to be the correct one, you can take a look to that plugin, might be helpful.

@JordanBrouns Actually, both your suppositions are correct, if you want to create a totally new chart type, you can use the first approach (for  example, the core bar controller), and if you want to extend an existing chart, you can use the second approach (for example this plugin).

Thanks for your fast answer @simonbrunel. I'm facing a lot of troubles to translate the previous code in the new version. Here is were i am: https://jsfiddle.net/JordanBrouns/94uncnh9/6/
I'm simply trying to get a line plot with an uncertainty band around it. So there are 3 lines, and the space between the last 2 is filled to create the area. The problem is that the error message appearing in the debug console is not helpful at all, and there is few information about how to do this in the doc.
Do you know how to get these uncertainty bands around the line ?

A plugin might be more appropriated In your case: I updated your jsfiddle with a simple plugin I just wrote, not sure that it works in all cases but it should help you to implement your feature. If you still want to make a new chart type, the plugin code can be easily adapted.

Woh, thank you so much! That's exactly what I was looking for. Indeed, a plugin appears to be more appropriate than a whole chart type.
Do you know why can't we find any references to most of the object properties of methods that you used? When I saw the code of your plugin, I was kind of surprised and disappointed to realize that, while the doc mentions the possibility to write new charts and plugins, it only gives few information about the available commands or properties. What's strange for me is to see that in one hand it claims easy extension and one the other one it gives no tools at all to do that.
Anyway, (really) thank you again for your precious help!


simulation performance improvements

includes cherry picks from @DavidLegg DavidLegg/feature--job-schedule-speedup
goes with corresponding PR in clipper-aerie

@mattdailis any estimate on when this might be reviewed? We don't have a strict deadline, but we do have some changed in our adaptation that depend on this, and it provides a significant performance benefit.

Closing this PR in favor of #1212, which has been merged.

This PR also included some logging which looks useful: 48f6039ab4343f35a590149f70f78e5309a42bad
Could we open another PR for that change?


fixed input and output schema documentation on SquaredL2Distance Op

Closed in favor of https://github.com/caffe2/caffe2/pull/814


Revert "Fix blinking polyline"

Reverts #6955
Fixes #7365
Fixes #7368
Never merge a PR right before the release
@lilleyse please open whatever issues necessary since we're reverting #6955

Thanks for the pull request @hpinkos!

:heavy_check_mark: Signed CLA found.

Reviewers, don't forget to make sure that:

[ ] Cesium Viewer works.
[ ] Works in 2D/CV.
[ ] Works (or fails gracefully) in IE11.

I am a bot who helps you make Cesium awesome! Contributions to my configuration are welcome.
:earth_africa: :earth_americas: :earth_asia:

Thanks, please re-open any of the issues that PR closed and we'll revert the revert ASAP and keep the PR open for @bagnell to finish up.

#6741 was the issue we globbed a bunch of random polyline artifact problems onto.  In the initial comment I asked @lilleyse to open a new issue for the specific problem since he created some other separate issues from #6741

Opened https://github.com/AnalyticalGraphicsInc/cesium/issues/7374


Missing instructions on Google Analytics and opening Wiki gives 500 error.

Hello.
I want to use this gem to fetch data from my Google Analytics dashboard. In this page, there is no instructions of how to use this gem for Gogle Analytics. When I open Wiki it gives 500 error. I search others tutorials and they are outdated.
Also when I open ruby-doc it says that page does not exist.
This situation reminds me old quest games: You don't know what to do, you don't know where you are and you don't know how to do something. You have to guess.
Please, I mean, PLEASE add step by step guide of getting info from analytics of this gem.

+1

This doesn't solve the issue for analytics, but https://github.com/google/google-api-ruby-client-samples has some examples to get you in the right direction at least.

+1

Added a simple analytics sample to the samples directory.

:+1:

Also this turned out very useful for me! http://www.rubydoc.info/github/google/google-api-ruby-client/Google/Apis/AnalyticsV3


Create GH page to have a public landing place for the project

other than the repo readmes.
see #47
This should be fairly minimal (single page) and contain links to the source repos (2x), zenodo, and running DSE.
https://github.com/marketplace/actions/hugo-setup

see https://github.com/readchina/scb-hugo2/issues/1 page is up

and we are now at https://readchina.github.io/shouchaoben/


Fix obtaining times from GetCapabilities request

There is a problem when getting time dimensions from a layer that doesn't have time instances when there's a different one in the server that has them. For example, with this GetCapabilities document:
<WMT_MS_Capabilities>
  ...
  <Capability>
    ...
    <Layer>
      ...
      <Layer queryable="1" opaque="0">
        <Name>no_timestamps</Name>
        ...
      </Layer>
      <Layer queryable="1" opaque="0">
        <Name>with_timestamps</Name>
        ...
        <Dimension name="time" units="ISO8601"/>
        <Extent name="time" default="0/9999">1984-12-31T22:00:00.000Z,1985-12-31T22:00:00.000Z</Extent>
      </Layer>
    </Layer>
  </Capability>
</WMT_MS_Capabilities>

if I use the no_timestamps layer with the plugin and try to obtain the time instances from the document, it doesn't find it in the layer and checks the parent with querySelectorAll, which searches the whole tree returning the time instances for the layer with_timestamps.
My fix searches only immediate children with Array.from(layer.children).filter(...) so we only have time instances if they really belong to the layer.

@bielfrontera Do you have time to review this PR?

Hi @t-book and @victorzinho,
thanks for your PR and apologies for the delayed response (I'm back to this project after a temporary leave).
Could you search an alternative to Array.from? It does not work in Internet Explorer and I'd want to maintain the support to this browser until Leaflet does.
And I will merge the changes in the source files and discard the changes in dist files (they are modified with the release of a new version).

Could you search an alternative to Array.from? It does not work in Internet Explorer and I'd want to maintain the support to this browser until Leaflet does.

I've merged the PR but removing the Array.from and using an alternative to get the correct node (see cc21f7a)


format_black label fails on PR from fork

Automatic black formatting via label failed over on #33. The error occurred at actions/checkout@v3:
Run actions/checkout@v3
  with:
    ref: abstract_calculator
    fetch-depth: 0
    repository: pyiron/atomistics
    ssh-strict: true
    persist-credentials: true
    clean: true
    sparse-checkout-cone-mode: true
    fetch-tags: false
    lfs: false
    submodules: false
    set-safe-directory: true
Error: Input required and not supplied: token

However the action uses the DEPENDABOT_WORKFLOW_TOKEN, which I can indeed see has been set in the secrets.
      - uses: actions/checkout@v3
        with:
          token: ${{ secrets.DEPENDABOT_WORKFLOW_TOKEN }}

My suspicion is that this is an artefact of the PR being from my fork where the token is not set.
If this understanding is correct, then for me this would be an argument against requiring in-team devs to make all their PRs by fork.
When I tried to push the branch containing the centralized workflow from PyCharm I web-authenticated and got an OK message, but the push still failed, which surprised me since a team I'm on has admin rights to this repo. @jan-janssen what is the intended behaviour for this repo? I looked in the settings and didn't see anything to (dis)allow direct pushes from members, so I'm not totally clear if I was actually trying to do something that's been forbidden or if PyCharm and GitHub are just borking my identification process.

@jan-janssen what is the intended behaviour for this repo?

I tried to configure the repository just like all the other pyiron repositories. This was not done in the beginning but since yesterday everything should be just like all the other repositories https://github.com/pyiron/atomistics/pull/33#issuecomment-1714971330

@jan-janssen what is the intended behaviour for this repo?

I tried to configure the repository just like all the other pyiron repositories. This was not done in the beginning but since yesterday everything should be just like all the other repositories #33 (comment)

Ok, then the black labeling is (hopefully) just because that PR is coming from a fork.
The inability to push directly to the repo is probably a PyCharm-GitHub problem on my end and I'll try again later.


add RBAC to list multiclusterengines to fix ACM-4230

Add a cluster role rule to list multiclusterengines to fix https://issues.redhat.com/browse/ACM-4230 and https://github.com/stolostron/backlog/issues/27211

/lgtm

/lgtm


ERROR: Could not find which method () to invoke from this list

Steps to Reproduce

...sync gradle project after adding new flutter module and updating the settings.gradle

import javax.naming.Binding

include ':app'
setBinding(new Binding([gradle: this]))                                 // new
evaluate(new File(                                                      // new
        settingsDir.parentFile,                                               // new
        'ui_flutter/.android/include_flutter.groovy'                          // new
))

setBinding is where it crashes
2. ...
3. ...
Logs

ERROR: Could not find which method <init>() to invoke from this list:
  public javax.naming.Binding#<init>(java.lang.String, java.lang.String, java.lang.Object, boolean)
  public javax.naming.Binding#<init>(java.lang.String, java.lang.String, java.lang.Object)
  public javax.naming.Binding#<init>(java.lang.String, java.lang.Object, boolean)
  public javax.naming.Binding#<init>(java.lang.String, java.lang.Object)
Open File

import javax.naming.Binding delete this import and sync it worked for me

It sounds like you modified the gradle script in a way that doesn't work. You'll need to seek out help on gradle specific issue tracker or forums to find the correct syntax, perhaps doing as @namankk  suggested


README.adoc: setup codacy badge

Set up the codacy badge and set up the link to codacy for the evaluation dashboard

Coverage remained the same at 47.453% when pulling 34d1fb3f87b4b2e56d89b0c16a39234a75257bd6 on px1099:set-up-codacy-badge into 3bbab44f0b2b5dba4a291051e8d5493052fa3d1f on CS2113-AY1819S1-F09-2:master.


Clean up history before submission to Hyperledger Labs

See https://github.com/hyperledger-labs/hyperledger-labs.github.io/blob/master/README.md#bringing-in-an-existing-repository for the requirements to be met.

Fixed branch legacy/master


Improve fiber alignement

Align the fiber with the cabestan wheels and prevent it from slipping out.

Works for now with a L metal piece stopping the fiber from moving. Could be upgraded further along the line.


#CX-8495 : Incorrect colour of info icon in station login and in profile settings in dark mode

#CX-8495 : Incorrect colour of info icon in station login and in profile settings in dark mode
Related Issue

Motivation and Context

How Has This Been Tested?

Screenshots:
Before (If applicable):

After:

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation update
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Other... Please describe:

Checklist:

[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

test


Why Image source not readable

{
"message": "Image source not readable",
"exception": "Intervention\Image\Exception\NotReadableException",
"file": "/var/www/html/vendor/intervention/image/src/Intervention/Image/AbstractDecoder.php",
"line": 346
...
}
I gave 777 access

and i try use move() store() storeAs() methods to store image to different folders

this is my code
  //压缩图片上传
    public function compressionUpload($path)
    {
        $full_path = storage_path().'/public/Image'.$path;
        dd($full_path);  ///var/www/html/storage/public/Imagepublic/Images/test.jpg
        $img = Image::make($full_path);
        //todo ....

        $img->resize(300, null, function ($constraint) {
            $constraint->aspectRatio();
        });
        //将图片保存到新的路径下
        $img->save(storage_path().'/Thumbnails/new_avatar.jpg');
        //保存后的路径，用于上传删除
        dd($img->basePath());

    }

and can you tell me this path ,absolute path or relative path, or something else

now i use file_get_contents() and use absolute path to open the image

The same happens here. I'm using PHP 8.0.2 with Laravel 8.12.
This exception doesn't happen when i use PHP 7.4.12

This must be a bug that should be corrected for PHP 8 because i too face same issue..
Getting... error on
Image::make(DIR.'/asset/logo/logo.png')->opacity(50);
Fatal error:  Uncaught Intervention\Image\Exception\NotReadableException: Image source not readable in...

me too

me too

Same here, faceed with similar problem in laravel 9, any solution?


Modal not open

Description
I've recently updated my website with the last Materialize release and now, modal on my page doesn't seem to work anymore.
I've updated Materialize version from 0.97.7 to 0.98.2 and jQuery from 3.0.0 to 3.2.1.
I've tested to rollback in 0.97.7 with jQuery 3.2.1 and it's working.
New version : (only add #xx on url)
$('.modal-trigger').modal();
Old version : (open modal)
$('.modal-trigger').leanModal();
Repro Steps
I've tested many changes, with and without trigger on link who open modal. I don't know why this happen while it's working on your website with the same code.
Use Materialize 0.98.2 and jQuery 2.1.1 (in the doc) / 3.0.0 (my old version) / 3.2.1 (latest release) to reproduce
Codepen to reproduce problem : https://codepen.io/0xPic0/pen/zwjpgN
It can be my fault if i've missed something but i've changed my code in all sense during 3 days and now, i haven't no more ideas.
I hope a fix can be find.
Thanks by advance for your responses.

And jQuery 2 did not work with this? No errors in the browser console?

Has you can see in the codepen link, i use jQuery 2.1.1 as in the Materialize official documentation. Nothing change and nothing appear in the console.

@0xPic0 https://codepen.io/anon/pen/OmZvKO
The initialization was not correct.

See http://materializecss.com/modals.html#initialization

Yep, i saw my error. My bad, i misunderstood the change.
Thanks for your help. I close this issue that wasn't one.


Release Azure.ResourceManager.Workloads beta

https://github.com/Azure/azure-rest-api-specs/blob/main/specification/workloads/resource-manager
Readme Tag: package-preview-2022-11
No later than 2023-02-24

beta.3 released


[Bug]: On giving app viewer access, nothing is shown for that user on app launch

Is there an existing issue for this?

[X] I have searched the existing issues

Description
When we give/share a user with app viewer access - nothing is seen on the page when that user logs in.
Steps To Reproduce

Share an application to a user by giving only App Viewer access.

Login with that user.
On launching, the page is blank.

Public Sample App
No response
Issue video log
No response
Version
EC2 instance

@btsgh tried replicating this but not getting the issue. Will it be possible to share a video. Also, this seems to be unrelated to the multiple env epic.

Unable to reproduce this, can you please check if you had deployed the app before sharing? @btsgh

Unable to reproduce - Probably that was the case @ayushpahwa


error

2018-05-26T18:25:11.426092000Z [18:25:11 UTC 2018/05/26] [INFO] (ngrok/log.(*PrefixLogger).Info:83) [metrics] Reporting: {"bytesIn.count":0,"bytesOut.count":0,"connMeter.count":0,"connMeter.m1":0,"httpTunnelMeter.count":0,"linux":0,"osx":0,"other":0,"tcpTunnelMeter.count":0,"tunnelMeter.count":0,"tunnelMeter.m1":0,"windows":0}
2018-05-26T18:25:21.215313000Z [18:25:21 UTC 2018/05/26] [WARN] (ngrok/log.(*PrefixLogger).Warn:87) [pub:29fdf7e3] Failed to read valid https request: malformed HTTP request "~\x00\x00\x00\x00\x00\x00\x00{"Type":"Auth","Payload":{"Version":"2","MmVersion":"1.7","User":"","Password":"","OS":"darwin","Arch":"amd64","ClientId":""}

检查 ngrok.cfg 文件中的端口号是否跟启动ngrok服务时设置的端口号一致


DTLS 1.2 Client does not ignore HelloRequest received in the middle of the handshake

Description

Type: Bug
Priority: Minor

Non-conformance Bug
OS
Linux, Ubuntu 20
mbed TLS build:
Version: 2.26.0
Configuration: vanilla configuration
Affected Versions
DTLS 1.2
Expected behavior
According to the TLS 1.2. RFC, the client should ignore HelloRequest if received in the middle of a handshake.

The one message that is not bound by these ordering rules
is the HelloRequest message, which can be sent at any time, but which
SHOULD be ignored by the client if it arrives in the middle of a
handshake.

Actual Behavior
Our testing shows that the MbedTLS client does not conform to the standard. It responds to a mid-handshake HelloRequest by re-transmitting the original ClientHello. This violation does not appear to have any security or interoperability consequences, but it does indicate that the state machine in the DTLS RFC  is not followed properly.
Steps to Reproduce
I attached files necessary for reproduction using TLS-Attacker, a Java-based tool for testing TLS libraries. Also included in the archive is a capture of the interaction,  generated on my machine. TLS-Attacker requires  the JDK for Java 8. On Ubuntu, this can be installed  by running:
sudo apt-get install openjdk-8-jdk
Unpack the archive, cd to resulting folder and run bash reproduce.sh, while running an instance of Wireshark on the side. The reproduction script will:

setup MbedTLS and Tls-Attacker;
launch an MbedTLS client, configured with a high DTLS timeout value (to avoid retransmissions);
launch TLS-Attacker, execute test.

If everything works as planned, Wireshark should show an interaction similar to that in the image below:

Notice the third ClientHello, which the client sends in response to HelloRequest.
reproduction.tar.gz
Thanks!

Hi @pfg666,
Thanks for the detailed bug report and reproduction script, very appreciated! I have checked and verified the behaviour you have described and confirmed this as a non-conformance.
We will try to schedule this work in soon however we can make no promises of a time-scale, if this is something you'd like to fix feel free to raise a PR.


ebtables: restore legacy commands

ebtables 2.0.11 renamed the ebtables commands from "ebtables*" to "ebtables-legacy-*".
Of course this breaks legacy packages and scripts that depends on the ebtables commands.
The idea behind this upstream change appears to be that ebtables-nft replaces ebtables and distributions should rename either the ebtables-legacy or ebtables-nft commands to provide the ebtables commands.
For nix a better fit is for packages to specify either the ebtables or the ebtables-nft package, while both packages provide the same commands.
This patch restores the ebtables package so it functions again.

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

This should probably be done like this to support both variants and make a switch at some point: https://github.com/NixOS/nixpkgs/pull/66953

This should probably be done like this to support both variants and make a switch at some point.
Also related: #81172

Perhaps. I don't quite see the purpose. If a package depends on nftables and not ebtables, should it not just replace ebtables with nftables or vice versa? That's the mechanism we have for choosing different packages. Is there a use-case for a package or system depending on both the new nftables commands and the old ebtables commands simultaneously, by both being present and named differently?

If a package depends on nftables and not ebtables, should it not just replace ebtables with nftables or vice versa?

It's more of ebtables-nft vs ebtables-legacy - they both have same CLI interface but use different kernel API under the hood.

Is there a use-case for a package or system depending on both the new nftables commands and the old ebtables commands simultaneously, by both being present and named differently?

nftables and ebtables is just a frontends for kernel API's.
nft and ebtables-nft commands can be used at the same time but using different API's concurrently (ebtables-legacy and iptables-nft for example) is a bad idea.

Disregard my previous comment, ebtables-nft command is included in iptables package.

@yesbox please resolve the merge conflict.

@yesbox please resolve the merge conflict.

This is a semi-automatic executed nixpkgs-review which is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
If you have any questions or problems please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 81545 run on x86_64-linux 1

8 packages built:

ebtables
ferm
libvirt_5_9_0
lxd
nixops
nixopsUnstable
nixops_1_6_1
shorewall

This is a semi-automatic executed nixpkgs-review which is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
If you have any questions or problems please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 81545 run on x86_64-linux 1

8 packages built:

ebtables
ferm
libvirt_5_9_0
lxd
nixops
nixopsUnstable
nixops_1_6_1
shorewall