Document (breaking) changes between v0.1 and v0.2?

I wrote some code against v0.1 which had something like myFunction(doc::XML.Document) = <...>. But trying to upgrade to v0.2 of XML, I get the mysterious error ERROR: LoadError: ArgumentError: invalid type for argument doc in method definition for myFunction at <file>:<line>. Any idea what's going on? I added a compat entry for my package for now to stay on XML v0.1.
I'm getting this error on both julia 1.8 and 1.9.

There are some big breaking changes between the two versions that:

Are necessary for performance reasons.
Are impossible to deprecate cleanly.

The new way of doing things is in the README, but here's a summary:

The previous structs have been removed and their names have been reused in an enum type.  The cryptic error you're seeing is because Document is no longer a type, but instead is an instance of the enum type NodeType.

Most of the old syntax still works, e.g. Document(children...).

Your function would now need to be something like:

function myfunction(node::Node)
    nodetype(node) == Document || error("myfunction requires a Document input")
    <...>
end

I hope this helps! Stick to v0.1 if you need the individual structs and open another issue if v0.2 is making something harder to accomplish.

Thanks a lot!
Yeah, totally fair to upend your data structures between v0.1 and v0.2 without "clean" deprecation.


Add documentation for the juris_dscr field on the Cvr2SoCd database model

Your mission
Add documentation for the juris_dscr field on the Cvr2SoCd database model.
Here's how
Step 1: Claim this ticket by leaving a comment below. Tell everyone you're ON IT!
Step 2: Open up the file that contains this model. It should be in calaccess_raw.models.campaign.py.
Step 3: Hit the little pencil button in the upper-right corner of the code box to begin editing the file.

Step 4: Find this model and field in the file. (Clicking into the box and searching with CTRL-F can help you here.) Once you find it, we expect the field to lack the help_text field typically used in Django to explain what a field contains.
effect_dt = fields.DateField(
    null=True,
    db_column="EFFECT_DT"
)

Step 5: In a separate tab, open up the official state documentation and find the page that defines all the fields in this model.

Step 6: Find the row in that table's definition table that spells out what this field contains. If it lacks documentation. Note that in the ticket and close it now.

Step 7: Return to the GitHub tab.
Step 8: Add the state's label explaining what's in the field, to our field definition by inserting it a help_text argument. That should look something like this:
effect_dt = fields.DateField(
    null=True,
    db_column="EFFECT_DT",
    # Add a help_text argument like the one here, but put your string in instead.
    help_text="The other values in record were effective as of this date"
)

Step 9: Scroll down below the code box and describe the change you've made in the commit message. Press the button below.

Step 10:  Review your changes and create a pull request submitting them to the core team for inclusion.

That's it! Mission accomplished!

I'm on this!


virtual env is ignored while testing

Type: Bug

Behaviour
Even if I installed pytest in the venv and selected the interpretor, it still use the pytest of my system while testing. I had to modify python.testing.pytestPath to ${workspaceFolder}/.venv/bin/pytest to get it worked.
There is no error performing my tests in the terminal within the venv activated
Steps to reproduce:

create a project and an virtual env without pip
install pytest in the virtual env
install the project as editable mode with pip install -e
add a test file which contains import of the project from myproject import foo
run test in the sidebar

Diagnostic data
python test log panel
=============================
platform linux -- Python 3.12.3, pytest-8.1.2, pluggy-1.4.0
rootdir: /mnt/lib/develop/sources/python/cphub
configfile: pyproject.toml
plugins: typeguard-4.2.1, anyio-4.3.0, mock-3.14.0
collected 0 items / 1 error

==================================== ERRORS ====================================
___________________ ERROR collecting tests/test_pastebin.py ____________________
ImportError while importing test module '/mnt/lib/develop/sources/python/cphub/tests/test_pastebin.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/usr/lib/python3.12/importlib/__init__.py:90: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
tests/test_pastebin.py:4: in <module>
    from cphub.pastebin import PasteBin
E   ModuleNotFoundError: No module named 'cphub'
-------------- generated xml file: /tmp/tmp-88939gx50f6ouwSFD.xml --------------
=========================== short test summary info ============================
ERROR tests/test_pastebin.py
=============================== 1 error in 0.03s ===============================
ERROR: found no collectors for /mnt/lib/develop/sources/python/cphub/tests/test_pastebin.py::test_singleton_instance

Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)

2024-05-10 17:59:35.532 [info] > ~/.local/bin/pytest --rootdir . --override-ini junit_family=xunit1 --junit-xml=/tmp/tmp-88939gx50f6ouwSFD.xml ./tests/test_pastebin.py::test_singleton_instance
2024-05-10 17:59:35.533 [info] cwd: .

Extension version: 2024.7.11301009
VS Code version: Code - Insiders 1.90.0-insider (ccba2fc85c14bedeef5a72b7ebc0bde9b0e91948, 2024-05-06T08:06:22.239Z)
OS version: Linux x64 6.8.9-zen1-1-zen
Modes:

Python version (& distribution if applicable, e.g. Anaconda): 3.10.14
Type of virtual environment used (e.g. conda, venv, virtualenv, etc.): Venv
Value of the python.languageServer setting: Pylance

User Settings

venvPath: "<placeholder>"

venvFolders: "${workspaceFolder}/.venv"

languageServer: "Pylance"

testing
• cwd: "${workspaceFolder}"
• pytestArgs: "${workspaceFolder}/tests"
• pytestEnabled: true
• pytestPath: "<placeholder>"

Installed Extensions

Extension Name
Extension Id
Version

Auto Close Tag
formulahendry.auto-close-tag
0.5.15

Auto Rename Tag
formulahendry.auto-rename-tag
0.1.10

Even Better TOML
tamasfe.even-better-toml
0.19.2

gitignore
codezombiech.gitignore
0.9.0

Indenticator
SirTori.indenticator
0.7.0

IntelliCode
VisualStudioExptTeam.vscodeintellicode
1.3.1

IntelliCode API Usage Examples
VisualStudioExptTeam.intellicode-api-usage-examples
0.2.8

json
ZainChen.json
2.0.2

Live Server
ritwickdey.LiveServer
5.7.9

Markdown All in One
yzhang.markdown-all-in-one
3.6.2

Path Intellisense
christian-kohler.path-intellisense
2.8.5

Prettify JSON
mohsen1.prettify-json
0.0.3

Project Manager
alefragnani.project-manager
12.8.0

Pylance
ms-python.vscode-pylance
2024.5.1

Python
ms-python.python
2024.7.11301009

Python Debugger
ms-python.debugpy
2024.6.0

Python Extension Pack
donjayamanne.python-extension-pack
1.7.0

Python Indent
KevinRose.vsc-python-indent
1.18.0

Python Test Explorer for Visual Studio Code
littlefoxteam.vscode-python-test-adapter
0.8.2

Python Type Hint
njqdev.vscode-python-typehint
1.5.1

Remote - SSH
ms-vscode-remote.remote-ssh
0.112.2024050815

Remote - SSH: Editing Configuration Files
ms-vscode-remote.remote-ssh-edit
0.86.0

Remote Explorer
ms-vscode.remote-explorer
0.5.2024031109

Remote Repositories
ms-vscode.remote-repositories
0.41.2024022202

Ruff
charliermarsh.ruff
2024.20.0

Table Visualizer for JavaScript Profiles
ms-vscode.vscode-js-profile-table
1.0.9

Tabnine AI
TabNine.tabnine-vscode
3.98.0

Test Adapter Converter
ms-vscode.test-adapter-converter
0.1.9

Test Explorer UI
hbenl.vscode-test-explorer
2.21.1

Todo Tree
Gruntfuggly.todo-tree
0.0.226

Tokyo Night
enkia.tokyo-night
1.0.6

Wal Theme
dlasagno.wal-theme
1.2.0

YAML
redhat.vscode-yaml
1.14.0

System Info

Item
Value

CPUs
AMD Ryzen 5 3600 6-Core Processor (12 x 4016)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_graphite: disabled_offvideo_decode: enabledvideo_encode: disabled_softwarevulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: disabled_off

Load (avg)
1, 1, 1

Memory (System)
15.51GB (8.74GB free)

Process Argv
--unity-launch --enable-features=UseOzonePlatform --ozone-platform=wayland --password-store=gnome --enable-wayland-ime

Screen Reader
no

VM
0%

DESKTOP_SESSION
plasma

XDG_CURRENT_DESKTOP
KDE

XDG_SESSION_DESKTOP
plasma

XDG_SESSION_TYPE
wayland

Identical problem since I updated VS Code yesterday. My PyTest is borked on VSCode (but works fine on the terminal).

@cupcat121 it looks like you have set a path to pytest via settings to point to ~/.local/bin/pytest. That will use whatever environment pytest is installed at. We don't control that scenario. The pytest binary will pick the python based on the environment it is in.
If you have a .venv environment and you want to use a global ~/.local/bin/pyest. That is not a supported scenario. You can try launching VS Code from an activated environment from a external terminal and see if it helps.
Is there any reason you want a venv without pip?

@cupcat121 Also doing pip install -e will install in the global environment, as you mentioned your virtual environment does not have pip that means that this is getting installed to be loaded with global environment.
Note: If you create virtual environment using VS Code Create environment command, it can try to install pip into the virtual environment for you.

@karthiknadig - are you suggesting that if I use VS Code Create vs. my own bespke virtual env, pytest should work fine?

@tzaffi Not really. If you have a User settings.json (global settings) with python.testing.pytestPath set to ~/.local/bin/pytest. Then, all workspaces will use that pytest and the environment that pytest was installed in. This is because of how  ~/.local/bin/pytest actually is designed:

It will start /usr/bin/python3 (from line 1), and use that as the environment. That means if you have a workspace specific environment, then you will have to point python.testing.pytestPath to the workspace specific one. Otherwise, it will use the wrong environment. So, to make it work you will have to set python.testing.pytestPath to ${workspaceFolder}/.venv/bin/pytest. The .venv/bin/pytest just points to .venv/bin/python and starts pytest by importing it from that environment.

My suggestion is remove the global python.testing.pytestPath setting from User settings, and also remove it from workspace settings. Python extension will pick up the one in your environment automatically, based on the selected python. Python extension, just run <selected python> -m pytest so you will get the right environment.

Note that although Run Test action does not execute pytest in the select venv's  environment  the Debug Test action does .  See #23467.


Batch starter updates

Change Summary
Started out as batch starter lambda update but had to update others to line up with changes from batch stater lambda. Tested in AWS and it works as expected.
Main changes:

sds_data_manager/lambda_code/SDSCode/batch_starter.py

updated batch command input and as a result update event bridge input too

sds_data_manager/lambda_code/SDSCode/database/models.py

updated status table

sds_data_manager/lambda_code/SDSCode/indexer.py

updated indexer handler to handle changes from batch starter lambda

sds_data_manager/lambda_code/SDSCode/upload_api.py

found some bugs and fixed it

Nice, I think this looks good! Thanks for the quick implementation!

No problem! I wanted to get this in before so that it unblocks your work and you can enjoy your vacation.

@laspsandoval Before I merge this, can you review this PR when you get chance since you wrote most of these?


pass SubProtocols to Upgrade

Problem
We have problem that SubProtocols are not known beforehand and are rather dynamic.
Therefore we need capability to specify support subprotocols for every websocket connection.
I made it by adding next to Upgrade function UpgradeWithOptions.
https://github.com/lxzan/gws/compare/master...mrkmrtns:gws:upgradewithoptions
You can check it out here, if it suits for You then I can prepare PR.
UpgradeOptions struct can be extended in future for any other overwrites/opts - currently added there only SubProtocols for our need.
Any questions/recommendations are welcome.

What usage scenarios require a dynamic Sec-WebSocket-Protocol ?

Sec-WebSocket-Protocol is used for packing into there also session credentials - it allows us to check at time connection is created if You are allowed to establish it in first place. We do not want to allow establish connection at all if You are not allowed to.
Another option would be to use query parameters for that, but for obvious reasons it's not good idea to set it that way. Afaik using SubProtocols is the only way You can send it in header from browser.
So we can say there is practically infinite numbers of those, one per valid session.

The original was to use sub-protocols for authentication, not a recommended practice, but it works.
This can be achieved without modifying the gws source code

client

let ws = new WebSocket($addr, ['gws', token])

server

upgrader := gws.NewUpgrader(&Handler{}, &gws.ServerOption{
    SubProtocols: []string{"gws"},
})

The server can then get the token from the request header

When sending "multiple" then it indeed works, although with just token would be nicer imo. As I see You do not want to add overwrite option - then can workaround as You suggested.


Microk8s - Kubeflow - Certificate Errors

Hi,
I am trying Microk8s with kubeflow on local machine.
When i installed and use kubeflow it works fine.
But then i shutdown my laptop and open again. Next day a new ip address is assigned to VM and the Kubeflow services stop working with certificate and host error. Any idea how this can be fixed?
Regards,
Vishal

Hi @vishalaj1. Changing the IP of the kubernetes cluster results in the service account keys to be re-issued. As a result some pods may need to be deleted and recreated. The obvious approach is to have the VM get a static IP. @knkski may know of an alternative way to handle such IP changes.

@vishalaj1 Can you post the exact error you're seeing here?


[FEATURE] v2 volume replica online rebuilding

Is your feature request related to a problem? Please describe (👍 if you like this request)
To make sure the v2 volume user experience is similar to that of the v1 volume, Longhorn should be able to handle replica rebuilding when the volume is running without any IO interruptions.
Describe the solution you'd like
The SPDK online rebuilding flow:

Pause Volume IO
Flush cache
Create a snapshot
Pick up a healthy replica and expose its latest snapshot to the node the rebuilding replica resides on as the external snapshot
Start the rebuilding replica by creating a head lvol based on the external snapshot
Add the rebuilding replica to the RAID
Resume Volume IO
Create a rebuilding lvol (we can reuse the leftover existing snapshots here), expose it to a healthy replica as a nvme bdev.
Copy the data from the healthy replica snapshot to the exposed nvme bdev (via shallow copy API). Ask the rebuilding lvol to create a snapshot after each snapshot shallow copy complete. As a result, we can get a rebuilt snapshot chain.
Unexpose the nvme bdev
Remove the head lvol of the rebuilt snapshot chain.
Change the parent of the rebuilding replica head lvol to the rebuilt snapshot chain. (Not sure if an IO pause is required for this step)
Unexpose the external snapshot for the healthy replica in step 5

Additional context
Delta copy rebuilding will be tracked in https://github.com/longhorn/longhorn/issues/5573

@shuo-wu
All PRs are merged.
Let's move the ticket to ready for testing. We can update the official document before v1.7.0 GA. Thank you.

It seems that we need to implement SnapshotPurge for SPDK as well. Otherwise, Longhorn cannot automatically clean up system created snapshots before or after rebuilding.

Hi @shuo-wu ,
I find that after replica rebuilding complete, the replca generated for rebuild have different name convention start with rebuild- and invalid date as below, thank you

> kl get snapshot
NAME                                   VOLUME                                     CREATIONTIME                                               READYTOUSE   RESTORESIZE   SIZE        AGE
13e28746-dd28-41ea-add7-1c6eb7e360a5   pvc-6c7eb9e2-0284-448d-8a9b-d4de789fe8de   2024-07-25T01:05:03Z                                       true<PHONE_NUMBER>    109051904   7m1s
2a13e50b-11d7-4d0a-bb51-75fdf07e44a0   pvc-6c7eb9e2-0284-448d-8a9b-d4de789fe8de   2024-07-25T01:05:19Z                                       true<PHONE_NUMBER>    55574528    6m46s
e1b12c76-70c4-4330-9bbb-8c6bcff071ac   pvc-6c7eb9e2-0284-448d-8a9b-d4de789fe8de   2024-07-25T01:05:26Z                                       true<PHONE_NUMBER>    55574528    6m36s
6a49f851-3227-4e02-816c-c8a17cb6a470   pvc-6c7eb9e2-0284-448d-8a9b-d4de789fe8de   2024-07-25T01:05:39Z                                       true<PHONE_NUMBER>    55574528    6m26s
d461054f-597a-42bc-897c-9943330ace11   pvc-6c7eb9e2-0284-448d-8a9b-d4de789fe8de   2024-07-25T01:05:46Z                                       true<PHONE_NUMBER>    55574528    6m16s
rebuild-445bdf8a                       pvc-6c7eb9e2-0284-448d-8a9b-d4de789fe8de   2024-07-25 01:06:46.629560953 +0000 UTC m=+261.240484593   true<PHONE_NUMBER>    0           5m15s
rebuild-d8dadac6                       pvc-6c7eb9e2-0284-448d-8a9b-d4de789fe8de   2024-07-25 01:08:31.076132057 +0000 UTC m=+365.687055016   true<PHONE_NUMBER>    0           3m31s
rebuild-9d588e5f                       pvc-6c7eb9e2-0284-448d-8a9b-d4de789fe8de   2024-07-25 01:10:26.292352102 +0000 UTC m=+480.903275670   true<PHONE_NUMBER>    0           95s
rebuild-a9c9d2ae                       pvc-6c7eb9e2-0284-448d-8a9b-d4de789fe8de   2024-07-25 01:10:41.625397324 +0000 UTC m=+496.236320941   true<PHONE_NUMBER>    0           80s

@chriscchien This issue is fixed by the last commit in this PR
Thank you for pointing out!

Hi @shuo-wu, volume actual size will become 0 after perform two times replica rebuilding. This issue can be reproduced on v1.7.0-rc2 and master-head, could you take a look on this? thank you.
Steps:

Have a 2 Gi v2 volume with workload, wait volume healthy
Write 600 Mi data into mount point, sync data
Delete 1 replica, wait rebuild complete
Delete 1 replica, wait rebuild complete
V2 volume actual size become 0, workload can read write without problems, the data wirte in step2 still exist in mount point

More Info:
After first rebuild, snapshot size = 633339904
> kl get snapshot
NAME               VOLUME                                     CREATIONTIME           READYTOUSE   RESTORESIZE   SIZE        AGE
rebuild-43fa89e0   pvc-e7cf5462-b9bd-41d6-a938-669fdba63e7e   2024-07-26T08:44:33Z   true<PHONE_NUMBER>    633339904   27s

After second rebuild,the rebuild snapshot size is 0
kl get snapshot -w
NAME               VOLUME                                     CREATIONTIME           READYTOUSE   RESTORESIZE   SIZE        AGE
rebuild-43fa89e0   pvc-e7cf5462-b9bd-41d6-a938-669fdba63e7e   2024-07-26T08:44:33Z   true<PHONE_NUMBER>    633339904   80s
rebuild-43fa89e0   pvc-e7cf5462-b9bd-41d6-a938-669fdba63e7e   2024-07-26T08:44:33Z   true<PHONE_NUMBER>    633339904   94s
rebuild-b5be2ae1   pvc-e7cf5462-b9bd-41d6-a938-669fdba63e7e                                                                 0s
rebuild-b5be2ae1   pvc-e7cf5462-b9bd-41d6-a938-669fdba63e7e   2024-07-26T08:46:08Z   true<PHONE_NUMBER>    0           0s
rebuild-43fa89e0   pvc-e7cf5462-b9bd-41d6-a938-669fdba63e7e   2024-07-26T08:44:33Z   true<PHONE_NUMBER>    633339904   104s
rebuild-b5be2ae1   pvc-e7cf5462-b9bd-41d6-a938-669fdba63e7e   2024-07-26T08:46:08Z   true<PHONE_NUMBER>    0           9s
rebuild-43fa89e0   pvc-e7cf5462-b9bd-41d6-a938-669fdba63e7e   2024-07-26T08:44:33Z   true<PHONE_NUMBER>    633339904   104s
>
> kl get snapshot -w
NAME               VOLUME                                     CREATIONTIME           READYTOUSE   RESTORESIZE   SIZE   AGE
rebuild-b5be2ae1   pvc-e7cf5462-b9bd-41d6-a938-669fdba63e7e   2024-07-26T08:46:08Z   true<PHONE_NUMBER>    0      42s

And the volume actual size become 0
> kl get volume -o yaml | grep actualSize
    actualSize: 0

supportbundle_6c73f374-cbe8-469e-8088-8c3dbe5ae67e_2024-07-26T08-51-14Z.zip

cc @shuo-wu

I did a test on master-head  and encounter below issue:

Create a 6 Gi v2 volume with workload
Write 2 Gi data
Sequentially delete all replicas one by one and loop 100 times

#!/bin/bash

export node1=ip-10-0-1-113
export node2=ip-10-0-1-224
export node3=ip-10-0-1-36

for i in {1..100}
do
  echo "Iteration: $i"
  kubectl -n longhorn-system delete replica $(kubectl -n longhorn-system  get replica | grep $node1 | awk '{print $1}')
  sleep 40
  kubectl -n longhorn-system delete replica $(kubectl -n longhorn-system  get replica | grep $node2 | awk '{print $1}')
  sleep 40
  kubectl -n longhorn-system delete replica $(kubectl -n longhorn-system  get replica | grep $node3 | awk '{print $1}')
  sleep 40
done

echo "Completed"

In master-head images, about the 15th iteration, the v2 volume become in attaching -> detaching loop

> kl get volume -w
NAME                                       DATA ENGINE   STATE       ROBUSTNESS   SCHEDULED   SIZE         NODE   AGE
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a   v2            attaching   unknown<PHONE_NUMBER>          35m
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a   v2            attaching   faulted<PHONE_NUMBER>          35m
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a   v2            attaching   faulted<PHONE_NUMBER>          35m
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a   v2            detaching   faulted<PHONE_NUMBER>          35m
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a   v2            detached    faulted<PHONE_NUMBER>          35m
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a   v2            detached    unknown<PHONE_NUMBER>          35m
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a   v2            detached    unknown<PHONE_NUMBER>          35m
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a   v2            attaching   unknown<PHONE_NUMBER>          35m
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a   v2            attaching   faulted<PHONE_NUMBER>          35m
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a   v2            attaching   faulted<PHONE_NUMBER>          35m
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a   v2            detaching   faulted<PHONE_NUMBER>          35m
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a   v2            detached    faulted<PHONE_NUMBER>          35m

the deployment pod recreated and stuck at creating state
> k get pods -w
NAME                               READY   STATUS              RESTARTS   AGE
test-deployment-555bb6db67-fvq97   0/1     ContainerCreating   0          8m24s

only 1 replica remained in error -> stopped loop
> kl get replicas -w
NAME                                                  DATA ENGINE   STATE   NODE            DISK                                   INSTANCEMANAGER                                     IMAGE   AGE
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a-r-8440eeef   v2            error   ip-10-0-1-113   4d9271fb-6fdb-4415-a527-00a57709fcb6   instance-manager-ae278a44fa1bba1925d5969c2e940b24           33m
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a-r-8440eeef   v2            stopped   ip-10-0-1-113   4d9271fb-6fdb-4415-a527-00a57709fcb6                                                               33m
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a-r-8440eeef   v2            stopped   ip-10-0-1-113   4d9271fb-6fdb-4415-a527-00a57709fcb6                                                               33m
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a-r-8440eeef   v2            stopped   ip-10-0-1-113   4d9271fb-6fdb-4415-a527-00a57709fcb6                                                               33m
pvc-0cf2ec87-d60f-4921-a71d-660b2e59f98a-r-8440eeef   v2            error     ip-10-0-1-113   4d9271fb-6fdb-4415-a527-00a57709fcb6   instance-manager-ae278a44fa1bba1925d5969c2e940b24           33m

supportbundle_ac9b7d7f-e70b-4ed5-9800-e7c956781c64_2024-08-05T07-41-11Z.zip

For the same steps on 1.7.0-rc3, after the script complete, volume healthy but data disappeared, can write/read data to volume success.
longhorn-system/longhorn-manager-qflcm/longhorn-manager.log:2024-08-05T09:53:08.814667011Z time="2024-08-05T09:53:08Z" level=info msg="Event(v1.ObjectReference{Kind:\"Volume\", Namespace:\"longhorn-system\", Name:\"pvc-0e5cf3f8-2c3f-451d-a35b-94be0ae8e716\", UID:\"eab62269-bde2-4dda-aa07-96a07a6ffccd\", APIVersion:\"longhorn.io/v1beta2\", ResourceVersion:\"79306\", FieldPath:\"\"}): type: 'Normal' reason: 'Remount' Volume pvc-0e5cf3f8-2c3f-451d-a35b-94be0ae8e716 requested remount at 2024-08-05T09:53:08Z after automatically salvaging replicas" func="record.(*eventBroadcasterImpl).StartLogging.func1" file="event.go:377"
longhorn-system/longhorn-manager-qflcm/longhorn-manager.log:2024-08-05T09:53:16.341271380Z time="2024-08-05T09:53:16Z" level=info msg="Deleted pod test-deployment-555bb6db67-ss7gh so that Kubernetes will handle remounting volume pvc-0e5cf3f8-2c3f-451d-a35b-94be0ae8e716" func="controller.(*KubernetesPodController).handlePodDeletionIfVolumeRequestRemount" file="kubernetes_pod_controller.go:516" controller=longhorn-kubernetes-pod node=ip-10-0-1-11
longhorn-system/longhorn-manager-qflcm/longhorn-manager.log:2024-08-05T09:53:18.351271629Z time="2024-08-05T09:53:18Z" level=info msg="Event(v1.ObjectReference{Kind:\"Volume\", Namespace:\"longhorn-system\", Name:\"pvc-0e5cf3f8-2c3f-451d-a35b-94be0ae8e716\", UID:\"eab62269-bde2-4dda-aa07-96a07a6ffccd\", APIVersion:\"longhorn.io/v1beta2\", ResourceVersion:\"79398\", FieldPath:\"\"}): type: 'Normal' reason: 'Remount' Volume pvc-0e5cf3f8-2c3f-451d-a35b-94be0ae8e716 requested remount at 2024-08-05T09:53:18Z" func="record.(*eventBroadcasterImpl).StartLogging.func1" file="event.go:377"
longhorn-system/longhorn-manager-qflcm/longhorn-manager.log:2024-08-05T09:53:37.070772856Z time="2024-08-05T09:53:37Z" level=info msg="Deleted pod test-deployment-555bb6db67-m29s2 so that Kubernetes will handle remounting volume pvc-0e5cf3f8-2c3f-451d-a35b-94be0ae8e716" func="controller.(*KubernetesPodController).handlePodDeletionIfVolumeRequestRemount" file="kubernetes_pod_controller.go:516" controller=longhorn-kubernetes-pod node=ip-10-0-1-11

volume name : pvc-0e5cf3f8-2c3f-451d-a35b-94be0ae8e716
supportbundle_8cbee1cb-a98e-48d2-9bf7-5320e49f69a5_2024-08-05T12-17-56Z.zip
Summary:

master-head : volume in attaching -> detaching loop, only 1 replica reamained, the replica is in error -> stopped loop.
v1.7.0-rc3 : volume healthy but data disappered, can write new data into volume and read the data without problem.

Using master-head and v1.7.x-head images to run below test again

Create a 6 Gi three replicas v2 volume with workload
Write 2 Gi data
Sequentially delete all replicas one by one and loop 100 times

#!/bin/bash

export node1=ip-10-0-1-113
export node2=ip-10-0-1-224
export node3=ip-10-0-1-36

for i in {1..100}
do
  echo "Iteration: $i"
  kubectl -n longhorn-system delete replica $(kubectl -n longhorn-system  get replica | grep $node1 | awk '{print $1}')
  sleep 40
  kubectl -n longhorn-system delete replica $(kubectl -n longhorn-system  get replica | grep $node2 | awk '{print $1}')
  sleep 40
  kubectl -n longhorn-system delete replica $(kubectl -n longhorn-system  get replica | grep $node3 | awk '{print $1}')
  sleep 40
done

echo "Completed"

master-head : 1 replica remained in running -> stopped loop, volume in attaching -> detaching loop
v1.7.x-head : After script complete, volume healthy, data correct and can read/write data woked properly, but volume reattached several times during replica rebuilding.

master-head volume name: pvc-40a39dda-9e4f-49bf-ba8f-ac13345ec099 and support bundle
supportbundle_0d33a517-64cb-47c6-b77c-ac1ba63ad170_2024-08-06T10-43-44Z.zip
v1.7.x volume name: pvc-600edc09-5e0a-47fd-8302-c8f1319189ed
supportbundle_c97059f7-7690-4aee-8f49-96e55db00259_2024-08-06T10-44-51Z.zip

Verified pass on longhorn master(longhorn-instance-manager 9f8c92), v1.7.x(longhorn-instance-manager 5f3873)
This feature tested in 2 scenarios

Sequentially delete replicas one by one after the volume is healthy for 100 times - Pass

Steps:
1 . Have a 3 nodes cluser, enable v2 data engine and add 3 block disks.
2 . Create a 3 replicas v2 volume, attach it with workload(deployment), wait volume healthy
3 . Write 2 Gi data into mount point and get checksum
4 . Delete replica 1, wait the rebuild complete, volume become healthy
5 . Delete replica 2, wait the rebuild complete, volume become healthy
6 . Delete replica 3, wait the rebuild complete, volume become healthy
7 . Repeat step 6 ~ 7 100 times.
8 . After steps 7 complete, deployment pod did not restart, data correct and the volume can read/write without any problems

Test scripts for step 4 ~ 8
#!/bin/bash
export node1=ip-10-0-1-127 #node1 name
export node2=ip-10-0-1-248 #node2 name
export node3=ip-10-0-1-233 #node3 name
export volume_name="pvc-87dbf901-2c17-44bc-9266-642bb4b39967" #v2 volume name

check_volume_health() {
  kubectl -n longhorn-system get volume "$volume_name" -o jsonpath='{.status.robustness}'
}

wait_for_healthy() {
  while true; do
    status=$(check_volume_health)
    if [ "$status" == "healthy" ]; then
      echo "Volume $volume_name is healthy."
      break
    else
      echo "Waiting for volume $volume_name to become healthy... Current status: $status"
      sleep 5
    fi
  done
}

for i in {1..100}; do
  echo "Iteration: $i"
  kubectl -n longhorn-system delete replica $(kubectl -n longhorn-system get replica | grep $node1 | awk '{print $1}')
  wait_for_healthy
  kubectl -n longhorn-system delete replica $(kubectl -n longhorn-system get replica | grep $node2 | awk '{print $1}')
  wait_for_healthy
  kubectl -n longhorn-system delete replica $(kubectl -n longhorn-system get replica | grep $node3 | awk '{print $1}')
  wait_for_healthy
done

echo "Completed"

Sequentially delete replicas one by one regardless volume's health for 100 times - trigger volume reattach(salavage) which already logged in #9216

This test always hit the volume reattach symptom which recorded in previous comment

Steps:
1 . Have a 3 nodes cluser, enable v2 data engine and add 3 block disks.
2 . Create a 3 replicas v2 volume, attach it with workload(deployment), wait volume healthy
3 . Write 2 Gi data into mount point and get checksum
4 . Delete reaplica1, replica2, replica3 at a fixed interval(ex: 40s) regardless the volume is healthy or not
5 . Repeat step 4 100 times.
6 . After steps 5 complete, data correct and the volume read/write worked properly, but the volume reattached several times during testing

Test scripts for step 5

  #!/bin/bash

 export node1=ip-10-0-1-113
 export node2=ip-10-0-1-224
 export node3=ip-10-0-1-36

 for i in {1..100}
 do
   echo "Iteration: $i"
   kubectl -n longhorn-system delete replica $(kubectl -n longhorn-system  get replica | grep $node1 | awk '{print $1}')
   sleep 40
   kubectl -n longhorn-system delete replica $(kubectl -n longhorn-system  get replica | grep $node2 | awk '{print $1}')
   sleep 40
   kubectl -n longhorn-system delete replica $(kubectl -n longhorn-system  get replica | grep $node3 | awk '{print $1}')
   sleep 40
 done

 echo "Completed"

Can find salavege log during testing
longhorn-system/longhorn-manager-tdwr2/longhorn-manager.log:2024-08-12T14:48:23.108892527Z time="2024-08-12T14:48:23Z" level=info msg="Bringing up replicas for auto-salvage" func="controller.(*VolumeController).ReconcileVolumeState" file="volume_controller.go:1394" accessMode=rwo controller=longhorn-volume frontend=blockdev migratable=false node=ip-10-0-1-18 owner=ip-10-0-1-18 state=detached volume=pvc-dc038104-d771-4391-9c4a-738f963d3127
longhorn-system/longhorn-manager-tdwr2/longhorn-manager.log:2024-08-12T14:48:23.109295675Z time="2024-08-12T14:48:23Z" level=info msg="Event(v1.ObjectReference{Kind:\"Volume\", Namespace:\"longhorn-system\", Name:\"pvc-dc038104-d771-4391-9c4a-738f963d3127\", UID:\"db5281bf-c5e0-4fb8-8970-e0d08610f92a\", APIVersion:\"longhorn.io/v1beta2\", ResourceVersion:\"58897\", FieldPath:\"\"}): type: 'Warning' reason: 'AutoSalvaged' Replica pvc-dc038104-d771-4391-9c4a-738f963d3127-r-78bf82f5 of volume pvc-dc038104-d771-4391-9c4a-738f963d3127 will be automatically salvaged" func="record.(*eventBroadcasterImpl).StartLogging.func1" file="event.go:377"

Closse this ticket as the feature verified and a corner case about volume reattach have another ticker(#9216 ) for tracking, thank you.


added correct version of  mock fatal_od.csv

@bsmithgall Got the old OD data. If this looks good to you, I'll go ahead and merge.

Can you remove the change in the .gitignore file? Other than that it should be good to go


Usage license?

Hello,
Thanks for sharing the code, what are the license terms?
If none have been chosen yet, perhaps this code can be licensed as Apache-2.0 ?
Thanks.

Sure. Added the necessary copyright headers and license file

Thank you!

Thank you!


icon: add libraries.io

https://libraries.io/

Thanks for this PR!
While I forgot to update docs that, icons has been moved to a standalone lib badgen-icons. My bad 😅
I'll add this icon to badgen-icons and finish the docs changes soon.
Thanks again! @Mouvedia

badgen/badgen-icons@0cde473bb0545852357611f890c90c934c9d47da
I just tried https://badgen.net/badge/foo/bar?icon=libraries, it doesn't work.
Where can I find the new API?

badgen/badgen-icons@0cde473bb0545852357611f890c90c934c9d47da
I just tried https://badgen.net/badge/foo/bar?icon=libraries, it doesn't work.
@amio Do you have an example URL?

It's not deployed yet, the icon looks slightly smaller than other icons on badge, it might need some adjustments manually.
You can have a preview here https://badgen-service-uljyowptmn.now.sh/
When it shows alone, it looks fine though

I took the SVG directly from their logo.

It looks good to me.

it might need some adjustments manually.

Ill leave that to you ;)

Yep I'll take the rest.

It's not deployed yet

Without the now bot where should I check?

It's landed now :D
https://badgen.net/badge//libraries?icon=libraries


Refactor Codec check, default deny

What is the purpose of the change
Brief changelog
Verifying this change

Checklist

[x] Make sure there is a GitHub_issue field for the change (usually before you start working on it). Trivial changes like typos do not require a GitHub issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Check if is necessary to patch to Dubbo 3 if you are work on Dubbo 2.7
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add sample in dubbo samples project.
[ ] Add some description to dubbo-website project if you are requesting to add a feature.
[ ] GitHub Actions works fine on your own branch.
[ ] If this contribution is large, please follow the Software Donation Guide.

Codecov Report

Merging #8449 (0ba8ba6) into 3.0 (3d49cc1) will decrease coverage by 0.13%.
The diff coverage is 80.64%.

@@             Coverage Diff              @@
##                3.0    #8449      +/-   ##
============================================
- Coverage     63.22%   63.08%   -0.14%
- Complexity      310      311       +1
============================================
  Files          1103     1104       +1
  Lines         46237    46258      +21
  Branches       6977     6956      -21
============================================
- Hits          29232    29181      -51
- Misses        13734    13794      +60
- Partials       3271     3283      +12

Impacted Files
Coverage Δ

.../apache/dubbo/remoting/transport/CodecSupport.java
81.15% <61.53%> (-0.38%)
:arrow_down:

...bbo/rpc/protocol/ProtocolSerializationWrapper.java
90.00% <90.00%> (ø)

.../org/apache/dubbo/rpc/model/ServiceRepository.java
71.42% <100.00%> (+1.58%)
:arrow_up:

...dubbo/rpc/protocol/dubbo/CallbackServiceCodec.java
82.14% <100.00%> (ø)

...ng/transport/dispatcher/all/AllChannelHandler.java
62.06% <0.00%> (-27.59%)
:arrow_down:

...dubbo/common/status/support/LoadStatusChecker.java
46.15% <0.00%> (-15.39%)
:arrow_down:

...ng/transport/dispatcher/WrappedChannelHandler.java
43.47% <0.00%> (-15.22%)
:arrow_down:

.../remoting/transport/netty4/NettyClientHandler.java
62.06% <0.00%> (-6.90%)
:arrow_down:

.../apache/dubbo/remoting/transport/AbstractPeer.java
58.69% <0.00%> (-6.53%)
:arrow_down:

.../org/apache/dubbo/remoting/ExecutionException.java
15.78% <0.00%> (-5.27%)
:arrow_down:

... and 29 more

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 3d49cc1...0ba8ba6. Read the comment docs.


Character / becomes % instead of /

I use Zola as a static website generator.
It provides as an output links like this :
<link href="http://areille.com/style.css" rel="stylesheet">
which becomes after minification (with CLI) :
<link href=http:%%areille.com%style.css rel=stylesheet>
https://www.codetable.net/hex/2f

Thanks for raising this issue, I've fixed it in the latest release 0.3.6. I've tested on the input again, it appears to be working correctly now. Let me know if it's fixed for you.

LGTM. Thanks a lot !


Results table: Improve differentiation of Results column from Evidence column

Affects: Results table in two places

Program pages
Browse > Indicators

Reported by Emily: The columns and spacing don't line up. The date is listed under the results column but then there's no date column and the results look like it's part of the evidence column.

Jenny's suggestion: What if we add a couple of vertical light gray lines around the Result column, like so:

We also need to account for multiple results documents in a period. Here's where I'm at RN:

will you be ITO tomorrow? We could try a few different things in realtime

Yep, I'll be in tomorrow -- definitely after the æbleskivers, if not before.

Here's kind of where I'm at now:

We have an issue with indicators that are missing targets -- This may or may not have anything to do with the work recently done on this ticket. Depending, I can open up a new one. Tagging @axoplasm
Production example (from TolaData Test)

Demo example (from Jenny QA program)

There's a results table style difference between Prod and Demo that I'd like to address. Again, let me know if this should be a new ticket.
The following screenshots were taken of the same browser window, no adjustments to the window size in between takes. Do you see how the relative proportions of columns are different, so that the result values are now pretty far apart from the result dates, and the Evidence column doesn't have as much breathing room? (Doc titles tend to be long.)
Production example

Demo example

One other detail that is also true in production, seems like a good time to fix it since you're already in there -- button wraps when the "results not assigned" message appears.

Last 3 commits should fix these issues. Here's the (very…weird…) indicator I'm using to test all three.

All fixes looking good!


Triangulating OBJ Export Significantly Improves Output Quality (Blender 4.2.3)

I am using Blender 4.2.3 LTS. I was trying to figure out why the results I was seeing were coming out so poorly relative to the screenshots that the CoACD project has. I ended up inspecting the OBJ exports that are being fed into the tool and discovered that it looked degenerate. On a hunch, I tried enabling triangulation for the OBJ export and this appears to have dramatically improved results!
See below:
Source Object (in Blender)

Before Tweaking OBJ Export Settings
OBJ Export

Decomposition Results

After Tweaking OBJ Export Settings
OBJ Export

Decomposition Results

The change I made was inConvexDecompositionRunOperator.export_mesh_for_solver. I changed this code:
            bpy.ops.wm.obj_export(
                filepath=str(fname),
                check_existing=False,
                export_selected_objects=True
            )

To this:
            bpy.ops.wm.obj_export(
                filepath=str(fname),
                check_existing=False,
                export_selected_objects=True,
                export_triangulated_mesh=True,
            )

I could create a PR for this, but before I do I wanted to ask if this is a safe default for other projects. Perhaps triangulation works best for the archivs geometry that I'm working with, but might not work well for all projects?

Is it possible that there is an issue with the source geometry? The shading looks off. I would have expected it look like this

Attached is a sample from the project, if you want to play with it directly to confirm that.
Test.zip


377 UI display group and user info right next to each of the resource

Making this a draft pull request so it's easier to get feedback.
Current problem is that backend methods seem to work, but I'm getting nothing on the front end.
Not sure why,will work on this.

I have marked this ready for review.
To test, create some groups.
Add some groups and users to datasets with different roles.
Under the 'sharing' tab, you will see 2 tables.
One is for the Groups that have access
The other is for the Users.
Decided to just open this one up that displays only (the button to change access does not work.)

Check if the UI is filtering out users that are also in a group, if so can we display even if they are also in a group with same role? if it is done on API side, we can go ahead with this and create a separate issue to fix the API filter.
Original comment:
the one behavior that is in the "Sharing Tab" i will clarify is: 10:51 I add luigi as Editor to the dataset. I add luigi to Team1 group. I add Team1 as Viewer to the dataset. 10:52 it will show luigi as editor under Users and group under Viewer. this is in my screenshot - mburnet88 is in the test group 2, but since i have a separate Viewer role that is also shown. 10:53 however, if mburnet88 had EDITOR role AND is in a group with editor role, only the group is shown. in the database, we keep the difference - we know that if the group is removed, mburnet88 should be kept as editor because they were added separately 10:53 but the UI does not show mburnet88 in Users list, I'm guessing UI sees that email in the list of group members and hides it. 10:54 but, this is hiding a tiny piece of info, "if you remove the group, mburnet88 will still have Viewer access" 10:54 how do people feel about this? (if it makes sense) 10:54 basically i think we should show individual user entries even if they are in a group as well, incases where user has both individual + group assignment of same role. (edited)

I think I now have it where if a user has a separate role from their role as part of a group that shows under the Users and Roles table. I tested by creating a group and giving the group a 'Viewer' role, but then giving one of the users in the group the 'uploader' role. I don't see an entry for that user for 'viewer' but I do see it for 'uploader.'

please resolve merge conflicts


Represent datum data using OO

contains commits from https://github.com/dimagi/commcare/pull/279
cross-request: https://github.com/dimagi/commcare-odk/pull/1189

@ctsims wanted to double check that changing the serialization scheme of SessionDatum won't require any sort of data migration. Sound right?

@phillipm has conflicts


test patched STM32

r? @therealprof
(rust-highfive has picked a reviewer for you, use r? to override)

Excuse my ignorance but what are those pached files?

They're the patched SVDs from stm32-rs (in other words, with all the stm32-rs fixes applied, instead of the raw buggy ST SVDs). Looks like it downloads the current build output from the master branch.

cc @Emilgardis


VeloxBackend logging does not respect spark.redaction.regex config property when logging spark config.

Description
Ideally, should be respecting that spark config too.

sorry - filed this issue in the wrong repo. closing


Updating textures data

Hi!
There is another concern I can’t resolve.
What is the designed way to update texture’s data?
The test is not complete yet, and docs do not cover that case yet.
Should I return texture instance each time in dynamic uniform, like that:
uniforms: {
  image: function () {
    return regl.texture(src);
  }
}

Or I can save reference to created texture and modify it in some fashion?
Thanks!

All resources have the same path way for updating.  To update a texture, you do the following:
// create texture
var myTexture = regl.texture('mytexture.png')

//  ... do stuff

// update texture
myTexture(someNewData)

This is still a work in progress though and I'm planning on adding some extra methods for updating subimages within a texture.

Sweet, thanks.


feat(Build): Trigger Rebuilds in Dual-Core Projects if RISCV Project Content Changes

Description
Fixes CFSIO-2421
Previously, changing the source code inside the application specified by RISCV_APP would not trigger a re-build for dual-core projects (RISCV_LOAD = 1).
This PR fixes that issue by forcing the target rule for generating the RISC-V binary to always be re-evaluated.  Note this doesn't trigger a full re-build if nothing changes (which is good), and only an incremental re-build if something has, so the build speed impact is minimal.
Checklist Before Requesting Review

[ ] PR Title follows correct guidelines.
[ ] Description of changes and all other relevant information.
[ ] (Optional) Link any related GitHub issues using a keyword
[ ] (Optional) Provide info on any relevant functional testing/validation.  For API changes or significant features, this is not optional.

@perkinsmg FYI

@perkinsmg FYI

Thanks Jake! I saw this yesterday, and we're planning to try it and take the fix today.

Pull in the latest code from main to add the fix for the "Basic Examples Test". The CI has an older ME18 revision attached which does not have the latest cache fix. Eric added this workaround for now until the latest ME18EVKITs are in stock: https://github.com/analogdevicesinc/msdk/pull/1176


Feature: Response code validation

Add feature to validate the response status code
version: 1

requests:
  test:
    url: https://echo.getpostman.com/status/400
    method: GET
    validate:
      code: 2xx # status code needs to be in range of 200 - 299

#42


SecretsManagerRDSMySQLRotationSingleUser error when require SSL

Encountered error when trying to rotate RDS Aurora MySql secret with require_secure_transport turn on.
CA cert used: rds-ca-rsa2048-g1
engineVersion: 8.0.mysql_aurora.3.03.1
pymysql version: 1.0.2
rotation lambda error log
[ERROR] ValueError: Unable to log into database with previous, current, or pending secret of secret arn...

rds error log
[Note] [MY-010914] [Server] Bad handshake

Dived deeper and found the fix to be
# original code. need to use ssl_ca instead
# ssl = {'ca': '/etc/pki/tls/cert.pem', } if use_ssl else None
ssl_ca = '/etc/pki/tls/cert.pem' if use_ssl else None

conn = pymysql.connect(host=secret_dict['host'], user=secret_dict['username'], password=secret_dict['password'], port=port, database=dbname, connect_timeout=5, ssl_ca=ssl_ca)

Thank you for submitting the request. We are investigating the cause of failure and will get to you soon.

Could steps to reproduce please be provided? I tested our rotation template using a DB with the exact engine and CA configurations as listed above while using PyMySQL-1.0.2. Rotations and connections to the DB were successful for each of the following test cases:

SSL required at the user level
SSL required at the DB cluster level using the require_secure_transport cluster parameter
A combination of the above two test cases

Additionally, I believe the above solution is equivalent to what is currently implemented as the individual SSL parameters like ssl_ca should just be used to construct the ssl dictionary object similar to the mysql_ssl_set method.

Closing this issue due to inactivity. Feel free to open if steps to reproduce are able to be provided.
Thanks!


to build image

Description
A detailed explanation of the changes in your PR.
Feel free to remove this section if it is overkill for your PR, and the title of your PR is sufficiently descriptive.
Checklist

[ ] 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
TODO(replace-me)
Use this space to explain how you tested your PR, or, if you didn't test it, why
you did not do so. Valid reasons include, for example, "CI is sufficient",
"No testable changes". Feel free to attach JSON snippets, curl commands,
screenshots.
In addition to reviewing your code, reviewers must also review your testing
instructions and make sure they are sufficient.

/test image

/test images

/test build-and-push-main

/test images
/test push-images
/test stackrox_branding-images
/test stackrox_branding-images

/test stackrox_branding-push-images


Fleshing out the documentation

Adding the content for the documentation.
Will assign a few issues for completing
Policy => Mark https://github.com/vmware/docker-volume-vsphere/issues/563
Admin CLI => Andy https://github.com/vmware/docker-volume-vsphere/issues/562
I will add the blogging content in a separate PR.
Testing: I have been actively pushing to https://vmware.github.io/docker-volume-vsphere/ since we are getting off the ground and https://vmware.github.io/docker-volume-vsphere/ is live. Once we tag 0.2 the site will get updated once the new tag is made.

I Just skimmed it but what I skimmed looks good. I think it can merge and we'd handle small issues as we go. LGTM


Conditional Concurrency Requirement Implementation

What this PR does / why we need it:
This PR adds new requirement Conditional Concurrency.
Conditional Concurrency Requirement Implementation
Conditional Concurrency Example
Conditional Concurrency E2E test case
Which issue(s) this PR fixes (optional, in fixes #(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #44

ok， let's make it in first.


Define new hooks for tunnel plugins

WHY are these changes introduced?
In the process of migrating the ngrok tunnel to use hooks, we first need to define those hooks in cli-kit so that they can be the imported in any tunnel plugin.
Contributes to https://github.com/Shopify/shopify-cli-planning/issues/305

WHAT is this pull request doing?
Add two new typed hooks:

tunnel_provider for discoverability. Any plugin implementing this hooks means it can handle tunnels.
tunnel_start_${provider} for execution. After discovering the plugins, each one will report what hook to use to start a tunnel, this hook is unique per plugin.

This approach allow us to have multiple tunnel plugins installed and decide at runtime which one we want to use for tunnelling depending on user input/selection without having incompatibilities.

How to test your changes?
Nothing to test yet

@pepicrft @shauns After @pepicrft feedback on the ngrok plugin I added specific tunneling interfaces that makes it easier to create a tunnel plugin.
The changes are:

Both hooks are now generic, tunnel_start_{provider} is no tunnel_start, all will be called, but only the ones that match the intended provider will be actually executed.
Each plugin will need to implement these two hooks like this:

// provider.ts
export const TUNNEL_PROVIDER = 'ngrok'
export default plugins.tunnel.defineProvider({name: TUNNEL_PROVIDER})

// tunnel.ts
export default plugins.tunnel.startTunnel({
  provider: TUNNEL_PROVIDER,
  action: async (port: number) => start({port})
})

async function start(.... // this handles the tunnel creating and returning the URL.

You can see examples in the updated PR for the ngrok plugin
What do you think @shauns @pepicrft ? Do you like this approach more than the previous proposal? for reference:
const hook: plugins.FanoutHookFunction<'tunnel_provider', 'ngrok'> = async function () {
  return {hook: 'tunnel_start_ngrok', provider: 'ngrok'}
}

What do you think @shauns @pepicrft ? Do you like this approach more than the previous proposal? for reference:

I like how idiomatic the new API is.


[18913] Expose PayloadPool in DDSDataWriter and DDSDataReader

Renamed branch name to facilitate CI jobs
This PR closes the previous PR #513 , and changes requested would be applied in this one

@richiprosima please test this

Manual CI run with Fast DDS public API branch succed


⚠ Quirk Club Argentina (API endpoint) has degraded performance

In 9fc594d, Quirk Club Argentina (API endpoint) (https://us-central1-quirkclub-dev.cloudfunctions.net/api/check/api) experienced degraded performance:

HTTP code: 200
Response time: 5220 ms

Resolved: Quirk Club Argentina (API endpoint) performance has improved in 501dd62.


Display the device name in the title when you have multi machines?

I like this simple and elegant style! Thanks!!
Because I have multiple devices, do you think it will be more friendly if the name of the device is displayed in the title? Just like this:

Hey, thanks for checking out my project and opening this issue.
No problem, the feature you requested will be added as soon as I add planned 'Settings' section with some customizable stuff. There will be a possibility to easily enable/disable it.
I'm kinda busy right now and don't have much spare time for coding, but I think changes still can be done this week.


More italic tweaks

Making tweak to the italic glyphs of some of the symbols that will look better with them.

This looks good, so merging.


Add notes on how to update the git fleximod subtree in a repository

Since, I'm used to updating manage_externals, I was able to update the subtree for git-fleximod. But, I think we should have some documentation somewhere on how to do that. Possibly there already is I just didn't find it.

It's here, although git-fleximod is not specifically mentioned.
https://github.com/ESMCI/cime/wiki/CIME-Git-Workflow

OK, thanks for that. That gives how to handle git subtrees beneath CIME, but git-fleximod isn't under CIME. So I think there should be instructions on how to handle it for a model separate from CIME.

manage_externals was included as a gitsubtree - where are those instructions?

https://github.com/ESMCI/manage_externals/wiki#including-manage_externals-in-other-repositories

I have a similar question. I am getting the following message. It seems like the e is an error message, but it simply does a recursive submodule update here. Since icepack is a submodule of CICE, should I add fxtag to the .gitmodules under CICE?
Recursively checking out submodules of cice

e                  src has no fxtag defined in .gitmodules
Recursively checking out submodules of src

e              icepack has no fxtag defined in .gitmodules
                cice up to date.

@dabail10 actually your question has nothing to do with this issue.   If you don't have fxtag defined for a submodule, git-fleximod will still work but it warns you that there is no fxtag defined - you don't need to define it but you can if you want.

I realize it wasn't related, but didn't feel it was worth a separate issue.

wiki added


How to use bladeRF to transmit the 1bit data?

You can use bladeplayer in the player folder with "-b 1" option.


arm 32: Unresolved symbols

I got Hello.o object file on armel target by:
./corerun ilc.dll @Hello.ilc.rsp
But when I link the executable file with HelloWorld by:
clang-3.9 -target arm-linux-gnueabi --sysroot=CoreRT/tests/../cross/rootfs/armel -BCoreRT/tests/../cross/rootfs/armel/usr/lib/gcc/armv7l-tizen-linux-gnueabi/6.2.1 -LCoreRT/tests/../cross/rootfs/armel/usr/lib/gcc/armv7l-tizen-linux-gnueabi/6.2.1 Hello.o -o Hello CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libbootstrapper.a CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libSystem.Private.CoreLib.Native.a CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/framework/System.Native.a CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/framework/libSystem.Globalization.Native.a -g -Wl,-rpath,'$ORIGIN' -pthread -lstdc++ -ldl -lm -luuid -lrt
I got unresolved symbols:
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(StackFrameIterator.cpp.o): In function `StackFrameIterator::CategorizeUnadjustedReturnAddress(void*)':
CoreRT/src/Native/Runtime/StackFrameIterator.cpp:1648: undefined reference to `PointerToReturnFromCallDescrThunk'
CoreRT/src/Native/Runtime/StackFrameIterator.cpp:1648: undefined reference to `PointerToReturnFromUniversalTransition'
CoreRT/src/Native/Runtime/StackFrameIterator.cpp:1648: undefined reference to `PointerToReturnFromUniversalTransition_DebugStepTailCall'
CoreRT/src/Native/Runtime/StackFrameIterator.cpp:1648: undefined reference to `RhpThrowEx2'
CoreRT/src/Native/Runtime/StackFrameIterator.cpp:1648: undefined reference to `RhpThrowHwEx2'
CoreRT/src/Native/Runtime/StackFrameIterator.cpp:1648: undefined reference to `RhpRethrow2'
CoreRT/src/Native/Runtime/StackFrameIterator.cpp:1648: undefined reference to `RhpCallCatchFunclet2'
CoreRT/src/Native/Runtime/StackFrameIterator.cpp:1648: undefined reference to `RhpCallFinallyFunclet2'
CoreRT/src/Native/Runtime/StackFrameIterator.cpp:1648: undefined reference to `RhpCallFilterFunclet2'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(StackFrameIterator.cpp.o): In function `StackFrameIterator::UnwindFuncletInvokeThunk()':
CoreRT/src/Native/Runtime/StackFrameIterator.cpp:744: undefined reference to `RhpCallFilterFunclet2'
CoreRT/src/Native/Runtime/StackFrameIterator.cpp:744: undefined reference to `RhpCallCatchFunclet2'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(StackFrameIterator.cpp.o): In function `__cxx_global_var_init':
CoreRT/src/Native/Runtime/StackFrameIterator.cpp:45: undefined reference to `PointerToReturnFromUniversalTransition'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(StackFrameIterator.cpp.o): In function `__cxx_global_var_init.6':
CoreRT/src/Native/Runtime/StackFrameIterator.cpp:48: undefined reference to `PointerToReturnFromUniversalTransition_DebugStepTailCall'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(StackFrameIterator.cpp.o): In function `__cxx_global_var_init.7':
CoreRT/src/Native/Runtime/StackFrameIterator.cpp:51: undefined reference to `PointerToReturnFromCallDescrThunk'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(StackFrameIterator.cpp.o):(.data+0x4): undefined reference to `RhpUniversalTransition'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(StackFrameIterator.cpp.o):(.data+0x8): undefined reference to `RhpCallCatchFunclet2'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(StackFrameIterator.cpp.o):(.data+0xc): undefined reference to `RhpCallFinallyFunclet2'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(StackFrameIterator.cpp.o):(.data+0x10): undefined reference to `RhpCallFilterFunclet2'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(StackFrameIterator.cpp.o):(.data+0x14): undefined reference to `RhpThrowEx2'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(StackFrameIterator.cpp.o):(.data+0x18): undefined reference to `RhpThrowHwEx2'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(StackFrameIterator.cpp.o):(.data+0x1c): undefined reference to `RhpRethrow2'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(CachedInterfaceDispatch.cpp.o): In function `RhpGetTailCallTLSDispatchCell':
CoreRT/src/Native/Runtime/CachedInterfaceDispatch.cpp:556: undefined reference to `RhpTailCallTLSDispatchCell'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(CachedInterfaceDispatch.cpp.o): In function `RhpGetCastableObjectDispatchHelper':
CoreRT/src/Native/Runtime/CachedInterfaceDispatch.cpp:562: undefined reference to `RhpCastableObjectDispatchHelper'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(CachedInterfaceDispatch.cpp.o): In function `RhpGetCastableObjectDispatchHelper_TailCalled':
CoreRT/src/Native/Runtime/CachedInterfaceDispatch.cpp:568: undefined reference to `RhpCastableObjectDispatchHelper_TailCalled'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(CachedInterfaceDispatch.cpp.o): In function `RhpGetCastableObjectDispatch_CommonStub':
CoreRT/src/Native/Runtime/CachedInterfaceDispatch.cpp:574: undefined reference to `RhpCastableObjectDispatch_CommonStub'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(CachedInterfaceDispatch.cpp.o):(.data+0x0): undefined reference to `RhpInterfaceDispatch1'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(CachedInterfaceDispatch.cpp.o):(.data+0x4): undefined reference to `RhpInterfaceDispatch2'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(CachedInterfaceDispatch.cpp.o):(.data+0x8): undefined reference to `RhpInterfaceDispatch4'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(CachedInterfaceDispatch.cpp.o):(.data+0xc): undefined reference to `RhpInterfaceDispatch8'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(CachedInterfaceDispatch.cpp.o):(.data+0x10): undefined reference to `RhpInterfaceDispatch16'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(CachedInterfaceDispatch.cpp.o):(.data+0x14): undefined reference to `RhpInterfaceDispatch32'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(CachedInterfaceDispatch.cpp.o):(.data+0x18): undefined reference to `RhpInterfaceDispatch64'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(EHHelpers.cpp.o): In function `RhpHardwareExceptionHandler(unsigned int, unsigned int, PAL_LIMITED_CONTEXT*, unsigned int*, unsigned int*)':
CoreRT/src/Native/Runtime/EHHelpers.cpp:447: undefined reference to `RhpThrowHwEx'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(EHHelpers.cpp.o):(.data+0x0): undefined reference to `RhpAssignRefAVLocation'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(EHHelpers.cpp.o):(.data+0x4): undefined reference to `RhpCheckedAssignRefAVLocation'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(EHHelpers.cpp.o):(.data+0x8): undefined reference to `RhpCheckedLockCmpXchgAVLocation'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(EHHelpers.cpp.o):(.data+0xc): undefined reference to `RhpCheckedXchgAVLocation'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(MiscHelpers.cpp.o): In function `RhGetUniversalTransitionThunk':
CoreRT/src/Native/Runtime/MiscHelpers.cpp:709: undefined reference to `RhpUniversalTransition'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(RuntimeInstance.cpp.o): In function `RhNewInterfaceDispatchCell':
CoreRT/src/Native/Runtime/RuntimeInstance.cpp:837: undefined reference to `RhpInitialDynamicInterfaceDispatch'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(AllocFast.S.o): In function `RhpNewFast':
CoreRT/src/Native/Runtime/arm/AllocFast.S:17: undefined reference to `NYI_Assert'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(AllocFast.S.o): In function `RhpNewFinalizable':
CoreRT/src/Native/Runtime/arm/AllocFast.S:25: undefined reference to `NYI_Assert'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(AllocFast.S.o): In function `RhpNewObject':
CoreRT/src/Native/Runtime/arm/AllocFast.S:34: undefined reference to `NYI_Assert'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(AllocFast.S.o): In function `RhpNewArray':
CoreRT/src/Native/Runtime/arm/AllocFast.S:43: undefined reference to `NYI_Assert'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(AllocFast.S.o): In function `RhpNewArrayRare':
CoreRT/src/Native/Runtime/arm/AllocFast.S:54: undefined reference to `NYI_Assert'
CoreRT/tests/../bin/Product/Linux.armel.Debug/packaging/publish1/sdk/libRuntime.a(AllocFast.S.o):CoreRT/src/Native/Runtime/arm/AllocFast.S:62: more undefined references to `NYI_Assert' follow
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Do I need to implement all these symbols? As far as I see, they all need to be implemented in assembler as for amd64. Or maybe I'm wrong linking the object file. What is the difference beetween libRuntime.a and libPortableRuntime.a?

@Dmitri-Botcharnikov
@sergign60
@mskvortsov
@jkotas please take a look

libRuntime.a and libPortableRuntime.a

libRuntime is for RyuJIT codegen. libPortableRuntime is for CppCodeGen.

Do I need to implement all these symbols?

Yes. Note that the implementation exists for Windows ARM in the .asm files. The implementation for Linux ARM should be pretty similar.

https://github.com/dotnet/corert/pull/3826

@BredPet @sergign60 You might also find it useful to build against Test.CoreLib instead of the full set of framework APIs.
Test.CoreLib is a very minimal base class library that is useful for platform bringup because it e.g. doesn't try to run a ton of code at process startup to initialize reflection. It might be useful to get you to a point where you can return a number from Main() pretty quickly.
There are some instructions on how to use it here. Note I have pull request #3827 open to fix building with Test.CoreLib - people periodically break it. If there's interest, we could spend some time to add test coverage for Test.CoreLib so that it can stay healthy.

Thanks

You need to pull down the fix made in https://github.com/dotnet/corert/pull/3827 that @MichalStrehovsky mentioned.

@jkotas That fix has already been applied... I used the latest master (commit a107596 to be precise).

The fix made in #3827 added throwIfNotFound: false in the exact place where you see the exception:

at ILCompiler.CompilerTypeSystemContext.GetModuleForSimpleName(String simpleName, Boolean throwIfNotFound)
at ILCompiler.InteropStubManager..ctor(CompilationModuleGroup compilationModuleGroup, CompilerTypeSystemContext typeSystemContext, InteropStateManager interopStateManager)

Could you please double check that you are not running outdated bits; and if not - debug why throwIfNotFound: false does not have the desired effect for you?

Rebuilt from the scratch -- yes, that System.Private.Interop exception has gone. Looks like I missed to update some of the ILCompiler's dlls, sorry for the noise.
Some other failures appeared though, but they seem to be related to the legacy ARM JIT, and that's a different story.


Convert Hardcoded CSS into classes

There's a lot of CSS hardcoded overrides in the frontend. We should create new CSS classes as needed and try to reuse existing ones

going to call the current state good enough


TypeError: Cannot read property 'node' of undefined

My configuration
    - name: Delete old versions of this packages
      uses: actions/delete-package-versions@main
      with:
        owner: hyrendev
        repo: nexus
        package-name: |
          com.redefantasy.core-bungee
          com.redefantasy.core-shared
          com.redefantasy.core-spigot
        token: ${{ secrets.ACCESS_TOKEN }}

Action output:
Run actions/delete-package-versions@main
  with:
    owner: hyrendev
    repo: nexus
    package-name: com.redefantasy.core-bungee
  com.redefantasy.core-shared
  com.redefantasy.core-spigot

    token: ***
    num-old-versions-to-delete: 1
  env:
    MAVEN_USERNAME: ***
    MAVEN_PASSWORD: ***
    JAVA_HOME: /opt/hostedtoolcache/Java_Adopt_jdk/8.0.282-8/x64

Throws:
Error: TypeError: Cannot read property 'node' of undefined

@Gutyerrez any comment about it? maybe other people can benefit from what you figured out.

I have made my own github action to delete package version and solved my problem


Missing dependency for calcurse package: oauth2client

Issue description
The calcurse package needs the Python 3 library oauth2client in order to set up synchronization with Google Calendar as described here. I’ve been able to fix it on my system using overrideAttrs to add it to postInstall, but I’m not sure how the proper version would look to add to the package repository since I’ve just started with Nix. Maybe someone with more experience can add the fix?
Steps to reproduce

Install the calcurse package and run calcurse-caldav configured for OAuth2.
Obtain NameError: name 'OAuth2WebServerFlow' is not defined.

Technical details

system: "x86_64-linux"
host os: Linux 5.4.14, NixOS, 19.09.1965.274e095f761 (Loris)
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.3.2
channels(mfsch): "nixpkgs-20.03pre210689.3fd22de7c23"
channels(root): "nixos-19.09.1965.274e095f761"
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos

This was fixed by #111747.


How to turn off logging?

Your Environment

Plugin version: 2.3.6 (all versions)

Platform: Android

OS version: Android 9

Device manufacturer and model: Samsung

Running in Simulator: no (real device)

Cordova version (cordova -v): 7.1.0

Cordova platform version (cordova platform ls): Android 7.1.0

Context
Package com.marianhello.logging logs every event to SQL DB. For half a year of using the application (with plugin cordova-plugin-background-geolocation) - the log specifically had logback.db size of 11 GB. There is some way to turn off logging? for example, to limit writing to DB (days, count of records), or even better to select a given logLevel..
Expected Behavior
Possibility to set logging level or complete shutdown.
Actual Behavior
Write everything and increase db

I also encounter the same issue. Have you been able to turn-off the logging or any workaround?


{AKS} az aks trustedaccess rolebinding create: Change the short name of option --source-resource-id to -r

This checklist is used to make sure that common guidelines for a pull request are followed.
Change the short name of option --source-resource-id in command az aks trustedaccess rolebinding create from -s to -r.
The deprecated short name -s is hidden by default and will be completely removed when aks-preview's dependency on the cli core version is updated to 2.47.0. For current dependency, see doc.

Related command

az aks trustedaccess rolebinding create

General Guidelines

[ ] Have you run azdev style <YOUR_EXT> locally? (pip install azdev required)
[ ] Have you run python scripts/ci/test_index.py -q locally?

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify src/index.json.

AKS

Failed test not related to the changes in this PR, opened PR # 5951 to fix the issue.


construct windows friendly url for class loading

Ran into a problem with class loading not working on windows. Here's a fix.

Closing conflicting PRs older than a year. Please reopen if it is still applicable.


AspNet Core 2.2  forget markup Microsoft.AspNetCore.Hosting.IApplicationLifetime obsolete in source code

Describe the bug
the official document mark up the Microsoft.Extensions.Hosting.IApplicationLifetime obsolete  and looks like move it to Microsoft.AspNetCore.Hosting.IApplicationLifetime, but haven't markup obsolete in source code

it make developer confused and also haven't any compiler warning
Expected:
There is Obsolete markup to the Microsoft.Extensions.Hosting.IApplicationLifetime, and should be have compiler warning.

It's not obsolete until 3.0. See https://github.com/aspnet/Announcements/issues/344.

@guardrex That obsolete warning is really misleading, it's showing up on all versions of the docs, not just 3.0. Who maintains that?

@dend

Filed https://github.com/aspnet/ApiDocs/issues/115, we can track the docs issue there.
The attribute is appropriately marked obsolete in 3.0 so I'm going to close this bug.


feat: add css variables to bg-primary and text-primary

Description
This change is required since those variables define the staff bar color and text primary color

Codecov Report

:exclamation: No coverage uploaded for pull request base (ednx-release/mango.nelp@9afe6ce). Click here to learn what that means.
Patch has no changes to coverable lines.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@                    Coverage Diff                     @@
##             ednx-release/mango.nelp       #2   +/-   ##
==========================================================
  Coverage                           ?   90.41%
==========================================================
  Files                              ?      192
  Lines                              ?     3120
  Branches                           ?      746
==========================================================
  Hits                               ?     2821
  Misses                             ?      283
  Partials                           ?       16

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


fix regression tests.

Our merge of #388 didn't end up helping our regression tests. Well, it may have, but it seems a new one has popped up.
When I run locally, I don't get the error, but Travis does. It gets an error in one of the many functions being called in a before hook. So, I started looking deeper into what the troubled hook does, and questioned what was necessary so that it could be uncomplicated.
This PR includes my findings.

Yay!


Require is not defined: external "os"

Hello,
In my worker, when trying to use the "os" module I get the following error:
Require is not defined: external "os"

Even though the os module is installed and present in my node_modules folder.
Is there any way around this?
The thing is, my most expensive tasks rely on modules that in turn seem to rely on either "os" or "fs", so I'm pretty much stuck for now.
Thank you

For posterity, the problem was that I was working on an Electron app, and I had to add this tiny bit to my browserWindow:
webPreferences: {
      nodeIntegrationInWorker: true
},

It works now as intended.


feat(styles): provide .youtube-responsive for 16:9 rendering

Attaching the class to a wrapper
 ensures that the ratio of width
and height of the included  remains 16:9. This applies to all
viewing devices.
Example usage:
{{ youtube(id="aqz-KE-bpKQ", class="youtube-responsive") }}

Is that from the original theme?

It is. At their demo site you can see how hugo compiles its YouTube shortcode to HTML:

This is a common pattern though.
I am not sure about the naming .youtube-responsive yet. But it's distinct (so easy to reference in the stylesheet) and explains what it is about.
Instead of providing the class, we could also think about extending/altering getzola/zola to compile the YouTube shortcode this way. I am happy to provide a PR for that.


functorch missing in requirements.txt

As mentioned, functorch is required to run this repo. Please add it to requirements.txt, thank you.

I am sorry, I have forgotten to add it, fix it now!


Add drag and drop feature for local files

It should support only certain file types. Allowing people to drag and drop it to the app to view it in picture in picture mode.

This also adds the question of adding the dock icon back for macOS or not.

Just submitted a PR.

I have a bunch of cool ideas to add to this project.

@rouzbehhz no hurries, just wanted if you are currently working on re-submitting that PR because I have one idea on this. Actually, we can rather directly connecting it with a specific feature, connect it with the providers module. Thus, if anyone drags any file which will call providers with the local URI. Providers on matching it with the respective provider of that URI will fire proper event in renderer process to process it. We can definitely work on this in new PR and issue.

@poush Yes, out cold last few days. Going to add this in sometime today or tomorrow, have a bunch of stuff from work I have to catch up on. Also added a nice app navigation and landing page I can include in the PR (Issue #24) if you want to wait on it.
Cheers

Thank @rouzbehhz. I hope to see further contributions to providers standardization :)


Add commas to population in District Cores table

on the revised state page

Done in the new test template. Just waiting to be integrated into the real one.


fix: supervisord should not bring down the whole web container when non-essential service fails, fixes #5358

The Issue
If a user loads an extra daemon (in my case a laravel worker queue) into supervisor and that worker dies for whatever reason (in my case, because it's PHP, I don't want it too live too long... also I'm developing so I want it to reload the code base often) it takes the whole container with it.
Also Mailpit failing will bring down the whole server.
I'd like to be able to restart Laravel queue workers while developing without needing to restart the whole container.
How This PR Solves The Issue
This adjusts the the kill_supervisor.py (aka child_exit_monitor supervisor event listener) so that it does not bring down the container unless one of the core services is down (nginx, apache2, php-fpm, gunicorn). It knows which ones to check for by peaking inside of the config.yaml for the project.
Manual Testing Instructions
This needs to go into the container as I understand it (I am new to DDEV). However you can test with the default DDEV project by:
First, put the file from this pull request at .dev/web-build/kill_supervisor.py.
Then add these lines to .ddev/web-build/Dockerfile:
ADD kill_supervisor.py /usr/local/bin/kill_supervisor.py
RUN chmod 777 /usr/local/bin/kill_supervisor.py

Do a ddev restart.
Then do a ddev ssh and try something like:
killall mailpit

Note that the container does not come down (and mailpit restarts).
Then try something like:
killall php-fpm

Note that the container does indeed come down.
You can change the webserver_type in .ddev/config.yaml to any of the allowed options and repeat the tests with the essential services.
Automated Testing Overview
I was unsure how to do an automated test for this.
Related Issue Link(s)
#5358
Also previous pull request that was closed at #5423
Release/Deployment Notes
I do not think so. I don't think we really want the container coming down if a queue worker fails. But we do want it to come down if nginx fails. This accomplishes that.

Right. This is working for me by injecting my updatd kill_supervisor.py into my container by tweaking the Dockerfile in the .ddev/web-build folder in my project. I've added these lines to to that file:
ADD kill_supervisor.py /usr/local/bin/kill_supervisor.py
RUN chmod 777 /usr/local/bin/kill_supervisor.py

I then proceeded to change the webserver_type setting in .ddev/config.yaml to each of the three options and tested by killing mailpit and noting that the container stays up but killing php causes the container to go down (as expected).
I can send logs or a screen recording or something if you would like to show it working.
As to whether or not it should be removed; I would be ok with that. I'm new-ish to Docker and entirely new to DDEV so my opinion should not count for much besides noting that I did not expect the whole container to come down because one process being run by Supervisor decided to kill itself.
Maybe it could become a setting in the .ddev/config.yaml? That way folks that need it could keep it but folks who do not just would not have to deal with it.
Happy to help in any way I can to resolve this though.

@stasadev it needs a pushed image and reference to the image in versionconstants.go to be relevant or for the tests to do anything.

Oh, right, thank you, I'll do it now.

I suspect we're not doing this right. I think that somehow we should be using autorestart to our advantage, rather than making the killer script super complex (it was already too complex).

Yesterday I removed kill_supervisor.py and tested healthcheck behavior for ddev-webserver with killall php-fpm.
The result was an unhealthy container, but not exited.
Found this SO answer https://stackoverflow.com/a/63508479/8097891, maybe we need to change our healthcheck.

The result was an unhealthy container, but not exited

I'm not sure that "unhealthy" isn't a better situation than "exited"

@stasadev is going to do an experimental replacement PR that just removes the killer script entirely.

Experimental PR:

#5936

https://github.com/ddev/ddev/pull/5936

is going to succeed, yay! Closing this. We'll all be a lot happier!

Thanks guys!


Frends.HTTP.Request implementation

Frends.Web.HttpRequest and Frends.Web.RestRequest combination where call type (HTTP or Rest) is selected from input with dropdown. Implementation is for net6.0

Please fix CI before review. You have copied the files but you forgot to modify them.


Handling timezones in cron lines

Is the handling of timezones in fugit cron lines planned? (ie, will rufus-scheduler 4.x be compatible with rufus-scheduler 3.x?).
Background: que-scheduler uses fugit to parse cron lines. It was hoped the config file it would mirror the one for resque-scheduler. However fugit doesn't seem to handle timezones. This means the config for que-scheduler throws errors.
I could move to using rufus-scheduler 3.x in que-scheduler for now, but didn't want to add features which would not be forwardly compatible.

Hello,
yes, the handling of timezones is planned. Yes, rufus-scheduler 3.x scheduling should be understood by rufus-scheduler 4.x.
I will work on that since you need it. Thanks for the feedback.

Hello @hlascelles
could you please tell me if the changes ending in https://github.com/floraison/fugit/commit/ea7f47a257bd1b0d285c473023e6b721cd1e241b are satisfying for you.
I make sure to store the zone given at the end of the cron line, #next_time and #previous_time calculate in that zone but make sure to return a EtOrbi::EoTime result instance in the "start" zone. For example if your cron is specified for Moscow but your Ruby process is set to Los Angeles, the transitions will be computed for Moscow but the result will be translated to Los Angeles time.
When we have something that works correctly, I will release a new version of fugit.
Thanks in advance.

Builds are passing: https://github.com/hlascelles/que-scheduler/pull/8
Looks good. Thanks!

fugit 1.1.0 just released. We have to give some time for the propagation in the Rubygems mirrors. Please tell me if there is anything wrong with this new version.
Closing.
Thanks again!


Add c ecytem

I request to add the domain of this technological high school that offers the technical career of software development. Attached the official website.
https://cecytemichoacan.edu.mx/

@cecytemjaime First stage of verification passed, official domain is cecytemichoacan.edu.mx as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision. Proof of domain ownership: https://cecytemichoacan.edu.mx/wp-content/uploads/VIATICOS-JULIO-SEPTIEMBRE-2019/7D230 1662019.pdf

@cecytemjaime Thank you for your patience while waiting for a review and processing your request. Pull request merged.


Bitstamp WS upgrade

Upgraded Bitstamp Web Sockets.
Some cleanup and bugfixes in Bitstamp exchange connector.

@DeviaVir Added :)

Superb! Thank you for contributing!


Support For Annotations?

Is there currently a way to use Annotations? I would like to implement user drawn lines (drag and drop) in which the user will click somewhere on the chart and then drag the cursor to an endpoint destination, resulting in a line being drawn between two points.
Example: http://jsfiddle.net/cQa7K/33/
Annotations Docs: https://api.highcharts.com/highcharts/annotations
I am also open to other ways of achieving this.

Hi @aminsshahab, there is currently no component for annotations but you cold pass annotations as a prop as HighchartsChart
const annotationsArr = [{
  title: {
    text: 'drag me anywhere
 dblclick to remove',
    style: {
      color: 'red'
    }
  },
  allowDragX: true,
  allowDragY: true,
  x: 575,
  y: 55
}, {
  title: 'drag me
 horizontaly',
  allowDragY: false,
  allowDragX: true,
  xValue: 3,
  yValue: 10,
  shape: {
    type: 'path',
    params: {
      d: ['M', 0, 0, 'L', 110, 0],
      stroke: '#c55'
    }
  }
},
// ...etc
]

render () {
  return (
    <HighchartsChart annotations={annotationsArr}>
      <Title>Chart Title</Title>
      <XAxis>
        <XAxis.Title>Time</XAxis.Title>
      </XAxis>
      <YAxis>
        <YAxis.Title>Values</YAxis.Title>
        <LineSeries name="series" data={[/* Some Data */]} />
      </YAxis>
    </HighchartsChart>
  )
}

Awesome! Thank you for the quick response.

Hmm it seems the issue is that we add the series dynamically using chart.addSeries() (behind the scenes), and the annotations need the series data to be present.
As a workaround, you could listen for the onAddSeries event and add the annotations dynamically as well. Example here: https://stackblitz.com/edit/base-chart-example-grvbyc?file=MyChart.js

This works, thank you!

Example with Candlestick series: https://stackblitz.com/edit/base-chart-example-zx5mhp?file=MyChart.js

For anybody landing here through search: as of 3.4.0 there is now component for annotations.
Example