improve shell api gating

Summary
Fixes #11163

Occurred changes and/or fixed issues

updated const name in uiplugins.js for better context
updated path in uiplugins.js for fetching UI_EXTENSIONS_API_VERSION from the correct property in UIPlugin recource
Update creators/pkg to include latest UI_EXTENSIONS_API_VERSION as the correct annotation for newly created pkg's

Technical notes summary

Areas or cases that should be tested

Areas which could experience regressions

Screenshot/Video

Checklist

[ ] The PR is linked to an issue and the linked issue has a Milestone, or no issue is needed
[ ] The PR has a Milestone
[ ] The PR template has been filled out
[ ] The PR has been self reviewed
[ ] The PR has a reviewer assigned
[ ] The PR has automated tests or clear instructions for manual tests and the linked issue has appropriate QA labels, or tests are not needed
[ ] The PR has reviewed with UX and tested in light and dark mode, or there are no UX changes

@nwmac I had to duplicate the const UI_EXTENSIONS_API_VERSION  because the logic I had before was tied to a file that doesn't exist in the context of the creators/pkg npm lib. I just realised this, sorry, it's different than the feedback I had provided earlier.
I ran out of ideas to fix this in a more intelligent way 🙏

@nwmac @jordojordo requesting final approval for this PR. Latest change was the bumping of the shell pkg version to 2.0.0 in order to comply to our versioning document regarding breaking changes for the upcoming 2.9 release 🙏


Migration doc

@JoeyZwicker Actually our migration doc already points to this place generally (i.e., telling people where to look for specific migration instructions scripts).  However, it may be good to explicitly mention this one as an important migration to note.


Feature request: Ability to change loading logo

Unfortunately, it is not allowed to change this logo without optifine. And nowadays no one use optifine on newest versions and sodium also didn't give the ability to change that logo neither. But i think it is a good idea for this mod to adding this feature, so, please, think about it.

Open the config folder and change the square_logo.png to whatever you want. Probably have to rename it to that though. Then go into mod menu if you have it and there should be an option to use the "square logo", which will then use the custom logo.


GSD Request

--- GSD JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from v5.15 to before v5.15.11",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=b8731209958a1dffccc2888121f4c0280c990550",
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=67cbcd3fb8e6412cc5220315c7266e52c2b66268"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "b8731209958a1dffccc2888121f4c0280c990550",
      "note": "introduced"
    },
    {
      "type": "commit",
      "value": "67cbcd3fb8e6412cc5220315c7266e52c2b66268",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "usb: xhci-mtk: fix list_del warning when enable list debug\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v5.15.11 by commit 67cbcd3fb8e6412cc5220315c7266e52c2b66268, it was introduced in version v5.15 by commit b8731209958a1dffccc2888121f4c0280c990550. For more details please see the references link."
}
--- GSD JSON ---

This issue has been assigned GSD-2021-1002758


Chat history for devs ($1,000)

[ ] as a developer, I want to be able to see chat history (at least with my app)
[ ] as a developer, I want to see response from llm when I send {notification} request

Explanation 1st part
In my mentor app, sometimes I get spammed with same types of notifications. This happens cuz I don't have access to chat history and don't know what already was said by my app to the user before. I need access to chat history

Explanation for 2nd part:
When I'm sending notification to client using "notification" scope, it's very hard to debug if i can't receive the response back to server.
When I'm replying to a client from webhook using "notification" capability, I want to see the response from LLM
I want to know, was the notification sent or not? what was sent?
 Reward is $1,000 in cash. Once completed, link your PR and email<EMAIL_ADDRESS>for reward

I can work on this because I also need it, is there a process to get started or the first to send a PR gets the bounty?
Is there a deadline?
@kodjima33

I can work on this because I also need it, is there a process to get started or the first to send a PR gets the bounty?
Is there a deadline?
@kodjima33

@tiagoefreitas try getting it done by tmrw. Just do a PR. If not we will do it ourselves

@kodjima33 its 1am here (UTC), I will try to do it during the day tomorrow, if that is too long feel free to start it

Is this task is opened even now??

@kodjima33 is there an admin closer to UTC timezone?
I think the best solution is to add a debug webhook to developer settings that sends the logs and the app can then log it to their preferred system.
A UI inside the Omi app will not be very good for developers but if you think it's useful I can add it.

Chat history and notifications is same but
This needs to be functionality for omi integration apps

Understood, I have a PR ready just need to test more before pushing.
It adds a new webhook setting to apps and Omi calls that webhook and sends the notification and metada to the plug-in app.
Then the app can store it or log it as the dev prefers.
Does this solve the requirement?

@tiagoefreitas can you push rn? will test
if we couldn't test now, @beastoin will do it today

here is my PR: https://github.com/BasedHardware/omi/pull/1440

@beastoin @kodjima33 I updated the PR with a notifications webhook per app and global developers config, and added an example to the mentor app that logs the notifications.
I am having issues adding an app to my dev backend to test it properly, but it should work.


Fix storage/local tests for 32-bit systems

Cool, thanks! :+1:

Oh, interesting, thanks. I would have incorrectly assumed that Go would automatically infer a 64-bit integer type for a >32-bit constant.
:+1:

@juliusv was wondering about the same thing. If not explicitly typed the type is implied on assignment/usage.

The variadic ...interface{} argument to Errorf seems to try to convert it to an int rather than an int64.  http://play.golang.org/p/u2WWycGJuL


Create a more prominent search option

#13 connected partially to this issue - We need to have a way to search user profiles by expertise areas ( languages and repositories). So while we could have a search option in the profiles feed under 'Network' but we can also have ths same in the current search option. Currently we can search by language but it would be better if we could do the same by just typing in the words and then getting suggested autotags (for bothe repositories and language) - like we search in stackoverflow.
If someone is looking for prometheus developers, then the search will be the primary option - so we should make search option more prominent. We can make it bold - a bold color.

Added in commits: [d7b2eb3, 9bcca5f]


Cis sessions are reaching maximum, causing cluster deployments to fail

Bug description
When deploying a new workload cluster before the cluster is fully deployed, the deployment times out. The cluster itself is not fully deployed it seems.
After this it turns out it's no longer possible to connect to the vCenter server.
Command tanzu cluster create --file workload.yaml is issued, resulting in the following output:
Error: workload cluster configuration validation failed: vSphere config validation failed: failed to get VC client: failed to create vc client: failed to login to vSphere: cannot login to vc: POST https://{vcenter-server}/rest/com/vmware/cis/session: 503 Service Unavailable

Upon further inspection by manually using the API to create a session it turns out that the maximum session count is now reached:
"default_message": "User session count is limited to 550. Existing session count is 550 for user user@domain",
"id": "com.vmware.vapi.endpoint.failedToLoginMaxUserSessionCountReached"

This now also blocks deleting the not-created cluster.
Rebooting vCenter clears the sessions and allows operation again. However new deployment will again not succeed.
Expected behavior
The cluster is deployed successfully without the session count limit to be reached.
Steps to reproduce the bug / Relevant debug output

Have a standalone management cluster running using TKG version 2.5.0 (OVA 1.28.4)

dev type, medium control plane, large worker.
Further default settings

Deploy a workload cluster using management cluster config as base

Output of tanzu version
version: v1.0.0
buildDate: 2023-08-08
sha: 006d0429

Environment where the bug was observed (cloud, OS, etc)

vSphere version 8
Tanzu CLI 1.0.0
TKG plugins group version 2.5.0
TKG Photon v5 Kubernetes v1.28.4 OVA image

Tanzu CLI is running on a bootstrapping VM:

Alpine Extended version 3.19.1
Kubectl version:

Client Version: v1.28.7+vmware.1
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.28.4+vmware.1

If any more information / input is desired I'll do my best to provide it.

Thanks for reaching out.
Please note that Cluster lifecycle functionality (such as the cluster create command mentioned in the issue)  is supported through TKGm and vCenter product groups. Please open a support ticket with the VMware GSS team to help triage and resolve.


Fix immediately overriding the user's chosen AM/PM selection

This fixes the problem where the user has manually set their AM/PM selection, but then scroll to a different hour in the same 12-hour range and have their AM/PM selection reverted to the previous value.

Thanks for your patience and your contribution!


Add location type to location overview

This is a nice addition, totally forgot the details pages when adding the location type feature.
Maybe it's a good idea to also add this addition to PUI.

@SergeoLacruz a good suggestion by @wolflu05 - can you add this to the new interface also?

Good Idea but...
It looks simple but changes to LocationDetail.tsx do not result in any change. I have seen that there are invoke tasks like frontend-compile, frontend-build, ... but neither does anything except showing errors like No such file or directory: 'install', yarn: error: no such option: --emptyOutDir ...
It took me quite some time to understand how the actual UI works. Actually I do not have the time and the need to dig into a complete new system. There are more important tasks on the list in the area of supplier management, connection to CAD, ...
It will take some time before I can come back to this.

No worries, it is a completely different system

@SergeoLacruz thanks for the contribution :)


TextLayer and Canvas Layer of pdf.js is not aligned for few pdf's

For many of the pdf's , the text layer and canvas layer are not aligned properly.
We can see that the text layer has been misplaced.
Because of this issue, search doesn't work properly for all these. Please check the screenshot attached :  I have searched for text "reading this" but it has highlighted some other text.

Please find one of the document which has issue here:
https://docs.google.com/file/d/0B4ByjzSjRWSfX0xYQllacFpFaW8/edit?pli=1

Closing as fixed by PR #6601.


Maintain a thread for all posts of one build

One of Flowdock's great features is the threads. It'd be natural and useful to get all messages for a particular build into the same thread.
I think it only requires some mapping of build to thread, if no thread exists, then a normal message is sent, its thread ID (which I'm assuming is returned by the Flowdock API) is stored, otherwise the thread ID found is used for the message.

I just looked at the Flowdock REST API. I think it'd be enough to send something like <project>:<build#> as external_thread_id along with the message, so nothing has to be saved on Jenkins side.
I'll try to hack around with that and send a pull request if I can make this work. :)

I had the same thought!
:+1:


Bug in v0.1.5 visium_hd reader

Hi, I get an error when trying to read in a Visium HD dataset with the visium_hd reader of v0.1.5. The same code works perfectly fine with v0.1.4.
from spatialdata_io import visium_hd
sdata = visium_hd(
    path_read,
    load_all_images=True,
    annotate_table_by_labels=True,
    fullres_image_file=fullres_image_file,
    dataset_id=dataset_id
)

Throws:
FileNotFoundError: [Errno 2] Unable to synchronously open file (unable to open file: name = '/files/03-SpaceRanger-Results/P31904_402/outs/P31904_402_feature_slice.h5', errno = 2, error message = 'No such file or directory', flags = 0, o_flags = 0)
"P31904_402_feature_slice.h5" indeed does not exist, it should simply be "feature_slice.h5" in "outs" of the "P31904_402" folder.
Here is the full traceback:
FileNotFoundError Traceback (most recent call last)
Cell In[4], line 2
1 from spatialdata_io import visium_hd
----> 2 sdata = visium_hd(
3 path_read,
4 load_all_images=True,
5 annotate_table_by_labels=True,
6 fullres_image_file=fullres_image_file,
7 dataset_id=dataset_id
8 )

File ~/anaconda3/envs/sd_pr_test/lib/python3.12/site-packages/spatialdata_io/readers/visium_hd.py:115, in visium_hd(path, dataset_id, filtered_counts_file, bin_size, bins_as_squares, annotate_table_by_labels, fullres_image_file, load_all_images, imread_kwargs, image_models_kwargs, anndata_kwargs)
104 def load_image(path: Path, suffix: str, scale_factors: list[int] | None = None) -> None:
105 _load_image(
106 path=path,
107 images=images,
(...)
112 scale_factors=scale_factors,
113 )
--> 115 metadata, hd_layout = _parse_metadata(path, filename_prefix)
116 transform_matrices = _get_transform_matrices(metadata, hd_layout)
117 file_format = hd_layout[VisiumHDKeys.FILE_FORMAT]

File ~/anaconda3/envs/sd_pr_test/lib/python3.12/site-packages/spatialdata_io/readers/visium_hd.py:471, in _parse_metadata(path, filename_prefix)
470 def _parse_metadata(path: Path, filename_prefix: str) -> tuple[dict[str, Any], dict[str, Any]]:
--> 471 with h5py.File(path / f"{filename_prefix}{VisiumHDKeys.FEATURE_SLICE_FILE.value}", "r") as f5:
472 metadata = json.loads(dict(f5.attrs)[VisiumHDKeys.METADATA_JSON])
473 hd_layout = json.loads(metadata[VisiumHDKeys.HD_LAYOUT_JSON])

File ~/anaconda3/envs/sd_pr_test/lib/python3.12/site-packages/h5py/_hl/files.py:562, in File.init(self, name, mode, driver, libver, userblock_size, swmr, rdcc_nslots, rdcc_nbytes, rdcc_w0, track_order, fs_strategy, fs_persist, fs_threshold, fs_page_size, page_buf_size, min_meta_keep, min_raw_keep, locking, alignment_threshold, alignment_interval, meta_block_size, **kwds)
553 fapl = make_fapl(driver, libver, rdcc_nslots, rdcc_nbytes, rdcc_w0,
554 locking, page_buf_size, min_meta_keep, min_raw_keep,
555 alignment_threshold=alignment_threshold,
556 alignment_interval=alignment_interval,
557 meta_block_size=meta_block_size,
558 **kwds)
559 fcpl = make_fcpl(track_order=track_order, fs_strategy=fs_strategy,
560 fs_persist=fs_persist, fs_threshold=fs_threshold,
561 fs_page_size=fs_page_size)
--> 562 fid = make_fid(name, mode, userblock_size, fapl, fcpl, swmr=swmr)
564 if isinstance(libver, tuple):
565 self._libver = libver

File ~/anaconda3/envs/sd_pr_test/lib/python3.12/site-packages/h5py/_hl/files.py:235, in make_fid(name, mode, userblock_size, fapl, fcpl, swmr)
233 if swmr and swmr_support:
234 flags |= h5f.ACC_SWMR_READ
--> 235 fid = h5f.open(name, flags, fapl=fapl)
236 elif mode == 'r+':
237 fid = h5f.open(name, h5f.ACC_RDWR, fapl=fapl)

File h5py/_objects.pyx:54, in h5py._objects.with_phil.wrapper()

File h5py/_objects.pyx:55, in h5py._objects.with_phil.wrapper()

File h5py/h5f.pyx:102, in h5py.h5f.open()

Thanks for reporting. Tagging @melonora, the bug seems due to https://github.com/scverse/spatialdata-io/pull/204 and https://github.com/scverse/spatialdata-io/pull/206.

Partly related to https://github.com/scverse/spatialdata-io/issues/212


Unify level and levelExec functions

Simplify the logging API with assert-inspired @autoclosures;
Deprecate the no-longer-necessary levelExec methods;
Improve performance by avoiding unnecessary String interpolation and
add unit test to confirm the same;
Replace levelExec calls in the demo apps to use the new @autoclosures;
Update README.md with example usage.

I've merged this in with a few minor changes. Made the closures return String? so that code can be executed without outputting a log line. Thanks a lot for this PR. Added it to both version 1.9 (for Swift 1.1), and 2.0 (for Swift 1.2).


Add option to generate code that respects 'loc' info

I currently use esprima + some traversal code that I wrote to transform JS syntax from A -> B. I'd much prefer to simply modify the AST from esprima and feed it to escodegen (rather than mutate a string buffer of the original code as I traverse the tree and find nodes to be transformed), however I really need line numbers to be preserved post-transformation (for purposes of making stack traces sane in prod). Source maps work great in a dev environment, but they're too large to ship in prod for error logging.
Currently escodegen does its own formatting and doesn't attempt to follow line numbers output from esprima when the 'loc' option is turned on, so I decided to see what it would take to add an option do this and I have a [partially complete] branch with several types of statements supported here:
https://github.com/jeffmo/escodegen/tree/preserveLocInfo
I haven't finished it yet because I wanted to check in here to see if this is a change you'd be willing to take if I went through with finishing it out? It adds quite a bit of complexity to the code (byte size will likely increase significantly), but it's toggle-able via an option so perf should only be impacted when the option is on.

Any progress on adding this to escodegen core?

This is the exact behavior I need, are there any plans to merge this PR

It's not a PR, someone needs to implement it 😆


Protect server from having compromised authorised clients authorise more clients

If a virus overtakes one of user's authorized clients we do not want that client to enable more clients. If a user's client is overtaken by a virus not much can be saved but this will at least protect the server from abuse.

There are also many other vulnerabilities related to authorized clients that should be explored. This is however not a priority for the duration of WAT2023 project


resolve.mainFields doesn't support objects in package.json

Do you want to request a feature or report a bug?
This is a bug, though possibly an intentional omission.
What is the current behavior?
Sub-arrays in resolve.mainFields are completely ignored during module resolution.
Minimum and contrived working example with repro steps: https://github.com/sjbarag/webpack-mwe
What is the expected behavior?
A sub-array in resolve.mainFields can be used to access properties from an object in a module's package.json, as it was in webpack 1.x.
Please mention other relevant information such as the browser version, Node.js version, webpack version and Operating System.

Operating System: Mac OS 10.12.6 "Sierra"
Shell: Bash 4.4.12
Node: 6.11.2
npm: 5.3.0
Webpack: 3.5.6 (though I've tested 2.0 and every minor version since)

Bug is here: https://github.com/webpack/enhanced-resolve/blob/master/lib/ResolverFactory.js#L113
There should be || Array.isArray(item)
@webpack-bot move to webpack/enhanced-resolve

Thanks @sokra! ❤


Implement QoS lvl2

QoS level 2 is still a must before launching v1.0.0

Sending a QoS lvl2 message is now possible, receiving one however is another story still

Receiving is now also possible.


net: lwm2m: Add application/link-format content writer

This PR adds a new content writer for the application/link-format data format. The new writer encapsulates link-format details and is reused in Discovery, Bootstrap Discovery, Registration and Registration Update procedures.
Along with the content writer, introduce a few helper functions needed to handle attributes outside of lwm2m_engine.
The final change in this PR is the removal of .well-known/core resource handling in the lwm2m_engine. The LwM2M specification makes no mention that this resource should be implemented (it's optional in CoAP RFC), instead it defines an LwM2M specific Discovery mechanism. I really couldn't find a reason to justify its existence, and as it made the Discovery handler more complex I've decided to remove it.
Resolves #3933.

AFAIK this looks good to me since the spec only requires CoRE Links as attributes and not the complete discovery mechanism.

I've noticed a small bug in the put_corelink_dimension() function, pushed an updated version.

Does this impact the default fallback when no format is specified?

Does this impact the default fallback when no format is specified?

Do you refer to the READ operation fallback to the TLV format when no Accept option is given?
https://github.com/zephyrproject-rtos/zephyr/blob/master/subsys/net/lib/lwm2m/lwm2m_engine.c#L3688
If so, this behaviour is not changed.

Does this impact the default fallback when no format is specified?

Do you refer to the READ operation fallback to the TLV format when no Accept option is given?
https://github.com/zephyrproject-rtos/zephyr/blob/master/subsys/net/lib/lwm2m/lwm2m_engine.c#L3688
If so, this behaviour is not changed.

Yes that was it :) thx

@rlubos any suggestion who could review this PR and give +1, perhaps someone from Nordic?


Diffusers inference API and widgets

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

Oh, I should have checked! We could just close this one and change it there.

merging this one and i'll rebase #1012 haha @pcuenca :)


Start on boot not working

Hi
I try start on boot by several ways but not work.
I can run with nohup successfully rc.but local and service not work
sudo systemctl status  bme680
● bme680.service - bme680 sensor Service
Loaded: loaded (/lib/systemd/system/bme680.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Sun 2020-11-29 09:18:43 +07; 13s ago
Process: 1026 ExecStart=/usr/bin/python3 /home/pi/senddata.py /home/pi/config.ini (code=exited, status=1/FAILURE)
Main PID: 1026 (code=exited, status=1/FAILURE)
Nov 29 09:18:43 raspberrypi systemd[1]: Started bme680 sensor Service.
Nov 29 09:18:43 raspberrypi python3[1026]: Traceback (most recent call last):
Nov 29 09:18:43 raspberrypi python3[1026]:   File "/home/pi/senddata.py", line 5, in
Nov 29 09:18:43 raspberrypi python3[1026]:     from influxdb import InfluxDBClient  # for collecting data
Nov 29 09:18:43 raspberrypi python3[1026]: ModuleNotFoundError: No module named 'influxdb'
Nov 29 09:18:43 raspberrypi systemd[1]: bme680.service: Main process exited, code=exited, status=1/FAILURE
Nov 29 09:18:43 raspberrypi systemd[1]: bme680.service: Failed with result 'exit-code'.
could you have a look?

Add
User=pi
Group=pi
to service file and it's OK.
[Unit]
Description=bme680 sensor Service
After=multi-user.target
[Service]
Type=idle
ExecStart=python3 /home/pi/senddata.py "/home/pi/config.ini"
User=pi
Group=pi
[Install]
WantedBy=multi-user.target


t('.topics') and others in view/forums/listing do not exist

The locales file defines en.forem.forums.index.topics and other related keys. Meanwhile the _listing partial uses relative scope for .topic key that rails resolves to en.forem.forums.listing.topics. That key does not exist in the locales file. This is with Rails 3.1.3
I don't know if this is a bug, but simplest fix is to update the locales files to use 'listing' instead of 'index' scope. Let me know if this is right, I can create a patch.

view/forem/forums/_forum also has the same issue with t('.last_post') so maybe absolute translation keys would be better?

This commit fixes it (feel free to cherry pick if it works) https://github.com/juozasg/forem/commit/6ead83ba68f8f6f29bef095d1caf18cf99725b28

Picked + amended to be @b8da9a6 (with closes message)
Thanks for taking the time to investigate+patch this.


False positive aws_s3_bucket_versioning when using conditionally created resources

terrascan version: v1.18.0
Operating System: https://github.com/tenable/terrascan/issues/new

Description
Using terraform, conditionally create an aws_s3_bucket with a conditional aws_s3_bucket_versioning resource - receive false positive
What I Did
# main.tf
variable "enable" {
  type = bool
  default = true
}
provider "aws" {
  region="us-east-1"
}

resource "aws_s3_bucket" "this" {
  count  = var.enable ? 1 : 0
  bucket = "test-bucket"
}
resource "aws_s3_bucket_versioning" "this" {
  count  = var.enable ? 1 : 0
  bucket = aws_s3_bucket.this[0].id
  versioning_configuration {
    status = "Enabled"
  }
}

user@computer:~/tmp$ terrascan scan --iac-type terraform -t aws
2023/02/23 13:28:15 [DEBUG] GET https://registry.terraform.io/v1/providers/hashicorp/aws/versions

Violation Details -

        Description    :        Enabling S3 versioning will enable easy recovery from both unintended user actions, like deletes and overwrites
        File           :        main.tf
        Module Name    :        root
        Plan Root      :        ./
        Line           :        10
        Severity       :        HIGH
        -----------------------------------------------------------------------

Scan Summary -

        File/Folder         :   /home/user/tmp
        IaC Type            :   terraform
        Scanned At          :   2023-02-23 18:28:16.70549622 +0000 UTC
        Policies Validated  :   10
        Violated Policies   :   1
        Low                 :   0
        Medium              :   0
        High                :   1

Having the same issue using the terraform-aws-modules/s3-bucket/aws module, version 3.10.1

Still an issue with newest version, closing due to lack of traction...


Command which works in pure bash fails in VSCode-integrated bash

VSCode Version: 1.48.2 (both VSCode and VSCodium exhibit same bug described below)
OS Version: Ubuntu 20.04 LTS 64bit

Steps to Reproduce:
Good news: I have built two minimal examples and me and others were able to reproduce the error with it. Bad news: Since the observed instance occurs when running a Unity environment, you require a few dependencies (but it should only take a few minutes to set them up). I will show the same error both with Julia 1.5.0 and Python 3.8.2:
Julia Version

I have built a minimal example. Unfortunately, you need to have Julia 1.5 and download three files:

https://github.com/NextCenturyCorporation/MCS/releases/download/0.0.10/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64
https://github.com/NextCenturyCorporation/MCS/releases/download/0.0.10/MCS-AI2-THOR-Unity-App-v0.0.10_Data.tar.gz
https://evaluation2-training-scenes.s3.amazonaws.com/interaction-scenes.zip

Note that these are from a well-known DARPA-affiliated company and the details are explained here, so there should be no security concerns about running it. [It is also fully public and I have explicit clearance to post the code below.] You need to make the first file executable (Linux binary!), extract the second file right next to it and finally extract the third archive somewhere.

Install the pip dependencies in 3 steps:

pip3 install -r requirements.txt with this requirements file
pip3 show ai2thor
pip3 install git+https://github.com/NextCenturyCorporation/MCS@latest

Create a file minimal_example.jl with the following content, but please adapt scene_path below to point to the file with the same name in extracted folder from the third file as well as mcs_executable_path to point to the executable from file 1.

using PyCall
@pyimport machine_common_sense as mcs
MCS=mcs.MCS
MCS_Step_Output=mcs.MCS_Step_Output
MCS_Object=mcs.MCS_Object

pathlib = pyimport("pathlib")

solution = push!([push!([push!([push!([push!([push!([
      "RotateLook, rotation=-40"], "MoveAhead, amount=1.0",
      "MoveAhead, amount=0.5", "RotateLook, rotation=-90");
      repeat(["MoveAhead, amount=1.0"], 3)], "MoveAhead, amount=0.5");
      repeat(["RotateLook, rotation=-40"], 9);
      repeat(["MoveAhead, amount=1.0"], 4)], "RotateLook, rotation=-45");
      repeat(["MoveAhead, amount=1.0"], 8)], "RotateLook, rotation=37");
      repeat(["MoveAhead, amount=1.0"], 2)],
      "PickupObject, objectId=96c608b1-8b50-4dea-a12e-541a3204912a",
      "RotateLook, rotation=185"); repeat(["MoveAhead, amount=1.0"], 6)],
      "RotateLook, horizon=45", "DropObject, objectId=96c608b1-8b50-4dea-a12e-541a3204912a")

scene_path="/home/falk/mitibm/AI2Thor_MCS/dataset_eval2/interaction_scenes/transferral_goal-0772.json"
mcs_executable_path="/home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64"
config_data, status = MCS.load_config_json_file(scene_path)
controller = MCS.create_controller(mcs_executable_path)
output = controller.start_scene(config_data)
for next_action in solution
      output = controller.step(next_action)
end
classification = "classification"
confidence = 1.0
controller.end_scene(classification, confidence)

If you now start bash and run julia minimal_example.jl it will work perfectly, start the environment and solve the scene. But when you start a terminal within VSCode via Terminal -> New Terminal and run julia minimal_example.jl you get the following error:

Debug info from gdb:

I refuse to debug myself!
No threads.

=================================================================
Got a SIGABRT while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================

Exception in thread Thread-2:
Traceback (most recent call last):
  File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.8/threading.py", line 870, in run
    self._target(*self._args, **self._kwargs)
  File "/home/falk/shapesworld_virtualenv/lib/python3.8/site-packages/ai2thor/controller.py", line 782, in _start_unity_thread
    raise Exception("command: %s exited with %s" % (command, returncode))
Exception: command: ['/home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64', '-screen-fullscreen', '0', '-screen-quality', '3', '-screen-width', '600', '-screen-height', '400'] exited with -6

Please note that this error was reported and discussed in the context of the vscode-julia extension as well - cmp. https://github.com/julia-vscode/julia-vscode/issues/1524 - and it occurs when using their Julia: Execute File, but since this bug also happens in a pure VSCode Terminal without any extensions including the Julia one active, it seemed appropriate to report it here as well. This bug is actively blocking me and my team from using VSCode for Julia, so a solution would be great.
Python Version

Install files and pip dependencies as described in step 1 and 2 for the Julia version above.

Please create a file minimal_example.py with the following content (and adapt the two paths, see Julia version step 3 for details):

from machine_common_sense.mcs import MCS

scene_path="/home/falk/mitibm/AI2Thor_MCS/dataset_eval2/interaction_scenes_training/transferral_goal-0772.json"
mcs_executable_path="/home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64"

solution = []
solution += ['RotateLook, rotation=-40'] + ['MoveAhead, amount=1.0'] + \
           ['MoveAhead, amount=0.5'] + ['RotateLook, rotation=-90'] + \
           ['MoveAhead, amount=1.0'] * 3 + ['MoveAhead, amount=0.5'] + \
           ['RotateLook, rotation=-40'] * 9 + ['MoveAhead, amount=1.0'] * 4 + \
           ['RotateLook, rotation=-45'] + ['MoveAhead, amount=1.0'] * 8 + \
           ['RotateLook, rotation=37'] + ['MoveAhead, amount=1.0'] * 2 + \
           ['PickupObject, objectId=96c608b1-8b50-4dea-a12e-541a3204912a'] + \
           ['RotateLook, rotation=185'] + ['MoveAhead, amount=1.0'] * 6 + \
           ['RotateLook, horizon=45'] + \
           ['DropObject, objectId=96c608b1-8b50-4dea-a12e-541a3204912a']

config_data, status = MCS.load_config_json_file(scene_path)
controller = MCS.create_controller(mcs_executable_path)
output = controller.start_scene(config_data)
for next_action in solution:
      output = controller.step(next_action)
classification = "classification"
confidence = 1.0

By running the command in a VSCode terminal you should observe the following error, whereas the same command will work in a pure bash window:

$ python3 minimal_example.py
Found path: /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64
Mono path[0] = '/home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10_Data/Managed'
Mono config path = '/home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10_Data/Mono/etc'
Preloaded 'ScreenSelector.so'
Display 0 'PHL 328E1 31"': 3840x2160 (primary device).
Display 1 'PHL 328E1 31"': 3840x2160 (secondary device).
Display 2 'PHL 278E1 27"': 3840x2160 (secondary device).
Loading player data from /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10_Data/data.unity3d
Logging to /home/falk/.config/unity3d/CACI with the Allen Institute for Artificial Intelligence/MCS-AI2-THOR/Player.log
Stacktrace:

Native stacktrace:

        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10_Data/Mono/x86_64/libmono.so(+0x98793) [0x7f7be82f3793]
        /lib/x86_64-linux-gnu/libpthread.so.0(+0x153c0) [0x7f7beea333c0]
        /lib/x86_64-linux-gnu/libc.so.6(gsignal+0xcb) [0x7f7bee87018b]
        /lib/x86_64-linux-gnu/libc.so.6(abort+0x12b) [0x7f7bee84f859]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0xd1e096]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10_Data/Mono/x86_64/libmono.so(+0xd908d) [0x7f7be833408d]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10_Data/Mono/x86_64/libmono.so(+0x3733f) [0x7f7be829233f]
        /lib/x86_64-linux-gnu/libpthread.so.0(+0x153c0) [0x7f7beea333c0]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0xca30a8]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0x9fb852]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0x9fe713]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0x9fed1f]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0x9fef90]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0xdfc4a9]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0x1783385]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0x17aa5cb]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0x17aa91e]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0x17aaa98]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0x17aac34]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0x179a908]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0x178fcbe]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0xe0c11f]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0xe0c636]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0xe0d2d7]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0xd6b721]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0xd73c5a]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0xd78b0c]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0xd78c95]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0xa1123e]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0xc4093b]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0x44a54e]
        /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3) [0x7f7bee8510b3]
        /home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64() [0x4572a9]

Debug info from gdb:

I refuse to debug myself!
No threads.

=================================================================
Got a SIGABRT while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================

Exception in thread Thread-2:
Traceback (most recent call last):
  File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.8/threading.py", line 870, in run
    self._target(*self._args, **self._kwargs)
  File "/home/falk/.local/lib/python3.8/site-packages/ai2thor/controller.py", line 782, in _start_unity_thread
    raise Exception("command: %s exited with %s" % (command, returncode))
Exception: command: ['/home/falk/mitibm/AI2Thor_MCS/MCS-AI2-THOR-Unity-App-v0.0.10.x86_64', '-screen-fullscreen', '0', '-screen-quality', '3', '-screen-width', '600', '-screen-height', '400'] exited with -6

Does this issue occur when all extensions are disabled?: Yes

About the title of this issue... did you check whether the environment variables within the integrated bash and pure bash are the same?
I'm having a similar issue and I noted they are not the same. I can normally run commands in the pure bash, but my PATH for the integrated terminal seems "incomplete". They seem to be the same bash: /bin/bash returned from echo $0.

Solution
Thanks to @pfitzseb Sebastian Pfitzner's response in the original issue I went down a path that led to the solution. He pointed me to a flag which clearly indicated some X authorization issue caused by sandboxing (see appendix (b)). The issue was that both my VSCode and VSCodium were installed via Snap which did not play well together with opening the external window with the 3D engine. By removing the VSCode Snap and reinstalling the pure version of VSCode this issue vanished (even with the flag Sebastian pointed to set).
So again: Thank you to Gabriel and especially Sebastian - you guys rock and Sebastian essentially deserves the major credit on this one - the error was obvious from where he led me to. Really glad this is solved.
Appendix
a) Interesting. My VSCodium has more environment variables than pure bash, but the sets differ. Unique to VSCodium:
'GIT_ASKPASS', 'GIO_LAUNCHED_DESKTOP_FILE', 'VSCODE_GIT_IPC_HANDLE', 'APPLICATION_INSIGHTS_NO_DIAGNOSTIC_CHANNEL', 'BAMF_DESKTOP_FILE_HINT', 'XDG_CACHE_HOME', 'CHROME_DESKTOP', 'DISABLE_WAYLAND', 'TERM_PROGRAM', 'TERM_PROGRAM_VERSION', 'VSCODE_GIT_ASKPASS_NODE', 'GSETTINGS_SCHEMA_DIR', 'ORIGINAL_XDG_CURRENT_DESKTOP', 'VSCODE_GIT_ASKPASS_MAIN', 'GIO_LAUNCHED_DESKTOP_FILE_PID'

Unique to bash:
'GNOME_TERMINAL_SERVICE', 'GNOME_TERMINAL_SCREEN', 'VTE_VERSION'

b) Sebastian Pfitzner @pfitzseb over at the julia-vscode pointed out an interesting setting: Terminal > Integrated: Inherit Env. When I disable its checkbox, the error changes to
$ julia minimal_example.jl
[ Info: Importing Revise
[ Info: Importing OhMyREPL
No protocol specified
xdpyinfo:  unable to open display ":0.0".
ERROR: LoadError: PyError ($(Expr(:escape, :(ccall(#= /home/falk/.julia/packages/PyCall/zqDXB/src/pyfncall.jl:43 =# @pysym(:PyObject_Call), PyPtr, (PyPtr, PyPtr, PyPtr), o, pyargsptr, kw))))) <class 'AssertionError'>
AssertionError('Invalid DISPLAY :0.0 - cannot find X server with xdpyinfo')
  File "/home/falk/shapesworld_virtualenv/lib/python3.8/site-packages/machine_common_sense/mcs.py", line 26, in create_controller
    return MCS_Controller_AI2THOR(unity_app_file_path, debug, enable_noise)
  File "/home/falk/shapesworld_virtualenv/lib/python3.8/site-packages/machine_common_sense/mcs_controller_ai2thor.py", line 111, in __init__
    self.__controller = ai2thor.controller.Controller(
  File "/home/falk/shapesworld_virtualenv/lib/python3.8/site-packages/ai2thor/controller.py", line 416, in __init__
    self.start(
  File "/home/falk/shapesworld_virtualenv/lib/python3.8/site-packages/ai2thor/controller.py", line 951, in start
    self.check_x_display(env['DISPLAY'])
  File "/home/falk/shapesworld_virtualenv/lib/python3.8/site-packages/ai2thor/controller.py", line 799, in check_x_display
    assert subprocess.call("xdpyinfo", stdout=dn, env=env, shell=True) == 0, \

Stacktrace:
 [1] pyerr_check at /home/falk/.julia/packages/PyCall/zqDXB/src/exception.jl:60 [inlined]
 [2] pyerr_check at /home/falk/.julia/packages/PyCall/zqDXB/src/exception.jl:64 [inlined]
 [3] _handle_error(::String) at /home/falk/.julia/packages/PyCall/zqDXB/src/exception.jl:81
 [4] macro expansion at /home/falk/.julia/packages/PyCall/zqDXB/src/exception.jl:95 [inlined]
 [5] #110 at /home/falk/.julia/packages/PyCall/zqDXB/src/pyfncall.jl:43 [inlined]
 [6] disable_sigint at ./c.jl:446 [inlined]
 [7] __pycall! at /home/falk/.julia/packages/PyCall/zqDXB/src/pyfncall.jl:42 [inlined]
 [8] _pycall!(::PyObject, ::PyObject, ::Tuple{String}, ::Int64, ::Ptr{Nothing}) at /home/falk/.julia/packages/PyCall/zqDXB/src/pyfncall.jl:29
 [9] _pycall! at /home/falk/.julia/packages/PyCall/zqDXB/src/pyfncall.jl:11 [inlined]
 [10] #_#117 at /home/falk/.julia/packages/PyCall/zqDXB/src/pyfncall.jl:86 [inlined]
 [11] (::PyObject)(::String) at /home/falk/.julia/packages/PyCall/zqDXB/src/pyfncall.jl:86
 [12] top-level scope at /home/falk/Documents/minimal_example.jl:24
 [13] include(::Function, ::Module, ::String) at ./Base.jl:380
 [14] include(::Module, ::String) at ./Base.jl:368
 [15] exec_options(::Base.JLOptions) at ./client.jl:296
 [16] _start() at ./client.jl:506
in expression starting at /home/falk/Documents/minimal_example.jl:24

which is very similar to an error you would get if your Xauthority was messed up, e.g. in a Docker X passthrough setting, where you'd have to run something like
sudo rmdir /tmp/.docker.xauth
touch /tmp/.docker.xauth
xauth nlist $DISPLAY | sed -e 's/^..../ffff/' | xauth -f /tmp/.docker.xauth nmerge -

to resolve this. Which gave me the idea for the solution above: Sandboxing or, more precisely, Snap. See main answer above.

@fplk I'm glad you solve your issue. I solved mine with an workaround and will do some tests to see whether it makes sense to open an issue.
As a side note, Julia is awesome and I aim to use it on the near future, nice to see its community grow :smile:


Optional top pool and sidechain block production crate

I don't think this has yet been a part of the refactoring discussion so I'm bringing it up here: Both use cases of substraTEE are using direct calls to the worker but neither uses the top pool nor has a real use case for sidechain block production.
Maybe it would make sense to make these two things an optional feature or even a separate crate?
See this issue here for more information: https://github.com/Polkadex-Substrate/polkadexTEE-worker/issues/38

I'd be in favor of putting this in its own crate and feature-gating it. Can we bundle block production and top_pool or is there a case where we'd need only one of the two??

The top pools main function is the pooling of state change requests to minimize decryption/encryption (resp. reading / writing) time of state shard but with focus blockchain / substrate functionalities. (including blocknumber, transaction states like InBlock, Finalized..)
So I'd imagine in case a specific usecase would need a non-chain related top buffer, it would make more sense to have a simpler cache than using the relatively complex top pool.
Hence, I'm in favor of coupling these two.

I agree that we can probably couple these two, and they should be made into a separate crate such that an enclave that does not need it, will not pull in the source code.
I have a WIP branch, where I moved already the 'Block' and 'SignedBlock' trait definition of the Blocks to a separate crate, but in that case, I will move the struct itself as well.

status?

Not started in particular.
However, in the refactoring process of the code, I have done some decoupling, which will be of benefit here.


Issue with full screen video

Anytime a video on my site goes full screen then hookjs is called and refreshes the page.
I am using Drupal with a custom hook js module, and videojs for display
example: This link

This is a cool project and thank you for maintaining @jordansinger , but just noting that I am experiencing similar behavior to @asheliahut .


Troubles using photons from Home Assistant custom integration

Hi Stephen, once again I want to first thank you for your effort with Photons. I've been using it for quite some time and it's worked flawlessly so far.
Some time ago I wrote a custom integration for LIFX Z strips, so that I could expose them to HA as "virtual" lights. The idea is to have certain zones of the strip to light up independently from others. The integration lives here https://github.com/vendruscolo/lifx_virtual_lights/blob/photons/light.py
Bear with me, I'm a Swift engineer so that Python is probably far from idiomatic.
It was working great with Python 3.6 and HA 2021.12. The other day I upgraded Python to 3.10 and HA to 2022.06 and it started complaining.
This is the error I get in the logs:
Task <Task pending name='Task-3573' coro=<LIFXVirtualLight.async_update() running at /home/homeassistant/.homeassistant/custom_components/lifx_virtual_lights/light.py:284> cb=[_wait.<locals>._on_completion() at /usr/lib/python3.10/asyncio/tasks.py:475]> got Future <Future pending cb=[silent_reporter() at /srv/homeassistant/lib/python3.10/site-packages/photons_app/helpers.py:1349]> attached to a different loop

From what I understand (I might be wrong here), HA creates its asyncio run loop, and so does Photons. And then, when I run an async method from HA there's runloop mismatch.
I don't know if this is something that can be fixed with changes from Photons, though. Anyway, are you able to tell me more and provide some guidance on how to address this? I had an hard time even trying to understand the above error.
Thanks!

I want to first thank you for your effort with Photons

❤

Bear with me, I'm a Swift engineer so that Python is probably far from idiomatic.

I'm sure it's a lot better than any swift I could write!

attached to a different loop

I also hate this error

HA creates its asyncio run loop, and so does Photons

Yeap! the library_setup function creates this object https://github.com/delfick/photons/blob/main/modules/photons_app/executor.py#L58 which is responsible for collecting configuration and setting up everything necessary to run photons and then cleanup afterwards. It's technically unnecessary but for simplicity the documentation pretends the only way you'd use photons is when photons is the main thing in control.

anyway, are you able to tell me more and provide some guidance on how to address this?

absolutely!
We stop using the collector and manually create the objects you're getting from it :)
from photons_transport.targets import LanTarget
from photons_messages import protocol_register

import asyncio

async def async_setup_platform(...):
    target = LanTarget.create({"protocol_register": protocol_register, "final_future": asyncio.Future()})
    sender = await target.make_sender()

    async_add_entities(....)

and you can use self._mac_address instead of creating a reference object. You get the same level of caching as long as you're not remaking the sender each time you send messages to a device.
Ideally you run await target.close_sender(sender) and future.cancel() on that final future when HASS shuts down. But that's mainly a cleanliness thing and avoids the possibility of some annoying python warnings when things shut down. So certainly not vital for what you're doing.
Also https://github.com/vendruscolo/lifx_virtual_lights/blob/photons/light.py#L268-L274 is completely unnecessary. You could be pessimistic and say that not reaching the device means the device changed IP address and do a await sender.forget(self._mac_address) so that next time it wants to send to that device it redoes discovery, but it's rare a router gives a different IP to the same MAC.
To demonstrate, change the mac address in the following and in a python environment that has photons installed run python toggle.py

toggle.py
from photons_transport.targets import LanTarget
from photons_messages import protocol_register

import asyncio

async def main():
    target = LanTarget.create(
        {"protocol_register": protocol_register, "final_future": asyncio.Future()}
    )

    sender = await target.make_sender()

    mac_address = "d073d567cc4f"

    # Annoyingly seems I have to import PowerToggle here because of a circular import sigh
    from photons_control.transform import PowerToggle

    await sender(PowerToggle(), mac_address)

asyncio.run(main())

and to clarify, the reference object is a way of translating some description of a device into MAC addresses (or serials as photons calls them) so if you already have serials, then you don't need to do anything else to turn them into serials.

Also, I recommend using SetZones

Oh my god, I can use the lights as intended again. You're my hero, thanks! <3
I'll try to see if I can find the proper hook for closing the sender and canceling the future. Given how hass works (and how it works in my case) I don't think it really matters. It would only matter if people load and unload the integration often, otherwise it is intended to be always running. Still, I'll try doing the right thing.
Re: https://github.com/vendruscolo/lifx_virtual_lights/blob/photons/light.py#L268-L274 I always thought it was a hack/workaround. What happened is that often (especially after a full LAN-stack reboot due to power outage) HA would start before the light strips would connect to Wi-Fi, and that caused photons to never discover them. That did the trick (the light entities become available without having to restart HA after the light strips connected to Wi-Fi). However I noticed that it would cause a high memory usage (async_update is called every 5 seconds): sometimes I had to reboot HA anyway.
Do you think it's worth making sender forget the MAC address?
Lastly, is the SetZones a new message? I don't remember reading about it one year ago 🤔
Thanks again!

I can use the lights as intended again

Wooh!!

You're my hero

It would only matter if people load and unload the integration often,

exactly!

However I noticed that it would cause a high memory usage

hmmmm, weird. I'd imagine it'd maybe use some more memory till they're found and then that'd go away, but surely not a lot more.

Do you think it's worth making sender forget the MAC address?

The only time that is necessary is if the router gives a different IP to the device.
When photons sends a message to a device it figures out the IP of the device (either by lookup or if there's no ip to lookup by doing a discovery) and then throws bytes at that IP. The retry mechanism is based off getting back separate messages from the network and lining that up to sent bytes.
So when we haven't already discovered a device, it will retry discovery the next time we try send bytes to that device.
In the case of your async_update running every 5 seconds, then I'd change the discovery timeout to 5 seconds. You do this by passing in find_timeout when you use the sender.
For example
sender(DeviceMessages.SetPower(level=0), "d073d5001337", find_timeout=5)

would give up trying to find the device after 5 seconds instead of the default. And every time it does async_update it'll redo discovery if it hasn't found the device yet
Looking at that again, I recommend using the gatherer
from photons_transport.targets import LanTarget
from photons_messages import protocol_register

import asyncio

async def main():
    target = LanTarget.create(
        {"protocol_register": protocol_register, "final_future": asyncio.Future()}
    )

    sender = await target.make_sender()

    mac_address = "d073d541125c"

    plans = sender.make_plans("zones")

    // I can assume this loop runs at most once because I know I'm only giving a single mac address and I only have one plan
    async for _, _, info in sender.gatherer.gather(plans, mac_address):
        if info is not sender.gatherer.Skip:
            zones = [z for _, z in sorted(info)]
            print(zones)

asyncio.run(main())

Lastly, is the SetZones a new message? I don't remember reading about it one year ago

It's a bit older than a year :) https://github.com/delfick/photons-core/commit/71fadb464c2e6030d3d9bb518020fc9f403c42a0#diff-65b24694454ac40c75e74a25f614f74dba17665ca2fef792e298a107122f89a9R213

Thanks again!

Also I recommend using an error catcher instead of a pokemon catch
def error_catcher(error):
    _LOGGER.error(f"Received error while updating color zones for {self._mac_address} ({error}). Possibly offline?")

async for _, _, info in sender.gatherer.gather(plans, self._mac_address, error_catcher=error_catcher):
   ...

Hey Stephen, busy days but I was able to go through your feedback and make changes to my integration. If you're curious, it's all pushed to my repo. I like how the gatherer made things simpler. I think I can also ditch the sets and simply use max() to get the various HSBK values, having a single loop.
Things seem to be working fine. Had some hiccups with Wi-Fi recently, but I think it was caused by my access points. Some times lights would disconnect randomly (the official LIFX app showed the lights as unavailable as well), but a second firmware upgrade seems to have solved issues (Ubiquiti mentioned something about IoT/2.4GHz devices, so maybe that was it).
I have a question about the error catcher: your suggestion makes sense, however it's not clear to me whether I can make the sender forget about the device on error. I added that just to be safe, but when I switched to the error catcher I had to remove that (it's an async method). I don't know whether it is possible to have an async error catcher? (lazy question, I could just try). As you said, I can probably live without it…?
And finally one other question that bugged me for a while: if I animate the brightness change (pass a non-zero value for duration) when turning a virtual light off (which sends the SetZones message), some times the zones remain partially lit (as if it set the brightness to 1% instead of 0). I never understood what's causing it. Is it because I'm immediately grabbing zone info right after it, while the zone is transitioning to a different brightness?
Thanks again for your time!

I like how the gatherer made things simpler

definitely one of my favourite fever dreams hahah

but I think it was caused by my access points.

All network equipment is evil

but when I switched to the error catcher I had to remove that (it's an async method).

yeap, correct. So there are two ways to go about doing that.
The first approach, which I recommend is to look at self._available in the methods that use sender and forget the device there. Great opportunity for a decorator like https://gist.github.com/delfick/df1943aa0ce7e33e27c4de784474ec18
The second approach is better if you have the ability to make sure things get cleaned up and that's by using a TaskHolder like this https://gist.github.com/delfick/3d1fe6fac48b8eaa8a7ec1ef9b2af6b7

I can probably live without [forgetting devices]…?

extremely likely

Is it because I'm immediately grabbing zone info right after it, while the zone is transitioning to a different brightness?

The only thing that stops a transition is another transition.

also, I recommend setting up your editor to use https://black.readthedocs.io/en/stable/


init command generates a node project

and misc changes.

Hey! Do we want to actually replace the project.toml or just add a package.json? In nextjs there is a configuration file for the project called next.config.js we probably need something similar for project specific config no?

For now we don't have specific configuration beyond what is in package.json, which BTW can hold additional metadata. I think we can add the toml file when we do need it.

use the standard fields from the package.json when available and the custom fields would come from the project.toml That way we have a clean delineation.

Yes that's a solution. I'll let you undo my changes in your branch


Documentation update, cleanup, and release preparation

btw, the issue with the tests job is that antora is not available in the VM, you need to install it first

Thanks @jsenko Looks good, left a few suggestions.

@jsenko The proc-registry-sql-backup.adoc file includes the following:
When using Java Peristence API storage in a PostgreSQL database, you must ensure...
Suggest:
When using storage in a PostgreSQL database, you must ensure...

@smccarthy-ie Could you also please check links in docs/modules/ROOT/partials/shared/attributes-links.adoc, I've noticed the first one seems dead.

I'll also quickly add a Keycloak configuration page

@jsenko The download link in the Customer Portal can be flaky: https://access.redhat.com/jbossnetwork/restricted/listSoftware.html?downloadType=distributions&product=red.hat.integration
Right now it works for me in Firefox, but gives HTTP 400 error in Chrome :(

@jsenko The new Keycloak examples and procedure are very useful, thanks!


support credhub CLI 2.0 by installing it as credhub2

This introduces the credhub v2.0.0 CLI is the credhub2 binary. This allows the two CLIs to coexist without affecting each other.
The pattern for the suffix 2 was set by bosh CLI when they were migrating to v2. This separation allowed older scripts to still run without having to be updated, especially with CI systems.
If the user knows they are only using 2.0 and does not prefer the suffix of 2, the --without-credhub2 option can be specified when installing.
For credhub2 use brew install cloudfoundry/tap/credhub2-cli.
For credhub user brew install cloudfoundry/tap/credhub2-cli --without-credhub2.

@jtarchie CredHub 2.0 is not backwards compatible but we're actively working on that here. We'll update the tap when we are done.

Sounds good to me!


pip install mmdet failed (cause of failed install mmpycocotools)

https://github.com/open-mmlab/mmocr/issues/79
detail here

You can consider using the latest version of mmdet, no need to install mmpycocotools.

But with the latest version of mmdet installed, wouldn't an old project based on mmcv==1.0.5 not run?

But with the latest version of mmdet installed, wouldn't an old project based on mmcv==1.0.5 not run?

have you solve the problem with failing to build mmpycocotools, when you pip install mmdet

My installation of mmpycocotools was unsuccessful, so I later installed pycocotools and manually changed the in-file mmpycocotools api to the pycocotools api. e.g., get_cat_ids ---> getCatIds.
get_img_ids ---> getImgIds.
cat_names ---> catNms.
load_imgs ---> loadImgs.
load_anns ---> loadAnns.
get_anno_ids(img_ids=) ----> getAnnIds(imgIds=). It worked.


add tests dockercmd/config.go

For the first release the behavior of how to transform a config into a docker command should be tested.

meanwhile done at ba253706984798be9b4c3d8e6b78a2212117eb89


[UI] Console errors on hover navigator hover and dashboard icon disappearing

Current Behavior
Console errors on hover navigator hover and dashboard icon disappearing on click sometimes. (Do give it a test multiple ways)
Desired Behavior
There should not be any console log errors and the dashboard icon should not disappear.
Screenshots/Logs
https://user-images.githubusercontent.com/65453826/197021866-9e96189e-70d0-4668-9eff-9e99edd94667.mp4
Environment

Browser: Chrome Safari Firefox
Host OS: Mac Linux Windows
Meshery Server Version: stable-v
Meshery Client Version: stable-v
Platform: Docker Kubernetes

Contributor Guides and Handbook

🎨 Wireframes and designs for Meshery UI in Figma
🖥 Contributing to Meshery UI
🙋🏾🙋🏼 Questions: Discussion Forum and Community Slack

@Harshit-Dandriyal @sahilsuman933 @legendarykamal Could one of you please take this issue?

verified it, yes it occurs on mine system too.

It doesn't occur in my system on the latest branch.
https://user-images.githubusercontent.com/34382211/197043154-77f793b5-b2ef-4fe6-804b-c5209489193d.mp4

@Chadha93 is this issue still up for grabs?

Go, Ahead! @moki1202

@moki1202 This item is urgent, If possible, Try to wrap this item as soon as possible, I believe in you for this, All the best, Please communicate if you will not be able to resolve this. ✌

@Harshit-Dandriyal Apologies, was really busy for a couple of weeks. Also had some troubles setting up meshery's UI but its all done now. Will try to open a PR today if its fine ?

Go ahead @moki1202, we will wait for your PR :smiley:

Thank you for the headsup @moki1202.
@Harshit-Dandriyal you can go ahead and make a fix for this.

@Chadha93 Apologies! Couldn't get the Dev server up and running in time.

@Chadha93 Apologies! Couldn't get the Dev server up and running in time.

No worries, you can look for solutions or post your bugs on https://discuss.layer5.io/

Already opened one yesterday. Just need some input there

@Harshit-Dandriyal @moki1202 progress?

@leecalcote Took me a sweet amount of time just to replicate the error. However now that it's done, I've tested a simple "wrap the child components in  tag" and it seems to have fixed the issue. I can open a PR if allowed.

@Shivam-AfA It's not completed. There is still an issue with the dashboard icon.

Thanks @Chadha93 for pointing this out. I'll reopen this issue or else create a new one. And I'll also ensure that this issue is resolved ASAP.

I guess I don't have the required permissions to reopen the issue @Chadha93


Added public ips on a farm are not always synced with the chain

env: devnet
farm: 52

also, farm 4432 has the same issue

Update:
Still trying to figure out what is causing this.

Did a code review.
Checked if we are missing a Farm type change.
Review previous changes done to farm type on the chain.

What I have found so far is that during an old tfchain migration, a state cleaning was performed to remove some bad IPs from the chain. This might have resulted in having more IPs than what we currently have in the chain. However, the OP mentioned that there are fewer IPs in the Graphql, indicating that there might be a different issue at play.

i think we maybe have also a problem with deleting, some farms has ips on the database but not on the chain, what i noticed is farms 138, 33, 14

@Omarabdul3ziz yes, that what i was saying in my previous comment. There is two issues in play here, the one you described is due to previous chain migration where we removed invalid IPs info from chain State without propagating this to our processor via tracked events. a gateway always have to be on the same subnet as the IP address. In your case, these IPs shows in graphql and not exists in chain due to being invalid.
A graphql migration should follow to remove these ips from graphql as well.

Update:
Farm 52 was created in block 1313143 with an empty set of IPs
it was updated a handful of times in different extrinsic since then, but this one is the most interesting
https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Ftfchain.dev.grid.tf%2Fws#/extrinsics/decode/0x1908840060e6768d0f49b892e5d9e7f8247320687c28c2651c37e168c4a244c649ebe11c014e861a913967e5a97bffeadd0c7a8c834fe2cdc7ed8331079a991b0401c129651108390a6f00d97f2ef69ba9b30e88540ce3b03d53e1eacccf7bc171c78522892502c9440003024019053400000028312e312e312e352f32341c312e312e312e3019053400000028312e312e312e362f32341c312e312e312e3019053400000028312e312e312e372f32341c312e312e312e3019053400000028312e312e312e382f32341c312e312e312e3019053400000028312e312e312e392f32341c312e312e312e301905340000002c312e312e312e31302f32341c312e312e312e301905340000002c312e312e312e31312f32341c312e312e312e301905340000002c312e312e312e31322f32341c312e312e312e301905340000002c312e312e312e31332f32341c312e312e312e301905340000002c312e312e312e31342f32341c312e312e312e301905340000002c312e312e312e31352f32341c312e312e312e301905340000002c312e312e312e31362f32341c312e312e312e301905340000002c312e312e312e31372f32341c312e312e312e301905340000002c312e312e312e31382f32341c312e312e312e301905340000002c312e312e312e31392f32341c312e312e312e301905340000002c312e312e312e32302f32341c312e312e312e30
The same farm was updated about 15 times in the same batch extrinsic with different IP addresses each time.
The processor received all farm updated events. Because they were propagated from the same externsic and included in the same block, it processes the events in an undefined order resulting in an outdated set of ips to persist in processor db.

When dealing with events, it is important to process them based on their index within the block.

Update:
I wasn't able to reproduce the issue. I tried adding an IP range from the dashboard, and it seems that events from batch call are being processed with respect to the event index in the block, just as expected.
It would be very helpful if you could reproduce the issue and share the steps with us.
For now, what i can do a migration to remove the invalid IPs from GraphQL.

I tried it again adding 5 ips with batch call and nothing is showing in graphql
while they are added on the chain

@AhmedHanafy725  Which network?

@AhmedHanafy725 Which network?

devnet

Now it's clear what caused these synchronization issues.
IPs registered on the chain but not indexed by the processor are explained here here.
IPs indexed by the processor but not exists on the chain are explained here here.

Update:
after dicuss this with @xmonader and @AhmedHanafy725 I suggested a solution  here

Update: a PR that handling this case https://github.com/threefoldtech/tfchain_graphql/issues/157#issuecomment-2021848765 is ready fore review


Improve spec by ensuring crashreporting is off for each test of error handling

So that the specs will pass regardless of whether crash reporting is enabled on your machine

💯


@liquality/hw-web-bridge library not found

When I try to install dependencies, it gives an error like "npm ERR! 404 Not Found - GET<EMAIL_ADDRESS>- Not found"
Is this dependency up? Is there any other way to integrate it?

This is fixed with 0.1.2 in latest dev branch

No longer an issue, closing this


Use rubygems require extension

This fixes #33 the right way. See #41 for discussion.

Thanks for working on this! Could you squash together the rubocop offenses and Kernel#require commits? Also, I like trying to have proof that each commit in the git history built successfully. If you use git-push-each it is very easy to push each commit individually and therefore trigger CI builds for each commit

@backus I think I fixed everything.

ping @backus

Thanks @mvz!


Use a not-broken setuptools

Oddly, the relevant bug doesn't manifest on my local machine outside of Docker with setuptools==20.3.1 while within Docker with that same version it does.
Fixes #5707.
cc @jtattermusch

The flakes in Python are unrelated, but... I don't believe we've seen them before with this frequency since we made some fixes last week. I'll try to bisect through and find out what happened when I'm not sitting in an airport.

Given this is a PR against release-0_13, it is fine to experience pre-existing flakes on the test run. Do we have a good confidence that we didn't introduce any of the issues?

@jtattermusch I Have Confidence

Please add and explicit LGTM a "ready to merge" label. Then I'll merge.

Ask me sometime how many times I've seen that movie.
On Wed, Mar 23, 2016 at 6:40 PM Jan Tattermusch<EMAIL_ADDRESS>wrote:

Please add and explicit LGTM a "ready to merge" label. Then I'll merge.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/grpc/grpc/pull/5908#issuecomment-200608420

LGTM


[Question]: ZeroScrolls reproduction

Describe the issue

The publicly available validation split only contains a small number of samples (around 20 per task), and the ground truths are not available for the test split, which is a lot bigger. Are the results in the LLMLingua paper obtained from the validation split, or did you submit your results to https://www.zero.scrolls-benchmark.com/submission?

The ZeroScrolls dataset provides the inputs already formatted inside the prompt-templates - did you compress the inputs from the dataset as is, or did you extract the contexts from the inputs and compress only the contexts, keeping the prompt templates intact?

Hi @cornzz, thanks for your question, and apologies for the delayed response.

In our paper, we used the dev set for ZeroScrolls. Due to the small dataset size, the results are not fully conclusive. However, when compared to the full prompt and other baselines, it does reflect trends across different types of tasks.
We manually extracted different sections of the prompt from the original data. You can refer to the following code for details.

TASKS = ['gov_report', 'narrative_qa', 'qasper', 'qmsum', 'summ_screen_fd', 'quality', 'squality', 'musique', 'space_digest', 'book_sum_sort']
OUT_TASKS = ['gov_report', 'summ_screen_fd', 'qmsum', 'squality', 'quality', 'narrative_qa', 'qasper', 'musique', 'space_digest', 'book_sum_sort']
O_QUOTA = [900, 100, 100, 200, 600, 100, 800, 100, 100, 100]
INSTRUCTION_IDX = [2, 1, 1, 1, 1, 1, 1, 1, 1, 1]
QUESTION_IDX = [0, 2, 2, 2, 1, 3, 2, 2, 1, 1]
KEEP_FIRST = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

prompt_sentence = prompt.split("\n\n")
ins_idx, que_ins, keep_first = INSTRUCTION_IDX[task_idx], QUESTION_IDX[task_idx], KEEP_FIRST[task_idx]
ins, prompt, que = "\n\n".join(prompt_sentence[:ins_idx]), "\n\n".join(prompt_sentence[ins_idx:len(prompt_sentence) - que_ins]), "\n\n".join(prompt_sentence[len(prompt_sentence) - que_ins:])

Thank you for your response!


⚠ Bofrost.at has degraded performance

In b96aa7b, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2269 ms

Resolved: Bofrost.at performance has improved in 835b890.


could remove FSL

I'm not 100% sure since it could be a dependency for other tools, but I think FSL is never directly called in hippunfold rules or scripts.

Yes looks like we don't use it anymore, I've made a PR with that, just testing the docker build with it..
It won't save much container space (as it was only keeping a few compiled binaries anyways) but the build time will be slightly faster..


See How Rerunning a protocol works modal

create a modal for the empty state of the protocol tab that is displayed in the "last protocol run" section.
this modal explains how cloning a protocol works.
figma link to modal:
https://www.figma.com/file/JCQNOTTK9tTmYPhRqeOfSj/Milestone-0:-Protocol-Upload-Revamp?node-id=6957%3A167940
Copy is updated!!!

covered by #8464


AssignedTo list

The assign to dropdown is fed from the SP list. The list column is a "Person" field. I have that column set to use the group owners. There are three owners, but nothing shows in the dropdown. Is there a way to check to see if the list is populated? Can I just make that a choice field and set the technician names there instead?

I just tried to add myself in the "Assigned to column of the sharepoint list. It found me, but then gave an error:
Your organization's policies don't allow you to share with these users.
Also - in the app the "Update" button is disabled even after I make changes
Maybe this will help in trouble shooting.

@Brian-704 Sorry to hear about your trouble with the PowerApps software. We maintain the documentation for PowerApps. If there is a problem with the documentation, let us know. Otherwise, you should contact your PowerApps support representative. Thanks.

Unfortunately I'm the PowerApps rep!
I'm not sure if the documentation is wrong or not. But it seems that the Help desk powerapp may be lacking a critical component. The "Assign to" field picks from anyone in the organization. I can't imagine any scenario where that would be desired. I have been unable to find a way to limit that field to the small group of people that would be responding to the issues. Wouldn't it make more sense to treat that field more the "Admin" list? The problem I'm having trying to reverse engineer that solution is that a record is expected in that field. I tried using the owners of the list as the group of people, but evidently that is not supported in Powerapps.

Hi @Brian-704,
I have checked the formula for AssignedTo in EditTicketScreen:
If(Not(IsBlank(EditTicketScreenAssignedToSearchInput.Text)),Office365Users.SearchUser({searchTerm:EditTicketScreenAssignedToSearchInput.Text}))
As you have said above, the AssignedTo field is populated with the name you search within your organization. I believe the intent is to make it as generic as possible in case some orgs want to use this template want it that way.

You definitely have the freedom to make AssignedTo list a dropdown sourcing from an "Admin" list you define in App OnStart or even from any data connections (SharePoint List or Excel file on OneDrive, etc.). If that's the type of customization your version of app need, then suggestion could be changing it to a dropdown list to replace the current input field and delete the gallery showing the search result, if the list has a very limited personnel.

Thank you.


GitHub not receiving anymore Travis notifications

Purpose
Repositories using GitHub Apps now receive Build status updates via the Checks API only.
If you're using protected branches or custom status automation, you may need to adjust them.
Status API updates for repositories managed by GitHub Apps starting October 4th, 2018.

Changed the settings of the protected branch according to: https://blog.travis-ci.com/2018-09-27-deprecating-github-commit-status-api-for-github-apps-managed-repositories


Use the async and defer parameters in the script tags (!)

Use the async and defer parameters in the script tags (!)
Pagespeed required params for script recaptcha

i'm also waiting for this improvement

I really need async and defer params
https://github.com/abinnovision/recaptcha-v3/assets/15983233/640656e5-4ff5-42f3-9436-1acd5931b082

Is it solo dance?

fully support the above

https://github.com/abinnovision/recaptcha-v3/pull/898
remains to wait for release

@WipeAir R u alive?

@WipeAir

@WipeAir

@WipeAir R u okay?

@WipeAir hello, beautiful. How r u?

Released with v1.11.1.


Update README.md with latest api reference

Description
Update README.md with latest api reference
Breaking change?
No
Checklist

[X] All tests pass
[ ] Tests added in this PR (if applicable)

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


RBAC is not being respected

Summary
I am attempting to use the RBAC feature to prevent bad things from happening in a production environment. However, it seems that these controls are not working.
I would expect a service account with read-only permissions (e.g. get, list, watch) to not be able to create, update, or delete any resources using the Argo UI.
However, I'm finding that enabling RBAC and having all users use a single service account with these limited permissions does not prevent them from creating or updating resources using the Argo UI.
Diagnostics
What Kubernetes provider are you using? I'm running this locally using docker for mac
What version of Argo Workflows are you running? 2.12.4 (because 3.0's UI doesn't work locally)
I am using the quick-start postgres installation of 2.12.4 with a couple of modifications:

Add this service account, roles, and role bindings
Configure SSO by adding the following the workflow controller config map:

  sso: |
    issuer: <local provider url>
    clientId:
      name: argo-secrets
      key: OIDC_CLIENT_ID
    clientSecret:
      name: argo-secrets
      key: OIDC_CLIENT_SECRET
    # The OIDC redirect URL. Should be in the form <argo-root-url>/oauth2/callback.
    redirectUrl: http://localhost:2746/oauth2/callback
    rbac:
      enabled: true
    scopes:
      - groups

Make SSO the only auth mode on the server by modifying its Deployment:

      containers:
      - args:
        - server
        - --namespaced
        - --auth-mode
        - sso

Add the secrets for the OIDC provider

After starting a port forward, I can visit my locally running argo, sign in with my SSO provider, and submit workflows, create workflow templates, delete workflows, etc. I would expect my RBAC controls to persist for these actions.
Here are the server logs:
time="2021-05-06T21:01:01.956Z" level=info authModes="[sso]" baseHRef=/ managedNamespace=argo namespace=argo secure=false                                                                                │
│ time="2021-05-06T21:01:01.956Z" level=warning msg="You are running in insecure mode.  Give it a 👍. We prioritise the issues with the most 👍.

Not all Kubernetes providers support RBAC. E.g Docker Desktop, GCP under default configuration. Given we have tests for RBAC, I'd believe it is unlikely it is not working. Can you please confirm which provider you're using.

Side-note kubectl auth can-i can be used to check RBAC set-up.


Untreated_Sample

Hi,
Is the untreated sample necessary for the methylation calling?

Hi Simon,
Yes, the model needs an untreated sample to perform the methylation calling.
Best,
Pepe


Whats new aggregator

Good morning,
This is a very-rough first pass of the whatsnew aggregator for discussion and review of logic. There's a lot of formatting (both of my code and the output) changes needed, and a few inefficiencies to fix if the logic is useable.
The documentation is also very 'minimalist' for now, again I didn't want to spend too much time working on this if it's liable to change significantly.
Feedback welcome!

As a thought, should this also generate an index page? Currently, this is a manual process.

As a thought, should this also generate an index page? Currently, this is a manual process.

Interesting idea :+1: but let's leave that possibility for another time.

OK @gm-s, that's me done so over to you!

@gm-s looks like you've got some PEP8 failures to address...

Oh, I've just remembered I've got some comments to make about the documentation, I think some tidying is required on it, but I'll contact you later about that @gm-s.

Other than the tests, I'm :+1:


🐛 List Items and Boxes Are Not Displaying Correctly

🐛 List Items and Boxes Are Not Displaying Correctly
Work with a partner to resolve the following issues:

Users should be able to see a horizontal navigation bar with three list items side-by-side.

Users should be able to see three boxes.

Users should be able to see the boxes centered and stacked on top of each other.

Expected Behavior

All three list items in the navigation bar should display inline.

All three boxes should be visible.

Each box should appear centered and on its own line.

Actual Behavior

Each list item in the navigation bar displays on its own line.

Two boxes are visible, and one is not displayed.

The two visible boxes display inline and aligned to the left.

Assets
The following image demonstrates the web application's appearance and functionality:

💡 Hints
Which display value hides an element?
🏆 Bonus
If you have completed this activity, work through the following challenge with your partner to further your knowledge:

What is the CSS visibility property? How is it different from the display property?

Use Google or another search engine to research this.

© 2022 Trilogy Education Services, LLC, a 2U, Inc. brand. Confidential and Proprietary. All Rights Reserved.

done waiting on class, adjusted display setting in each area of code to align to spec


Consider adding Path and Type properties to OpenApiOperation

Is your feature request related to a problem? Please describe.
If you have an operation object, there's no way to access the path or type of the operation without iterating over all paths so that you have access to this information. It seems logical for these to be properties of the operation, even if this is structured differently in the actual document text.
Describe the solution you'd like
Consider setting operation.Type and operation.Path to the applicable values.
Describe alternatives you've considered

Storing this information separately, in a dictionary like:Dictionary<string, (OperationType OperationType, string Path, OpenApiOperation Operation)>

Storing this information in Extensions.

Additional context
n/a

Working on it...


Swagger login exception

https://prod.iotn2n.com/swagger/#/_Role/post_login
{
"password": "dgiot_admin",
"username": "dgiot_admin"
}
TypeError: Failed to fetch

please use http, not https as follow：
http://prod.iotn2n.com/swagger/#/_Role/post_login


SchemaBuilder TYPE_TEXT bugs

SchemaBuilder::text allows you to specify a length. This is wrong, you cannot use length for text fields: http://dev.mysql.com/doc/refman/5.7/en/create-table.html
Instead, you have to use TINYTEXT,  TEXT, MEDIUMTEXT or LONGTEXT. SchemaBuilder does not support these, it always uses TEXT (see also #8950)

MySQL doesn't fail (it might throw a warning depending on server configuration, I didn't check).
But on postgres you get this error:
create table test (foo text(255));

ERROR:  type modifier is not allowed for type "text"

OK. What's your proposal?

The length parameter should be removed. I don't think it's used by any of the databases Yii supports. They either ignore it or error out like postgre.
Alternatively, the length parameter could select between TINYTEXT, MEDIUMTEXT etc. on mysql, but like I said in #8950, I think that's a bad idea, because it's a mysql-specific workaround (at first I thought the length parameter did that, before I checked the code).

2.0.5's release date is almost here. If you release it like this, you won't be able to remove the parameter without breaking BC.
I've checked the documentation of all the supported database systems:

Cubrid: [text is converted to varchar] (https://github.com/yiisoft/yii2/blob/master/framework/db/cubrid/QueryBuilder.php#L27), which can accept a length parameter. Omitting it defaults to the maximum length.
MSSQL: does not accept length according to documentation.
MySQL: length is ignored, may cause warnings or errors depending on server settings.
Oracle: text is converted to clob. Does not accept length according to [documentation] (http://docs.oracle.com/cd/B28359_01/server.111/b28286/sql_elements001.htm#i54330)
PostgreSQL: throws an error if you add a length parameter.
SQLite: lengths are ignored. I tested this with sqlite 3:

sqlite> create table foo (bar varchar(2), baz text(2));
sqlite> .schema
CREATE TABLE foo (bar varchar(2), baz text(2));
sqlite> insert into foo values ("asdf", "asdf");
sqlite> select * from foo;
asdf|asdf

Yep, overall makes sense to remove parameter.

Binary also has a length parameter, and it has a similar problem. With postgre it's converted to bytea, which cannot have a length (same error as text). But for MSSQL it's converted to binary(1), so you must specify a length. Unless you're specifically targeting MSSQL, you won't run into this and you won't specify a length, so your code probably won't work correctly with binary(1). I think it would be better to use varbinary(max) here.

@nkovacs can you fix the issues you've mentioned in a pull request? Would be much easier to review.

There are some more problems (these are also problems with the current typeMap system, but SchemaBuilder exposes them):

Integer precision: only used on mysql and oracle and maybe cubrid, throws error on postgresql. On mysql it only affects the display width, so it's effectively useless.
Float: on postgresql, it's converted to double precision, and you cannot specify precision and scale, so using those two will throw an error.

precision/length are stripped from a type definition if a dbms does not support them. how did you manage to get the above error when using postgres?

I only tested it manually, that's no longer an issue.

Closing this, since it's no longer an issue with your refactor.


Will this be available on a package manager like scoop or winget?

This would be a simpler way to download and update this app. I really would enjoy such kind of enhancement :3

This would be a simpler way to download and update this app. I really would enjoy such kind of enhancement :3

Hey, would you mind linking these sites? I would love to make the app easily accessible! :D

Of course c: Here you go:
Scoop: https://scoop.sh/ - Is community-driven package manager with a focus on (mostly) portable apps [I really love scoop :3]
Winget: https://learn.microsoft.com/windows/package-manager/ - Microsoft's own package manger [I think it's way more tricky for a developer to manage packages on her and update them]

Of course c: Here you go:
Scoop: https://scoop.sh/ - Is community-driven package manager with a focus on (mostly) portable apps [I really love scoop :3]
Winget: https://learn.microsoft.com/windows/package-manager/ - Microsoft's own package manger [I think it's way more tricky for a developer to manage packages on her and update them]

Hi, sorry for late reply, i haven't used these managers before and I had been trying to figure it out for the past few days.
Would you mind messaging me on discord to help me figure it out? ^^ (discord : mudkipworld)

No problem, really nice that u've tried figuring out how to use them tho c:
Unfortunately, I can't help u because I don't use discord, sorry for that :/

Question, just to make sure, if I created a Github rep and turned it into a bucket, then added the mainfest/ json file in it, the app should hopefully show up on Scoop, right?

Hey, no probs, I always prefer giving people as much time to reply as possible. Thanks for the explanation!
Will look more into it at some point, since college at the moment is taking a lot of my time


Cannot find name 'VRDisplay'.

Facing the below error while run in the browser using "ionic serve"

VRDisplay change with any

How do I get past this issue?


Bug: Mobile view for workspaces does not work in browser

Describe the bug

I am trying to create some mobile content and can't get the aspect ratio correct on my desktop.
Steps to reproduce
https://app.opensauced.pizza/workspaces/e2353259-45af-40f2-bc21-903c2a9b17ad

weird, but I got it work in a new chrome window. Not worth triaging further.

You can also try using the devtools to load a certain breakpoint. It seems fine on my phone. But it did start off slightly bigger. It looks like some of the dropdown might be causing it to bust a bit.

I can take a peek tomorrow if need be.