mysql lib can only set a single secret

Steps to reproduce

This charm demonstrates the issue:
#!/usr/bin/env python3

import logging
import ops
from charms.data_platform_libs.v0.data_secrets import SecretCache, generate_secret_label, SecretAlreadyExistsError

logger = logging.getLogger(__name__)

class MysqlOperator348BugCharm(ops.CharmBase):
    def __init__(self, *args):
        super().__init__(*args)
        self.secrets = SecretCache(self)
        self.framework.observe(self.on.install, self._on_install)

    def _on_install(self, event: ops.InstallEvent):
        secret1 = {"name1": "abcdefgh"}
        label1 = generate_secret_label(self, "app")
        self.secrets.add(label1, secret1, "app")
        secret2 = {"name2": "password"}
        label2 = generate_secret_label(self, "app")
        logger.info(f"label1: {label1}, label2: {label2}, secrets: {self.secrets._secrets}")
        try:
            self.secrets.add(label2, secret2, "app")
        except SecretAlreadyExistsError as e:
            logger.error("Failed to add second secret: %s", e)
        else:
            logger.info(f"label1: {label1}, label2: {label2}, secrets: {self.secrets._secrets}")

if __name__ == "__main__":  # pragma: nocover
    ops.main(MysqlOperator348BugCharm)  # type: ignore

Note that you need to have the main version of the data_platform_libs, not one from a charmcraft fetch.
Expected behavior
With the above charm, the first INFO logging line should look something like:
label1: something, label2: something-else, secrets: {'something': <...>}
And there should be a second one like:
label1: something, label2: something-else, secrets: {'something': <...>, 'something-else': <...>}
Actual behavior

With the above charm, the logging output is:
unit-secret-bug-0: 09:54:30 INFO unit.secret-bug/0.juju-log label1: secret-bug.app, label2: secret-bug.app, secrets: {'secret-bug.app': <charms.data_platform_libs.v0.data_secrets.CachedSecret object at 0x7f5da6ed24a0>}
unit-secret-bug-0: 09:54:30 ERROR unit.secret-bug/0.juju-log Failed to add second secret: Secret secret-bug.app already exists

The issue is that the generate_secret_label method in data_secrets.py takes the charm and the scope as arguments, and uses the charm's app name and the scope to form the label. The app name is obviously the same across the app, and the scope is either app or unit. This means that if you try to get a label for an app secret, you'll always get exactly the same string. This effectively means that the SecretCache system as used by mysql.py will only store a single app secret, because it believes that any secret is already in the cache after one is.
Versions

Operating system: Ubuntu 23.10

Juju CLI: 3.1.6-genericlinux-amd64
(Note that the code never gets to Juju in the problematic area).

Juju agent: 3.1.5

Charm revision: N/A

LXD: N/A
Log output

Juju debug log:
Copied above.

Additional context

This was introduced in #348. You can also see failing unit tests if you bump your ops requirement to 2.6.0 or higher (I haven't looked at exactly what changes there, but presumably some of the code starts exercising more of the secret support in ops).

Actually, I guess this is really from https://github.com/canonical/data-platform-libs/pull/117 and #348 is just when it made it into this Charm? I perhaps should have opened this against the data-platform-libs repo, sorry - I was just working through figuring out what happened with mysql-operator first, and didn't think to raise it against the lib.
Let me know if you want me to re-open the issue there instead.

@tonyandrewmeyer thank you for the report!
@juditnovak can you share your vision here. Thank you!

Firstly, I'm sorry for pinging about this on Matrix and then vanishing for a week :disappointed:. I had thought that this would be something that I'd be focusing on and then a bunch of unexpected work turned up and I ran out of time to come back to it until now.
I made a mistake here - apologies for that too! I thought that this was the reason that the mysql-operator and mysql-k8s-operator tests failed with ops 2.6+, but that's not the case. (I did manage to figure out what was needed and opened a data-platforms-libs PR and a mysql-operator PR, and the combination of those solve the issues).
It does seem a little odd the way that the label generation is done when there's only a pair (app, unit) of secrets, and where postgresql has secrets grouped. But I understand now that this is deliberate, so that's fine (and also that it's not causing issues, as I wrongly thought).
As an aside, the @canonical/charm-tech team would appreciate learning more about the data-platform-libs data_secrets module at some point. We're concerned that you've needed to create this pretty generic (ie. it's not really specific to the data charms) secret module on top of ops. It hints that maybe ops is missing some secret functionality that charmers need - we'd rather improve the secret functionality in ops than have all charmers need to implement wrappers on top of it.

https://warthogs.atlassian.net/browse/DPE-3145

I don't think I can close this - if that doesn't happen automatically, could someone please do that? Sorry & thanks!


Mst toolbar

The main change here is to pass a MST model of the toolbar button instead of a plan JS object.
The reason to try doing this is because I'm trying to get rid of the usage of DocumentTool where possible.  By passing the ToolButtonModel instance to the ToolButton component it can use this model instead of the DocumentTool type.
This also made it possible to move the logic of figuring out the Icon component of a tool button into the model itself. So now the code using these models just uses model.Icon.
Some specific changes:

the toolbar prop passed to DocumentComponent is now just appConfig.toolbar instead of its snapshot
the toolbar prop of DocumentToolbar is never undefined, this was the case before but the types didn't reflect it
when the DocumentToolbar is first rendered it clones the toolbar model, this way each document's toolbar is disconnected from the other document.  Currently the toolbar components don't modify the toolbar model or its child button models, but this seems safer.
the ToolButtonModel looks up the icon either from the appConfig.appIcons or from tool content info registry. This logic was happening before but it was in EditableDocumentContent.
the tool-button.test.tsx needed to register the tools so it could render a text tool button
the events of tool-button are switched from using DocumentTool to ToolButtonModelType.
tests need to create ToolButtonModel objects instead of just passing simple objects
the toolbar component stores the defaultTool and activeTool state values as ToolButtonModel objects.
the tool button models were extracted from tool-types.ts since they are now more complex.
removed an unreferenced getParent from an un-related test

This seems good to me, but I'm curious what you think @kswenson.
There are a lot of little changes here that are just renaming or re-typing.
A general pattern here that could be expanded is using a model object to representing several properties passed to a child component. In this case the config and ToolIcon properties of ToolButtonComponent are combined into the toolButton.
This could be taken further by moving properties like isActive and isDisabled into the model. And having actions to coordinate the updates.  I kind of want to try doing that to see how the code looks afterwards, and to gain more experience with MST. But I'm curious what you think of going further down that path.
The PR seems useful even without doing that, but if you think it makes things more complex without enough upside, I'd understand.
In that case I think I'd just change the DocumentTool references into plain string.  I'm going to have to do that anyway with the references not touched by this PR.

As a tangentially related point, it occurs to me that this would be a useful custom hook:
export const useLazyRef = <T>(init: () => T) => {
  const lazyRef = useRef<T | null>(null);
  if (!lazyRef.current) {
    lazyRef.current = init();
  }
  return lazyRef;
}

and then clients like the one we're discussing above could instantiate such a ref with a single line of code.

The downside to userLazyRef is that TS code will have to handle the case of lazyRef.current being null. I think this is why the React docs suggest using a custom getXyz function so it can be typed to not be null. The other reason is so the init function is only called when needed so it really makes it as lazy as possible.
Perhaps there is some typescript casting that can be done to say the lazyRef.current will always be type T instead to T | null.


Plugins - Minor util script

TL;DR
This adds a small bash script to help manage the new set of plugins
Type

[ ] Bug Fix
[x] Feature
[ ] Plugin

Are all requirements met?

[x] Code completed
[x] Smoke tested
[ ] Unit tests added
[x] Code documentation added
[ ] Any pending items have an associated Issue

Complete description

Added bash script
Ran make requirements which got rid of the weird extra="all" in the requirements file that was giving us problems earlier.

Codecov Report

Merging #349 (72e3eee) into master (701d4e8) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #349   +/-   ##
=======================================
  Coverage   96.00%   96.00%
=======================================
  Files           2        2
  Lines          75       75
  Branches        8        8
=======================================
  Hits           72       72
  Misses          1        1
  Partials        2        2

Continue to review full report at Codecov.

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

Codecov Report

Merging #349 (72e3eee) into master (701d4e8) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #349   +/-   ##
=======================================
  Coverage   96.00%   96.00%
=======================================
  Files           2        2
  Lines          75       75
  Branches        8        8
=======================================
  Hits           72       72
  Misses          1        1
  Partials        2        2

Continue to review full report at Codecov.

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

tests failed due to sqlite task timing out.

tests failed due to sqlite task timing out.


can you add nginx folder icon ?

Hello, thanks for this great project
nginx file icon works fine, but no icon for folder
can you add it ? or there is anyway to add it on my side ?

Hey
Thank you for the contribution.
I'm doing my best with contributors to make this extension amazing
I will add it for sure :)


[Feature Request]Official Dockerfile or Docker Images?

As there is a very simple conda installation command guide:
https://gist.github.com/hellock/bf23cd7348c727d69d48682cb6909047
It looks very simple to be installed.
But actually I faced some problems:

 conda install -c pytorch pytorch torchvision -y
Very slow network speed as I am in China mainland and conda mirror source is not able to use.
Sometimes even <10KB/s and interrupt by network error. I installed it several times an it finally success.

gcc version doesn't match.
in install.md the gcc version must be  GCC: 4.9/5.3/5.4/7.3, however the newest version of gcc is above 9.1 at now.
I speed some time to install gcc and it‘s dependencies.

All the problem I have solved but it cost me several hours which doesn't make sense and can be saved and improved by a docker mirror and a Dockerfile.
For example an official base mmdetection image in docker hub, and a editable Dockerfile which we can see how it built and we can install more dependencies from this Dockerfile and docker image.
I have searched in dockerhub_images but found the quality is low even cannot to use.
I would like something like
https://github.com/facebookresearch/Detectron/blob/master/docker/Dockerfile in Detecron.
Do you have any plan to do this?

Thanks for your advice. This is what we have planned to do, but just do not have time to.
Maybe #701 can help, though it is not officially maintained.

Yes, thank you for your response.
I found a little way to improve his PR: Reuse pytorch official images.
So It will not need to use pip install the requirements and it is easy to change pytorch version and cuda version by change the base pytorch images.
For example:
FROM pytorch/pytorch:1.1.0-cuda10.0-cudnn7.5-runtime

# Set locale
ENV LANG en_US.UTF-8

# Install torchvision
conda install torchvision -y

# Install mmdetection
RUN conda install cython -y && \
  git clone https://github.com/open-mmlab/mmdetection.git && \
  cd mmdetection

RUN ./compile.sh && \
  python setup.py develop && \
  mkdir data

It looks simpler right?  : )  a copy version of install.md
Another opinion, don't use python3 command anymore as python2 will be not supported.
python should be equal to Python3
That is my two suggestion

https://github.com/open-mmlab/mmdetection/blob/master/docker/Dockerfile

@hellock Thanks for the Dockerfile.
Would it be possible to create official Docker Hub images? It just needs signing up and linking the repository, and Docker Hub will take care of building a new image per commit/tag/release…


Indentation inconsistent when using more than 1 line continuation

Before submitting a bug report:

Make sure you are able to repro it on the latest released version
Perform a quick search for existing issues to check if this bug has already been reported

Steps to reproduce
Execute the following script & compare the formatted output to the input (as defined by the variable $scriptDefinition)
$scriptDefinition = @'
$all_links = `
    [array](Get-ChildItem -Path ([Environment]::GetFolderPath('StartMenu')) -Recurse -Include '*.lnk') + `
    (Get-ChildItem -Path ([Environment]::GetFolderPath('CommonStartMenu')) -Recurse -Include '*.lnk')
'@

Invoke-Formatter -ScriptDefinition $scriptDefinition

Expected behavior
The output of the call to Invoke-Formatter should be the same as the input.
Actual behavior
The third line of the output is not indented to the same level as the second line - the output of Invoke-Formatter is as shown below.
$all_links = `
    [array](Get-ChildItem -Path ([Environment]::GetFolderPath('StartMenu')) -Recurse -Include '*.lnk') + `
(Get-ChildItem -Path ([Environment]::GetFolderPath('CommonStartMenu')) -Recurse -Include '*.lnk')

Environment data

> $PSVersionTable
Name                           Value
----                           -----
PSVersion                      5.1.18356.1
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.18356.1
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
> (Get-Module -ListAvailable PSScriptAnalyzer).Version | ForEach-Object { $_.ToString() }
1.18.0

I disagree with your expected behaviour paragraph where you state that The output of the call to Invoke-Formatter should be the same as the input. in general because the output of Invoke-Formatter is the corrected version. In theory, I'd expect though that the result of Invoke-Formatter (Invoke-Formatter $scriptDefinition) should be the same as Invoke-Formatter $scriptDefinition although I have seen scenarios where one needs to format twice to get to the desired final state (which can happen when there are violations on the same AST element and is something very tricky to fix)
I agree though that for your case, that one could tweak the UseConsistentIndentation rule to have consistent newline indentation for the 2nd and 3rd line, one probably would need a configuration option to either have just one or no level of indentation on consecutive lines.
Behaviour for this case has not changed between 1.17.1 and 1.18.0, therefore this is rather something that one could tweak for the next release, we'd be happy if you open a PR for it.

FYI, the use of backticks in the example are totally unnecessary   If one removes the backticks, all lines will lose their indention.
The second line's backtick fails to cause the expected indention.
Technically even without the backticks, the lines should indent as expected, because they are in fact continued.

I have similar but different problem related to this.
Here is example line which is now put as I want: (yes it's a single command line)
Set-NetFirewallProfile -Name Domain -PolicyStore $PolicyStore `
-Enabled NotConfigured -DefaultInboundAction NotConfigured -DefaultOutboundAction NotConfigured -AllowInboundRules NotConfigured `
-AllowLocalFirewallRules NotConfigured -AllowLocalIPsecRules NotConfigured -AllowUnicastResponseToMulticast NotConfigured `
-NotifyOnListen NotConfigured -EnableStealthModeForIPsec NotConfigured `
-LogAllowed NotConfigured -LogBlocked NotConfigured -LogIgnored NotConfigured -LogMaxSizeKilobytes 4096 `
-AllowUserApps NotConfigured -AllowUserPorts NotConfigured `
-LogFileName "%SystemRoot%\System32\LogFiles\Firewall\pfirewall.log" @Logs

Here is the setting I have in my PSScriptAnalyzerSettings.psd1 file:
		PSUseConsistentIndentation = @{
			Enable = $false
			Kind = 'tab'
			PipelineIndentation = 'NoIndentation'
			IndentationSize = 4
		}

As you can see I have disabled the setting because it will tell me my indentation is not consistent.
So far so good to get rid of warnings, but another problem is that when I right click into a file and select "format document" it will indent consecutive lines in above example which is something I do not want, and I have no clue how to prevent indenting the consecutive lines in above example?
What should I configure to keep the line as it is when right-click -> format document?
and how to prevent warnings about non consistent indentation? I would like to have the setting on but other cases.

I think this is related to this issue. The code below is based on actual code, but simplified as much as possible.
        'PSUseConsistentIndentation'                     = @{
            'Enable'              = $true
            'IndentationSize'     = 4
            'PipelineIndentation' = 'IncreaseIndentationForFirstPipeline'
            'Kind'                = 'space'
        }

Expected behavior
No PSUseConsistentIndentation issues:

Actual behavior
Two PSUseConsistentIndentation issues:

If I format the document. The last two lines are incorrectly indented:

Environment data
> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.1.0
PSEdition                      Core
GitCommitId                    7.1.0
OS                             Microsoft Windows 10.0.19042
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

(Get-Module -ListAvailable PSScriptAnalyzer).Version | ForEach-Object { $_.ToString() }

Directory: C:\Users<removed>\Documents\PowerShell\Modules:
1.19.1
1.18.3
1.18.2
1.18.1
1.18.0
Directory: C:\Users<removed>.vscode\extensions\ms-vscode.powershell-preview-2020.9.0\modules:
1.19.1


support top n holders

https://github.com/iotexproject/iotex-analytics/issues/25

similar to https://etherscan.io/accounts

add entry point at the top bar

add a new page accounts. the table style is similar to other tables.

api for rank and addresses of top holders:
query {
  topHolders(endEpochNumber:5238, numberOfHolders:100) {
    address
  }
}

Name Tag or Sender Name you can refer to https://iotexscan.io/action
its balance can be queried with an array of queries https://github.com/apollographql/graphql-tag/issues/26#issuecomment-543151967

query topholders(
$endEpochNumber: Int!
$pagination:Pagination!
)
{
topHolders(endEpochNumber:$endEpochNumber,pagination:$pagination)
{
address
balance
}
}
query variables:
{
"endEpochNumber":100,
"pagination":{
"first":10,
"skip":0
}
}
or：
query topholders
{
topHolders(endEpochNumber:100,pagination:{first:10,skip:0})
{
address
balance
}
}


chore: add LICENSE

Maybe also add
(c) Copyright Open Analytics NV, 2019-2023 - Apache License 2.0
to the README.md


Discord invite expired

The Discord link on the website navbar is expired, also in the footer.

They seem to not care I want to make a contribution too!

I will try to update the link soon.

@hauptrolle you have some update?


Wasm implementation that works e2e with signify-ts

Rationale
We'd like to use wasm and FFI with signify-ts rather than having a bunch of cesr implementations.  This is the first step of showing that's possible.
Testing
Created tests on dater in the signify-ts PR but left this mainly where @DmitryKuzmenko and @jasoncolburne had things set up before.  Testing the wasm-artifacts in this repo is something we'll have to figure out.
For Reviewers
Didn't bump because main crate didn't change (although I will open some issues in regards to differences with keripy)

[X] Verify version bumped in Cargo.toml

Another thing to do would be make the web tests run in CI, right now I think it just does a sanity build of wasm.

@jasoncolburne cool.  Those are both things I think I can manage.  Do you want me to just add them to this PR for a mega-PR or I can split them out into issues and smaller PRs?  Mostly I just focused on the Dater implementation and getting that wasm import to work in this signify-ts PR https://github.com/WebOfTrust/signify-ts/pull/149/files

@jasoncolburne @m00sey Umm messed up the git log a bit because this is a mega-PR but d5a6189 addresses #162

@jasoncolburne whoops, that'll be the last commit to this branch.  In the interests of not having this being a giga-PR that keeps growing and growing I'm gonna take your suggestions in this thread and do a bunch of mini-PRs to the wasm branch in this repo (that should match this PR).  Hopefully, that'll help with reviews whenever we get around to wanting to merge this into the main branch.


WIP - Extract nested column logic from the table

Instead of resolving within table core, it seems more sensible to do it outside of it. The greatest benefit of doing this is that all the logic will just work. Also the core becomes a little simpler as a result while the system remains even more decoupled than before.
I am still in progress of figuring out a good way to integrate the new idea with reactabular-easy. The biggest problem seems to be the split in resolution logic (headers and columns are resolved separately) and binding easy logic to that.
It would be awesome if you could have a look at the initial implementation. I know it's more code to write for the user if you want to use nested definition. But on the plus side this gives a little extra flexibility, fixes the logic, and improves performance a notch (no need to resolve tree always).
Closes #241.
CC @smoke @sapegin

Current coverage is 79.77% (diff: 100%)

Merging #243 into master will decrease coverage by 0.06%

@@             master       #243   diff @@
==========================================
  Files            60         60
  Lines           883        880     -3
  Methods         131        130     -1
  Messages          0          0
  Branches        285        285
==========================================
- Hits            705        702     -3
  Misses          177        177
  Partials          1          1

Powered by Codecov. Last update 9ceafd0...37de190

The API looks good. But what label for children columns does?

The children column follow the same definition as the main one. label might have to so with this: https://reactabular.js.org/#/column-definition/header . Can you point to a specific line?

I mean this example:
{
          header: {
            label: 'Name'
          },
          children: [
            {
              property: 'name.first',
              header: {
                label: 'First Name'
              },
              cell: {
                format: highlight.cell
              }
            },
            {
              property: 'name.last',
              header: {
                label: 'Last Name'
              },
              cell: {
                format: highlight.cell
              }
            }
          ]
        },

When First Name and Last Name labels will be displayed?

Ah, that. It actually works already. See https://reactabular.js.org/#/column-definition/nested-columns . It performs calculation so that the children will become children of that Name portion and will be displayed below it as you might expect.
This PR is about extracting that logic so that sorting/search/etc. work. Instead of having support for the hierarchical columns internal, I will extract it outside so that you can convert.
I have an early idea on how to deal with easy now. The header conversion bit needs to change a little (going to be simpler and faster even).

I think the functionality starts to be there. reactabular-easy is starting to get a little gnarly due to drag and drop (very hard with nested data). Maybe I need to relax the problem a bit (flat column definition instead). Even then handling column widths remains a problem. I'm ok by not supporting that feature for now.
It also feels like easy.bindColumns could be decomposed into smaller functions now that I have exposed it to the user. The current solution does a little too much at once. Earlier this was hidden but I realized it belongs to the user side as you need more control with more complicated data structures.
Maybe the binding logic belongs outside of reactabular-easy even. It provides a nice way to extend the default column schema at least so it feels like a package. Done right you could get these little flags (header.sortable, cell.highlight) into your table with very minimal effort.

I implemented the bind idea. See bind and bind-columns. Maybe this should become a package of its own. At least internally it's far neater right now although it can probably be pushed a notch further. Those binding bits could do some data processing as well perhaps. I'm still a little unsure of that.
To keep it composable I generalized format as formatters field. This means it accepts an array that gets reduced to a single formatted value. Essentially you get formatters: [a, b, c] -> a(b(c(value, extra)) so you can do nesting (apply highlighting, whatnot on single value). This is a symmetrical API with transforms and gives composability given it's possible to merge all this.
Incidentally I ended up using webpack-merge here as it does exactly what I want. Perhaps the core algorithm needs to become a separate package as it seems to be useful beyond webpack alone.
reactabular-easy header drag and drop feels a little sketchy in nested case but there's not much I can do about that without doing something really special. I gave react-sortable-hoc a go but it didn't scale to the nested case.
The biggest problem is width handling of columns. Currently I retain width per column while dragging to avoid flickering but this isn't particularly cool if you have thin and wide columns in your layout. Moving a wide column to a thin ends up looking bad. It would be better to retain the original widths but handling the detection against flicker at React DnD seems like a hard problem and I don't have a clear solution for that yet.
I still have to try some optimization, write change logs, and merge to master. Feedback is welcome, though.


Inconsistencies between xlr-xld becoming problematic.

The latest suite of changes have seen all the XL Deploy tasks renamed so that everythinbg comes under XL Deploy (rather than split between XL Deploy and xldeploy)
This is good... except that now it looks incredibly inconsistent. Some fields take Applications/ and some don't. Some have auto-complete. Some are duplicate functions entirely.
Technically the best thing would be to have 1 plugin. If we can't, we should try and be consistent so that inputs from one task type can seamlessly work with another.

The idea is indeed to move more functionality to the official supported plugin and also reuse as much as possible from that plugin. That is also the purpose of the v3.x versions. However, first step will now be to make v3.x backwards compatible.
After that we'll look into getting rid of duplicate task types and making it more consistent.


add support for Kind attribute of LogpushJob

Description
This PR is to address the addition of the kind attribute to the LogpushJob object.
(and as part of implementing tests I discovered and fixed a "small" json marshalling issue)
Has your change been tested?
Modified and extended existing tests to cover multiple cases for get and create (which addresses marshal and unmarshal).
Types of changes
What sort of change does your code introduce/modify?

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.
[ ] This change is using publicly documented (api.cloudflare.com or developers.cloudflare.com) and stable APIs.

Note while not yet documented, my understanding is that it will be soon

cc: @yknx4

the marshaling issue being cloudflare/terraform-provider-cloudflare#1703?
depending on timelines for documenting that new attribute, you may want to split this and handle them separately. I can check with the team when I'm in front of a computer next.

@jacobbednarz

the marshaling issue being https://github.com/cloudflare/terraform-provider-cloudflare/issues/1703?

in my case I observed it marhalling a null filter as "filter": "{\"where\":{}}" -- and had to resolve that in order to test the changes I was making
so yes, I'll pull it into a separate issue and see if I can maybe resolve the other issue too

@jacobbednarz updated to handle the null filter in #937

@jacobbednarz

depending on timelines for documenting that new attribute, you may want to split this and handle them separately. I can check with the team when I'm in front of a computer next.

note: the attribute is present and supported now

are you able to link me to where the docs are that you're referencing? the ones that i can see that include a kind attribute are actually for rulesets and the kind is already supported - https://github.com/cloudflare/cloudflare-go/blob/master/rulesets.go#L14-L18 (but is a different API to the one here)

@jacobbednarz sorry,I didn't mean it was documented yet - I meant it was present and supported in the API

gotcha, we'll need to wait for the public API documentation to land to add support here but it's fine to leave the PR pending that for now.
could you remove the other changes from #937 from here so it's a clear representation of what we're looking to merge?

@jacobbednarz I've rebased, so it now contains only these changes - and I've reached out to the PM on your side to let them know that the docs are a blocker for the merge


UIA: refactor wrapper construction

Remove duplicate code from __new__ methods of back end wrappers

Current coverage is 94.56% (diff: 85.71%)

Merging #222 into UIA will decrease coverage by <.01%

@@                UIA       #222   diff @@
==========================================
  Files            47         47
  Lines         18938      18935     -3
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits          17909      17906     -3
  Misses         1029       1029
  Partials          0          0

Powered by Codecov. Last update 6dc3bf3...1f41bf9


undefined symbol: _ZN5boost5numpy5emptyEiPKlRKNS0_5dtypeE Error

Hi,
I am facing trouble to run the selective search demo on my system. I tried with different versions of Boost i.e Boost 1.58 and Boost 1.63. Also I cloned and build Boost_Numpy from "https://github.com/belltailjp/Boost.NumPy.git".
There might be a version mismatch which I am not able to debug. Please help

Same issue, any solutions?


What happened to velocity sens and other controller parameters?

When running Zyn in Zynthian, I noted that the Zynthian UI has a number of controller parameters which Zyn-Fusion does not,
namely velocity sensitivity (Pvelsns), velocity offset (Pveloffs), resonance bandwidth modulation depth (ctl/resonancebandwidth.depth) and resonance center modulation depth (ctl/resonancecenter.depth) (it's also possible to set the resonance bandwidth modulation amount and resonance center modulation amount directly in the Zynthian UI using MIDI CC, although I suspect the original intention in Zyn is to have them mapped to knobs on a MIDI controller).
The functionality seems to be there and the parameters do what is expected of them (although the volocity parameters could do with a good explanation for how they work in order to be useful, but after haiing penetrated the functionality I find it quite useful, in a typical Zyn-quirky way).
Another function that is missing from Fusion (but present in Zynthian) is the ability to have different bend ranges up and down.
Is it for lack of space in the Controllers panel or some other reason (likely that they weren't deemed as useful as the modulation parameters that are present in Fusion)?

velocity sensitivity (Pvelsns) I see this parameter in ZynInstrumentSettings.qml, so it should be there
velocity offset (Pveloffs) Same as above
resonance bandwidth modulation depth (ctl/resonancebandwidth.depth) appears to be missing
resonance center modulation depth (ctl/resonancecenter.depth) appears to be missing

There's a few values which are MIDI only values, though I think all of them are exposed via the virtual keyboard in the old GUI which was moved to the bottom tray of the fusion GUI. I think all of the above should be exposed somewhere.

although the volocity parameters could do with a good explanation for how they work in order to be useful

I'm 70% sure in the old documentation (check out the website repository and look for the docs/ folder), there should be an old inkscape diagram which shows the velocity sensing parameter in action. More or less all of the velocity sensing knobs in zyn have a similar characteristic curve.

Is it for lack of space in the Controllers panel or some other reason

There was the occasional parameter I dropped from the fusion GUI due to a lack of utility or otherwise being painfully obtuse. More often than not though it's a result of me following the GUI mockups and not double checking/cross-referencing the old GUI.

Stupid me, how could I have missed the volocity sense+offset parameters, they're right there in the Instrument Settings pane, although perhaps they should be labelled 'Vel Sense' instead of just 'Sense', 'Vel Offset' instead of 'Offset' (and also 'Key Shift' instead of 'Shift' for similar clarity). (On the other hand, that would imply that all other 'Sense' parameters in Zyn should be labelled 'Vel Sense' too. -Actually, I see that the filter sense parameter in ADsynth is actually labelled 'V.Sense'. Still, it would seem more important to make the distinction in the Instrument Settings pane as there is a mixture of volume, pan, note and velocity knobs there, compared to the filter panels where everything is about the filter frequency (excluding the resonance parameter of course). Ok, enough ranting, just thinking aloud).
Regarding the velocity curves, your memory is impeccable. The velocity diagram is right there about 2/5 of the way down in https://zynaddsubfx.sourceforge.io/Doc/. Perhaps something that could/should be incorporated in the new docs?
This might turn out to be one of those things where I have a few ideas but it'll take a while to get anything done ... it's getting rather tight within the Controller pane, one idea would be to move pitchbend (and extend it with pitchbend split and the separate control for up (or is it down)) somewhere else. Question: in the Scale settings pane, the Tunings and Key mappings columns seem to have space at the bottom. Would that space actually be used in some case, or could the Scale settings pane be shrunk correspondingly, and a new Pitch bend pane be fitted above for instance?

Good news if we're running out of space in that pane. Based on some discussion with microtonal users in the past the plan was to remove the columns showing the microtonal settings and reducing that mostly to just the load .scl/load .kbm buttons. That should free up a lot of room.
As per adding old figures to the new docs, I'm in support of it, though you can likely see that the documentation efforts have lost speed.


fbg_fbdevFree not release fbdev_context

I noticed that you haven't released fbdev_comtext in fbg_fbdevFree, is there a reason for that?

thanks, fixed in #a10c238


404 at /reference/api/docker-io_api/

I found a broken link : https://docs.docker.com/reference/api/docker-io_api/#delete-a-user-repository
I need to delete an empty repository in my account

Could you tell where you found that link?

It was one of the answers found in this thread
https://stackoverflow.com/questions/44209644/how-do-i-delete-a-docker-image-from-docker-hub-via-command-line

Use the Docker Hub API as documented in: https://docs.docker.com/v1.7/reference/api/docker-io_api/#delete-a-user-repository

Hm.. yes, that looks to be an archived link from around docker 1.7  (2015). The source for that can still be found here; https://github.com/moby/moby/blob/v1.7.0/docs/reference/api/docker-io_api.md#delete-a-user-repository
But that describes the deprecated V1 registry, which is no longer supported. Container Registries now use the v2 OCI Distribution Spec API (see https://github.com/opencontainers/distribution-spec/blob/v1.0.0/spec.md#content-management, and https://docs.docker.com/registry/spec/api/)


WebAssembly Mode

Is there an existing issue for this?

[X] I have searched the existing issues

Is your feature request related to a problem? Please describe the problem.
Hi
I want to use admin template WebAssembly mode but i have my own server api project and I dont want to use
bit admin template server api project.
so as I read in documentations for running WebAssembly mode the api project has to be set as the startup project.
and when I publish the project the size of it is so large which most of it is unuseful for me.
Describe the solution you'd like
Is there any other way to publish on WebAssembly  mode without using api project?
Or may i create a simple api project just for running the client web project on WebAssembly mode?
Additional context
No response

Hi there,
Thanks for reporting the issue.
We're currently using _Layout.cshtml and asp-append-version=true to make CSS and JS files http cache as efficient as possible, and also to make prerendering possible.
To address your issue, I recommend moving your existing API code to the project template's API project.
This is a simple API project that you can customize to your needs. By doing this, you can publish a single project.
Another option is to use your existing API's address in the src/Client/Core/appsettings.json file. This will require you to publish two projects, but you can reduce the size of the published output by removing unused NuGet packages, such as HealtCheck.
We do not currently have plans to support Blazor WebAssembly with an index.html file so that it can be published as a static website.
We might consider this for the future.


Page not found - Linux installer not working

I'm using Linux Ubuntu 14.04 and this program isn't installing correctly for me.  I'm getting a "page not found :( " error with the deb file, and I can't extract the tar file. I've tried 1.6.6 and 1.6.5 in case its a version compatibility issue, but this didn't solve the issue.
Any suggestions on how to easily run this? Source code was my next step.

I can get it to work from the source code, but only by calling "sudo cnc" if I try "cnc" I get the same error as I did with the deb installer.  This leads me to believe that the deb installer probably did work but didn't run it as an admin, which means its my error and not an issue of the program.

There is also a similar permission issue that the program was running with a different account. You can check it out at https://github.com/cheton/cnc/issues/83.


Update auto-update.md

Changing the name of the Update manifest file.

Docs Build status updates of commit 2d33d4e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/extensions-chromium/enterprise/auto-update.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit f5bd697:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-GitBranchDeletedOrForcePushed] Cannot sync git repo to specified commit because branch ashishnirvana1-patch-1 has been deleted or has been force pushed

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Put out from different models on the same plot

Ideally we would be able to plot the output of different models on the same plots I think (and tell the difference via colour for example). I think you should be able to do this by getting the summary output of each nowcast model, giving it a name, combining the data frames, using the non-s3 plotting interface and passing a col = model arg.
Or alternatively rolling your own plot.

This vignette has some examples of more hacky approaches to this: https://package.epinowcast.org/articles/single-timeseries-rt-estimation.html (you should still be able to use the summary method rather than needing to extract your own variables).


All columns have minScreenWidth enabled in samples of sap.f.semantic.SemanticPage

URL (minimal example if possible):

https://openui5.hana.ondemand.com/explored.html#/sample/sap.f.sample.SemanticPage/preview
https://openui5.hana.ondemand.com/explored.html#/sample/sap.f.sample.SemanticPageFreeStyle/preview
Maybe more?

Steps to reproduce the problem:

Open one of the example pages
Narrow the viewport so that columns pop in.

What happens?
Because all columns have demandPopin and minScreenWidth enabled, the popped in columns get shifted:

Any other information?
This behavior was once issued in #1396 to which @aborjinik replied:

If you configure all the columns to be shown as a popin then we cannot have a physical table anymore. There must be always at least one visible real column

The samples should apply the fix accordingly.

Thanks for your report! This is now handled internally as<PHONE_NUMBER>.

The issue has been handled.
Should be fine and available tomorrow at the nightly build landscape: https://openui5nightly.hana.ondemand.com/


Rename sourcedist to sdist in lockfile

Summary
I think this is more consistent with Brett's proposal and looks more natural to me as a user. What do you think, @BurntSushi?

I don't love abbreviations but I do think this is more consistent with the standards.

Lol


ci: Fix nix-parse workflow

The nix_path definition was missing :/
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Tested this locally and it looked good. Will merge now since it can't get any worse than failing every PR.
Sorry to everyone involved in this mess :/

Looking good: https://github.com/NixOS/nixpkgs/pull/281378


Blazor 6.0 app fails to compile in 8.0.200.

I have a Blazor WASM application, targeting TFM 6.0. As of two hours ago a build in my CI/CD pipeline just began failing:

D:\a\1\s\src\xxx\Program.cs(23,40): error CS0118: 'App' is a namespace but is used like a type [D:\a\1\s\src\xxx\xxx.csproj]

Turns out it was using SDK 8.0.101, but with rollforward latestfeature. As of two hours ago it began installing 8.0.200.
So, something in 8.0.200 changed related to this.
I'm getting this warning as well, which I wasn't getting a couple hours ago:

CSC : warning CS9057: The analyzer assembly 'C:\hostedtoolcache\windows\dotnet\sdk\8.0.200\Sdks\Microsoft.NET.Sdk.Razor\source-generators\Microsoft.CodeAnalysis.Razor.Compiler.SourceGenerators.dll' references version '<IP_ADDRESS>' of the compiler, which is newer than the currently running version '<IP_ADDRESS>'. [D:\a\1\s\src\xxx\xxx.csproj]

I haven't dug into anything yet to provide more information than that presently.
So, something with source generators changed. Probably the thing that's supposed to be compiling App.razor into a class. I'm surprised a minor release like this changed anything at all....

Sorry I can't help with DevOps, becuase I haven't knowledge of it. My idea for now is that you can force of using specific dotnet version by defing global.json in your solution directory. For example you can use following config:
{
  "sdk": {
    "version": "8.0.200",
    "allowPrerelease": true,
    "rollForward": "major"
  },
  "tools": {
    "dotnet": "8.0.200"
  },
  "msbuild-sdks": {
    "Microsoft.DotNet.Arcade.Sdk": "8.0.200",
    "Microsoft.DotNet.Helix.Sdk": "8.0.200",
    "Microsoft.DotNet.SharedFramework.Sdk": "8.0.200",
    "Microsoft.Build.NoTargets": "3.7.0",
    "Microsoft.Build.Traversal": "3.4.0",
    "Microsoft.NET.Sdk.IL": "8.0.200"
  }
}

The list of specific .net version you can use can be found in C:\Program Files\dotnet\sdk .

this is a case of one hand (.Net SDK) not talking to the other hand (Azure DevOps hosted pools using latest Visual Studio).
How can the  latest SDK not work with latest Visual Studio? are there tests in place to ensure the E2E developer experience inside Microsoft doesn't break with every new .net SDK release? @davidfowl  FYI.

Having the same issues with azure devops also failing just recently due to this. Current workaround is to pin the sdk version back to 8.0.101 for the meantime.

Cannot reproduce on a command line - a net6.0 blazor app is building fine with .NET SDK 8.0.200. The CI must be doing something weird - from the error message it seems that it's using an old compiler (csc.exe v4.8.0) but new razor compiler (Microsoft.CodeAnalysis.Razor.Compiler.SourceGenerators.dll v4.9.0). Maybe a broken SDK installation? If you could capture a binlog (e.g., dotnet build -bl) that could help us investigate. Or put #error version in any of your .cs files which will tell us what your compiler version is.

Having the same issues with azure devops also failing just recently due to this. Current workaround is to pin the sdk version back to 8.0.101 for the meantime.

This fixed it for me for the time being

Cannot reproduce on a command line - a net6.0 blazor app is building fine with .NET SDK 8.0.200. The CI must be doing something weird - from the error message it seems that it's using an old C# compiler (csc.exe v4.8.0) but new razor compiler (Microsoft.CodeAnalysis.Razor.Compiler.SourceGenerators.dll v4.9.0). Maybe a broken SDK installation? If you could capture a binlog (e.g., dotnet build -bl) that could help us investigate. Or put #error version in any of your .cs files which will tell us what your C# compiler version is.

Use VS version of msbuild.

Use VS version of msbuild.

Which VS version? If you are using VS 17.9, that should work. VS 17.8 is not supported with SDK 8.0.200, you'd have to use 8.0.102 instead. https://dotnet.microsoft.com/en-us/download/dotnet/8.0

How are you building in this case? Are you using msbuild or dotnet build? Based on the symptoms my suspicion is that you're using msbuild or a task that uses msbuild.

Same is fixed by using old version as mentioned above.
But still could we have full-proof solution for same. Note we are facing same in our azure devops pipeline.
Task which I was using is
          - task: UseDotNet@2
            displayName: "Use .NET SDK 8.0"
            inputs:
              packageType: sdk
              version: "8.0.x"
              installationPath: $(Agent.ToolsDirectory)/dotnet

and changing version to 8.0.102 fixed the error for me
          - task: UseDotNet@2
            displayName: "Use .NET SDK 8.0"
            inputs:
              packageType: sdk
              version: 8.0.102
              installationPath: $(Agent.ToolsDirectory)/dotnet

We have the same issue while building with the latest version of VS/Build Tools installed and using Microsoft.Net.Compilers.Toolset Version="4.8.0" package to pin the specific compiler version.
@jaredpar we use MSBuild:
$ "c:\Program Files\Microsoft Visual Studio\2022\Professional\MSBuild\Current\Bin\msbuild.exe" -version
MSBuild version 17.9.5+33de0b227 for .NET Framework
<IP_ADDRESS>08

@Annautiy the task UseDotNet@2 looks correct, the problem is likely in the build task you are using - if it uses MSBuild version 17.8, that's not compatible with SDK 8.0.200. Either you need to use MSBuild 17.9 or build via the dotnet SDK (not msbuild).
@ivan-danilov

There are three pre-release 4.9.0-* versions but they are not a solution usable in production.

Microsoft.Net.Compilers.Toolset is never supported in production. From its README:

This package is primarily intended as a method for rapidly shipping hotfixes to customers. Using it as a long term solution for providing newer compilers on older MSBuild installations is explicitly not supported. That can and will break on a regular basis.

Why do you need to pin specific compiler version? If you want to pin something, you can pin SDK version instead (which always contains a single specific compiler version). Anyway, compiler 4.8.0 won't work with SDK 8.0.200.

@jjonescz I might be missing something, but it is the last MSBuild installation in the VS 2022 updated today. So yes, it is a "newer" compiler, but also the "newest" MSBuild, not an "older" one. How does the cited README imply it cannot be used in production in this configuration?
We support about a dozen different branches of the app, some of which are 5+ years old. And "shipping the hotfixes" is precisely why it is necessary. It is also a mix of .NET and .NET Framework projects, so I'm not sure dotnet can build it in the first place.

How does the cited README imply it cannot be used in production in this configuration?

This package is not supported under any circumstances. It is used by us as a tool to ship temporary hot fixes to customers. Any other use is not supported in any way.

@jaredpar thanks for the clarification. Is there a supported way to pin the compiler version that will work on both older .NET Framework and newer NET projects at the same time?

There is no way to pin the compiler as it is not a separate product. As @jjonescz mentioned the recommendation is to use the msbuild and matching .NET SDK versions. For example using MSBuild 17.9 and .NET SDK 8.0.200. Those will be capable of building both new and old projects.

@jaredpar correct me if I'm wrong here, please. There could be breaking changes across versions of Build Tools, so a hypothetical X-year-old code that targets .NET Framework could have issues if I attempt to build it with the latest compiler from .NET SDK 8.0.200.
To solve this problem, we used the Microsoft.Net.Compilers.Toolset that has those words in the first paragraph in the README file: Referencing this package will cause the project to be built using the C# and Visual Basic compilers contained in the package, as opposed to the version installed with MSBuild -- it sounds exactly what we needed. And it was working without a hitch for several years. You are saying this way is not supported.
Is there a viable alternative without keeping all branches up to date and using the latest compiler every time we need to build a one-line hotfix for 10-year-old code?

There could be breaking changes across versions of Build Tools, so a hypothetical X-year-old code that targets .NET Framework could have issues if I attempt to build it with the latest compiler from .NET SDK 8.0.200.

The .NET SDK, and the tools within it, go to great lengths to avoid introducing breaking changes for exactly this reason. We want upgrade from one .NET SDK to the other to be a friction free event.
Using Microsoft.Net.Compilers.Toolset only changes the compiler which is just a small part of the build process. The compiler though is held to the highest compat bar of any tool in the .NET SDK. Breaks here, particularly without changing langversion, are exceptionally rare and generally in very niche corner cases.


Bluetooth: Mesh: Fix adv send end callback

Friend feature relies on start/end callbacks in advertising and
adv_legacy backend was missing a call to bt_mesh_adv_send_end().
adv->started flag was not cleared in bt_mesh_adv_send_end().
Signed-off-by: Michał Narajowski<EMAIL_ADDRESS>

@LingaoM @trond-snekvik Unfortunately https://github.com/zephyrproject-rtos/zephyr/pull/38270 does not solve all the problems. adv_send_end() cannot be called in destructor function, because it's really not when adv is stopped. Friend will cache messages for LPN and does not destroy them after sending, it keeps them in cache in case it needs to retransmit the same message. So really, to get the Friend feature to work properly I had to add adv_send_end() right after adv_stop. Also, the flag was not cleared in stop.

This fixes MESH/NODE/FRND/FN/BV-16-C and MESH/NODE/FRND/FN/BV-22-C.

I'm think we can temporarily alloc buffer from adv.c when sending.
I'm meaning we can copy this, so that frnd->last will not interrupt adv end callback.

We can't call adv end cb multiple times, also adv flag will be clear when alloc buffer.

Can you point out how we would call adv end cb multiple times with this change?

I'm not saying this is 100% the right fix, but the friend is expecting start/end callbacks to be called as designed (so at start and end of adv) and the friend feature is implemented around that. And also that the same buffer can be sent multiple times and the start/end callbacks have to be called every time.

In friend_timeout function, every times to resending, will encrypted again, so we can alloc buffer from adv buffer poll before encryption. And send this out.

So that previous pr 38290 will be revert.

@trond-snekvik Any through to this?

Ok, I will try preparing a patch that will send a copy so that destroy will be called right after sending.

@michal-narajowski this can be closed, right? Superseeded by #38312


add radio buttons

This adds the material radio buttons to our package.
If you want to test it out manually, I have a branch in open-discussions which is set up for testing it (I will change that branch to just add the new version of the package and the peer dependency once this merges).
Do this:

navigate to open-discussions and checkout the ap/add-radio-butotn branch (yes I misspelled it, haha)
checkout this branch and run npm pack
copy the resulting .tgz file to your open-discussions directory
run docker-compose run watch yard add ./foobar.tgz (you may need to delete your node_modules first)

Ok, so then you should have the code from this branch installed over my open-discussions branch. I added the <Radio /> component to the channel creation form, so if you visit /manage/channel/new you should see the material radio buttons. You should be able to switch between them, and they should look snazzy and so on.

Codecov Report

Merging #8 into master will increase coverage by 2.06%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master       #8      +/-   ##
==========================================
+ Coverage    93.9%   95.96%   +2.06%
==========================================
  Files           6        8       +2
  Lines          82      124      +42
==========================================
+ Hits           77      119      +42
  Misses          5        5

Impacted Files
Coverage Δ

src/Radio.js
100% <100%> (ø)

src/Radio_test.js
100% <100%> (ø)

scripts/test/configure.js
100% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Persist TLS certificate and key of antrea-controller

In clusters where upgrade is performed with rolling update of Nodes and images of new versions are only available on new Nodes, the deployment strategy of antrea-controller is set to RollingUpdate to prevent antrea-controller Pod from being deleted immediately when the deployment is updated, leading to a period in which no antrea-controller is running. However, it also causes two instances of antrea-controller to run simultaneously in a short time, making it possible that the old instance overrides the CA bundle stored in antrea-ca ConfigMap, APIServices, and Webhooks, while the new instance won't update them again.
The commit makes two changes to fix the problem:

CACertController will periodically sync the CA cert to improve the robustness.

Self-signed TLS certificate and key of antrea-controller will be stored in a Secret and will be reused after restarting controller. This makes running multiple antrea-controller instances simultaneously possible and makes restart of antrea-controller smoother as antrea-agents don't need to retrieve a new CA bundle most of the time.

Besides, the change is helpful for implementing high-availability of antrea-controller in the future.

@tnqn

However, it also causes two instances of antrea-controller to run simultaneously in a short time, making it possible that the old instance overrides the CA bundle stored in antrea-ca ConfigMap, APIServices, and Webhooks, while the new instance won't update them again.

Should we backport this then? It seems that there is no automatic recovery in this case, until the Controller is manually restarted. Could this explain some issues we saw over the years, with APIServices / Webhooks not working because of TLS issues?

However, it also causes two instances of antrea-controller to run simultaneously in a short time, making it possible that the old instance overrides the CA bundle stored in antrea-ca ConfigMap, APIServices, and Webhooks, while the new instance won't update them again.

Should we backport this then? It seems that there is no automatic recovery in this case, until the Controller is manually restarted. Could this explain some issues we saw over the years, with APIServices / Webhooks not working because of TLS issues?

There was a time the certificate was overridden by the deployment tool kapp when it's used. I don't know what was the cause for other occurrences. Even for the latest report, we only know there was an old controller overwriting the CA bundle with its own one generated two days ago, but this shouldn't happen as overwriting the ConfigMap is one-time job and an old instance will only do it again after 1/2 of the valid duration (half a year) or it never succeeded to update all resources' CA bundle in the last two days.
The change is compatible when upgrading from an old controller to patched controller, as well as patched controller to patched controller. However, it may cause issue if upgrading from patch controller to unpatched controller. For example, if we release 1.14.3 with the patch, and users upgrade 1.14.3 to 1.15.0, there would be an issue. Not sure if we can assume users will always upgrade to latest patch version of a minor release. But it's pretty sure this only happens when the deployment strategy is changed to RollingUpdate.

But it's pretty sure this only happens when the deployment strategy is changed to RollingUpdate.

Thanks, I missed that earlier. Didn't realize it could only happen for custom installations.

/test-all


Use AWS_CRT_MEMORY_TRACING to enable memory trace

Prior to this commit, the AWS CRT resource manager
(SharedCrtResourceManager) in the device client enabled
memory trace for all allocations without any means to
disable this behavior.
On this commit, memory trace is made configurable using
the AWS_CRT_MEMORY_TRACING environment variable.
By default, memory trace is disabled.
Setting the value of AWS_CRT_MEMORY_TRACING=1 (BYTES)
enables tracking of the size of the allocated memory.
Setting the value of AWS_CRT_MEMORY_TRACING=2 (STACKS)
enables capturing the callstack of each allocation.
Device client unit tests in the CI pipeline are invoked
with AWS_CRT_MEMORY_TRACING=1.

Motivation

Please give a brief description for the background of this change.
Issue number:

Modifications
Change summary
Please describe what changes are included in this pull request.
Revision diff summary
If there is more than one revision, please explain what has been changed since the last revision.
Testing
Is your change tested? If not, please justify the reason.
Please list your testing steps and test results.

CI test run result:

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@HarshGandhi-AWS @graebm Updated the review with the following additional changes:

Added a new documentation page docs/ENV.md with a description of all environment variables including memory trace.
Added a unit test for reading the value of the trace environment variables into PlainConfig.
Added some logic to the device client main to support printing the contents of the trace when SIGHUP is received.  If there are no allocations which are not freed, then nothing is printed.


Switch commented out test to pending

This should be pending rather than commented out.
Long term we can probably stub in a super short timeout via a custom .yarnrc file but this is good enough for the first iteration here.

if we did xit then we wouldn't see that this test exists (and was skipped over) when we run the test suite

From my local testing, this isn't true... xit, skip(), and pending() all show up in the test output.
What's more interesting is that a test that's marked pending() but passes will fail the test suite... so the fact that this test didn't fail the suite indicates it's currently broken. 🤔

Indeed, the test is running/failing:

https://github.com/dependabot/dependabot-core/issues/6778


Refactor for a classless API

cc @bhousel

Just a minor aesthetic API tidy. Let me know what you think!

Thanks!!  Yeah I like this better too..


Make sign、waf、monitor plugins using common plugin handle

https://github.com/dromara/soul/issues/372

Codecov Report

Merging #379 (bc429f3) into master (7d0a5fe) will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master    #379   +/-   ##
======================================
  Coverage    0.00%   0.00%
======================================
  Files          23      23
  Lines          61      61
  Branches        1       1
======================================
  Misses         61      61

Continue to review full report at Codecov.

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


Icon from https://icons.terrastruct.com for Amazon CloudFront throws error

When using the icon:
https://icons.terrastruct.com/aws%2FNetworking & Content Delivery%2FAmazon-CloudFront.svg
There is an error rendering:
Error: ...  ...

This actually happens for all of the Amazon CloudFront icons.

Hey @bytesbybrandon!
Thank you for reporting the issue.
I noticed that the & symbol in url is causing the problem.
I reproduced in #578
https://github.com/likec4/likec4/blob/f1ce04ee56483b40588bb55702fe7f126cdb5a24/packages/layouts/src/graphviz/__fixtures__/index.ts#L13-L14
Looking for solution

@davydkov , was this fixed or only reproduced?  I'm having the same issue with some other AWS images from terrastruct.  Specifically
https://icons.terrastruct.com/aws%2FSecurity%2C Identity%2C & Compliance%2FAWS-Key-Management-Service.svg
and
https://icons.terrastruct.com/aws%2FSecurity%2C Identity%2C & Compliance%2FAWS-Identity-and-Access-Management-IAM_Temporary-Security-Credential_light-bg.svg

@tylerhubert can you try 0.60.3?

@davydkov that fixed it, thank you!  Sorry I missed that I was a version behind.

@tylerhubert you were correct, I patched quickly after your comment. Thanks 👍

Thank you for the quick turn around!  This project is awesome.  I love the flexibility of the views and the ease of creating the diagrams.  I've been able to build out a lot of things in a short amount of time.


Please add example for download all album and all photo from google photo to local

Hello! Thanks for gphotospy.
Please add example for download all album and all photo from google photo to local.
Thanks!

This is how I did it. Just create the local_storage directory first.
#!/usr/bin/env python3

from gphotospy import authorize
from gphotospy.media import Media, MediaItem
from pathlib import Path
import urllib.error

# Select secrets file (got through Google's API console)
CLIENT_SECRET_FILE = "credentials.json" # Here your secret's file. See below.

# Get authorization and return a service object
service = authorize.init(CLIENT_SECRET_FILE)

local_storage = Path("local_storage")

media_manager = Media(service)
for i in media_manager.list():
    i = MediaItem(i)
    print(i.filename())
    local_file = local_storage / i.filename()
    if not local_file.exists():
        try:
            content = i.raw_download()
        except urllib.error.HTTPError:
            print(f"Cannot download: {i.filename()}")
            continue
        local_file.write_bytes(content)


Popover sourceRect should be set to view's bounds rather than frame?

Recently I experienced strange behaviour with popovers presented on iPad: I tried to present a popover and it didn't appear on screen. No exception was thrown and UI became kind of frozen for a few moments/taps. After that it worked exactly as it would worked if the popover was cancelled.
My application's UI is quite complex and I don't have time to reproduce this case in a small project. The problem happened when I presented a popover from a UITableViewCell located at the end of a long UITableView. User had to scroll to reach the presenting cell. When tapped a popover is presented asking confirmation. My view's frame is something like:
▿ (0.0, 982.0, 768.0, 53.0)
  ▿ origin : (0.0, 982.0)
    - x : 0.0
    - y : 982.0
  ▿ size : (768.0, 53.0)
    - width : 768.0
    - height : 53.0

And its bounds are:
▿ (0.0, 0.0, 768.0, 53.0)
  ▿ origin : (0.0, 0.0)
    - x : 0.0
    - y : 0.0
  ▿ size : (768.0, 53.0)
    - width : 768.0
    - height : 53.0

(As expected. Frame are view's coordinates expressed in parent's view coordinate system and bounds are view's coordinates expressed in view's coordinate system, so bounds are expected to have a 0 origin and frame's size).
Checking what does PresenterKit I've confirmed that it currently sets view's frame as popover's sourceRect: https://github.com/jessesquires/PresenterKit/blob/develop/Source/ViewControllerExtensions.swift#L129
However checking documentation on UIPopoverPresentationController:

var sourceView: UIView?
The view containing the anchor rectangle for the popover.
var sourceRect: CGRect
The rectangle in the specified view in which to anchor the popover.

Which made me wonder whether PresenterKit should be setting view's bounds as sourceRect instead of frame.
I've tried changing that line and it fixed my issues but without proper test cases or confirmation by a fellow developers I'm not really sure whether this change is actually fixing the issue or just hiding the symptom.

Thanks @Sumolari ! Great report. 💯
So PresenterKit is doing this correctly according to the docs:

var sourceRect: CGRect { get set }
Use this property in conjunction with the sourceView property to specify the anchor location for the popover.

In other words:

sourceView == the view containing the popover
sourceRect == the anchor rect inside sourceView

This means we definitely do not want .bounds here. If we did that, then every popover would be showing in the top left corner.

I'm not really sure whether this change is actually fixing the issue or just hiding the symptom.

Sounds to me like this change is hiding a symptom 😄

In other words:

sourceView == the view containing the popover
sourceRect == the anchor rect inside sourceView

Are you sure about that? Checking the docs:

var sourceView: UIView?
The view containing the anchor rectangle for the popover.
var sourceRect: CGRect
The rectangle in the specified view in which to anchor the popover.

It seems that sourceView does not contain the popover but the rectangle in which popover is anchored. That also matches my experience: I've presented popovers using as sourceView smaller views like buttons or table view cells.
I've also been able to create a small test project and recorded a video of the behaviour. When I use as sourceView my instance of UITableViewCell popover isn't anchored properly, however when I use as sourceView its contentView it's properly anchored. Both views have almost the same size but different origin:

Cell:

frame: (0.0, 308.0, 768.0, 44.0)
bounds: (0.0, 0.0, 768.0, 44.0)

contentView:

frame: (0.0, 0.0, 768.0, 43.5)
bounds: (0.0, 0.0, 768.0, 43.5)

Hi all 😀,
As we can see from the docs the sourceView and sourceRect are somehow playing together. So I had a play with different scenarios in order to try to find an explanation regarding this issue.
Firstly if we ignore the sourceRect the popover is still pointing to the right cell but the alignment is not correct..

So as we can understand in this instance the popover used some information from the sourceView and most probably the sourceView.frame since at least the origin of the pointing arrow seems correct. I can only assume based on that, that the reason it can work with the .bounds is because let's say the popover respects the origin of the sourceView and the size of the sourceRect (maybe the reason that ignores the origin of the sourceRect is because it is .zero) .
The conclusion on the first of the experiments is that we most probably we should provide a way for passing a custom sourceRect and not take for the granted the frame of the sourceView.
That leads me to the solution that I found working. First of all I quickly introduced a way of passing a customRect  and I did the following:
instead of var config = PopoverConfig(source: .view(cell)) I pass the tableView var config = PopoverConfig(source: .view(tableView)) which I believe it can make sense since

sourceView == the view containing the popover

and then all I had to do is to pass the frame of the cell , config. customRect = cell.frame (which means popoverController?.sourceRect = c. customRect)

So to sum up, as I said before we should probably introduce a way of passing a customRect (maybe in a different way that I did) 😀

Nice! Thanks @Sumolari and @psartzetakis ! 💯
Proposed solution:
Update PopoverConfig.Source.view to include an optional frame.
Old:
case view(UIView)

New:
case view(container: UIView, frame: CGRect?)

If frame is nil, then we'll use container.frame.


Only one (main) LWC folder is being watched

We have split up our codebase into several separate directories:

src/main/default/lwc
src/main/core/lwc
src/main/customer360/lwc
src/main/cpq/lwc
etc.

However, only when modifying LWC's in the first of these directories (src/main/default/lwc), I get a message like:
[LWC Dev Server] File 'c/accountIcons/accountIcons.html' modified - updating.

Any changes to LWCs in the other directories are being ignored.

@jverelst Please attach the contents of your sfdx-project.json to the issue description.


SoftImmutableProxy

Codecov Report

Merging #11 (c75360b) into master (80bd615) will decrease coverage by 0.77%.
The diff coverage is 95.07%.

@@             Coverage Diff              @@
##             master      #11      +/-   ##
============================================
- Coverage     97.38%   96.61%   -0.78%
- Complexity      374      409      +35
============================================
  Files            20       24       +4
  Lines           689      739      +50
  Branches         90       92       +2
============================================
+ Hits            671      714      +43
- Misses            9       15       +6
- Partials          9       10       +1

Impacted Files
Coverage Δ

...util/immutable/ImmutableProxyForwarderBoolean.java
100.00% <ø> (ø)

...util/immutable/ImmutableProxyForwarderInteger.java
100.00% <ø> (ø)

...on/util/immutable/ImmutableProxyForwarderLong.java
100.00% <ø> (ø)

.../util/immutable/ImmutableProxyForwarderString.java
100.00% <ø> (ø)

...util/immutable/GenericImmutableProxyForwarder.java
50.00% <50.00%> (-50.00%)
:arrow_down:

.../immutable/GenericSoftImmutableProxyForwarder.java
50.00% <50.00%> (ø)

...ronn/reflection/util/immutable/ImmutableProxy.java
92.30% <90.90%> (-4.92%)
:arrow_down:

.../reflection/util/immutable/SoftImmutableProxy.java
92.30% <92.30%> (ø)

...flection/util/immutable/ImmutableProxySupport.java
95.53% <95.53%> (ø)

...util/immutable/ImmutableProxyForwarderSupport.java
97.22% <97.22%> (ø)

... and 9 more

Continue to review full report at Codecov.

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

Hello @bwaldvogel. Should I do anything else or you will check the code and do the rest on your own?

@neutrino1911: Thanks for your contribution. In the meantime I introduced an option enum that can be passed when creating an immutable proxy: ImmutableProxy.create(…, options).
I think that your idea of "softness" could now be implemented as one such option. This should dramatically simplify the code as we would just need to ignore final classes and classes with final methods, right?
Are you still interested in this change and willing to retrofit your PR?

Closing because of the inactivity. Feel free to reopen.


Truncate Attestation desc length on Attestations section in App View

Already done (150 characters), full description shows on tooltip.


Convert Facemesh landmarks into a UV texture and 3d Object obj file.

Please make sure that this is a feature request.
System information (Please provide as much relevant information as possible)

MediaPipe Solution (you are using): FaceMesh
Programming language : Python
Are you willing to contribute it (Yes/No): Yes

Describe the feature and the current behavior/state:
Was trying to build a solution that converts Facemesh landmarks into a Resolvable UV texture and an Object file. I've come across #1698 which I've tried to implement and was amazing, thanks to @apple2373 for their implementation, I just wanted to extend the solution a bit further.

The current implementation stretches out the UV at the very ends, where texture information isn't available, is there a way to add in an image of the same person looking a bit side-ways on the both ends to gain texture data from lower cheeks as-well and fill the UV accordingly?

The UV texture is strictly limited to the contours of the face that face-mesh provides, is there a way to extend it until the very end of the face i.e until ears, scalp-line on the top and a little bit towards the neck in the bottom?

The current implementation also doesn't generate any normalised result, it basically generates a result according to the current image size, resolution inputted, is there anyway we can normalise the result to generate same kind of obj every-single time? and possibly even an entire head.

Will this change the current api? How?
Who will benefit with this feature?

Anyone looking to generate 3d object heads from Facemesh landmark generations, 3d game developers.

Please specify the use cases for this feature:

Could directly be used to generate real word people as 3d models to be used directly in 3d spaces, such as games, or VR worlds.

Any Other info:

Hello @StateGovernment Thanks for your thoughts on extending the functionality of FaceMesh. Since this is not possible at the moment, we will log this as a feature request and prioritise it internally.


Optimize ExecutionStateTracker reset to not iterate over all trackers

Showing up as .5% cpu on benchmarks, and is unnecessary. The common case is we deactivated successfully and don't need to do anything with the map.

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

R: @amaliujia

test failure looks unrelated

Run Java PreCommit

Run Java PreCommit


[Backport] Make sketch encoding configurable (#17086)

Backport apache/druid#17086

Already backported in #17153


Add support to address a local device via IPv6

Because port-forwading works differently for IPv6, this PR allows the app to construct the global IP of a device via the second half of it's IP (which is always the same if you configure it correctly) and the FRITZ!Box global IP.
It then just puts that into cloudflare and this way you can access the device over IPv6.

Sadly doesn't work

Hi, what was the problem?

I thought this would work but it turns out the second half is different in the local address and the global address, so just combining them doesn't work

I'm looking if I can pull the info from the API or so

Should be an endpoint for this, same way the UI get's the information I think. Not sure if I understand the outcome correctly.
There would be two port forwardings in the box that expose devices to the WAN side:
NAS LAN::75ab => CloudFlare => WAN::75ab
Fridge LAN::75ac =>  CloudFlare => WAN::75ab
Not that versed with IPv6 sadly

As far as I understand it (and it seems to work), you have to portforward the part and address it's IPv6 directly if I enter it fritz box IPv6 I just get to the Fritz box login screen

(I sadly can't find any API docs for the fritz box though)

I think it should be in one of the many TR-064 SOAP endpoints https://avm.de/service/schnittstellen/ if you really want to dig through that stuff ;)

I'm coming to think it's easier to just add some second service the directly takes the IP address from the server for IPv6

Okay so apparently I wasn't too wrong in my initial thought, but you need to use the IPv6 Prefix instead of using the IPv6 public address to calculate the global IP

So I think I fixed it, but I'll have to try it

So I finally got it working I hope there's no edge cases, but it should work for most/all people.
I also added Authentication via API Tokens
Please have a look if the Authentication is sufficient.

You also probably want to tag a release and push a tagged docker container, so you can specify a specify release for the contaner

Cool, thanks I hope to get it reviewed the coming week, will let it run a bit before merging :+1:

I've added you to the CONTRIBUTORS.md, hope that's fine for you. I'll trigger the docker hub build process and publish the image under adrianrudnik/fritzbox-cloudflare-dyndns:preview and let it run for while.

Cool I hope it works alright, it shouldn't break anything existing, apart from the deprecation notice on the legacy key machanism


Add basic functionality for UpcomingTaskCommand

#167
Task is upcoming if date matches or is after current date. Still need to implement time

Codecov Report

Merging #200 (0bd9122) into master (de74321) will decrease coverage by 0.35%.
The diff coverage is 0.00%.

@@             Coverage Diff              @@
##             master     #200      +/-   ##
============================================
- Coverage     59.17%   58.82%   -0.36%
  Complexity      581      581
============================================
  Files           114      116       +2
  Lines          2337     2351      +14
  Branches        283      284       +1
============================================
  Hits           1383     1383
- Misses          850      864      +14
  Partials        104      104

Impacted Files
Coverage Δ

...ogic/commands/taskcommand/UpcomingTaskCommand.java
0.00% <0.00%> (ø)

src/main/java/dash/logic/parser/TaskTabParser.java
8.69% <0.00%> (-0.40%)
:arrow_down:

.../model/task/TaskDateAfterCurrentDatePredicate.java
0.00% <0.00%> (ø)

Continue to review full report at Codecov.

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


Comparison of Alevin-fry to Cellranger for 5' libraries

Closes #133. This PR adds a comparison of using Cell Ranger to Alevin-fry for pre processing 5' libraries. Here, I am analyzing 2 10Xv2_5prime samples, SCPCR000286 and SCPCR000287, that have been processed with Cell Ranger and Alevin-fry. For Cell Ranger, the orientation is automatically detected based on how many reads are in the antisense direction (this was confirmed for these samples by looking at the web_summary.html). For Alevin-fry, I am using the same configurations that we are using for 3', selective alignment with the splici index, unfiltered permit list, and cr-like-em resolution, but with the use of the ISF flag for library type, indicating the orientation of the libary.
For this analysis, I generated the per cell and per gene metrics using the benchmarking_generate_qc_df.R script which creates the quant_info.tsv, coldata_df.tsv, and rowdata_df.tsv used for inputs to the analysis outlined in this notebook. In running that script again, I noticed an error in use of scpcaTools::import_quant_data() and had to add in the mtx_format option (this is described in AlexsLemonade/scpcaTools#46). This function is utilized in the make_sce_list.R benchmarking function and in order to successfully run using mapply I had to add in that argument.
After generating the necessary qc dataframes needed for plotting, I went ahead and restricted the analysis to only cells that were identified in both tools. I then compared the following:

mitochondrial content/cell
UMI/cell
genes detected/cell
mean gene expression
overlap of genes detected across the tools

Interestingly, these results are not as good as we have seen previously and the alevin-fry quantifications are showing much lower UMI/cell and genes detected/cell than with Cell Ranger. Also the correlation coefficients of mean gene expression are in the range of 0.5-0.6, whereas with the 3' data we were seeing coefficients above 0.98. I double checked the log files to ensure that both of these were run with the correct configurations using the ISF library type with Alevin-fry, but it appears that these are not as consistent as we would have hoped.
One thought I had is that the 5' data doesn't do as well with the splici index or the other configurations that we are using so we can try out other options with Alevin-fry, but I am open to other suggestions or ideas.

Ugh, these do not look good. I suspect that just switching to ISR may not be sufficient.
I'm worried that alevin may be reverse complementing the cell barcodes, such that they would no longer match the provided list. This wouldn't have been a problem until the introduction of the unfiltered mode, as cell barcodes were only checked within libraries, so RC everything would be fine.
One test would be to run alevin in  knee mode, which would allow it to choose its own barcodes. Then we could check if those barcodes match reverse complements of the CR barcodes.
If that works, we could provide a reverse complemented barcode list for 5' samples, which we would then have to reverse after import. Which isn't the worst thing in the world, but does complicate matters.
It is also possible that the ability to specify read geometries added in salmon 1.4  might give us a solution, if we are allowed to use reversed start and finishes. So we might be able to specify
--read-geometry 2[end-1] --bc-geometry 1[1-16] --umi-geometry 1[17-26]
rather than the default
--read-geometry 2[1-end] --bc-geometry 1[1-16] --umi-geometry 1[17-26]
Not sure if that is supported, but we could ask.  (I think it would be worth diving a bit deeper to see if we can find if this is the problem before we did that though.)
I'm also looking a bit at https://salmon.readthedocs.io/en/latest/library_type.html, and wondering if MSF might actually be the read format we want for 10xv2 5prime? I'm probably getting myself confused. Sort of curious what alevin would choose if given auto as an option.

So, I haven’t had a chance to look into this in any depth yet, but one thing worth noting is that, in the alevin-fry pipeline, the specification of the library type is mostly immaterial.  This is because after discussion with @k3yavi, we made the decision to have the RAD file contain reads mapping in both orientations, and to leave orientation filtering to the generate-permit-list step.  So, the filtering by read orientation should happen in the fry step.
@jashapiro — I’m curious about the hypothesis regarding reverse complementing of the barcodes.  Is it the case that the read containing the barcode / UMI in this protocol isn’t in a prescribed orientation?  For processing 5’ data, I know that currently we are not making use of the biological sequence on the barcode / UMI read (though this is on our radar), but I was under the impression that the barcode / UMI extraction was otherwise basically the same.  Is there a reason this should not be the case?

@allyhawkins & @jashapiro : one more thought I had — what does it look like if you use —sketch mode here instead.  While selective alignment provides higher precision, it does not tolerate a lot of divergence (at least with the default parameters in alevin).  If the 5’ reads are often softclipped, this could lead to a lower alignment rate in this data using selective alignment.

@jashapiro — I’m curious about the hypothesis regarding reverse complementing of the barcodes. Is it the case that the read containing the barcode / UMI in this protocol isn’t in a prescribed orientation? For processing 5’ data, I know that currently we are not making use of the biological sequence on the barcode / UMI read (though this is on our radar), but I was under the impression that the barcode / UMI extraction was otherwise basically the same. Is there a reason this should not be the case?

Yeah, that seems to have been my mistake. I was thinking that if the mapping was strand-specific, then cell barcode mapping might be too. Some of our comparisons between mappers start by filtering to shared barcodes, so if that was the problem we could end up filtering out many of the "real" cells.  But it doesn't look like that was the issue.

So, I haven’t had a chance to look into this in any depth yet, but one thing worth noting is that, in the alevin-fry pipeline, the specification of the library type is mostly immaterial. This is because after discussion with @k3yavi, we made the decision to have the RAD file contain reads mapping in both orientations, and to leave orientation filtering to the generate-permit-list step. So, the filtering by read orientation should happen in the fry step.

Ah! We had missed (or forgotten about) this! We didn't change the orientation!
@allyhawkins: we need to update this line to either rc or both
https://github.com/AlexsLemonade/alsf-scpca/blob/2011c305ce80ba8afe160a35cf58200dd9024aa1/workflows/alevin-quant/run-alevin-fry.nf#L112

@rob-p Thank you so much for the help on this one! Changing from using the fw option to rc for the read orientation while leaving the library type alone seemed to do the trick!
@jashapiro I went ahead and updated the notebook to include the samples run using rc and have removed the knee filtering. In doing so, I did choose to keep the comparisons where I looked at all cells without restricting to shared cells to show how similar the distributions are even before restricting to shared cells. The only caveat here is that it looks like Alevin-fry may be reporting some of the counts and number of genes/cell a bit higher than Cell Ranger, but that seems to decrease a little bit when restricting the analysis to only genes found in > 5% of cells. I am not really that concerned about these differences and feel pretty confident that we should be able to implement use of this workflow for our 5' samples.


Scroll render content error

Scroll down to page 6. Content display error.
PDF file: http://s000.tinyupload.com/?file_id=87255531749294572229

I found a workaround.
PDF render file embed font or other reason (i don't known) error.
Workaround by edit PDF file format all text font to Times Roman, to remove embed font


MD5 Hash state file to prevent issues on windows

Pretty simple, just pass the cwd string into md5 to get a valid filepath for windows/mac/etc

This is probably the way to go: https://github.com/TimUntersberger/neogit/pull/470


golden-cheetah: fix build, 3.5-RC2X -> 3.5

Motivation for this change
golden-cheetah broke during aec3c76dcabb3ceeb9975c5b6492fe68f9ceafa7 (bison bump).
This applies a fix proposed upstream at https://github.com/GoldenCheetah/GoldenCheetah/pull/3590. Upstream issue: https://github.com/GoldenCheetah/GoldenCheetah/issues/3586
This also bumps to the proper release, not the RC we're currently at.
Once merged, should be backported to 20.09 as well.
Things done

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

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

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

Result of nixpkgs-review pr 100156 1

1 package built:
- golden-cheetah

Backported to 20.09 in 87f329dfcc3f462227b72c6e09a5d2d2f0f012f0 and 1467c169ab9e40962283a8573fd17e6638abc482.


Link to the Manifest Network doesn't work

It should be updated to use the following URL: https://liftedinit.org/#/hosting

Fixed in https://github.com/liftedinit/ghostcloud


multiple_maps - iOS: Fix misplaced or white splash screen

The splash screen on iOS was misplaced or was not appearing. To fix this, the views will not be removed anymore from the view hierarchy and the plugin layer will be send only to the front, when the splash screen is dismissed.

@canadaka @chrigi @fabriziogiordano
Hello, would you be able to review this Pull Request and possibly get it merged in?

@wf9a5m75 - Would you be able to review this Pull request and possibly get it merged in, if you think it would fix the related issue?


Error fetching image manifest list from private AWS ECR repo

I have been trying to use enroot import with a private AWS ECR repository, and have been running into an issue when retrieving the image manifest list. I was able to setup my .credentials file and successfully complete the authentication step following NVIDIA/enroot#59, however when fetching the image manifest list I got the following error:
$ enroot import docker://0000.dkr.ecr.us-east-2.amazonaws.com/image-repo:image-tag
[INFO] Querying registry for permission grant
[INFO] Authenticating with user: AWS
[INFO] Using credentials from file: /path/to/enroot/.credentials
[INFO] Authentication succeeded
[INFO] Fetching image manifest list
[ERROR] Could not process JSON input

This error is being thrown by the common::jq function being called in docker::_download, and when printing the curl response that is being passed into common::jq, I found that the response to the manifest list request was Not Authorized in plain text. This error has been thrown both when installing enroot from source and from packages.
Do you have any insight into resolving this issue?
Enroot version: 3.4.0
Docker version: 20.10.17

In the same environment in which I saw the error above, I was able to successfully pull the image from the private AWS ECR repo using docker pull with the following commands:
# Authentication
aws ecr get-login-password --region us-east-2 | docker login --username AWS --password-stdin 0000.dkr.ecr.us-east-2.amazonaws.com

# Pulling
docker pull 0000.dkr.ecr.us-east-2.amazonaws.com/image-repo:image-tag

So I do not think that the error is from having inadequate permissions or authentication issues in my environment.

How did you setup the credentials file? Did you follow https://github.com/NVIDIA/enroot/blob/master/doc/cmd/import.md#description?

Yes, my .credentials file is:
machine 0000.dkr.ecr.us-east-2.amazonaws.com login AWS password $(aws ecr get-login-password --region us-east-2)
And is located in the directory which my enroot.conf file set as the ENROOT_CONFIG_PATH.

Um not sure what's happening then, maybe ECR changed their authentication scheme.
Authentication succeeded means that you successfully retrieved a token though, so not sure what changed there.
You got try to use mitmproxy to spot the difference between Enroot and Docker in the specific case.

Was there a solution to this problem?  Currently running into the same issue.  I get a proper authentication, but end up with the same unable to parse json input error.

I'm using this workaround:
ecr get-login-password --region us-east-2 | docker login --username AWS --password-stdin 123.dkr.ecr.us-east-2.amazonaws.com
docker pull 123.dkr.ecr.us-east-2.amazonaws.com/my-image
enroot import --output /fsx/containers/my-image.sqsh dockerd://123.dkr.ecr.us-east-2.amazonaws.com/my-image

I think the underlying issue is still there.

@3XX0 hello! Apologies I meant to help look at this a long while back, and got distracted with comparing how it might have worked before.  I did look at the temporary patch in #59 which I agree is a bit gross, but does work.
ECR doesn't have a auth endpoint. It's designed to be a multi-tenant registry, and treats repos as a tenancy boundary. It can be fiddly to deal with when working with the v2 OCI API. The GetAuthorizationToken API needs to be used, or 'aws ecr get-authorization-token' vs 'aws ecr get-login-password'.
So, the best way I think is to add in a change like you had done in that issue comment. I can file a PR tomorrow AM (a bit late here now), and I'll add in a change to the config doc and you can take a look at let me know what you think. Thanks!


Adding event to primitive test/nuxt lagging model

Describe the bug
I have added event, for example: @double-click="onDoubleClick" it make model lagging:
https://github.com/user-attachments/assets/e2404590-8f63-4650-b390-85116dff840b
Reproduction
https://pre-release.3d-orthoplan.com/6698f67471af3db950bcd1a6
Steps to reproduce
No response
System Info
System:
    OS: Windows 11 10.0.22631
    CPU: (32) x64 Intel(R) Core(TM) i9-14900K
    Memory: 31.75 GB / 63.75 GB
  Binaries:
    Node: 20.15.1 - C:\Program Files\nodejs\node.EXE
    npm: 10.7.0 - C:\Program Files\nodejs\npm.CMD
    pnpm: 9.5.0 - ~\AppData\Roaming\npm\pnpm.CMD
  Browsers:
    Edge: Chromium (127.0.2651.74)
    Internet Explorer: 11.0.22621.3527

Used Package Manager
pnpm
Code of Conduct

[X] I agree to follow this project's Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] The provided reproduction is a minimal reproducible example of the bug.

It is a bit not noticable when you not open dev-panel of browser, why it becomes much more laggy when you open dev-panel of the browser ?

Hi @Adham2023 could you please provide me which versions of are you using.

Core
Nuxt
Cientos

Also, how many polygons the model has?
Thanks


Add link to the page

Using one of the suggested solution in https://github.com/kubernetes/website/issues/45007#issuecomment-1925442177 in this PR to fix issue https://github.com/kubernetes/website/issues/45007
Closes https://github.com/kubernetes/website/issues/45007

/sig cluster-lifecycle

/retitle Add link to supported networking addons in "Creating a cluster with kubeadm" page

I edited the PR description so that this does not close #45007
/approve


add doctest support

close #4317
preview:

bors r+
I think we should also handle doctests on things other than functions, but this is a good start!