Sphinx Desktop - Message input Bar

Finalize entire message bar layout nased on this concept
https://github.com/stakwork/sphinx/issues/283

@tomastiminskas  In this concept i tried to cover all scenarios i could think of.

Short and long messages
Short and long Messages with attachment, one and multiple (up to 10) attachments,
Paid messages for all variations
Drag and Drop attachment
Having double input bar (in chat and in thread next to it)
Gif and Emoji dialog

https://github.com/stakwork/sphinx-mac/assets/13258550/34fde18b-d294-409e-81cc-f6909ec66272

@Antanasijevic they all look great. I would say we should separate this into 4 tasks:

General redesign of bottom bar
Redesign of attachments preview (up to 10)
Logic to send multiple attachments
New icons on top bar

If you can prepare the designs in Figma I will go ahead and create tickets/bounties for them. It would be great if we can have a page in Figma with bottom bar redesigns without the attachments previews (so user taking the first task doesn't get confused) and a second one with multiple attachments preview designs. Also it would be great if you can show all states in the designs like: short text message, long multiline text message, message price active (after pressing in add price button), etc
We can discuss tomorrow morning if needed

Here is final layout for General redesign of bottom bar. Please let me know if you want us to go through assets.
Layouts for attachment will be moved to separate ticket, as discussed.
Figma Project
https://www.figma.com/design/suipHjIGKg38rbWo0qHGqV/Desktop-Design-System---Dark-Version?node-id=4242%3A135730&t=tef8LJ0ok5bm3u4g-1
https://github.com/stakwork/sphinx-mac/assets/13258550/e29b89eb-93df-4f22-8498-64a7fbd82e66

Designs for Redesign of attachments preview are moved to separate ticket #385


RUM-449: Enable RUM and Traces for Logs

What does this PR do?
A brief description of the change being made with this pull request.
Motivation
What inspired you to submit this pull request?
Additional Notes
Anything else we should know when reviewing?
Review checklist (to be filled by reviewers)

[ ] Feature or bugfix MUST have appropriate tests
[ ] Make sure you discussed the feature or bugfix with the maintaining team in an Issue
[ ] Make sure each commit and the PR mention the Issue number (cf the CONTRIBUTING doc)
[ ] If this PR is auto-generated, please make sure also to manually update the code related to the change

I'm closing this PR for clarity, since the work is going to continue on https://github.com/DataDog/dd-sdk-reactnative/pull/624


Attempting to install pip-compile from pip opens browser window

Assuming the pip-compile package on PyPI is owned by somebody from pip-tools: this is no way meant to detract from the work you've all put into pip-tools but opening a browser window when attempting to install a package from pip is intrusive.  Please remove that bit of code from your setup.py.

Hello @layday,

Assuming the pip-compile package on PyPI is owned by somebody from pip-tools

It's not correct, but you could ask @graingert, who is the owner of the package.

@layday the pip-compile package is not owned or managed by jazzband

I know that, I tried to install it by accident.

Can we close this as irrelevant?

Happy new year to you too.

I didn't mean to offend.

That's alright, no offence taken.

@graingert
I thought, pip-compile package could require pip-tools instead of open a browser? pytest-coverage uses the same technic. What do you think?

that would work

The pip-compile package should not open a browser window regardless. Just because you can execute arbitrary code from setup.py doesn't mean that you should.

@layday use pip --only-binary or take care and double check every package you download. Allow pip-tools to be a learning experience

@graingert

that would work

Great! Would you mind uploading a new release to pip-compile with the suggested change?

@layday use pip --only-binary or take care and double check every package before you download and execute it. Allow pip-compile to be a learning experience

I know that arbitrary code execution is a possibility and I know how to stave it off. What I had not realised in my folly is that you're a purveyor of "learning experiences".

@atugushev I can't find a way to depend on a package (pip-tools) so that package is installed and error the installation such that the current package (pip-compile) does not stay installed. Eg I want to prevent pip-compile ever being added to a install_requires or pinned into a requirements.txt

@layday
I would ask you to respect contributors and don't violate our CoC.

I can't find a way to depend on a package (pip-tools) so that package is installed and error the installation such that the current package (pip-compile) does not stay installed. Eg I want to prevent pip-compile ever being added to a install_requires or pinned into a requirements.txt

That's a trade-off, there is no way to prevent pip-compile from installing. But it's fine by me as long as pip-tools would be installed.

My comment was meant to be taken humorously, hence the "purveyor".

@atugushev Let's close this issue as off-topic and move to https://github.com/graingert/pip-compile/issues/1

@graingert
Thank you! 🙏


Add headers support to error renders

Related to https://github.com/neomerx/json-api/issues/52

It appeared changes in json-api were sufficient.


Don't display session_token

As a follow-up of #100, in which I forgot to add :session_token.
Even though it's a short-lived secret, it's better to not display :session_token when inspecting an AWS.Client as it could end up in logs.

Makes sense. Thanks, @ahamez! :purple_heart:


[FLOC-3150] Add a delay before starting the container-agent loop

Fixes: https://clusterhq.atlassian.net/browse/FLOC-3150
Original plan was to modify systemd service files, but

this alternative change means we don't have to add duplicate changes to upstart files, and
that we can log the reason for the startup delay in Eliot format, and
we can import the actual EXPIRATION_TIME used by the state wiper service.

After discussion with @exarkun we decided not to include our acceptance test for this change since it won't reliably run on Buildbot.
See reliable-reboot-acceptance-test-FLOC-3150 for the acceptance test for manual testing.

Putting the delay inside the Flocker service causes some problems.  For example, unit tests exercise this code and don't complete on time now.

I'm going to switch this branch to modify the systemd/upstart files instead.

The points made in the PR description seem generally sound and valid to me but I think they reflect a higher standard than the one we've decided this change should meet.  This is a temporary work-around until we implement a real fix for the stale state.  Might as well keep it as simple, short, and self-contained as possible.

There's a problem with the systemd unit file...
[root@ip-10-233-157-15 ~]# systemctl start flocker-container-agent
Failed to issue method call: Unit flocker-container-agent.service failed to load: Invalid argument. See system logs and 'systemctl status flocker-container-agent.service' for details.
[root@ip-10-233-157-15 ~]# systemctl status flocker-container-agent.service
flocker-container-agent.service - Flocker Container Agent
   Loaded: error (Reason: Invalid argument)
   Active: inactive (dead)

Sep 30 09:38:46 ip-10-233-157-15 python[15872]: {"task_uuid": "5b85af8f-7a43-4217-a8fc-cc3d151c7b41", "error": false, "timestamp": 1443605...l": [1]}
Sep 30 09:38:46 ip-10-233-157-15 python[15872]: {"fsm_identifier": "<flocker.node._loop.ClusterStatus object at 0x3f2c290>", "fsm_input": "<Cluste...
Sep 30 09:38:46 ip-10-233-157-15 python[15872]: {"fsm_next_state": "<ClusterStatusStates=SHUTDOWN>", "task_level": [2], "action_type": "fs...ceeded"}
Sep 30 09:38:46 ip-10-233-157-15 python[15872]: {"task_uuid": "f9607e37-aba1-4d90-8f91-51d5785ba87c", "error": false, "timestamp": 1443605...l": [1]}
Sep 30 09:38:46 ip-10-233-157-15 python[15872]: {"task_uuid": "854edb1f-6577-4eab-b889-8b58cd1b80f8", "error": false, "timestamp": 1443605...l": [1]}
Sep 30 09:38:46 ip-10-233-157-15 systemd[1]: Stopped Flocker Container Agent.
Sep 30 09:39:59 ip-10-233-157-15 systemd[1]: [/usr/lib/systemd/system/flocker-container-agent.service:7] Executable path is not absolute, ...ournald'
Sep 30 09:39:59 ip-10-233-157-15 systemd[1]: flocker-container-agent.service lacks ExecStart setting. Refusing.
Sep 30 09:40:06 ip-10-233-157-15 systemd[1]: [/usr/lib/systemd/system/flocker-container-agent.service:7] Executable path is not absolute, ...ournald'
Sep 30 09:40:06 ip-10-233-157-15 systemd[1]: flocker-container-agent.service lacks ExecStart setting. Refusing.

Need to use /usr/bin/sh instead or find out if service files support a pre-exec feature like ubuntu unit files.
And on Ubuntu we should probably put the sleep in the existing pre-exec script.

I tried putting the sleep in what looks like the pre-exec script on Ubuntu but it resulted in the user being made to wait 120 seconds when they start the service

Ah, ok.
With the full path, the unit starts up after 120s but leaves the process tree looking like this...
[root@ip-10-233-157-15 ~]# systemctl status flocker-container-agent.service
flocker-container-agent.service - Flocker Container Agent
   Loaded: loaded (/usr/lib/systemd/system/flocker-container-agent.service; disabled)
   Active: active (running) since Wed 2015-09-30 09:41:09 UTC; 5min ago
 Main PID: 16776 (sh)
   CGroup: /system.slice/flocker-container-agent.service
           ├─16776 /usr/bin/sh -c echo "Sleeping 120s to ensure previous dataset state is expired."; sleep 120; /usr/sbin/flocker-container-agent ...
           └─16791 /opt/flocker/bin/python /usr/sbin/flocker-container-agent --journald

Perhaps we should exec the flocker-container-agent process....I'll try it.

Sure, if you do that can you modify the upstart script similarly for consistency, I'll happily test that.

Systemd Service Pre-exec works but causes systemctl to block until the agent process starts...
[Unit]
Description=Flocker Container Agent
After=docker.service
Wants=docker.service

[Service]
ExecStartPre=/usr/bin/echo "Sleeping 120s to ensure previous dataset state is expired."
ExecStartPre=/usr/bin/sleep 10
ExecStart=/usr/sbin/flocker-container-agent --journald
Restart=always

[Install]
WantedBy=multi-user.target

That seems like a good thing to me, but I suppose the user is left without any information about why it's paused.

This alternative doesn't block systemctl but leaves the process tree a little neater.
[Unit]
Description=Flocker Container Agent
After=docker.service
Wants=docker.service

[Service]
ExecStart=/usr/bin/sh -c '\
echo "Sleeping 120s to ensure previous dataset state is expired."; \
sleep 10; \
exec /usr/sbin/flocker-container-agent --journald \
'
Restart=always

[Install]
WantedBy=multi-user.target

[root@ip-10-233-157-15 ~]# systemctl status flocker-container-agent.service
flocker-container-agent.service - Flocker Container Agent
   Loaded: loaded (/usr/lib/systemd/system/flocker-container-agent.service; disabled)
   Active: active (running) since Wed 2015-09-30 10:04:39 UTC; 2s ago
 Main PID: 19300 (sh)
   CGroup: /system.slice/flocker-container-agent.service
           ├─19300 /usr/bin/sh -c  echo "Sleeping 120s to ensure previous dataset state is expired.";  sleep 10;  exec /usr/sbin/flocker-container...
           └─19301 sleep 10

Sep 30 10:04:39 ip-10-233-157-15 systemd[1]: Started Flocker Container Agent.
Sep 30 10:04:39 ip-10-233-157-15 sh[19300]: Sleeping 120s to ensure previous dataset state is expired.
[root@ip-10-233-157-15 ~]# systemctl status flocker-container-agent.service
flocker-container-agent.service - Flocker Container Agent
   Loaded: loaded (/usr/lib/systemd/system/flocker-container-agent.service; disabled)
   Active: active (running) since Wed 2015-09-30 10:04:39 UTC; 20s ago
 Main PID: 19300 (flocker-contain)
   CGroup: /system.slice/flocker-container-agent.service
           └─19300 /opt/flocker/bin/python /usr/sbin/flocker-container-agent --journald

Looks good to me. Manually tested on both CentOS 7 and Ubuntu 14.04.

Thanks.  Please merge once there's a link to the follow-up issue.

Thanks. I'll add those links now.

Done. Merging.


fix(libsinsp): check ipvXnet size before comparing

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area libsinsp

Does this PR require a change in the driver versions?
No

What this PR does / why we need it:
Very similar to https://github.com/falcosecurity/libs/pull/1953 but in the "fd" part of the filterchecks. In this case we could get a type confusion for the parameter value, leading to an incorrect comparison (ipv4 vs ipv6).
We still need tests for these cases because they are very tricky.
cc @jasondellaluce , can you think of other places where this may happen?
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

fix(libsinsp): check ipv4/ipv6 size on fd.*net comparisons

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: LucaGuerra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [LucaGuerra]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/milestone 0.17.3

LGTM label has been added.  Git tree hash: bc3d934d9b12751561ff925717a6eece4204dc14

can you think of other places where this may happen?

Good catch! I think this is the last instance of this, and also a friendly reminder that we'll need to stop having edge-cases for comparisons.

New changes are detected. LGTM label has been removed.

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, LucaGuerra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,LucaGuerra]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: 64816d120ef8561947035c59bf0266f9b6b97820


Select network device to emulate

We currently force rtl8139 but it's not supported by all OS and targets. Implement a selector for all possible devices.

A little bit far from this topic, adding a form to set DNS server can solve networking problems. (#49)
So users don't have to maunally change it in guest os.
https://wiki.qemu.org/Documentation/Networking

You can specify the guest-visible virtual DNS server address with -netdev user,id=n0,dns=addr

I recommend the way to implement as Limbo Emulator did.


Deep linking to solutions

In the readme it states this functionality was introduced in 1.3.1. I can't find any documentation though. Is it possible to deep link to a specific solution?

@myanimal Yes you can deep link to a specific solution in ticket replies. It works automatically on the SDK side. All you need to do is insert a link to the solution using "Insert Solution" option from within the reply box as usual.

@myanimal We're marking this closed. If you still need more clarification feel free to re-open.

Thanks @tryprasannan. Is there anyway to open a specific solution via an Intent or something like that? e.g.: pressing a button in the app shows a specific solution.

There is no way to launch a particular article now.
We are planning to add support for tags on solutions. This will allow you show articles containing a tag . for e.g  If your app has a billing section , you will able to add a help button that shows articles related to billing.
This will be included in the next release . ( 3 weeks )


Fixed broken homeAccountId check in CacheManager

The homeAccountId check in CacheManager.ts did not account for a homeAccountId that was an empty string.
For example, say the following two access tokens exist in the cache for a confidential client application - one for an application and the other for a user account:
        "-login.windows.net-accesstoken-[...]-https://graph.microsoft.com/.default--": {
            "home_account_id": "",
            "credential_type": "AccessToken",
            ...
        },
        "[...]-login.windows.net-accesstoken-[...]-profile openid email https://graph.microsoft.com/user.read https://graph.microsoft.com/user.read.all https://graph.microsoft.com/.default--": {
            "home_account_id": "[...]",
            "credential_type": "AccessToken",
            ...
        }

Under the old homeAccountId logic, both access tokens were returned when an application called acquireTokenByClientCredential because !!("") equates to false, and the rest of the homeAccountId comparison was not being performed. Now, only the matching access token is returned.

LGTM from MSAL logic / E2E test perspective, but please work with @tnorling and @sameerag to get consensus on the "javascriptness"

Agree on the need to agree on semantics for "" versus null here.

^ Synced with @sameerag and we agreed to leave the check as it is, because we still want to do the comparison even when the homeAccountId is equivalent to empty string. The only time we don't want to do it is when the homeAccountId is null/undefined, and checking for the type accounts for that.


[fixup] i18n date time (#4677)

Coverage remained the same at 84.04% when pulling 9e45dde77a02147db4ae95b824b5ba9bd88636ae on fix-i18n-date-time into f356d71452ddfdaa34f8cbba55c04f702bfe7285 on master.

Coverage remained the same at 84.04% when pulling 9e45dde77a02147db4ae95b824b5ba9bd88636ae on fix-i18n-date-time into f356d71452ddfdaa34f8cbba55c04f702bfe7285 on master.


added editorial mapping and release notes

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

BingAds/scripts/TOC.yml
:white_check_mark:Succeeded

BingAds/scripts/concepts/bid-strategies.md
:white_check_mark:Succeeded

BingAds/scripts/concepts/editorial-approval.md
:white_check_mark:Succeeded

BingAds/scripts/concepts/iterators.md
:white_check_mark:Succeeded

BingAds/scripts/reference/Keyword.md
:white_check_mark:Succeeded

BingAds/scripts/release-notes.md
:white_check_mark:Succeeded

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


Add a clonable ArcError/ArcResult

I really would like to be able to clone errors. For example, in order to memoize a function that can fail (my use case -- I want to return a Result<T> from a Salsa query). In order to e.g. allow downcasting anyhow::Error by value -- which is a major reason Error doesn't already use reference counting -- a clonable reference counted error would need to be a new type, e.g. ArcError, which is to Error as Arc<dyn Error> is to Box<dyn Error>.
This does need to be layered appropriately in user code and in APIs: it's difficult/expensive to move from an Arc<dyn ...> to a Box<dyn ...>, but trivial to move in the other direction. The same would presumably be true of ArcError and Error.

In #7 (now closed), @dtolnay explained why Error doesn't implement Clone:

In order to provide a Clone impl we would need to do either of:

require that you can only construct anyhow::Error from errors that are Clone, which would make it incompatible with many error types in the wild like io::Error and serde_json::Error; or
reference-count the internal error.

The first one seems bad to me and the second one makes it impossible to downcast by value which also seems bad (fwiw failure came to the same conclusion in https://github.com/rust-lang-deprecated/failure/issues/148).
Is there a way for you to work around this by using Rc or Arc in the tests?

This is well reasoned, and I think solution 1 is right out. Solution 2 is fixable: if it were a new type, then we can still downcast Error by value, but not ArcError. One question left, then.
Why not Arc<anyhow::Error>?
The obvious approach is to use Arc<anyhow::Error> and Result<T, Arc<anyhow::Error>> as the top level types, in place of my suggested ArcError type etc. This requires no changes to anyhow and can be done entirely within user code.
In fact, that's basically what I'm suggesting, I just think it should be in anyhow and not in user code. It is a lot of trouble to get working -- I tried this in https://github.com/google/crubit/blob/main/common/arc_anyhow.rs, results summarized below.
(These issues also apply to the the slightly worse alternative Arc<dyn std::error::Error + Send + Sync + 'static>. The main difference between the two is that Arc<dyn ... > requires boxing for more operations, because it needs to recreate the Error rather than saving it.)
Why not literally Result<T, Arc<Error>> ?
Arc<anyhow::Error> is not actually a drop-in replacement. It requires more boilerplate -- you can no longer use this anywhere one would use Result<T, anyhow::Error>, because while it can be created from a Result<T, anyhow::Error>, it cannot be created from a Result<T, syn::Error> or what have you.
// before
fn foo() -> Result<String> {
  some_function()?;
  ...
}

// after
fn foo() -> Result<String, Arc<Error>> { Ok(foo_impl()?) }
fn foo_impl() -> Result<String, Error> {
  some_function()?;
  ...
}

It's also only one directional. That might be expected (Box->Arc is one-directional? Of course it is!), but it means you actually can't just stuff everything inside foo_impl: what if foo also needs to call a different function that returns an Arc<Error>?
fn bar() -> Result<(), Arc<Error>> { ... }
fn foo() -> Result<String, Arc<Error>> { Ok(foo_impl()?) }
fn foo_impl() -> result<String, Error> {
  some_function()?;
  bar()?;  // doesn't compile
  ...
}

It's viral and troublesome. Ideally, we'd make bar()? compile, or even get rid of foo_impl entirely and let some_function()? compile. Both of these require a newtype wrapping Arc<anyhow::Error>.
Why not struct Error(Arc<anyhow::Error>); and Result<T, Error>?
We can get conversion from Error to ArcError working, and even can get conversion from T : std::error::Error + Send + Sync + 'static working. This is a simple From impl and fixes the issues with raw Arc. However, we cannot get context:
use anyhow::Context as _;
fn foo() -> Result<(), anyhow::Error> { ... }
fn bar() -> Result<(), Arc<anyhow::Error>> { ... }
fn baz() -> Result<(), Arc<anyhow::Error>> {
  // no problems:
  foo()?;
  foo().context("...")?;
  bar()?;

  bar().context("...");  // does not compile
  Ok(())
}

This is difficult to fix: Context isn't implemented because it expects either a dyn Error + ... or an Error by value, whereas we have an Arc<Error>, which is neither. Even if we ignore this and write our own context implementation, the only way exposed to attach context to an error is the Error::context() method which also takes the Error by value -- and here, we have an Arc<Error>, not an Error, and are once again stuck.
The obvious workaround is to convert our Arc<Error> into an Error by value. (How do you convert an Arc to a Box? Well, by having a Box<Arc<...>> :))
The only way I could figure out to get this working was to implement std::error::Error on a second newtype wrapper around Arc<Error>. It needs to be a different newtype than the one wrapping Arc<Error>, for the same reason that Error itself doesn't implement std::error::Error. (That is: because it would make it impossible to write a blanket impl to convert to it from any Error type.)  So we need one newtype around Arc<Error> that we use for results, and a second newtype which exists solely to convert into anyhow::Error.
And so to implement Arc<Error> with context, you need the following top-level items at minimum:
pub struct Error(Arc<anyhow::Error>);
impl Display for Error {...}
impl Debug for Error {...}
impl<T> From<T> for Error where T: Into<anyhow::Error> {...}
struct StdError(Arc<anyhow::Error>);
impl Display for StdError {...}
impl Debug for StdError {...}
impl std::error::Error for StdError {...}
impl From<Error> for StdError {...}
pub trait Context<T, E> {
    /* duplication of anyhow::Context, because anyhow::Context is sealed. */
}
impl<T, E> Context<T, E> for Result<T, E> where E: std::error::Error + Send + Sync + 'static {...}
impl<T> Context<T, std::convert::Infallible> for Option<T> {...}
impl<T> Context<T, Error> for Result<T, Error>  {...}

Optionally (to allow using context with anyhow::Error), also:
impl<T> Context<T, anyhow::Error> for Result<T, anyhow::Error>  {...}

Finally, we have to reimplement all the macros to return ArcError/ArcResult:
macro_rules! anyhow { ... }
macro_rules! ensure { ... }
macro_rules! bail { ... }

All told, this is a couple hundred lines of very tricky code.
There may be more things still to go, I haven't tried to progress past this point. (I think downcasting might mostly just work with a Deref impl, fortunately.)
Once again, here's a link to my actual attempt at this: https://github.com/google/crubit/blob/main/common/arc_anyhow.rs
In summary, I think it's much nicer if we just have all this work done in one place upstream, as it is not simple to create an Arc<anyhow::Error>.

I think this crate is all set with a single error type, so I am not interested in adding a separate clonable reference counted error type into this crate. I would recommend pursuing this in a different crate.

Okay.

I ran into the same limitation with a similar use case (caching results of fallible functions).


Mockup for photo and video attribution in reader slideshow

For photos and videos if any of the attribution fields are filled in, there will be a black, semi-transparent overlay that appears on the slideshow image, and the user entered text for 'attribution' will be a hyperlink if they entered a link. Title/description will follow. So there won't be static text/labels showing on view for these, only user entered text.

Example of case with youtube and vimeo videos added: https://participedia.xyz/case/5009. Need to figure out how an overlay for attribution would work for videos on desktop, without interfering with the player.

This looks great @jesicarson!
One question/request I have: is it possible to have a pop-out slideshow if you click on the image (even if there's just one image)? There are some images that get cut off but the only way to see the whole thing is to save it and open it in w/a desktop app.
I'm thinking something like Twitter when you click on attached media:
Regular Tweet:

Click on Image:

Mouse-over Image:

Oh and the same thing works for slideshows:
Regular Tweet

Click on image:

Slideshow:

Thanks @scottofletcher , full screen might be an option yes. I think the slideshow on desktop was meant to be that, essentially though. But that's not good that its cutting things off - can you send me an example of a case with a cut off image so I can share with dethe when we talk about this tomorrow? Thanks!

@jesicarson Here's one with a cut off image: https://participedia.xyz/case/4947
If you save the image, you can see that's there's more to it (ie. the bottom 1/5 is cut off). There are loads more like this - any image that's not landscape gets the bottom lopped off. Most (basically all) pictures from Instagram are, therefore, a problem.

Yep definitely a problem with the slideshow format as it is. The only images that should be cropped are the lead image if it is needed to fit the homepage thumnail format. The rest of the images should show up un-cropped in the slideshow. I'm going to do a mockup for this anyway so I'll make sure to specify that. Thanks!


Can't build TFL micro build with armclang toolchain

@tensorflow/micro
System information

Host OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Ubuntu 20.04
TensorFlow installed from (source or binary): N/A
Tensorflow version (commit SHA if source): 9000e360d95b9d2c3925672ba100579bd459ee30
Target platform (e.g. Arm Mbed OS, Arduino Nano 33 etc.): Any target

Describe the problem
When using the armclang toolchain to build the microlite lib, the warning implicit-const-int-float-conversion is hit. Warnings are treated as errors, hence build fails.
Please provide the exact sequence of commands/steps when you ran into the problem
For example:
make -j -f tensorflow/lite/micro/tools/make/Makefile OPTIMIZED_KERNEL_DIR=ethos_u TOOLCHAIN=armclang TARGET=cortex_m_generic TARGET_ARCH=cortex-m55 microlite
Output with error:
armclang -std=c11 -fno-unwind-tables -ffunction-sections -fdata-sections -fmessage-length=0 -DTF_LITE_STATIC_MEMORY -DTF_LITE_DISABLE_X86_NEON -O3 -Werror -Wsign-compare -Wdouble-promotion -Wshadow -Wunused-variable -Wmissing-field-initializers -Wunused-function -Wswitch -Wvla -Wall -Wextra -Wstrict-aliasing -Wno-unused-parameter -DCORTEX_M_GENERIC -DETHOS_U --target=arm-arm-none-eabi -mcpu=cortex-m55 -DTF_LITE_MCU_DEBUG_LOG -mthumb -mfloat-abi=hard -funsigned-char -mlittle-endian -Wno-implicit-fallthrough -Wno-strict-aliasing -Wno-unused-variable -Wno-type-limits -Wno-unused-private-field -fomit-frame-pointer -MD -DCPU_M55=1 -D__DSP_PRESENT=1 -D__FPU_PRESENT=1 -I. -Itensorflow/lite/micro/tools/make/downloads/gemmlowp -Itensorflow/lite/micro/tools/make/downloads/flatbuffers/include -Itensorflow/lite/micro/tools/make/downloads/ruy -Itensorflow/lite/micro/tools/make/downloads/ethos_u_core_driver/include -Itensorflow/lite/micro/tools/make/downloads/cmsis/CMSIS/Core/Include -c tensorflow/lite/micro/tools/make/downloads/ethos_u_core_driver/src/ethosu_driver.c -o tensorflow/lite/micro/tools/make/gen/cortex_m_generic_cortex-m55_default/obj/tensorflow/lite/micro/tools/make/downloads/ethos_u_core_driver/src/ethosu_driver.o
tensorflow/lite/kernels/kernel_util.cc:342:15: error: implicit conversion from 'std::numeric_limits<int>::type' (aka 'int') to 'float' changes value from<PHONE_NUMBER> to<PHONE_NUMBER> [-Werror,-Wimplicit-const-int-float-conversion]
        tmp <= std::numeric_limits<int32_t>::max());

@freddan80,
Thank you for submitting the fix. As the PR #48840 has been merged, can you please let us know if we can close this issue?
Thanks!

Absolutely, you can close it.


Investigate Runtime Performance

Summary
Currently Luna's runtime performance is sub-par and this seems like it is, in part, down to the design of the runtime itself.
Value
This task aims to elucidate the performance bottlenecks in the current runtime, allowing us to actually fix them once we know what they are.
Specification

[ ] Determine the current performance bottlenecks.
[ ] Determine a high-level design for their mitigation.
[ ] Flesh out the high-level design as implementation tasks.

Acceptance Criteria & Test Cases

[ ] There is a high-level design for rectifying the performance issues in the runtime.
[ ] This design is fleshed out as a series of tasks assigned to this epic.

@mikusp has done some detailed investigation into the bottlenecks in the current runtime. The findings below are taken from it.
The research focused on function call performance, using a program as follows:
def foo a: if a < 1 then 0 else foo (a-1)

The following observations were made:

Running with +RTS -N appears to result in decreases in performance as the GC starts to contribute more and more to the execution time.
As a result, -N1 appears to provide the best execution time. Attempts at constraining the GC to one thread/increasing num. of generations/increasing allocation steps were all worse.
Allocated memory appears to rise linearly with respect to the the value of a.

Running a build with profiling yielded a heap profile similar to the above. The following observations were made:

It seemed as if there was a steadily increasing number of objects during execution, all failing to be GC'd. These cost centres can be found by running +RTS -hc.
Plain +RTS -p results showed that for every Luna function call, there were 57 executions of Eff.>>= for Pure constructor, 8 Apps were evaluated, 4 toData and 7 fromData.

The following things were attempted to improve performance, but all resulted in some degradation:

UnboxedSums as Eff implementation, data Eff a = Eff (# a | IO a #).
Substitute StateT LocalScope Runtime.Eff Runtime.Data with newtype EffState s a  = EffState (s -> (# s, IO a #)).
Changing every INLINE in file containing Runtime.Eff and putting SPECIALIZE pragmas in Runtime.Data file (or where type Value is defined) for fmap, >>=, pure.

This discussion has led to future approaches tracked in other tasks on this epic.


Could Waterfox be added?

Waterfox is a bit more private than Firefox, but I'm not sure to what extent.
https://www.waterfox.net/

Thank you for the suggestion! On my list here: #66


net: Work on isolation/layering - Ethernet & IP4

Just a start.

Ethernet address => hardware address hw::MAC_addr
Extracted IP4 header

Partly removed Ethernet dependency on Nic, and IP4 dependency on Packet

retest please


Update MD file on new branch 2017-12-04_09-50-49

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestCon1.md
:white_check_mark:Succeeded

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


add Display::is_sleeping fixes #77

Adds a preliminary is_sleeping method. I'm not too happy about the state machine logic here though. I think we can merge this for the next version but I want to refactor things so that we can have a workable state machine for things like this that can properly tie into the Model inits etc.

@rfuest what do you think? I think we'll need to add some sort of state machine that can work well accross model and display itself.
In this case specifically I'm unhappy about how the sleeping state is not properly tied to init.

In this case specifically I'm unhappy about how the sleeping state is not properly tied to init.

I'm not sure I understand what you mean. Would you prefer that the initial state can be set by Model::init instead of Display::init? For the sleeping state I don't think this is necessary, because Model::init is required to initialize the display into a non sleeping state. I also can't think of any other state that shouldn't be initialized to the same value by all Model::init implementations. Do you have a use case in mind?


dir + ownerOnly + fromSource(path) not working

Bug Report

General Information

Environment description - vagrant-dev-env

Kernel version - Linux kubearmor-dev 4.15.0-154-generic update kubearmor labels and docs #161-Ubuntu SMP Fri Jul 30 13:04:17 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Orchestration system version in use -
Client Version: version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.1", GitCommit:"632ed300f2c34f6d6d15ca4cef3d3c7073412212", GitTreeState:"clean", BuildDate:"2021-08-19T15:45:37Z", GoVersion:"go1.16.7", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.4", GitCommit:"3cce4a82b44f032d0cd1a1790e6d2f5a55d20aae", GitTreeState:"clean", BuildDate:"2021-08-11T18:10:22Z", GoVersion:"go1.16.7", Compiler:"gc", Platform:"linux/amd64"}

Target containers - ubuntu-2

To Reproduce

Instruction 1 - Apply the following policy

apiVersion: security.kubearmor.com/v1
kind: KubeArmorPolicy
metadata:
  name: example1
  namespace: multiubuntu
spec:
  severity: 5
  message: "No message"
  selector:
    matchLabels:
      container: ubuntu-2
  process:
    matchPaths:
    - path: /home/user1/sleep
      ownerOnly: true
      fromSource:
      - path: /bin/bash
  action:
    Allow

Steps
Execute /bin/bash. Now enter /home/user1. Execute sleep as root => Allowed. Execute sleep as user1. Denied.
Entersh and try the same commands. You should not be able to run it even as root because only bash is allowed.
Only the owner of the process is allowed. Also the shell should not be anything other than bash.

Expected behavior
./sleep 1 is blocked if run from dash
Actual behavior
sleep works

@vaibhavmew I have some questions about this issue.
Execute /bin/bash. Now enter /home/user1. Execute sleep as root => Allowed. Execute sleep as user1. Denied.

How did you run sleep as root and as user1?
Enter sh and try the same commands. You should not be able to run it even as root because only bash is allowed.

The given policy doesn't restrict root executing sh.
Only the owner of the process is allowed. Also, the shell should not be anything other than bash.

I think there is a big gap between what the policy covers and what you intend.

How did you run sleep as root and as user1?

su user1 & then execute sleep.

The given policy doesn't restrict root executing sh.
Only the owner of the process is allowed. Also, the shell should not be anything other than bash.

  - path: /home/user1/sleep
      ownerOnly: true
      fromSource:
      - path: /bin/bash

The owner of sleep is root. path mentioned is bash. So that means only the root user can execute it that too from the bash shell and no other shell. Right?


[UX] Improve app exception/mute selection and allow ignoring specific crashes

Currently
You have a big checklist of all apps that are installed… and randomly in the alphabetically sorted list the ones you muted are checked.
Problems

Finding an app is hard. ONe needs to navigate and think of the alphabet to find an app.
Knowing what you have (already) muted is hard, given it is somewhere in that big list

Improvments
IMHO this would improve the situation:

A way (button) to whitelist an app or even a specific crash (IMHO much better).
A search feature to find the apps/a specific app (in 99% of the cases I want to do that when I am on that page, I hardly care about all installed apps)
Listing the disabled ones first. Under the IMHO realistic assumption that most apps are not muted, and only few are muted, this allows one to easily disable the apps.

Less important IMHO would be:

Multi-select to disable/enable multiple apps at the same time.

Comparsion
E.g. look how the modern settings in Android 12 e.g. handle app-related stuff, like the app list., an interesting feature there is:

sorting by size (IMHO not needed here as it is irrelevant for us(
a screen before showing only the most recent apps and a button "Show all apps" -> actually a good idea, but not about usage, but maybe by the count of crashes recorded. Generally it may be sorted by "most crashed apps first", so actually that may already show the app I want to mute first.
a filter button to hide/show system apps (could be quite useful IMHO)

The "app notifications" settings screen alos has some interesting UX aspects:

It has a filter with which one can filter and sort apps based on status, e.g. "last used", "most frequently" (could be useful if we again take it as the number of crashes) and disabled apps.

Use cases/User stories

As a user of the app, I may want to ignore specific crashes, because one crash is well-known, reported and happens way too often (interrupts my workflow/annoying notification).

As a user of the app, I also want to quickly find and unmute apps, that I have muted, because if the reason was a reported crash and it is fixed now, I can continue collecting crashes. (Alternative solution: Hiding specific crashes only as said.)

Actually I have not encountered another reason/use case for ignoring an app, actually…

Of course all that may need some testing, these are only ideas.

Finding an app is hard. One needs to navigate and think of the alphabet to find an app.

Remembering the alphabet sure is difficult. 😉 I can't really see how it is an app issue to find an app by the alphabet? Unless that's meant to be applied to the following...

Knowing what you have (already) muted is hard, given it is somewhere in that big list

Good point. I should have the list be organized to put the blacklisted items first (or have an option to do so).

A way (button) to whitelist an app

This is technically duplicate functionality that IDK if I'd want to implement. But I'll think about it.

even a specific crash (IMHO much better).

Interesting concept. I'll keep it on the shelf for now.

A search feature to find the apps/a specific app (in 99% of the cases I want to do that when I am on that page, I hardly care about all installed apps)

There is the magnifying glass (search icon) in the top right, so that already exists.

Listing the disabled ones first. Under the IMHO realistic assumption that most apps are not muted, and only few are muted, this allows one to easily disable the apps.

Yeah, this is definitely a good idea. It would better behavior for the disabled apps to be put first.

a screen before showing only the most recent apps and a button "Show all apps" (...) It has a filter with which one can filter and sort apps based on status, e.g. "last used", "most frequently" (could be useful if we again take it as the number of crashes) and disabled apps.

I'm pretty sure that would require special permissions for usage data access. I wanna keep permissions for Scoop as minimal as possible, so I'll probably say no to that.
Might add other stuff, I've not much time ATM.

I can't really see how it is an app issue to find an app by the alphabet?

Well… scrolling though a list of 1000 apps is… Alphabet is better than unsorted, but I've given examples for even cleverer sorting e.g.
An example where alphabet sorting is superior to search is e.g. if you only know the "last" part of an app, i.e. e.g. a word not a the beginning, you cannot find it without a search or so.
BTW feel free to split this pile of Ideas into more concrete/separate issues, if you want… :upside_down_face:

I'm pretty sure that would require special permissions for usage data access. I wanna keep permissions for Scoop as minimal as possible, so I'll probably say no to that.

I agree and it does, indeed. So yeah, by "number of crashes/exceptions" is anyway the more useful sorting and it's data you – theoretically – already have.


:sparkles: slider shortcode

Fixes #426

Same as the other one:

please use tailwind for CSS
why do we need dependencies for this, and if we do they shouldn't be integrated this way - super hard to manage/update

@mirceanton left the answer on the other ticket but the same applies to this one... ping me if you need help

@mirceanton if you want I can open a feature branch an we can collab before merging to dev (release branch)

merging into feature branch for final alterations


IndexError: _Map_base::at

CARLA version: 0.9.13
Platform/OS: ubuntu 18.04
Problem you have experienced:
I have built carla 0.9.13 myself, and use make launch command to run UE4 Editor.
But when I tried to run the python script "manual_control.py",  error occured. The traceback are as follows:
Traceback (most recent call last):
  File "./manual_control.py", line 1328, in <module>
    main()
  File "./manual_control.py", line 1320, in main
    game_loop(args)
  File "./manual_control.py", line 1218, in game_loop
    controller = KeyboardControl(world, args.autopilot)
  File "./manual_control.py", line 379, in __init__
    world.player.set_autopilot(self._autopilot_enabled)
IndexError: _Map_base::at

the quite same error happends also in other script, like automatic_control.py, will arise same error:
Traceback (most recent call last):
  File "./automatic_control.py", line 846, in <module>
    main()
  File "./automatic_control.py", line 839, in main
    game_loop(args)
  File "./automatic_control.py", line 696, in game_loop
    traffic_manager = client.get_trafficmanager()
IndexError: _Map_base::at

Other script like generate_traffic.py will cause segment fault.
What you expected to happen:
Just like run the python script as the pre-build carla version.
Steps to reproduce:
Just build carla 0.9.13 and run the script.

I found that I use Update.sh download the wrong carla content.
After download the right content, problem solved.


Define github app infos

Is your feature request related to a problem? Please describe.
We need create a github app as describe(#1), but we have not yet defined:

[ ] pemissions for the user
[ ] callback url
[ ] name of app

Describe the solution you'd like
I would like have a discussion to define this.
Describe alternatives you've considered
We could do the discussion in this issue, because then we can have all this saved, in slack we risk losing
Additional context
.

I suggest we use a random name from the brainstorm pool and later we can change to the official.

I agree with  your opinion about github app name, and for me, the callback url is just '/callback',this is a pattern

About github app permission, i think that the 'MetaData' permission is enough, but we can request 'repository administration' too, for get information about teams.

Callback url i will use /auth/callback just so we can have a dedicated route (/auth) for authentication.
Name for while i will use Alvarium (beehive in latim) and the permissions for the beginning will be just MetaData as you describe.


chore: more coverage ignores

Issue or need
After reviewing coverage, seems some misses or partials can be tackled

Proposed changes
Ignore all of them. See reasons in changes

Quick reminders

🤝 I will follow Code of Conduct
✅ No existing pull request already does almost same changes
👁 Contributing docs are something I've taken a look at
📝 Commit messages convention has been followed
💬 TSDoc comments have been added or updated indicating API visibility if API surface has changed.
🧪 Tests have been added if needed. For instance, if adding new features or fixing a bug. Or removed if removing features.
⚙ API Report has been updated if API surface is altered.

#950  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @davidlj95 and the rest of your teammates on  Graphite


[#1494] update skyscanner url generation

details: https://github.com/lonelyplanet/rizzo/issues/1494

:+1:


[Test] Run more returned-as-async ObjC blocks.

Verify the recent fix at https://github.com/apple/swift/pull/42485.

@swift-ci please test and merge

Thanks!


Playwright e2e tests are visually broken

Super awesome feature Kent, thanks! I'm already using it on my platform 🎉
However, even thought the e2e tests pass, they are visually broken as the Tailwind class CSS is not being injected onto the page:

Update:
I've tracked the issue to the window.location.reload() line on the injected script.
Originally posted by @andrecasal in https://github.com/epicweb-dev/epic-stack/issues/64#issuecomment-1574868851

I believe this is a bug in the playwright preview. If you run npx playwright test --headed you can watch the tests run and they all have the styles properly applied. You may also notice in your screenshot that the film strip at the top has the correct previews as well.
I would like to figure out how to solve this though because we'll likely have people with this question in the future. @pavelfeldman, do you know what could be causing this?
For some quick context, we released this feature based on the Client Hints spec (check the video): https://github.com/epicweb-dev/epic-stack/discussions/125
This involved a bit of client side JS that triggers a reload on the first visit for a new visitor: https://github.com/epicweb-dev/epic-stack/blob/e6f0e5a049789314ebfc96115ac2b0aaf3fe1f8f/app/utils/client-hints.tsx#L119
For some reason that window.location.reload() makes the CSS not show up in the preview during UI mode.

@andrecasal, it would probably help the playwright team if we open an issue on their repo with a small, isolated reproduction (so, without the epic stack or even remix). Do you think you could put something together for that?

@kentcdodds Yeah I can give it a try 👍

Thank you @andrecasal!

Created this small repro, but I'm getting an error from Playwright:
Error: EISDIR: illegal operation on a directory, read

Playwright's config is trying to read a folder as if it was a file, but I can't find anything wrong with the playwright.config.ts
Any idea what's going on?

That repo looks good to me. I would suggest you switch from Math.random() to sticking something in local storage and only refreshing if that's not in local storage yet. That would resemble our situation more.
As for the error, could you provide more of the error output? That seems pretty strange. If you can't figure it out, then that would definitely be another thing to open an issue about 😅

That repo looks good to me. I would suggest you switch from Math.random() to sticking something in local storage and only refreshing if that's not in local storage yet. That would resemble our situation more.

Will do.

As for the error, could you provide more of the error output? That seems pretty strange. If you can't figure it out, then that would definitely be another thing to open an issue about 😅

Here's the full output:
 *  Executing task: npm run test

><EMAIL_ADDRESS>test
> playwright test --ui

Error: EISDIR: illegal operation on a directory, read
    at Object.readSync (node:fs:739:3)
    at tryReadSync (node:fs:439:20)
    at Object.readFileSync (node:fs:485:19)
    at loadTsconfig (/Users/andrecasal/Developer/Apps/playwright-reload-bug/node_modules/@playwright/test/lib/third_party/tsconfig-loader.js:102:27)
    at loadSyncDefault (/Users/andrecasal/Developer/Apps/playwright-reload-bug/node_modules/@playwright/test/lib/third_party/tsconfig-loader.js:64:18)
    at tsConfigLoader (/Users/andrecasal/Developer/Apps/playwright-reload-bug/node_modules/@playwright/test/lib/third_party/tsconfig-loader.js:46:22)
    at loadAndValidateTsconfigForFile (/Users/andrecasal/Developer/Apps/playwright-reload-bug/node_modules/@playwright/test/lib/common/transform.js:62:55)
    at resolveHook (/Users/andrecasal/Developer/Apps/playwright-reload-bug/node_modules/@playwright/test/lib/common/transform.js:76:20)
    at Function.resolveFilename (/Users/andrecasal/Developer/Apps/playwright-reload-bug/node_modules/@playwright/test/lib/common/transform.js:174:24)
    at Function.Module._load (node:internal/modules/cjs/loader:780:27)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (/Users/andrecasal/Developer/Apps/playwright-reload-bug/playwright.config.ts:1:1)
    at Module._compile (node:internal/modules/cjs/loader:1105:14)
    at Module.f._compile (/Users/andrecasal/Developer/Apps/playwright-reload-bug/node_modules/@playwright/test/lib/utilsBundleImpl.js:16:994)
    at Module._extensions..js (node:internal/modules/cjs/loader:1159:10)
    at Object.i.<computed>.ot._extensions.<computed> (/Users/andrecasal/Developer/Apps/playwright-reload-bug/node_modules/@playwright/test/lib/utilsBundleImpl.js:16:1010)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:827:12)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at requireOrImport (/Users/andrecasal/Developer/Apps/playwright-reload-bug/node_modules/@playwright/test/lib/common/transform.js:158:20)
    at requireOrImportDefaultObject (/Users/andrecasal/Developer/Apps/playwright-reload-bug/node_modules/@playwright/test/lib/common/configLoader.js:80:53)
    at ConfigLoader.loadConfigFile (/Users/andrecasal/Developer/Apps/playwright-reload-bug/node_modules/@playwright/test/lib/common/configLoader.js:53:26)
    at runTests (/Users/andrecasal/Developer/Apps/playwright-reload-bug/node_modules/@playwright/test/lib/cli.js:120:55)
    at ji.<anonymous> (/Users/andrecasal/Developer/Apps/playwright-reload-bug/node_modules/@playwright/test/lib/cli.js:40:7) {
  errno: -21,
  syscall: 'read',
  code: 'EISDIR'
}

 *  The terminal process "/usr/local/bin/zsh '-c', 'npm run test'" terminated with exit code: 1.
 *  Terminal will be reused by tasks, press any key to close it.

If you have no idea either, I'll open an issue on Playwright's repo 😅

Thanks! I found it easier to add the tsconfig file.
I've left an issue on Playwright's repo.

This is not related to the Epic Stack, so I'm closing this one.

Whoops, it turns out it's our fault... sort of.

@andrecasal the toHaveTitle condition in your test is not good: it's racing against the in-page reload. You'll have to come up with a condition that actually waits for the page stable state.
Hope this helps!

Originally posted by @aslushnikov in https://github.com/microsoft/playwright/issues/23613#issuecomment-1589683425

Nah, I'm pretty sure this is a playwright issue. I replied.

Yep, this is a playwright thing: https://github.com/microsoft/playwright/issues/23709


Fixed bug in node local dns implementation.

The networking policy in the seed need to refer to the dns server of the seed.
Co-authored-by: Sebastian Stauch<EMAIL_ADDRESS>How to categorize this PR?

/area networking
/kind bug
What this PR does / why we need it:
This is one step to getting node local dns ready for actual use.
Which issue(s) this PR fixes:
The networking policy in the seed need to refer to the dns server of the seed instead of the dns server of the shoot.
Special notes for your reviewer:
Release note:

Fixed incorrect usage of shoot dns server in network policy inside the control plane where the seed dns server should have been used. This is only relevant if node local dns is activated.

Can you add a release note about this bug fix?

Added release note.

Tests have been adapted as well.


Move our fork of redis-rs into valkey-glide repository

Describe the feature
With the current state of our redis-rs fork (+600 commits difference from upstream)
and given that this is a ongoing developed module, there is no sense in making it a submodule.
Move redis-rs into valkey-glide
Use Case
N/A
Proposed Solution
No response
Other Information
No response
Acknowledgements

[X] I may be able to implement this feature request
[ ] This feature might incur a breaking change

Client version used
N/A
Environment details (OS name and version, etc.)
All

Please address comments posted to #2456 in a follow-up PR

Closing issue as completed - redis-rs is now part of glide-core folder and is no longer used as a submodule


CARLA setup

CARLA Debian package only has support for Ubuntu 18.04 and Ubuntu 22.04
I want a setup for CARLA that works regardless of host OS
Follow docker installation

Trying latest carlasim image
docker pull carlasim/carla:latest
sudo docker run --privileged --gpus all --net=host -e DISPLAY=$DISPLAY carlasim/carla:latest /bin/bash ./CarlaUE4.sh
This loads up the default CARLA window view - works.
CARLA pythonAPI
We do not need to run the pythonAPI from inside the docker container.
To grab the pythonAPI that should be compatible with the CARLA instance running inside the docker container, we can follow the steps with this tutorial.
Follow the Python3.7 installation steps in the same tutorial:
add-apt-repository ppa:deadsnakes/ppa
sudo apt-get install python3.7
sudo apt-get install python3-pip && python3.7-distutils (i added python3.7-distutils)
pip install virtualenv
source venv/bin/activate pip3 --version #it should display (python 3.7) pip3 install pygame numpy deactivate
Run CARLA in 1 terminal:
docker run \  -p 2000-2002:2000-2002 \  --cpuset-cpus="0-5" \  --runtime=nvidia \  --gpus 'all,"capabilities=graphics,utility,display,video,compute"' \  -e DISPLAY=$DISPLAY \  -v /tmp/.X11-unix:/tmp/.X11-unix \  -it \  carlasim/carla \  ./CarlaUE4.sh -opengl $1
Run PythonAPI in 2nd terminal:
cd PythonAPI
source venv/bin/activate
cd examples
./manual_control.py

To run the HIL demo, would need to just also put in a startup script:

sd_vehicle_interface node
carla_odom_to_twist.py conversion node
can_setup script


undefined reference to "__atomic_load_8"

So first sorry for my english (I'm french)
I'm trying to install librealsense on a raspberry PI 3 but when I'm buiding it's show this error :
~/Work/librealsense/build $ make -j1
[ 55%] Built target fw
[ 55%] Built target realsense-file
[ 55%] Built target realsense2
[ 55%] Built target libcurl
[ 55%] Built target glfw
[ 55%] Built target realsense2-gl
[ 55%] Linking CXX executable rs-hello-realsense
/usr/bin/ld : ../../librealsense2.so.2.50.0 : undefined reference to "__atomic_load_8".
/usr/bin/ld : ../../librealsense2.so.2.50.0 : undefined reference to "__atomic_store_8
/usr/bin/ld : ../../librealsense2.so.2.50.0 : undefined reference to "__atomic_fetch_add_8
collect2: error: ld returned 1 exit status
make[2]: *** [examples/hello-realsense/CMakeFiles/rs-hello-realsense.dir/build.make:110 : examples/hello-realsense/rs-hello-realsense] Erreur 1
make[1]: *** [CMakeFiles/Makefile2:1240 : examples/hello-realsense/CMakeFiles/rs-hello-realsense.dir/all] Erreur 2
make: *** [Makefile:149 : all] Erreur 2
If anyone has an idea of what to do ?

Hi @Marial128  Don't worry, your English is very good  :)
A RealSense user of Raspberry Pi shared their solution for this error at https://github.com/IntelRealSense/librealsense/issues/9962#issuecomment-998392844 that also worked for other Pi users.

Thanks for the answer but after doing what he did I still have the same problem :
[ 55%] Built target libcurl
[ 55%] Built target fw
[ 55%] Built target glfw
[ 55%] Built target rs-embed
[ 55%] Built target realsense-file
[ 55%] Built target realsense2
Scanning dependencies of target rs-capture
[ 55%] Linking CXX executable rs-software-device
[ 55%] Linking CXX executable rs-hello-realsense
[ 55%] Building CXX object examples/capture/CMakeFiles/rs-capture.dir/rs-capture.cpp.o
[ 55%] Built target realsense2-gl
Scanning dependencies of target rs-callback
[ 55%] Building CXX object examples/callback/CMakeFiles/rs-callback.dir/rs-callback.cpp.o
/usr/bin/ld: ../../librealsense2.so.2.50.0: undefined reference to __atomic_load_8' /usr/bin/ld: ../../librealsense2.so.2.50.0: undefined reference to __atomic_store_8'
/usr/bin/ld: ../../librealsense2.so.2.50.0: undefined reference to __atomic_fetch_add_8' collect2: error: ld returned 1 exit status make[2]: *** [examples/hello-realsense/CMakeFiles/rs-hello-realsense.dir/build.make:110: examples/hello-realsense/rs-hello-realsense] Error 1 make[1]: *** [CMakeFiles/Makefile2:1240: examples/hello-realsense/CMakeFiles/rs-hello-realsense.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs.... /usr/bin/ld: ../../librealsense2.so.2.50.0: undefined reference to __atomic_fetch_add_8'
/usr/bin/ld: ../../librealsense2.so.2.50.0: undefined reference to __atomic_store_8' /usr/bin/ld: ../../librealsense2.so.2.50.0: undefined reference to __atomic_load_8'
collect2: error: ld returned 1 exit status
make[2]: *** [examples/software-device/CMakeFiles/rs-software-device.dir/build.make:110: examples/software-device/rs-software-device] Error 1
make[1]: *** [CMakeFiles/Makefile2:1268: examples/software-device/CMakeFiles/rs-software-device.dir/all] Error 2
[ 55%] Linking CXX executable rs-callback
/usr/bin/ld: ../../librealsense2.so.2.50.0: undefined reference to __atomic_load_8' /usr/bin/ld: ../../librealsense2.so.2.50.0: undefined reference to __atomic_store_8'
/usr/bin/ld: ../../librealsense2.so.2.50.0: undefined reference to __atomic_fetch_add_8' collect2: error: ld returned 1 exit status make[2]: *** [examples/callback/CMakeFiles/rs-callback.dir/build.make:110: examples/callback/rs-callback] Error 1 make[1]: *** [CMakeFiles/Makefile2:1324: examples/callback/CMakeFiles/rs-callback.dir/all] Error 2 [ 55%] Linking CXX executable rs-capture /usr/bin/ld: ../../librealsense2.so.2.50.0: undefined reference to __atomic_fetch_add_8'
/usr/bin/ld: ../../librealsense2.so.2.50.0: undefined reference to __atomic_store_8' /usr/bin/ld: ../../librealsense2.so.2.50.0: undefined reference to __atomic_load_8'
collect2: error: ld returned 1 exit status
make[2]: *** [examples/capture/CMakeFiles/rs-capture.dir/build.make:110: examples/capture/rs-capture] Error 1
make[1]: *** [CMakeFiles/Makefile2:1296: examples/capture/CMakeFiles/rs-capture.dir/all] Error 2
make: *** [Makefile:149: all] Error 2

Can you provide a link to the installation instructions that you used, please?

I used the same that devenjarvis posted :
sudo apt install clang llvm
cd ~/librealsense
mkdir build
cd build
export CC=/usr/bin/clang
export CXX=/usr/bin/clang++
cmake .. -DBUILD_EXAMPLES=true -DCMAKE_BUILD_TYPE=Release -DFORCE_LIBUVC=true -DOTHER_LIBS="-latomic"
make -j4
sudo make install

The _atomic_load error on Pi is a difficult one to debug, unfortunately.
An SDK installation method that has worked well for Pi users in the past is the simple libuvc backend one in the link below that builds the SDK with an installation script.
https://github.com/IntelRealSense/librealsense/blob/master/doc/libuvc_installation.md
If the libuvc backend method still has problems with the atomic error, https://github.com/IntelRealSense/librealsense/issues/4950 has advice about modifying the libuvc script to deal with it.

Is the python-opengl package able to be installed if you input the commands below in the listed order:
sudo apt-get update
sudo apt-get -y install python3-opengl

I would suspect that retrieving the T265 video via gstreamer would be an appropriate solution, like a T265 user in the link below.
https://forums.developer.nvidia.com/t/use-intel-realsense-t265-with-gstremer-jatson/165638
If you require further assistance for that problem, please create a new issue on this forum.  Thanks!

Case closed due to separate issue created for T265 issue and no further comments received on this issue.


feat(frontned): Add stores and change services for other bitcoin addresses

Motivation
Each Bitcoin network has a different address for the user.
Therefore, we need to show Testnet (if testnts) and Regtest (if testnets and local) in the addresses list.
In this PR, I introduce stores for the testnet addresses and adapt current services to them.
Changes

One more index db store for the testnet address (no need to store the regtest).
Two new stores to save Bitcoin testnet addresses.
Two new derived stores to get the address for Bitcoin Testnet and Regtest.
Expand loadBtcAddress to support all Bitcoin networks.

Tests
This was tested along the UI code in #2298

In general, I would prefer to avoid putting regtest logic inside IDB flow (even if undefined).
According to documentation for regtest, one can simply use the testnet address and query the local node, so it does not seem necessary to have conditions on IDB for regtest.
Can we make it so the regtest address store refers to the testnet address (and whatever it entails too, like fetching, setting, etc)?
WDYT?

Sure, I remove the regtest store and also from the accepted networks and token ids when loading addresses. Is that what you meant?

@AntonioVentilii-DFINITY ready for another review

Is that what you meant?

I think so, yes. It does make sense to you, right? Either we use the testnet address for regtest, or we create a complete set of IDB flow for regtest (but in that case it will be the exact same values as testnet). I am thinking that this could spare computational time and calls to backend. WDYT?
We can always change it, if at some point regtest starts to differ from testnet


Very slow compilation in beta.11 version

Bug Report
Ionic Info
Run ionic info from a terminal/cmd prompt and paste the output below.
Ionic:

   ionic (Ionic CLI)          : 4.1.2 (/usr/local/lib/node_modules/ionic)
   Ionic Framework            : @ionic/angular 4.0.0-beta.10
   @angular-devkit/core       : 0.7.5
   @angular-devkit/schematics : 0.7.5
   @angular/cli               : 6.1.2
   @ionic/ng-toolkit          : 1.0.7
   @ionic/schematics-angular  : 1.0.5

Cordova:

   cordova (Cordova CLI) : 8.0.0
   Cordova Platforms     : browser 5.0.4, ios 4.5.4
   Cordova Plugins       : cordova-plugin-ionic-keyboard 2.0.5, cordova-plugin-ionic-webview 1.1.1, (and 14 other plugins)

System:

   ios-deploy : 1.9.2
   ios-sim    : 6.1.2
   NodeJS     : v8.11.1<EMAIL_ADDRESS>   npm        : 5.6.0
   OS         : macOS High Sierra
   Xcode      : Xcode 9.4.1 Build version 9F2000

Describe the Bug
It is very slow to compile, with version 7 it went much faster it becomes impossible to debug, as it takes about 30 seconds to refresh.
Steps to Reproduce
Steps to reproduce the behavior:

Use this command ionic cordova run browser -l or ionic serve
It is very slow to compile, with version 7 it went much faster it becomes impossible to debug, as it takes about 30 seconds to refresh.

I'm also having this problem

So 2 things:

Is there a sample project to inspect? Using a starter project from the CLI, Im seeing about 5second rebuild times, which is pretty average across projects.

[ng] ℹ ｢wdm｣: Compiled successfully.
[ng] ℹ ｢wdm｣: Compiling...
[ng] Date: 2018-09-18T14:34:06.072Z - Hash: 5efda5e90e64deebd59c - Time: 5642ms
[ng] 174 unchanged chunks
[ng] ℹ ｢wdm｣: Compiled successfully.
[ng] ℹ ｢wdm｣: Compiling...
[ng] Date: 2018-09-18T14:34:20.177Z - Hash: 5efda5e90e64deebd59c - Time: 5627ms
[ng] 174 unchanged chunks
[ng] ℹ ｢wdm｣: Compiled successfully.

Since this is which compilation, it's more on the Angular CLI side of things, since it is responsible for all the building in V4 project.

So 2 things:

Is there a sample project to inspect? Using a starter project from the CLI, Im seeing about 5second rebuild times, which is pretty average across projects.

[ng] ℹ ｢wdm｣: Compiled successfully.
[ng] ℹ ｢wdm｣: Compiling...
[ng] Date: 2018-09-18T14:34:06.072Z - Hash: 5efda5e90e64deebd59c - Time: 5642ms
[ng] 174 unchanged chunks
[ng] ℹ ｢wdm｣: Compiled successfully.
[ng] ℹ ｢wdm｣: Compiling...
[ng] Date: 2018-09-18T14:34:20.177Z - Hash: 5efda5e90e64deebd59c - Time: 5627ms
[ng] 174 unchanged chunks
[ng] ℹ ｢wdm｣: Compiled successfully.

Since this is which compilation, it's more on the Angular CLI side of things, since it is responsible for all the building in V4 project.

I've upgraded an existing (private) project, so maybe the problem doens't occur when generating a new repo. I've also upgraded ionic-cli and all other dependencies, without any result.

Is there a sample project to inspect?

Still would like a project to inspect and debug. As compilation is still done with the Angular-CLI, I dont think there's anything on our end that is responsible for compilation times, but I would like to test a project. Otherwise, I'll need to close this issue.

What solved it for me was upgrading to Node 10.10.0 and NPM 6.4.1, along with removing existing node deps and reinstalling.
Previously beta 11 was horrendously slow, but after applying above steps rebuild times are quite fast (3-4 seconds), faster than ever in fact.

What solved it for me was upgrading to Node 10.10.0 and NPM 6.4.1, along with removing existing node deps and reinstalling.
Previously beta 11 was horrendously slow, but after applying above steps rebuild times are quite fast (3-4 seconds), faster than ever in fact.

This solved it for me too!

Update to Node 10 is  right. Compiling time from 79s to 7s.


authenticated user with count return all users

Laravel Version: 5.5.40
PHP Version: 7.0.13-1
Database Driver & Version: Ver 14.14 Distrib 5.7.19

Description:
when you count relation of have many with authenticated user it will return all users with the relation count
Steps To Reproduce:
Model User.php
    public function Posts(){
       return $this->hasMany('App\Post','author_id');
     }

then on any controller route etc..
dd(Auth::user()->withCount('posts'));

dd(Auth::user()->withCount('posts')->first());
// will return first user on database with posts_count

dd(Auth::user()->withCount('posts')->get());
// will return all users on database with posts_count

//to make it work
$user = \App\User::withCount('Posts')->where("id",\Auth::user()->id)->first();

hope it will help you

$user->where(...)->get() is equivalent to User::where(...)->get().
In your case, just use Auth::user()->posts()->count().


Close without saving link actually saves changes rather than cancelling the changes

The close without saving link at the bottom of the editor for the SimpleContentPortlet saves and commits changes rather than  cancelling / discarding the changes.
We are using uPortal 5.11, we also experienced this in 5.9
Steps to reproduce:

Ensure you are privileged to configure a SimpleContentManagement portlet
Select the configure option in the Options menu of the portlet to edit
Change the content in the content editor.
Scroll to below the portlet and press the Close without Saving (aka cancel) link.
Portlet content commits the changes despite the Close without saving link

The link implies that the behavior should have been to cancel the edit and revert the portlet content to what it was prior to the user entering in the editing mode.

This issue has been resolved with PR:  https://github.com/uPortal-Project/SimpleContentPortlet/pull/458


multiplayer: responsive layout improvements

Made targeted fixes to the multiplayer header bar so that the org logo and profile pic don't get squished on mobile.

I would have liked to tighten up the spacing between menu items, but doing so would require changes in react-common, and the effects would be felt in webapp, skillmap, etc. We can tackle this in another pass.
Fixes https://github.com/microsoft/pxt-arcade/issues/5372

@unthinkmedia, @clkantner merging this now, but please let me know if you have feedback or need anything changed.


Consolidate node-labeller's labels usage

What this PR does
Use well defined constants for labels.
Fixes #
Special notes for your reviewer

Release note

NONE

@alicefr @fossedihelm PTAL

@xpivarc looks good
/approve


Forward other derives to the partial type?

We cannot see other derives, only in special circumstances. Thus we probably want #[config(derive_for_partial = Debug)] or sth.
Maybe a more general attribute forward? Or just derive Debug and nothing else?

+1 to this one, not having Clone has been particularly painful for me trying to integrate into rtx

I just pushed a commit that adds #[config(partial_attr(...))]. This allows you to write this:
#[derive(Config)]
#[config(partial_attr(derive(Clone)))]
struct Conf { ... }

And the partial type will get #[derive(Clone)] as attribute.
It would be great if any of you could test that to see if it solves your problem.

Neat! Will release in the coming days. Just looking for more stuff to lump into that release.

Released as v0.2.5

Aside from this I've been really happy with confique though. I used figment before but really love having the partial config object. It makes integrating it into an existing highly complex configuration struct much, much easier.

Thanks for this experience report by the way! It's always great to hear others getting value out of my work, but especially so in this case: when researching configuration libraries and when I concluded that I didn't like any of the existing ones, I somehow missed figment completely. So when I found figment after having created confique already, I felt kinda dumb because figment had most of what I wanted. So yeah, very good to hear that confique makes sense as an alternative to figment!


Improve contrast of links when focused

Fixes #264

Makes link text slightly darker when focused - now hits 1:4.5 contrast against yellow.

Note - I've not tested this with template itself, but the sass itself seems to work.
Before:

After:

I’m happy with the first commit in this PR. The second one seems to be a dupe of https://github.com/alphagov/govuk_template/pull/274? This should either be revised to remove the second commit, or the other PR closed (and the suggestions in it applied here).

@robinwhittleton @edwardhorsford I've amended this PR, so it now only makes the one change - to make link text slightly darker when focused.

I've updated the text of the PR to reduce the scope of what it covers.


Preparations for v3.2 release

Pull Request (PR) description
v3.2 prep
This Pull Request (PR) fixes the following issues
N/A

This change is

Codecov Report

Merging #1027 into dev will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##             dev   #1027   +/-   ##
=====================================
  Coverage     92%     92%
=====================================
  Files        118     118
  Lines      12152   12152
  Branches       1       1
=====================================
  Hits       11269   11269
  Misses       882     882
  Partials       1       1


Research if/how to test if a private key (which is marked as user presence required) written into the Secure Enclave can tested for existence without prompting for user presence check

Referring to the flag SecAccessControlCreateFlags.userPresence.
The public-private key pair is created in SecureEnclave.createPrivateKey.
This will require a device (not simulator) with Touch ID or Face ID to verify.
Just a snippet will do. It doesn't have to be integrated into the code base.

Bump.

@vladyslav-iosdev Bump.

@hboon i researched but find nothing according this issue

@hboon i researched but find nothing according this issue

As in, it's probably not possible?

Good news, I asked someone who said this:

I can confirm. I have code that does SecItemCopyMatching to check if a key already exists and it doesn’t prompt for biometry until you actually call something like SecKeyCreateEncryptedData

Can you help to dig further? :)

Good news, I asked someone who said this:

I can confirm. I have code that does SecItemCopyMatching to check if a key already exists and it doesn’t prompt for biometry until you actually call something like SecKeyCreateEncryptedData

Can you help to dig further? :)

ok, i will check it

@hboon can you try with this piece of code:
public func contains(_ key: String) throws -> Bool {
        var query = options.query()
        query[AttributeAccount] = key
        query[UseAuthenticationUI] = UseAuthenticationUIFail

        let status = SecItemCopyMatching(query as CFDictionary, nil)
        switch status {
        case errSecSuccess, errSecInteractionNotAllowed:
            return true
        case errSecItemNotFound:
            return false
        default:
            throw securityError(status: status)
        }
    }

i found it here:
https://github.com/kishikawakatsumi/KeychainAccess/issues/159

@vladyslav-iosdev thanks! Will try it out.
FYI. The painful part of this is, in order to be sure, I have wipe device, restore from iCloud back to verify the key is no longer there.


Update data_science_colleges.csv

added University of Texas at Dallas Social Data Analytics and Research Master program.  Please review and add to the list?  Thanks.
Karl

Thanks @kho777

Much obliged.
Karl

On Aug 23, 2017, at 1:40 PM, Ryan Swanstrom<EMAIL_ADDRESS>wrote:
Thanks @kho777 https://github.com/kho777
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/ryanswanstrom/awesome-datascience-colleges/pull/33#issuecomment-324425466, or mute the thread https://github.com/notifications/unsubscribe-auth/AGi9S9ba-zRUEMbLu4kw8med10fqVa8lks5sbHItgaJpZM4O81q3.


Crash on iOS

Hello to all,
I am experiencing the following crash while trying to work with data channels:
http://pastebin.com/raw/g08QwzSP
Looks like something in there is NULL.
The hash we currently use: 23dc752d65e753de51a3c4e6ef0145a6b02a789c
Link to the indicated SIGSEGV:
https://github.com/sctplab/usrsctp/blob/23dc752d65e753de51a3c4e6ef0145a6b02a789c/usrsctplib/user_socket.c#L1166

Can you provide the output of
print *so
from a debugger?

Hi @tuexen,
I don't have access to that unfortunately. But it appears that we have another one which I am told is quite consistent:
http://pastebin.com/raw/P4tD6Q5d
The guys are telling me this is not happening on an older version of the SCTP library. I will get more details about what is the good hash. maybe we can do some divide-et-impera between the hashes and identify the commit which triggers this.

Hi @tuexen,
More info: we have a way to reproduce this easy enough, we just need to have a lot of patience to do that. We have found that at some point, the library doesn't exit sctp_sorecvmsg and it spins in it forever, causing the CPU to spike to 100%. When that happens, the iOS watchdog is eventually killing the app kinda brutal.

OK. Any possibility to describe what happens on the network, which triggers this? Or any chance to be more specific about where in sctp_sorecvmsg() the library is spinning?

@tuexen Our repro scenario is often a distant network link with a relatively high latency.
Thread snapshot:

I can provide disassembly from that if needed.

@tuexen: It always jumps here:
https://github.com/sctplab/usrsctp/blob/23dc752d65e753de51a3c4e6ef0145a6b02a789c/usrsctplib/netinet/sctputil.c#L5721
We use 23dc752d65e753de revision
Here is how we found that:

@tuexen I have traced the assembly code, and matched it manually with the sources, and the jump point is from here:
https://github.com/sctplab/usrsctp/blob/23dc752d65e753de51a3c4e6ef0145a6b02a789c/usrsctplib/netinet/sctputil.c#L5985

OK. That helps. Need to think about this. This code has changed recently when adding support for the I-DATA chunk. So it is possible that a bug was introduced here. Any possibility that you can provide a .pcapng file which illustrates how to run into such a problem?

I will try to do that.

Please try the fix in the issue86 branch and report if it fixes the issue.

Will do ASAP!
Tx for the quick support

On 17 Jun 2016, at 23:34, Michael Tüxen<EMAIL_ADDRESS>wrote:
Please try the fix in the issue86 branch and report if it fixes the issue.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/sctplab/usrsctp/issues/86#issuecomment-226874837, or mute the thread https://github.com/notifications/unsubscribe/AHfyFiWhV1KVktXmojDsTDf0U6mSpCrDks5qMwTfgaJpZM4IzYmu.

@tuexen Is the https://github.com/sctplab/usrsctp/commit/cc6ff45cf7bcc0173572e76e64ec6232733107fb final? Can we safely use it? For now, it does fix the issue, but I do not see it merged

It is not merged since you wanted to test it for a couple of days. Since I wasn't able to reproduce the problem, I thought that is a good idea. If you say, it fixes the issue, I'll get do some cleanup in other places, get the stuff into FreeBSD and merge it. This might take a day or two. But you can use it. I think that is the fix. The cleanups are in other places to get a more consistent handling of the sequence of changing counters...

Hi Michael,
I think I forgot to let you know that it works in our tests.
We will wait for the merge than.
Best regards,
Andrei

On 22 Jun 2016, at 22:40, Michael Tüxen<EMAIL_ADDRESS>wrote:
It is not merged since you wanted to test it for a couple of days. Since I wasn't able to reproduce the problem, I thought that is a good idea. If you say, it fixes the issue, I'll get do some cleanup in other places, get the stuff into FreeBSD and merge it. This might take a day or two. But you can use it. I think that is the fix. The cleanups are in other places to get a more consistent handling of the sequence of changing counters...
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/sctplab/usrsctp/issues/86#issuecomment-227854104, or mute the thread https://github.com/notifications/unsubscribe/AHfyFpB5ualSZCZx18-gGQ-1LOKQM129ks5qOY-ZgaJpZM4IzYmu.

Hi Andrei,
it is merged now, so I'm closing the issue.
Best regards
Michael


Fix/expose segments

This addresses a couple of small issues with segment metadata.
When dejitter_timestamps=False reported segments now have the correct sample stop.
When dejitter_timestamps=True

non-empty streams no longer contain duplicate segment tuples
empty stream now return segments as an empty array, rather than [0, -1]

@agricolab do you have time to look?

Did a manual test and it passes now unduplicated segments
import pyxdf;
s, h = pyxdf.load_xdf("minimal.xdf", jitter_break_threshold_seconds=0.001, jitter_break_threshold_samples=1);
assert s[0]["info"]["segments"] == [(0, 0), (1, 3), (4, 8)]

Thanks @jamieforth !

Thanks @jamieforth and @agricolab! Does the test you mention pass with this change, but fail previously? If so, could you add it to pyxdf/test/test_data.py?

Yes, could be a good regression test. I'd also like if we'd had a minimal.xdf (or empty.xdf) with an empty stream.


OpenDP invalidates physical-only instances

I noticed innovus reporting a reduced cell count when comparing the results. I then noticed the following warning when loading the def
**WARN: (IMPDF-200):	Instance ENDCAP_CORE_20 is not found in db and ignored.
If this is a physical-only instance, it should have '+ SOURCE DIST' attribute.

Comparing the input lef to the output lef, i noticed that  + SOURCE DIST was missing from the output of OpenDP.

I've fixed this bug in the following commit:
https://github.com/sanggido/OpenDP/commit/501f0c803a8d61cb6585e0e91662bfcad1edba42
Could you check this again?


Fix deprecated keyWindow usage in Performance

Description
/Users/runner/work/firebase-ios-sdk/firebase-ios-sdk/FirebasePerformance/Sources/Instrumentation/UIKit/FPRUIViewControllerInstrument.m:74:85: warning: 'keyWindow' is deprecated: first deprecated in iOS 13.0 - Should not be used for applications that support multiple scenes as it returns a key window across all connected scenes [-Wdeprecated-declarations]
Reproducing the issue
Build in the release-11.0 branch
Firebase SDK Version
11.0
Xcode Version
15.4
Installation Method
CocoaPods
Firebase Product(s)
Performance
Targeted Platforms
iOS
Relevant Log Output
No response
If using Swift Package Manager, the project's Package.resolved

Expand Package.resolved snippet

Replace this line with the contents of your Package.resolved.

If using CocoaPods, the project's Podfile.lock

Expand Podfile.lock snippet

Replace this line with the contents of your Podfile.lock!

Merged the code, gonna close this ticket!


Add new command: ZPOPMAX (Redis 5.0)

Added ZPOPMAX command.
Related to issue #592
Example of usgae:
$client = new \Predis\Client('tcp://<IP_ADDRESS>:6379', array('profile' => '5.0'));

$values = array(
    'one' => 1,
    'two' => 2,
    'three' => 3,
    'four' => 4,
);

$client->zadd('myzset', $values);

# $popedValues = $client->zpopmax('myzset');
# With count specified
$count = 2;
$popedValues = $client->zpopmax('myzset', $count);

print_r($popedValue);

I made v5.0 is the default one and also the default for the test cases, if no one objects!

In general, adding new commands to Predis is not as straightforward as it might seem if anyone wants to do it "properly".
Considering the ongoing transition, I'll write down some notes here based on the v1.0 branch to anyone benefits. I'll try expanding these bits later to have them highlighted in a more appropriate and accessible place.
Aside from having the actual command class prepared by extending Predis\Command\Command or implementing Predis\Command\CommandInterface, depending on the situation, and added to the list of supported commands of the respective Predis\Profile\RedisProfile class, there are a few places that needs to be taken care of through Predis to have the library fully and properly support a new command:

The command signature should be added as @method in the phpdocs of both Predis\ClientInterface and Predis\ClientContextInterface.

If the command has keys in the argument list, then it should be handled accordingly by Predis\Command\Processor\KeyPrefixProcessor

For replication scenarios such as redis-sentinel, it should be handled accordingly by Predis\Replication\ReplicationStrategy depending if the command represents a read-only operation (meaning that the client can stick to a slave node) or it's disallowed altogheter. The client by default treats commands not explicitly handled here as a write operations, forcing a switch to the master node (but Redis could also return a -ERR response).

For cluster scenarios, either simple client-sharding or redis-cluster, it should be handled accordingly by Predis\Cluster\ClusterStrategy. The client by default treats commands not explicitly handled here as disallowed when using cluster, thus raising an exception.

Last but not least a proper PR for each new command should also ship with tests not because this should be the common practice, but also because when there's so much stuff going on it's hard to do that at a later stage and the risk of forgetting something along the way becomse pretty high. By the way the current test suite has a few helpers that would most likely benefit from some explanations.

As a full example of all the steps involved, you can see my past commit that adds support for BITFIELD.
By the way, in this specific case we actually miss profiles for both Redis 4.0 and 5.0 and the commands introduced in these respective major releases. Provided that the priority for now is getting a patch release of Predis in the v1.1 branch and adding new commands should come at a later stage (see the roadmap drafted by @tillkruss), my proposal would be to start by committing two separate profile classes with no new commands added and then implement each new command in a separate PR, with all the proper bits and with no rush. Getting a list of commands by each Redis release is actually easy thanks to the commands.json file in redis-doc, this definitely helps to see what we are missing.
We should also keep in mind that v1.1 and master diverged quite a lot which is one more reason to think twice about implementing all of the new commands in both branches as this would impact on the time and effort required to get things actually done, so we should clear this aspect before start committing new commands IMHO.

In general, adding new commands to Predis is not as straightforward as it might seem if anyone wants to do it "properly".
Considering the ongoing transition, I'll write down some notes here based on the v1.0 branch to anyone benefits. I'll try expanding these bits later to have them highlighted in a more appropriate and accessible place.
Aside from having the actual command class prepared by extending Predis\Command\Command or implementing Predis\Command\CommandInterface, depending on the situation, and added to the list of supported commands of the respective Predis\Profile\RedisProfile class, there are a few places that needs to be taken care of through Predis to have the library fully and properly support a new command:

The command signature should be added as @method in the phpdocs of both Predis\ClientInterface and Predis\ClientContextInterface.

If the command has keys in the argument list, then it should be handled accordingly by Predis\Command\Processor\KeyPrefixProcessor

For replication scenarios such as redis-sentinel, it should be handled accordingly by Predis\Replication\ReplicationStrategy depending if the command represents a read-only operation (meaning that the client can stick to a slave node) or it's disallowed altogheter. The client by default treats commands not explicitly handled here as a write operations, forcing a switch to the master node (but Redis could also return a -ERR response).

For cluster scenarios, either simple client-sharding or redis-cluster, it should be handled accordingly by Predis\Cluster\ClusterStrategy. The client by default treats commands not explicitly handled here as disallowed when using cluster, thus raising an exception.

Last but not least a proper PR for each new command should also ship with tests not because this should be the common practice, but also because when there's so much stuff going on it's hard to do that at a later stage and the risk of forgetting something along the way becomse pretty high. By the way the current test suite has a few helpers that would most likely benefit from some explanations.

As a full example of all the steps, you can see my past commit that adds support for BITFIELD.
In the specific case

Thank you @nrk for sharing :).
You are right I will create a separate PR that introduces the two missing profiles (400 & 500), and keep this PR only focuses on the new command.
I think your whole comment needs to be moved as an announcement for the future contributors to be able to see it as well :).

You are right I will create a separate PR that introduces the two missing profiles (400 & 500), and keep this PR only focuses on the new command.

TBH I suggest we coordinate a bit on how to proceed before going ahead with these PRs, let's decide on the roadmap in detail on #615 so that any new work (beside fixes I mean) ends up targeting the proper branch. I'd still avoid any new stuff in a patch release on the v1.1 branch, but we still need to decide if we do need an intermediate minor release which means a v1.2 branch or if we want to go ahead with v2.0 and then target the master branch directly.

I think your whole comment needs to be moved as an announcement for the future contributors to be able to see it as well :)

Yes that's exactly what I meant with "a more appropriate and accessible place" 😉


Allow to use KeyManagerFactory / TrustmanagerFactory

Motivation:
People often want to use their own custom keymaterial selection / certificate validation. This was not possible as all of this was handled internally by quiche.
Modification:

Allow to implement custom key material selection
Allow to implement custom certificate validation
Port over some code from netty-tcnative / netty
Use our own vendored boringssl libraries when compiling

Result:
Fixes https://github.com/netty/netty-incubator-codec-quic/issues/97

We can simplify some of this when https://github.com/netty/netty/pull/10953 is merged

We can simplify some of this when https://github.com/netty/netty/pull/10953 is merged

/cc @thomdev @kachayev

/cc @thomdev @kachayev


Flake bot creates a new deflake PR for a <7 closed flaky bug

Context:
Mac_android integration_ui_textfield was detected as flaky, and a flaky bug https://github.com/flutter/flutter/issues/92012 was filed, and was closed.
The flake bot tried to mark the test as flaky:
https://github.com/flutter/flutter/pull/92426
There should be a 15 days windows before a new issue/PR is created.

Another PR was created: https://github.com/flutter/flutter/pull/92835


graphite-raintank doesn't always query NMT

not sure yet what's going on.
but so we run 6 benchmarks
https://github.com/raintank/raintank-tsdb-benchmark/blob/master/run.sh#L68-L75
(min diversity means query same target over and over, max diversity means select random targets from the set of all known targets)
in one particular test run, it looked like graphite-raintank was only querying NMT in all 3 max diversity cases, but not in the 3 min diversity cases.
and now a run just completed where it was only querying NMT for the "max-diversity" 1h 180s 100 test (third last), and the last one, "max-diversity" 24h 180s 100 but not the first max-diversity.
note the background load, created by graphite-watcher of 10 requests/s which is occassionally visible (but during a chunk in the middle it had crashed and is invisible).
also green is hidden by yellow, but luckily yellow is enough to see what's going on.

the NMT dashboard confirms this

now also with snapshots!
https://snapshot.raintank.io/dashboard/snapshot/yxlxziKkFxL8ArH1mxeUW3ynKNKpel1q
https://snapshot.raintank.io/dashboard/snapshot/MP4Vf7nOiwI32JVOlEmuipJGi2oVKJmr

These comments dont make any sense to me.  Can you try explaining what the problem you are seeing is.  Specifically explaining how you think these graphs show the problem.

ok let's focus just on the 2nd graph screenshot.
the 2nd graph screenshot is the one on which the 6 short benchmark run periods are most clearly visible. the yellow lines on it show that only benchmark run 4 and 6 are causing traffic to NMT. (the other yellow lines that are lower are caused by some "background load" from graphite-watcher, not the actual benchmark runs).
the 6 benchmarks are run via https://github.com/raintank/raintank-tsdb-benchmark/blob/master/run.sh, the last arguments are the rates. i.e. first two are at 200 rps and the last 4 at 100 rps. the light blue (search ES) is the only series that corresponds to this rate of data requests, the yellow is way too low.

I am unable to replicate your problem in my stack (which is the latest raintank-docker#tank)
I did drop down the request rate from 200 down to 50, as my desktop can't handle the load.  But the 6 benchmark tests all generated the expected ops/s for es search, query Tank, unmarshal

nice! i'll have to dive deeper on my stack and figure out what's up


Enable SketchKit layout DSL on UILayoutGuides

UILayoutGuides
UILayoutGuides are a great feature that UIKit has that allows developers to move on from using empty dummy UIViews as spacing or container views in order to achieve a specific spacing or alignment.

There are a number of costs associated with adding dummy views to your view hierarchy. First, there is the cost of creating and maintaining the view itself. Second, the dummy view is a full member of the view hierarchy, which means that it adds overhead to every task the hierarchy performs. Worst of all, the invisible dummy view can intercept messages that are intended for other views, causing problems that are very difficult to find.

Apple Developer Documentation

UILayoutGuide is quite useful and common, I believe it would be of great interest to be able to apply this DSL to these objects as well
layoutGuide.layout.applyConstraint { $0.topAnchor(equalTo: view.topAnchor) }

Please update to 1.2.0


[Bug]: Display garbled characters when the table name is in Chinese

ODC version
odc430
OB version
ob4215
What happened?

What did you expect to happen?
Table names are not garbled
How can we reproduce it (as minimally and precisely as possible)?
Create a Chinese table
CREATE TABLE "创建sql计划1" (
"col1" NUMBER(*,0),
"col2" VARCHAR2(120)
)
View Table Details
Anything else we need to know?
No response

It looks like a kernel problem: I use show create table xxx and I get a normal result, I use dbms_metadata.get_ddl and I get a result with garbled characters:

every thing looks good if I change another ob-oracle env:

The ob4218 version solves this problem


How to inference images on multi-GPUs?

Excuse me, how do I inference images on multi-GPUs (such as 4 GPUs)?
or, how do I inference 4 images on per GPU per time?
Thanks!!!!

Hi @xiaomore
You may use ./tools/dist_test.sh for multi GPU inference.

Hi @xiaomore
You may use ./tools/dist_test.sh for multi GPU inference.


How to stretch a module to fill the remaining space?

Currently, modules are shrunk to their content size in waybar. The behaviour I wish is to have the window module fill the remaining space, so that I can style an appropriate background color.
Is it currently possible?

waybar config
    { "width" : 0, }

I hope this image clarifies what I wish to achieve. If you look at the image, I have styled the window module with red background. As you can see, it doesn't fill the entire space, there is some unused space on the left of the status bar.
If you're wondering why I want this, I wish to have a different background colour for the middle region when a window is focused. Something like this:


Support auto-encryption of payload

Problem Statement

As a developer, I want to encrypt my payload locally so that Jiter is only storing encrypted data
User Impact

Users won't need to take an extra step to encrypt their data
Implementation Summary Tasks

Accept a new parameter for encryptionSecret (or something similar) and then update all relevant components of the SDK to encrypt/decrypt as needed
Additional context

I can work on this one


Version 50+ having trouble picking up initial notifications.

There was on scrobble in the cache, which got pushed to last.fm, but it can't pick up any more.  I've uninstaller, reset caches and removed local data, but it's still not noticing that anything new has been played (to push to the now playing api) or has been played.

Well that's really not good.

This is my apk or the playstore version?

Double checked and it seems to be both.
Migjt be something in the app detection code; I can't get it to pick up new apps either.

Strange.
Have you tried Exiting the app? I added an exit button on the initial screen.
Sometimes this helps.
This is really bad news.
I did not change any  of the code there.

Ok I recreated your bug.
There is an app clash problem upon initial install I believe.
If I play apps that previously used Broadcast intents it clashes.
Do you happen to know if all the apps you have been trying use broadcast intents in the old way?

I looked at Androids example mediamanager external player app and found out the real issue.
Thanks so much for pointing this issue out.

#508

Moving conversation from #507 to here like I was told earlier.
After trying 1.6.2 using multiple media players (Youtube, Play Music, GMMP) SLS still doesn't pick up any of the apps in the "Enabled Apps" section, nor can I get it to scrobble. Not sure if others are still having issues on 1.6.2
Also a potentially unrelated Issue that might need a separate thread, the stats from the older version (1.5.7 in my case) are still missing in the last several updates (1.6.0-1.6.2 etc), yet if I revert to version 1.5.7 the Stats show up fine and are still there

Yes, stats are not typically kept through versions.
I will add that to my todo list.

However, version 1.6.2 should pick up new music players now.
Did you enable the Notification Listener AKA Notification Access permissions?

Ah it seems I was mistaken, I went and made sure I had that permission enabled and it was off/not allowed. After allowing that Notification permission it seems as though at least the Now Playing portion is working, but songs aren't scrobbling once finished.
I was a bit confused because I saw we were now allowed to skip the permission if we didn't want to enable them all. I was under the assumption that the Notification Access was only needed if you used the Active App Notification option


Crop a image in CVAT

I would like to use just a part of an image in CVAT, is it possible to crop it inside the tool?

Hi,
it's not possible. CVAT is an annotation tool, not an image editor

Hi,
it's not possible. CVAT is an annotation tool, not an image editor

ok, bildik


test-branch/execute-job/wrong-commit-sha-on-pr/bcd50832-9f52-45dd-9b78-f031bd04ccc3

PR for testing 0a31951acea76864f9c7f755d6d94e812bc7848a

/canonical/self-hosted-runners/run-workflows 931ad21dd9ace68aaa0a7d341e94de96ad93fa6b


Improve slow queries

This pull request removes some redundancy from client requests and improves query time. In some places, it goes around DRF completely.

The topic page is still making the same query twice. I think multiple sub-components are both hitting the same endpoint. I haven't had time to work through the client code yet but hopefully the changes so far will give us enough of a boost.
Once this is deployed on dev, we can test the changes in openshift.


Added new logging backend - for spinel protocol

It seems something went wrong with the reabase (I guess?), there are commits in here that should not be.

Yes, I accidentally pushed also not mine commits. It is fixed now.


How to use the show_mode

how can I use the render function in fjsp_env.py

I see it，

I can do it now like this