Consistency references to useEffect, useRef etc.

Is your feature request related to a problem? Please describe.
I would like to ask about the governance process for linting rules.
I received the comment:

Can we import the useEffect from above consistently with other parts of the application?

Originally posted by @geido in https://github.com/apache/superset/pull/18200#discussion_r800929136
Linting rules are often a sore point or at least a subjective feeling. Are there general rules for managing eslint rules in a project that I should follow when proposing changes?
We do not import that consistently in project, for example:
https://github.com/apache/superset/blob/076f774daf3c0bad41b6f162e96f21949ddee1f7/superset-frontend/src/components/IndeterminateCheckbox/index.tsx#L85
https://github.com/apache/superset/blob/99d15b25b0177e0b62c25fe859a1f31262b0f7e8/superset-frontend/src/components/Icons/Icon.tsx#L20
I would like to propose that the above-mentioned suggestion was presented as a linting rule and enforced.
Describe the solution you'd like
I have developed a suitable linter:
export default function (context) {
  return {
    // This listener will be called for all expression like React.useRef, React.useEffect
    'MemberExpression[object.name="React"][property.name=/use.*|forward/]': function (node) {
      return context.report({
        node,
        message: `Import ${node.property.name} directly instead of referencing it via ${node.object.name}.${node.property.name}`
      });
    }
  };
}

You can check it at https://astexplorer.net/ .

Describe alternatives you've considered
Alternative no-restricted-syntax (see
https://eslint.org/docs/developer-guide/selectors ) can be configured to avoid import, but it will reduce the precision of the error message.
{
  "rules": {
    "no-restricted-syntax": ["error", "MemberExpression[object.name='React'][property.name=/use.*|forward/]"]
  }
}

We might also do not introduce any linting rules, but it will increase a maintainer burden to communicate & validate that rules manually.
Additional context

Hello @ad-m I think this is a good idea! Thanks for sharing. I am moving this issue to discussions as we are looking to use the Github issues for true bugs only.


i18n: update Italian translations

https://github.com/localsend/localsend/issues/345

would you consider adding the Italian community in the "Discussions" section here on GitHub and on the website (https://localsend.org/#/community)?

Sure


Make peer-list handle SIGUSR1

The Docker image percona/percona-xtradb-cluster-operator:$version-haproxy configures the STOPSIGNAL to SIGUSR1 to shutdown HAProxy gracefully. peer-list needs to handle this as well because it is bundled in the same container.
Otherwise peer-list will just ignore the signal which leads to the pod staying in Terminating status for quite a while.
Closes K8SPXC-509.
(Disclaimer: I'm "new" to Go, please tell me if this doesn't make sense)

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

Test name
Status

upgrade-haproxy
passed

big-data
passed

storage
passed

scheduled-backup
passed

recreate
passed

haproxy
passed

scaling
passed

init-deploy
passed

self-healing
passed

scaling-proxysql
passed

restore-to-encrypted-cluster
passed

security-context
passed

upgrade-proxysql
passed

limits
passed

self-healing-advanced
passed

monitoring-2-0
passed

demand-backup
passed

smart-update
passed

affinity
passed

one-pod
passed

operator-self-healing
passed

auto-tuning
passed

proxysql-sidecar-res-limits
passed

pitr
passed

users
passed

tls-issue-self
passed

upgrade-consistency
passed

demand-backup-encrypted-with-tls
passed

tls-issue-cert-manager
passed

tls-issue-cert-manager-ref
passed

validation-hook
passed

commit: https://github.com/percona/percona-xtradb-cluster-operator/pull/853/commits/910559899b23b280c1d450bb25cdbc8b2eb5c47e
image: perconalab/percona-xtradb-cluster-operator:PR-853-91055989

Test name
Status

big-data
passed

scheduled-backup
failed

storage
failed

upgrade-haproxy
passed

recreate
failed

haproxy
passed

scaling
failed

upgrade-proxysql
passed

init-deploy
passed

smart-update
passed

limits
passed

self-healing
failed

restore-to-encrypted-cluster
failed

scaling-proxysql
failed

monitoring-2-0
failed

self-healing-advanced
failed

security-context
passed

demand-backup
passed

upgrade-consistency
passed

affinity
passed

one-pod
passed

auto-tuning
failed

pitr
failed

operator-self-healing
failed

proxysql-sidecar-res-limits
failed

commit: https://github.com/percona/percona-xtradb-cluster-operator/pull/853/commits/6e9a04e0e03d4f214144b7e5f74b711953cb28eb
image: perconalab/percona-xtradb-cluster-operator:PR-853-6e9a04e0

@dAdAbird Seems like this change broke the test 🤔 Or is this unrelated?

Test name
Status

storage
failed

scaling
failed

recreate
failed

upgrade-haproxy
passed

big-data
passed

scheduled-backup
failed

haproxy
passed

init-deploy
passed

limits
passed

monitoring-2-0
failed

upgrade-proxysql
passed

smart-update
passed

upgrade-consistency
passed

self-healing
failed

scaling-proxysql
failed

restore-to-encrypted-cluster
failed

affinity
passed

one-pod
passed

auto-tuning
failed

self-healing-advanced
failed

security-context
passed

demand-backup
passed

pitr
failed

proxysql-sidecar-res-limits
passed

users
failed

demand-backup-encrypted-with-tls
failed

operator-self-healing
failed

tls-issue-self
failed

commit: https://github.com/percona/percona-xtradb-cluster-operator/pull/853/commits/6e9a04e0e03d4f214144b7e5f74b711953cb28eb
image: perconalab/percona-xtradb-cluster-operator:PR-853-6e9a04e0

Test name
Status

big-data
passed

scaling
failed

upgrade-haproxy
passed

scheduled-backup
failed

haproxy
passed

recreate
failed

init-deploy
passed

limits
passed

monitoring-2-0
failed

storage
failed

upgrade-proxysql
passed

smart-update
passed

upgrade-consistency
passed

scaling-proxysql
failed

restore-to-encrypted-cluster
failed

self-healing
failed

affinity
passed

one-pod
passed

auto-tuning
failed

security-context
passed

demand-backup
passed

pitr
failed

self-healing-advanced
failed

proxysql-sidecar-res-limits
passed

users
failed

demand-backup-encrypted-with-tls
failed

operator-self-healing
failed

tls-issue-self
passed

tls-issue-cert-manager
failed

commit: https://github.com/percona/percona-xtradb-cluster-operator/pull/853/commits/6e9a04e0e03d4f214144b7e5f74b711953cb28eb
image: perconalab/percona-xtradb-cluster-operator:PR-853-6e9a04e0

Hi @baurmatt
can you please rebase your changes on the current state of the main branch?
reason - we cannot verify changes by automatic tests

@delgod Done :)

Test name
Status

scaling
passed

scheduled-backup
passed

storage
passed

haproxy
passed

scaling-proxysql
passed

self-healing
passed

init-deploy
passed

security-context
passed

limits
passed

self-healing-advanced
passed

monitoring-2-0
failed

operator-self-healing
passed

affinity
passed

one-pod
passed

auto-tuning
passed

proxysql-sidecar-res-limits
passed

users
passed

tls-issue-self
passed

tls-issue-cert-manager
passed

tls-issue-cert-manager-ref
passed

validation-hook
passed

commit: https://github.com/percona/percona-xtradb-cluster-operator/pull/853/commits/85f38c8af1932c8c57a72c8185a8fc2fc217b7f1
image: perconalab/percona-xtradb-cluster-operator:PR-853-85f38c8a

Test name
Status

storage
failed

haproxy
passed

init-deploy
passed

limits
passed

monitoring-2-0
failed

scaling
failed

upgrade-haproxy
passed

recreate
failed

big-data
passed

scheduled-backup
failed

upgrade-proxysql
passed

smart-update
passed

upgrade-consistency
passed

self-healing
failed

restore-to-encrypted-cluster
failed

scaling-proxysql
failed

affinity
passed

one-pod
passed

auto-tuning
failed

self-healing-advanced
failed

demand-backup
passed

pitr
failed

security-context
passed

proxysql-sidecar-res-limits
passed

users
failed

demand-backup-encrypted-with-tls
failed

operator-self-healing
failed

tls-issue-self
passed

tls-issue-cert-manager
passed

tls-issue-cert-manager-ref
failed

commit: https://github.com/percona/percona-xtradb-cluster-operator/pull/853/commits/6e9a04e0e03d4f214144b7e5f74b711953cb28eb
image: perconalab/percona-xtradb-cluster-operator:PR-853-6e9a04e0

Test name
Status

recreate
passed

haproxy
passed

scheduled-backup
passed

init-deploy
passed

limits
passed

upgrade-haproxy
passed

monitoring-2-0
failed

storage
passed

self-healing
passed

self-healing-advanced
passed

operator-self-healing
passed

scaling
passed

scaling-proxysql
passed

big-data
passed

security-context
passed

restore-to-encrypted-cluster
passed

upgrade-proxysql
passed

affinity
passed

one-pod
passed

auto-tuning
passed

proxysql-sidecar-res-limits
passed

users
passed

tls-issue-self
passed

tls-issue-cert-manager
passed

tls-issue-cert-manager-ref
passed

validation-hook
passed

demand-backup
passed

smart-update
passed

pitr
passed

demand-backup-encrypted-with-tls
passed

upgrade-consistency
passed

commit: https://github.com/percona/percona-xtradb-cluster-operator/pull/853/commits/85f38c8af1932c8c57a72c8185a8fc2fc217b7f1
image: perconalab/percona-xtradb-cluster-operator:PR-853-85f38c8a


[Color Picker] Add setting to disable automatic copy to clipboard

📝 Provide a description of the new feature
Please add a simple switch to disable automatic copying to clipboard.
I was hoping selecting the opening directly to editor mode would do the trick as it's the only one in the settings that doesn't mention that it copies the value but that doesn't seem to be the case.
Why is it needed?
I might have something in the clipboard I do not wish to lose while I'm picking for a color, I'd like to have the color just wait there until I'm ready to copy it myself.
I also need different color systems depending on what I do so about half the time the automatically copied value is the wrong one anyway.

If you'd like to see this feature implemented, add a 👍 reaction to this post.

@Avhaz Thanks for a suggestion, we will consider this. The reason why it always copies, is because that was the very basic idea this tool is based on - quickly copy color into your clipboard.
This will not directly solve your ask, but do you know about Win + V which is build into Windows - it allows you to have multiple items in your clipboard, so you don't loose anything if you copy something else

I think one item could be just to have an option to not copy to clipboard but yes, IMO this was built around the entire concept of quick color copy

Although I agree that the idea was to have "a quick picker" and Windows' Clipboard History holds multiple items on the clipboard, the idea of sending a color to the Editor without copy immediately is not so strange. I guess it's a personal preference.

Bump. I'd like this too; I was searching for a solution, after losing data I needed from my clipboard at an inopportune moment, until I saw this Issue.
When I clicked and the editor popped up, I had expected to use the clipboard icons as needed rather than suddenly losing my data, without any sort of notification.

after losing data I needed from my clipboard

@TFWol does that mean you have the clipboard history turned off?

@Jay-o-Way Yeah, I tend to stamp out processes that try to beacon online, so I wasn't a fan of what cbdhsvc was trying to do.
I'm currently using a heavily modified AutoHotkey workaround to at least manage text based stuff.


Fast healing should target creature that has the fast healing

That's already implemented 🤔
Welp, a bug.


update Unity Editor version (and document in README + docs)

https://github.com/mozilla/unity-webvr-export/blob/master/ProjectSettings/ProjectVersion.txt

As per our slack convo.  I think we should think about freezing the editor version.  It must be a bit of a challenge keeping updated for anyone working on their projects whenever new versions of Unity come out.  Will need to look into what the best practice is here.

an possible idea that crossed my mind: what's your thoughts on this process:
sendMessage the Editor version from Unity -> JS -> Telemetry?

Might be available through gameInstance?
Also looking at the log:

Note line with Initialize Engine Version

Will update Unity editor on f (final) versions of Unity editor that have tangible benefit (either performance or dev ergonomics).  Best practice is to avoid upgrading when unnecessary to keep it easier for users of the Assets.


update to dbt-core 1.5.5

Description
Add support to dbt-core 1.5.5

Hey @dnascimento , thanks for idea but the internals of dbt-core changed from 1.5.1 to 1.5.2 and there are necessary changes for this to actually work, this is the issue on their repo https://github.com/dbt-labs/dbt-core/issues/7465 which led to changes.


Can't collect any data to Firebase neither nor  BigQuery.

[REQUIRED] Step 1: Describe your environment

Xcode version: 11.4.0
Firebase SDK version: 6.22.0
Firebase Component: Performance, Analytics,Crashlytics
Component version:6.22.0
Installation method: `CocoaPods

[REQUIRED] Step 2: Describe the problem
Steps to reproduce:
We used to upload dsym file to Fabric but In our latest version the Fabric was stopped, So we refered to the doc there. After that we found there is no result in Quality/Crashlytics neither nor in Big Query.
Relevant Code:
 pod 'Fabric'
  pod 'Crashlytics', '~> 3.14'
  pod 'Firebase/Analytics', '6.22.0'
  pod 'Firebase/Performance', '6.22.0'

Hey @lynulzy, please file this issue at Firebase Support instead. They'll be able to look at your project and see why no reports are showing up.


Add Order Information

Add the ability to gather information on a previous order.
Can be done with:
curl -v https://api.robinhood.com/orders/{order_id}/ \
   -H "Accept: application/json" \
   -H "Authorization: Token a9a7007f890c790a30a0e0f0a7a07a0242354114"

Closing this as #95 addresses this issue.


Provide summary path information for any two points selected in the DAG

It would be valuable to see metrics like total average latency, total message throughput along an arbitrary path within the DAG. I could envision this working similar to double clicking on a given processor but instead the user can select one processor and then the second processor. This will then highlight in some different color all paths from that one processor to the second processor. Selecting a highlighted path will then open a tab that shows summary metrics for that pathway. Selecting a source processor and sink processor and then a highlighted path will allow the user to easily see summary metrics for the entire processing pathway.

Stanley it may make sense to have a JS Graph (or scala.js) that will do things like find all outgoing, incoming edges within a DAG given a vertex rather than trying to get this info from the server. However, it will likely still require a new REST/WS call that can fetch metrics along a given path continuously.

Currently the JS object StreamingDag has the following API (where _* methods have been excluded)
StreamingDag {
  updateMetricsArray([])
  updateMetrics(name,data)
  hasMetrics
  getNumOfTasks
  getProcessorsData
  getEdgesData
  calculateProcessorConnections
  getReceivedMessages
  getSentMessages
  getProcessingTime
  getReceiveLatency
  hierarchyDepth
}

StreamingDag.calculateProcessorConnections is the closest API available that would provide incoming and outgoing edges for a given processor and may be sufficient.
The graph below shows the user selecting two nodes: Source_0 and Sink_3

After selecting the 2nd node, all paths connecting the 2 are hightlighted as show below

Selecting one of these paths would then show metrics (throughput, latency) for that path

[ ] If a processor has stalling tasks, all edges on the path to its sink processor should also be marked with red.
[ ] Mark the critical path(s) with different color (or style) by default.
[ ] When clicking a node, all its metrics will be shown in a hover card.

Here is a preview of default DAG view with critical path marked. Colors might be revised later. If you guys have any good recommendation, it would be great to share with me.

The graph looks great, would be great to see a demo implementation.

This has been moved to https://issues.apache.org/jira/browse/GEARPUMP-46.


Adds c_chan_type 13 for new stage channels

Wasn't able to login due to a missing 13 in the c_chan_type enum.  After debugging, they are the new "stage" channels and I've added them to the list of types.

Thanks.
Will probably test what's going wrong with login when having these, as it probably should just ignore unknown-type channels or treat them as text ones, just logging errors, instead of any kind of login failures.

Fixed login thing in 5f7580b - should now log something like this instead:
rdircd.discord ERROR :: BUG - ignoring unknown channel type=13: guild="mk-fg's server" (id=827814474505125919 prefix=79qp) name='stage test' topic=None

...and just ignore such yet-unknown-type channels otherwise.
Not handling their type explicitly is still a bug though, as that error msg suggests - should ideally always be categorized into text/voice and maybe handled properly in whatever special way, if necessary.

Thanks Mike, good additions and makes sense to me 👍


Code style: self for private methods

The code style says: "accessing private static properties MUST be done via self: self::$_events". This should be extended to private methods too, no? It doesn't make sense to call a private method with static, you made it private because you don't want it to be overridden, but if you call it with static, it can be overridden:
<?php

error_reporting(-1);

class Base
{
    private static function bar()
    {
        echo "base bar";
    }

    public static function foo()
    {
        static::bar();
    }
}

class Child extends Base
{
    public static function bar()
    {
        echo "child bar";
    }
}

Child::foo();

This will output "child bar": http://sandbox.onlinephpfunctions.com/code/9449f2f694febed6008525b59b2d007b55b227ba

In order to call private method with _ you should name it with _ which we don't want. Actually, for 2.1 I'd like to change code style to not using _ for private properties.

I think you misunderstood something. I wasn't talking about naming private methods, but calling them with self vs static. According to the current rules, it should be static, because they're not in the exceptions, which doesn't make sense.

https://github.com/yiisoft/yii2/issues/11956

Ah, that. Well, it doesn't make sense to force either static or self because these are totally different and should be used according to the case you're trying to solve.

If you look at my example, I think that's a mistake.
If the methods were not static, it would output "base bar": http://sandbox.onlinephpfunctions.com/code/a59083057540007d3310645307509e899e7d0a97
So I think it makes sense to forbid static in this case.

It's not a mistake. There are cases when late static binding is not desired.

Well, that's what I'm saying. This is such a case, but the current rule requires you to use static here.

https://github.com/yiisoft/yii2/commit/466fc9db32be0f7432760a96d512246f6584e39d


Don't pass InvalidTransactionId to update_next_xid.

update_next_xid() doesn't have any special treatment for the invalid or other special XIDs, so it will treat InvalidTransactionId (0) as a regular XID. If old nextXid is smaller than 2^31, 0 will look like a very old XID, and nothing happens. But if nextXid is greater than 2^31 0 will look like a very new XID, and update_next_xid() will incorrectly bump up nextXID.

 error: expected one of `.`, `;`, `?`, `}`, or an operator, found `{`
   --> pageserver/src/walingest.rs:106:61
    |
106 |             self.checkpoint.update_next_xid(decoded.xl_xid) {
    |                                                             ^ expected one of `.`, `;`, `?`, `}`, or an operator

One test failure in the e2e public API tests: https://github.com/neondatabase/cloud/actions/runs/7595014557/job/20687120459. I'm pretty sure that's a flaky test, because all the other variants of the e2e tests failed, and they don't exercise this codepath in any special manner anyway.

The e2e test suite failed again, at a different test. I still believe it's flakiness, but would appreciate a second opinion from someone more in touch with the e2e tests


🐛 Parser errors on for loop label named out

Environment information
Reproduces in the Playground. I have version 1.8.3 locally.

What happened?
I was refactoring roughly the following real-world code. I can reformat it and add annotations but I need to preserve the actual structure:

export function detectFacelet(facelets: number[][], f: number[], perm: number[], ori: number[], divcol: number) {
  for (let i = 0; i < facelets.length; i++) {
    const n_ori = facelets[i].length;
    out: for (let j = 0; j < facelets.length + 1; j++) {
      if (j === facelets.length) {
        return -1;
      }
      if (facelets[j].length !== n_ori) {
        continue;
      }
      for (let o = 0; o < n_ori; o++) {
        let isMatch = true;
        for (let t = 0; t < n_ori; t++) {
          if (~~(facelets[j][t] / divcol) !== f[facelets[i][(t + o) % n_ori]]) {
            isMatch = false;
            break;
          }
        }
        if (isMatch) {
          perm[i] = j;
          ori[i] = o;
          break out;
        }
      }
    }
  }
  return 0;
}

Playground link

The line with break out; shows "Expected a semicolon or an implicit semicolon after a statement, but found nonebiome(parse)". I cannot find anything in the help that lets me tell Biome to ignore the break out; line. 🫠
The break out; shows an error saying it's unreachable.
The out: label has an error saying it's unused.

Expected result
As far as I can tell, all of the errors are false positives. I have no idea what's going on. 😭
Code of Conduct

[X] I agree to follow Biome's Code of Conduct

Okay, I was able to reduce the repro to:
let count = 0;

out: for (let i = 0; i < 10; i++) {
  count++;
  if (Math.random() < 0.5) {
      break out;
    }
  }

console.log(count)

This runs perfectly fine in:

bun
node
deno
Chrome
Firefox
Safari

So it definitely seems to me that the issue is with Biome.

Woah, it looks like this is happening because the label is called out. I can't reproduce it with another name.

out somehow is not recognized as a label, if you change it to another name like outer the problem will be gone.

in and out are defined as TypeScript modifiers in the grammar: https://github.com/biomejs/biome/blob/6b1e5189b5c3f67ee85190000b60b3917d7f7b8c/xtask/codegen/js.ungram#L659-L660
Using a modifier in the label position seems to choke the parser.


BIG Changes to Aspire.Hosting

A huge change is coming we're working on changes to refactor the packages for Aspire.Hosting into 2 main packages:
Aspire.Hosting - The core APIs (libraries will compile against this)
Aspire.Hosting.AppHost - What aspire apphost projects will reference.
We also want to remove all resources from these core packages and put them into the project templates (what list ends up in the project templates is still TBD). This resource split will happen next week Monday:

Aspire.Hosting.Redis
Aspire.Hosting.Postgres
Aspire.Hosting.SqlServer
Aspire.Hosting.Kafka
Aspire.Hosting.MongoDB
Aspire.Hosting.MySql
Aspire.Hosting.Oracle
Aspire.Hosting.RabbitMQ
Aspire.Hosting.Seq
Aspire.Hosting.Node

We're preparing for the future when both the Aspire component and the Aspire hosting package live outside of the aspire repository.

Our little baby is all grown up and moving out of home.

regarding the Aspire.Hosting.AppHost assembly name ... that won't be the namespace right? I can imagine that being painful.

regarding the Aspire.Hosting.AppHost assembly name ... that won't be the namespace right?

I would say no. We keep the namespaces the way they are today.

Curious: does this have any impact on the eShop flagship Demo for .Net 8.0?
[I am having lots of problems there, and beginning to think I am narrowing them down to aspire - at least in part.

Curious: does this have any impact on the eShop flagship Demo for .Net 8.0?

It does. You can see the impact at https://github.com/dotnet/eShop/pull/257 which is updating eShop to use preview5.

Curious: does this have any impact on the eShop flagship Demo for .Net 8.0?

It does. You can see the impact at dotnet/eShop#257 which is updating eShop to use preview5.

OK, that helped quite a bit (thanks!!!).  I can now do both "azd init" and "azd up"... but get an error after the WebApp starts to load.... Still digging, but here is the stack trace..


Add support for Hyperloglog

Hey @arpitbbhayani , I would like to take this up.
Resources:

- https://redis.io/docs/latest/develop/data-types/probabilistic/hyperloglogs/
- http://antirez.com/news/75

Commands to add: https://redis.io/docs/latest/commands/?group=hyperloglog
Subsequently, opened small PR for picking this up easily.

#238
#239
#240
#241
#242

@Vsareen0 Go for it. Assigned.

Still Working on this task, solidifying my understanding a bit more how redis uses it, before writing garbish want to make sure I know what I am writing.

@Vsareen0 Any updated/findings on this?
cc - @JyotinderSingh

Hey @AshwinKul28 , Thanks for asking ! This is already planned, just time was taken to understand things, will be working on this weekend.

Hey @Vsareen0 Sorry to bother you again, Do you have any updates on this? If you have any blockers let's discuss this over the discord. Thanks

@Vsareen0 would like to pick this up, if you're not working on this actively.
cc: @JyotinderSingh @AshwinKul28

@Vsareen0 would like to pick this up, if you're not working on this actively.
cc: @JyotinderSingh @AshwinKul28

Assigned

@lucifercr07 Please close the issue if the item is completely shipped. Thanks for this.


Cannot connect with usernames containing underscores.

I am unable to connect via RDP when a username contains an underscore.
I created two new accounts, testuser and test_user.
Connecting with testuser works as expected.
Connecting with test_user gives the following error messages.
SSL_read: Failure in SSL library (protocol error?) SSL_read: error:14094419:SSL routines:ssl3_read_bytes:tlsv1 alert access denied credssp_recv() error: -1 Authentication failure, check credentials. If credentials are valid, the NTLMSSP implementation may be to blame. Error: protocol security negotiation or connection failure
I am using  version 1.1.0-beta1 from the Ubuntu 16.04 repository.

what about with latest master ? (https://github.com/FreeRDP/FreeRDP/wiki/PreBuilds may help)

This issue is fixed in the latest master.
It is also fixed in the most recent release of freerdp2 at https://ci.freerdp.com/job/freerdp2-binaries/.
Thanks for your help.


Use jetstack vcert fork to properly reset on TPP error

Pull Request Motivation
In case we send a new valid CSR to TPP after a TPP error occurred, we get the following error message: This certificate cannot be processed while it is in an error state. Fix any errors, and then click Retry.
In https://github.com/cert-manager/cert-manager/pull/5674 we introduced the https://github.com/Venafi/vcert/pull/269 fix for this issue. However, we found out that this fix does often fail due in a race condition (see https://github.com/jetstack/vcert/pull/3). The race condition causes the requested CSR to get lost when calling reset too soon after requesting, resulting in the old Certificate being returned instead in a non-failure mode.
In order to fix the original issue, without having a race condition, we created https://github.com/jetstack/vcert/pull/3 which unconditionally calls the reset endpoint before requesting a certificate from TPP. This reset call will not continue if no certificate is found or if the certificate is in a non-failed state, only resetting the TPP certificate in case there was an error. We call the reset endpoint with restart=false as argument which does mean that we do not restart the issuance. Instead, we start a new issuance by requesting a new certificate after calling the reset endpoint. This solution solves the original issue and does not have any race conditions. However, it does introduce an additional HTTP call per issuance. We have not found any other solution that works as reliably as this solution, but are committed to updating our vCert fork if we find a more efficient solution that works as reliably as this solution.
Kind
/kind bug
Release Note
Fix timing issue in vCert bugfix #5674

/test pull-cert-manager-master-e2e-v1-26-issuers-venafi-tpp
/test pull-cert-manager-master-e2e-v1-26-issuers-venafi-cloud

/lgtm
As we discussed this afternoon with Atanas, Ashley, and Tim, we are going to backport this bug fix in two steps:

We will first release 1.11.1-beta.0 and share that version to the VMWare Tanzu team who is currently having some issues with certificates being stuck with the message "Click to retry",
We will then, in the middle of march 2023 probably, release 1.11.1.

/cherry-pick release-1.11


Link Parsing: Add support for browser history SQLite database

This will allow people to run BA as an archiver for all their browsing history, not just bookmarked pages.
h/t to @FiloSottile for the suggestion

Turns out it's really easy:
cp "$1" .chrome_history.db.tmp
sqlite3 .chrome_history.db.tmp "SELECT \"[\" || group_concat(json_object('timestamp', last_visit_time, 'description', title, 'href', url)) || \"]\" FROM urls;" > downloads/chrome_history.json
rm .chrome_history.db.tmp

./archive downloads/chrome_history.json

This is done. On master you can now run:
./bin/export-browser-history --chrome
./archive output/sources/chrome_history.json
# OR
./bin/export-browser-history --firefox
./archive output/sources/firefox_history.json

So since I run this in a docker on my server that is running Linux (unRAID to be precise) and my desktop being Windows what I have is a places.sqlite file in my Windows Firefox's profile folder.
I know that I can rsync it to my server, but how would I pass the sqlite file to Linux then? Your example assumes a .db file and probably default paths for running ArchiveBox on a Linux Desktop where the Firefox installation also resides?
Also, is there possibly any way to treat a history with a different level of care than separately passed pages? Like bookmarks I wanna frequently save new versions of, history I mostly care about saving once or maybe a few times per year. Reason is I wanna keep storage usage a bit in check as well as run times.
Sorry to break open an old issue, but this seems pretty relevant, happy to post in a separate issue if deemed necessary though. :) Thanks a lot for building this application by the way! <3

@GlassedSilver sorry I forgot to get back to this. If you still want help I recommend opening a new issue, happy to assist with making the bookmark transfer easy!


Editing legacy data source / connection properties

Hi,
I've noticed that the connection properties window for legacy data sources (opened using the three dots "..." next to the connection string) is no longer available since version 2.15.1.
Is this by design so? It was very convenient to set the connection details in the properties window. You must edit the connection string directly now.
three dots
connection properties

That's a bug. Thanks for reporting!

This has been fixed in 2.15.3. Turns out the issue also affected other properties, which also had a three-dot button previously (Display Folder, Sort By Column and Group By Columns).


[Bug]: Coolify ignores the selected network and uses the coolify network

Description
It's already happened 4 times that, when creating my resource, I select my own network but when checking "Connect To Predefined Network", the network the container is attached to is coolify.
The first time I thought I simply selected the wrong network without paying attention but since then it's happened multiple times more.
Minimal Reproduction (if possible, example repository)

Go to Projects
Create a new project
Go into Production
Go to Add new resource
Select Docker Compose
Select your network that is NOT coolify. (web, in my case)
Paste the following test docker-compose.yml:

services:
  glances:
    image: 'nicolargo/glances:latest'
    restart: unless-stopped
    environment:
      - GLANCES_OPT=-w
      - SERVICE_FQDN_GLANCES_61208
    volumes:
      - '/var/run/docker.sock:/var/run/docker.sock:ro'
    pid: host
    privileged: true

Check Connect To Predefined Network <-- Very important, we want to connect to the web network
Click Deploy to create your container
Use ssh to connect to the server on which you deployed the service
Use docker ps -a grep glances` to find the container we just created
Use docker inspect glances-<uid> to check the details of the container
At the bottom, in the "Networks" section, notice that the container is connected to the coolify network and not to web as configured.

Exception or Error
No response
Version
v4.0.0-beta.319
Cloud?

[X] Yes
[ ] No

@Telokis After #3058 is merged, please reward the bounty!
@LEstradioto Thanks for the PR!


CI against Ruby 2.5.0

looks like there are failures on ruby 2.5... anyone willing to help fix up the specs?


Fix assignment optimization for logical and/or.

"x = x && y" was converted to "x &= y", which is invalid.

Thanks for finding this. facepalm, I'll merge and add some regression tests for this.


[Documentation]Wrong description of routing modes

[The routing mode determines both which broker handles each partition](https://github.com/apache/pulsar/blame/master/site2/docs/concepts-messaging.md#L286)

Fixed in https://github.com/apache/pulsar/pull/6244


Common.Logging.NLog4xx through a warning when used in .NET standard 2.0 project

When adding a reference to Common.Logging.NLog4xx NuGet inside a .NET standard project, you get the following warning:
Package 'Common.Logging.NLog444 3.4.1' was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETStandard,Version=v2.0'. This package may not be fully compatible with your project.

Any ways to avoid this?

I have the same issue. Is there a reason the Common.Logging.NLog4XX adapters do not support netstandard?


Update generated source code

Automated PR triggered by new code generation.
Update generated source code
Generated SDK source code using:

Generator version 3.12.2
Specification version 0.0.27
Automation (cloudant-sdks) version 70e999d

Thank you for the review @ricellis ! I am about to merge this.


firstBlock config seems to be ignored

When runing nix run .#ctl-runtime in 407fde2f522feac4b9c86a8579b6b3cb0cdfb70f (currently the newest commit on develop) the ogmious datum cache starts at slot 0 rather than the slot specified in firstBlock.

I mentioned this on Discord as well, but are you passing the corresponding block hash for the selected slot?

Yes. You can also reproduce this with the first block config as it is in ctl.


[RoleManagement] Roleset viewrole should tell if role is buyable and it's cost

I think it would be useful if [p]roleset viewrole <role> also showed if the role in question is buyable, and what it costs.
At the moment there is no way to see role costs, right? This would fix that.

To add on to this, it should also show if the role is sticky. Might as well if we're showing all role settings, right?


Check and enforce embed limits

Discord embeds have various limits. See here.
These should automatically be checked when a new PR is opened. If any limit is violated, the checks should fail.

@jbonatakis i can add these checks, can you just point me out which file should these changes by managed.
My proposed strategy:

define the embed limit in constants.py
if sum of embed limits is != 6000 characters  then the test will fail

Thoughts?


change 'test_specified_fields' to check for reverse_accessor fields

in my case, I has reverse accessor field in the search_fields attribute of the ModelAdmin. But the test_specified_fields method is not checking that fields. I've added that checks.

Changes Unknown when pulling ca14752794daf0fcf4341f870512e23781a017b3 on jnoortheen:master into ** on greyside:master**.

Changes Unknown when pulling ca14752794daf0fcf4341f870512e23781a017b3 on jnoortheen:master into ** on greyside:master**.

Changes Unknown when pulling ca14752794daf0fcf4341f870512e23781a017b3 on jnoortheen:master into ** on greyside:master**.

Changes Unknown when pulling ca14752794daf0fcf4341f870512e23781a017b3 on jnoortheen:master into ** on greyside:master**.

Changes Unknown when pulling ca14752794daf0fcf4341f870512e23781a017b3 on jnoortheen:master into ** on greyside:master**.

Changes Unknown when pulling 166fffdb5893ed1307273152fb35b53732c6f86e on jnoortheen:master into ** on greyside:master**.

Changes Unknown when pulling 166fffdb5893ed1307273152fb35b53732c6f86e on jnoortheen:master into ** on greyside:master**.

This fixes checking of reverse accessor field problem for me.
But the PR contains some changes, that shouldn't be pulled to the main repository:

Change of PyPI identifier
Change of README
Fabfile with release script (I would i.e. use bumpversion for part of this).

So I would advise some changes in order to get this pulled:

Rebase to current HEAD and fix tests (if the rebase itself doesn't help)
Make test for the fix
Separate the Fabfile to another PR and discuss that change there

It is my mistake. Since there was no activity I updated a PyPI version myself. Since the master branch was directly referred, the changes got it here. I will update it.

I am closing PR and creating another one


Suggest auto-adding extensions

Implemented. Messages in flycheck now include:

(Hit C-c C-r in the Haskell buffer to apply suggestions)

Example:


Barcodes printing quality bad using codeigniter with chrome or firefox

The quality of barcode and label is bad, and deformed to scan it properly and give correct results.
We are using TVSE printer LP45 and TSC TE 244 to print but the quality is same and bad.
Are we missing out something? We are using code igniter to develop the utility.
If you see the 2 label printed below they also have item names and other values on them.

Hi
Do you need a barcode library for this?
It seems that ZPL II (seems to be supported by the TE244) has built-in support for CODE 128 barcodes and the LP45 seems to have built in support for several different 1D and 2D barcodes.
It seems likely that using the built-in barcode support is likely to give you better results.


chore: add integration tests

📝 Description
Adds first integration tests for tags-input.
⛳ Current behavior (updates)

🚀 New behavior

💣 Is this a breaking change (Yes/No):
No
📝 Additional Information
As discussed in #533, this is an effort to add integration tests with vitest. The idea is to slowly build additional test suites that:

provide more immediate feedback than playwright tests by running faster
provide direct access to a machines context per test
simplify testing edge cases

Currently the test suite only includes a setup for react. I think this might be enough, if we see these tests as an addition to real e2e tests with playwright. The main focus would be on testing shared machines.

Closing this for now to reduce the maintenance burden.
I think we can do without it for now.


Hardware device commands are executed too early after plugging (error: device offline)

Following the Getting Started instructions and just checking if the selenium setup works I ran the command java -jar selendroid-standalone-0.15.0-with-dependencies.jar without any devices or emulators attached.
After the server has finished starting up I connected a device (Android 5.1.1) and the following error was shown:
INFO: Executing shell command: /var/android-sdk/platform-tools/adb -s TA993010AF shell ls /system/framework/*map*
        Jul 01, 2015 12:02:24 PM io.selendroid.standalone.android.impl.AbstractDevice executeCommandQuietly
        WARNING: Could not execute command: /var/android-sdk/platform-tools/adb -s TA993010AF shell ls /system/framework/*map*
        io.selendroid.standalone.exceptions.ShellCommandException: Error executing shell command: /var/android-sdk/platform-tools/adb -s TA993010AF shell ls /system/framework/*map*
        at io.selendroid.standalone.io.ShellCommand.exec(ShellCommand.java:49)
        at io.selendroid.standalone.android.impl.AbstractDevice.executeCommandQuietly(AbstractDevice.java:179)
        at io.selendroid.standalone.android.impl.AbstractDevice.executeCommandQuietly(AbstractDevice.java:174)
        at io.selendroid.standalone.android.impl.AbstractDevice.runAdbCommand(AbstractDevice.java:435)
        at io.selendroid.standalone.android.impl.DefaultHardwareDevice.<init>(DefaultHardwareDevice.java:40)
    at io.selendroid.standalone.android.impl.DefaultDeviceManager.deviceConnected(DefaultDeviceManager.java:153)
    at com.android.ddmlib.AndroidDebugBridge.deviceConnected(AndroidDebugBridge.java:816)
    at com.android.ddmlib.DeviceMonitor.updateDevices(DeviceMonitor.java:400)
    at com.android.ddmlib.DeviceMonitor.processIncomingDeviceData(DeviceMonitor.java:320)
    at com.android.ddmlib.DeviceMonitor.deviceMonitorLoop(DeviceMonitor.java:193)
    at com.android.ddmlib.DeviceMonitor.access$000(DeviceMonitor.java:44)
    at com.android.ddmlib.DeviceMonitor$1.run(DeviceMonitor.java:84)
    Caused by: io.selendroid.standalone.exceptions.ShellCommandException: error: device offline

Manually executing the command yields positive results:
mannaz@thinkpad:~/workspace$ /var/android-sdk/platform-tools/adb -s TA993010AF shell ls /system/framework/*map*
        /system/framework/com.google.android.maps.jar
        /system/framework/qmapbridge.jar

I assume the command is executed too early before the ADB connection could be completely set up.
Accessing the hub status page produces this info in the command line (and the supportedDevices list is empty):
Jul 01, 2015 12:14:22 PM io.selendroid.standalone.server.model.SelendroidStandaloneDriver getSupportedDevices
INFO: Error occurred when building supported device info: null

java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)

Ubuntu 14.04 - 64 bit

Android Debug Bridge version 1.0.32

If you need additional details please ask away.

@mannaz Can you try with selendroid-standalone built from master?

After compiling with Java 1.7 (1.8 didn't work) I got the same result but a different error message:
$ java -jar selendroid-standalone-0.16.0-SNAPSHOT-with-dependencies.jar
....
WARNING: Could not execute command: /var/android-sdk/platform-tools/adb -s TA993010AF shell ls /system/framework/*map*
        io.selendroid.standalone.exceptions.ShellCommandException: Error executing shell command: /var/android-sdk/platform-tools/adb -s TA993010AF shell ls /system/framework/*map*
        at io.selendroid.standalone.io.ShellCommand.exec(ShellCommand.java:53)
        at io.selendroid.standalone.android.impl.AbstractDevice.executeCommandQuietly(AbstractDevice.java:171)
        at io.selendroid.standalone.android.impl.AbstractDevice.executeCommandQuietly(AbstractDevice.java:166)
        at io.selendroid.standalone.android.impl.AbstractDevice.runAdbCommand(AbstractDevice.java:427)
        at io.selendroid.standalone.android.impl.DefaultHardwareDevice.<init>(DefaultHardwareDevice.java:40)
    at io.selendroid.standalone.android.impl.DefaultDeviceManager.deviceConnected(DefaultDeviceManager.java:155)
    at com.android.ddmlib.AndroidDebugBridge.deviceConnected(AndroidDebugBridge.java:816)
    at com.android.ddmlib.DeviceMonitor.updateDevices(DeviceMonitor.java:400)
    at com.android.ddmlib.DeviceMonitor.processIncomingDeviceData(DeviceMonitor.java:320)
    at com.android.ddmlib.DeviceMonitor.deviceMonitorLoop(DeviceMonitor.java:193)
    at com.android.ddmlib.DeviceMonitor.access$000(DeviceMonitor.java:44)
    at com.android.ddmlib.DeviceMonitor$1.run(DeviceMonitor.java:84)
    Caused by: io.selendroid.standalone.exceptions.ShellCommandException: error: device unauthorized. Please check the confirmation dialog on your device.

The device is authorized as I'm using it for development and debugging just fine.

So, that's a WARNING message (since the first adb commands it tried were not successful). Were you able to eventually connect / use the device? (if so, then I consider this a non-issue. maybe just annoying to have a big warning with accompanied stack trace)

As stated above with 0.15.0 I got the warning + device couldn't be used.
With 0.16.0-SNAPSHOT from Master I got a different warning but the device could be used.

ok, then I'll consider this fixed (there was some recent work related to this).


Fix shift from Away to Vacation

Did not happen automatically when on vacation

The automation was simply turned off.


Error message should be displayed in UI when a cluster member edits the cluster and adds new members

Version: Master
Steps:

Create a DO cluster with AD auth. Add "testuser2" as a cluster member
Login as "testuser2"
Edit the cluster and add another user as a member.

The operation fails with 403 forbidden error message, but an error message should be displayed in UI
{"baseType":"error","code":"Forbidden","message":"clusters.management.cattle.io \"c-vxkdw\" is forbidden: User \"u-qxd6dri3v2\" cannot update resource \"clusters\" in API group \"management.cattle.io\" at the cluster scope","status":403,"type":"error"}

low priority for alpha @westlywright. can be moved out if you cant get to it, but im hoping its a quick fix


Flow NoCode Apps - Revised

Grant category
Developer tools / services
( & Educational material)
Description
We plan to create NoCode Apps for the Flow Ecosystem so that everyone (not only developers) can access, work & interact with the Flow Blockchain Ecosystem.
Problem statement
Accessing data from the blockchain can be a complex process and pose a challenge especially to users who are not proficient coders. For instance, accessing individual transaction data is possible via individual display options, but tiresome and may not provide a useful format that non-coders can creatively and flexibly use.
Proposed solution
In other contexts involving large-scale data queries and data management, NoCode tools have been gaining in popularity. Our plan is to build a set of NoCode modules for the Flow ecosystem. By the popular NoCode platform Make, we will create an accessible entry for both casual users and potential new developers. Overall, the resulting NoCode modules have to potential to make Flow even more attractive to both users who are new to the blockchain technology and developers who want to generate creative solutions fast.
Demo Video: https://www.loom.com/share/7dac988f02ef4505be22a37382bc6a37
Additional info revised version:
We originally submitted a larger proposal comprising more modules, but after consultation with @alxflw, we revised and reduced it to a smaller initial project. This will allow us to evaluate how the apps do within the community and potentially continue from there.
We have now already systematically evaluated the available NoCode platforms which we could potentially build on and decided that Make is the most ideal plaform for this purpose. This is because 1) it is one of the largest NoCode platforms (500.000+ users), 2) the cost of individual operations is very low (e.g., compared to Zapier), 3) it is very accessible, 4) it is highly flexible when it comes to the integration of several modules into complex workflows, which is helpful when programming some of the envisioned workflows for the flow ecosystem.
Impact
The aim is to make the modules and the resulting solutions available and accessible to literally everyone in the Flow community- and to everyone interested in joining it. Every single community member will be enabled to quickly and easily build dashboards, tracking apps, tax apps, notification apps, Discord bots and much more, either for personal use or for broader use across the entire community.
Milestones and funding

Milestone
Deliverables
Timeline
Risks
USD proposal

1 - Ecosystem Research
List of NoCode solutions to build based on community research, i.e. talking to a number of interested Flow companies/projects to find out which solutions may be most helpful to them.
3 weeks
-
-

2 - Development of modules
Develop selected NoCode apps, e.g., get transaction, get token holder list for token, get wallet information.
6 weeks
-
8,000

3 - Creation of workflow templates
Create three exemplary workflows based on the results of our community research, e.g., NFT/Token Dashboards, transactions export/import into tax software, whitelist of token holders, daily commission earned through secondary sales.
2 weeks
-
2,000

4 - Publication of modules & workflows
Once created, the modules will be made available using a public URL and published officially on Make. The workflows will also be published as templates for everyone to use.
continuously
-
-

5 - Educational content
Creation of educational content on how to use apps and workflows, e.g., blogposts or videos.
4 weeks
-
3,000

6 - Adoption
100 people use the developed models.
8 weeks after completion
-
2,000

Team

Name
Role
Bio
Contact

Ivonne
Project Lead
Ivonne is currently doing her PhD in cognitive Science and has a background in scientific programming and cross-discipline communication.
<EMAIL_ADDRESS>

Richard
Lead Developer
Richard is a NoCode power-user who has developed several custom apps before. He recently finished his Master's degree in Finance and has been in love with DeFi since then.
<EMAIL_ADDRESS>

Together, we understand the challenges of complex new technologies and would love to make Flow more accessible to everyone.

Thanks @iwe90!  We'll review and get back to you shortly.

Hi @iwe90 - thanks again for your proposal!
We're reviewed and have a few follow-up questions/comments:

How will this be discoverable by people in order to leverage what you're planning to build through this grant?  I understand that it will like on Make in some form, but wanted to get a better sense for plans around driving adoption.
Can you please include a milestone on adoption, perhaps based on number of people that use/create with this project?

Thanks!

Hi @chrisackermann , thank you very much for your feedback!
With regard to your first question: We are planning on announcing the Flow NoCode modules on a newly set-up Twitter and on a blog, where we will also post the educational content on how to use them. We will also ask the flow native projects which we plan on collaborating with (Milestone 1) to share some information in their respective channels highlighting their practical use of the modules. This will be particularly useful for other projects to adopt similar workflows. The publication of the apps on Make is not trivial either, because newly published apps are usually announced in their monthly review. Additionally, we are going to draw attention to the new apps by posting about them in the Make Community channels (forum and Slack), so that fellow NoCoders can have a sneak-peak into flow. All of this should allow for these first few modules to reach fellow builders and explore even more use cases! :)
With regard to your second question: Do you want this milestone to include a specific number of people that have used/viewed the developed solutions? And do you want a specific USD amount to be assigned to this milestone and for this to be conditional on reaching this number? Or do you mean a more general milestone like “usage tracking” that is more exploratory and unconditional?

Hi @chrisackermann, thank you for the quick reply.
Regarding the additional milestone- could you help us with the numbers here? How many people using the modules would you consider a success in the context of this small initial project?

Hi @iwe90 - perhaps 100 people would be a good indicator of impact from this project?

@chrisackermann sounds good! I added the number to the milestone & added a timeframe as well.

Hi @iwe90 - thanks for the updates and for your patience!  Just wanted to let you know that we've accepted your proposal and will be following up directly on next steps.  Thanks!

@chrisackermann I made the minor changes to Milestones #2 and #3 as suggested in our last e-mail.

Hey @iwe90, whats the status on this grant? Noticed in our database that only the first 2 milestones were completed, it seems inactive for over a year.


Improve performance on 4k preview

I have a webcam that supports 4k 30fps. So far the only preview solution I can find in .NET that compares to the Windows Camera app and OBS is the UWPs MediaCapture and MediaElement . Using these controls on WPF works for the most part but the airspace issue hits you and you have to make workarounds when incorporating on your UI.
I love the simplicity of this library and was surprised that it even supports Avalonia. It would be great to have 4k preview support in the future.

Thanks for using FlashCap!
Since the release of FlashCap, we have investigated some environments where FlashCap does not yet work, specifically the Android camera system. So we have found a few issues that FlashCap may need to address in the future:
Preview surface support
Many media capture APIs support preview surfaces. This is a feature that allows for extremely fast previews by transferring data directly from the capture device to the GPU, "independent" of the bitmap from the media.
When I first implemented FlashCap, we had a bit of trouble deciding whether to support it or not, but since our first and most important goal was to get bitmap data, we decided not to support it. (FlashCap was largely born out of the necessity of my work.)
I have actually tested FlashCap at about 2K resolution and it captures fine in my environment. However, at resolutions as high as 4K, the frame rate drops drastically when previewing. In the near future (4K resolution is already becoming popular?), it is likely to be possible to use native preview functionality.
I think that there must be some way to support native preview functionality. The challenge is to find a way to handle previews in a unified, transparent, and easy-to-use API across multiple platforms.
Reactive interface
When I first looked into the Android NDK Camera API, I was surprised by its complexity. For good reason: the camera device itself and the attributes it supports (resolution, camera settings, etc.) need to be able to be changed by the user at any time in the Android configuration screen, and the application needs to be able to detect these changes.
For example, a user could open the Android configuration screen and suddenly disable the application's camera permissions or, in some cases, switch the camera to no longer needed. Or they could change the default focus setting of the camera. Thus, the camera API was almost entirely realized through callbacks, and this seemed to be one of the factors complicating things.
To return to our FlashCap, it is actually quite possible that such device changes can occur in Windows and Linux as well, if the camera's USB cable is unplugged or newly connected, etc. Windows and Linux are not as nervous as Android. However, if we want to support a system with a reactive low-level API like Android and possibly iOS in the future, the current FlashCap API may not be able to handle it. Perhaps we need to consider something like the FlashCap V2 API with a reactive interface.
Needs to be...
These are pretty heavy issues, especially since the V2 API is likely to be incompatible with the current API, so I feel this needs to be implemented in a meaningful way.
(This does not mean that they are unwilling to do so. :)


Mixing versions of PAC crates - DEVICE_PERIPHERALS multiply defined

Hi,
I'm trying to create a crate which depends on a PAC crate, and have hit an issue where I can't find a way to do this reliably using the stm32f0 PAC.
warning: Linking globals named 'DEVICE_PERIPHERALS': symbol multiply defined!

error: failed to load bitcode of module "stm32f0-9c614b73ce91b0b9.stm32f0.38c6535e-cgu.0.rcgu.o":

This error occurs, as I understand it, because both versions are declaring the DEVICE_PERIPHERALS global with #[no_mangle], which makes sense (I'm not sure why the no_mangle is needed, but I presume there's a reason). It works fine if app->hal->pac and app->my_crate->pac depend on the same version, but in general I don't see a way to ensure this is the case (even with stm32f0="*", cargo is pulling in the latest available, not combining with the HAL version, and anyway there can and are breaking differences between PAC versions).
Is there any way to achieve what I'm trying to do? If not, does a feature gate for DEVICE_PERIPHERALS make sense in the future?
Thanks,
-Jeff

In some sense this is more an issue with svd2rust which is what generates the PACs including the DEVICE_PERIPHERALS global (it's no_mangle as otherwise the name will be mangled to include the PAC version, so two different-versioned PACs could incorrectly co-exist; making it no-mangle causes a linker error instead).
One option is to depend on the HAL instead, and use its pac export to access the PAC types; this guarantees you'll be exactly compatible with the HAL even as it updates, though of course if your users want to update HAL to a newer version than you support there'll be problems.
Another option which is fairly commonly done is to bundle your own mini PAC for just the peripheral you're interested in - for example literally copying the relevant files out of the PAC, or generating them yourself with svd2rust (or another generator such as stm32ral which is what https://github.com/stm32-rs/synopsys-usb-otg/tree/master/src/ral does). You'll probably need an unsafe method that the end-user calls to construct your types that access the registers directly, where the user promises to not simultaneously access them via the normal PAC method; or you could have a safe method that consumes a type from the HAL, but that has similar issues around versioning.
A feature gate could work - it would be a bit like what I describe above but without literal vendoring - but I don't think it would actually resolve the versioning issues, because the type you'd want your user to pass in from their (newer/older) PAC wouldn't match the type you have internally, so in practice they'd still need to be using the same version.

Thanks for the response @adamgreig! And, thanks for the pointer to stm32ral. That looks like it is probably what I want, since it has the nosync feature -- I wish svd2rust had such a feature!
I would prefer to accept a peripheral object in my init() function but I can live without it, as "don't access TSC registers in your application" is a simple and easy to comply with requirement; well worth the benefit of being able to package a driver for re-usability in multiple projects.
I see your point, that this is an svd2rust issue, and I've just found the RFC where this was laid out as an intentional decision a while back: https://github.com/rust-embedded/svd2rust/issues/157. This makes me sad, a bit.  After some small complaining below (please consider reading optional) I will close this issue, as I see this is not the place. Perhaps I'll open an issue there, although I fear it may not be well received.
Having to copy/paste PAC code seems like a bad pattern, especially since I want to support many different parts (the TSC peripheral is identical among many STM parts). And it ends up with the same requirement on the app developer to ensure they are not also accessing the peripheral used by the library. Depending on a second set of register definitions from stm32ral is better, for sure, but it would be nice to be able to use the same PAC interface (and this solution only applies to STM32).
To me, the PAC -- as basically an equivalent of CMSIS headers -- is too low a level to try to enforce an opinion like this. Rust offers a lot of benefits, and I really want to use it for all of my embedded work, but it sometimes seems that decisions about how to protect inherently unsafe hardware peripherals result in severe usability costs for very small practical gains, and that this makes it harder to take advantage of the best benefits of Rust which is protecting the normal memory access of my programs (as well as a lot of other features).
For my $0.02, the no_mangle is just unnecessary. But at a minimum, I really think it should be feature-gated in PACs for flexibility.

You're not the only one to think the PAC should maybe be entirely unsafe and the provision of singletons left to HALs; for example that's how things work in the embassy project, which uses a forked version of svd2rust called chiptool that doesn't generate singletons. I think svd2rust could probably move in that direction eventually, but no one is working on it at the moment.
We do need the no_mangle DEVICE_PERIPHERALS as long as the PAC provides safe access to peripherals, because without it multiple versions of the PAC could be used to obtain multiple overlapping references to the same memory, which can lead to data races which are UB. If the PAC only provided unsafe access, with a safety requirement that you ensure no other simultaneous access to this peripheral happens, then multiple versions could happily coexist, which may well be a price worth paying.

We do need the no_mangle DEVICE_PERIPHERALS as long as the PAC provides safe access to peripherals, because without it multiple versions of the PAC could be used to obtain multiple overlapping references to the same memory, which can lead to data races which are UB.

I'm not sure I understand the UB thing. Since the peripheral registers are not referencing memory, but registers which may  have all sorts of behaviors, it seems any register access is UB whether there are multiple references or not.  Practically speaking, I do see how any non-atomic read-modify-write is a data race, and those cases can be prevented by ensuring single reference. (I guess I'm just concurring here with the view that all PAC access should be unsafe!)
But on the no_mangle bit... the case that the no_mangle is preventing is so narrow! I'm having a hard time coming up with a plausible scenario where calling take() on two different versions happens accidentally. Preventing another PAC version used on a lib crate doesn't ensure no other register ownership if I can safely use the stm32ral crate in my library to access those registers (because it hides the unsafe, just like the PAC). Or I can simply (unsafely) de-reference a pointer to the register.

Because the registers are memory-mapped, accesses to them are treated the same as memory accesses by Rust and LLVM, so we have to avoid UB the same way. If it were the case that any register access is UB we'd be in deep trouble! You're right though; the fact that some other PAC could exist without using a DEVICE_PERIPHERALS global does negate the safety promise the current svd2rust PACs make.
I think in practice the likely scenario avoided by the current global is a HAL using one version of a PAC, and an application also pulling in another version of a PAC, and getting to access registers both through the PAC and through the HAL without the HAL knowing about it. Whether this is all that likely or not though, I don't know... so from a practical point of view you can indeed see the appeal to the PACs being unsafe-only and the HALs having an unsafe constructor where you pinky-promise to not access those registers any other way.

Or I can simply (unsafely) de-reference a pointer to the register.

So long as you have to use unsafe to do it, that's OK. The issue is only if you can create UB without using unsafe, in which case the library/abstraction is in some sense unsound. Which is the case for using e.g. stm32ral alongside an svd2rust-generated PAC because they don't share the exclusivity mechanism...


Factor out simple 'completionFromDecl'

Expose completionFromDecl so we have a maximally simple top-level type ModuleIdent -> ExternDecl -> Maybe Completion without any lists in it.

I like it! Thanks


Floating transparent always-on-top window to read lyrics and listen while working.

Right-click -> Open external window


Make sure package, description, packagedown all refer to new workflows vignette instead of old workflow (singular)

To address #112

Great! Would this PR maybe also be a good opportunity to quickly fix this header issue? ;)

Great! Would this PR maybe also be a good opportunity to quickly fix this header issue? ;)

done!


17 item

Hi,
I think it is bad example to show Function Declaration in if/else block.
http://stackoverflow.com/questions/10069204/function-declarations-inside-if-else-statements
Thanks!

thanks! I'm adding the note about compatibility with the different version of ES standard

you know what: I will just remove that code block because it is just a weird practice to do that.


[Phase 4]: Item Effects

Tracking item effects, including procs, on-use effects, etc.
Weapon Procs

[ ] https://www.wowhead.com/classic/item=227683/sulfuras-hand-of-ragnaros
[ ] https://www.wowhead.com/classic/item=227684/sulfuron-hammer
[ ] https://www.wowhead.com/classic/item=228350/eskhandars-right-claw
[ ] https://www.wowhead.com/classic/item=228349/eskhandars-left-claw
[ ] https://www.wowhead.com/classic/item=228146/magmadars-left-claw
[ ] https://www.wowhead.com/classic/item=228267/gutgore-ripper
[ ] https://www.wowhead.com/classic/item=227843/reaving-nightfall

[ ] Maybe https://www.wowhead.com/classic/item=19169/nightfall too unsure

[ ] https://www.wowhead.com/classic/item=227842/ebon-fist

[ ] Copy of https://www.wowhead.com/classic/item=19170/ebon-hand

[ ] https://www.wowhead.com/classic/item=227832/tempered-black-amnesty

[ ] Copy of https://www.wowhead.com/classic/item=19166/black-amnesty but maybe not needed

Trinkets

[ ] https://www.wowhead.com/classic/item=228297/shard-of-the-flame
[ ] https://www.wowhead.com/classic/item=228298/shard-of-the-scale
[ ] https://www.wowhead.com/classic/item=228122/the-molten-core
[ ] https://www.wowhead.com/classic/item=228293/essence-of-the-pure-flame
[ ] https://www.wowhead.com/classic/item=228589/heart-of-the-scale
[ ] https://www.wowhead.com/classic/item=228686/onyxia-blood-talisman
[ ] https://www.wowhead.com/classic/item=228255/talisman-of-ephemeral-power
[ ] https://www.wowhead.com/classic/item=228188/prestors-hairpin
[ ] https://www.wowhead.com/classic/item=227915/dukes-domain
[ ] https://www.wowhead.com/classic/item=227972/burst-of-knowledge
[ ] https://www.wowhead.com/classic/item=227811/defender-of-the-timbermaw
[ ] https://www.wowhead.com/classic/item=228523/cannonball-runner
[ ] https://www.wowhead.com/classic/item=228599/heart-of-wyrmthalak
[ ] https://www.wowhead.com/classic/item=16022/arcanite-dragonling
[ ] https://www.wowhead.com/classic/item=228083/gloaming-treeheart
[ ] https://www.wowhead.com/classic/item=228081/germinating-poisonseed
[ ] https://www.wowhead.com/classic/item=228078/accursed-chalice
[ ] https://www.wowhead.com/classic/item=228089/woodcarved-moonstalker
[ ] https://www.wowhead.com/classic/item=227967/second-wind
[ ] https://www.wowhead.com/classic/item=227989/hand-of-justice

Totems

[ ] https://www.wowhead.com/classic/item=227977/totem-of-rage
[ ] https://www.wowhead.com/classic/item=228178/totem-of-earthen-vitality
[ ] https://www.wowhead.com/classic/item=228177/totem-of-raging-fire
[ ] https://www.wowhead.com/classic/item=228176/totem-of-thunder
[ ] https://www.wowhead.com/classic/item=228049?level=60&rand=0
[ ] https://www.wowhead.com/classic/item=23199/totem-of-the-storm

Librams

[ ] https://www.wowhead.com/classic/item=227976/libram-of-truth
[ ] https://www.wowhead.com/classic/item=228175/libram-of-holy-alacrity
[ ] https://www.wowhead.com/classic/item=228174/libram-of-the-devoted
[ ] https://www.wowhead.com/classic/item=228173/libram-of-the-consecrated

Relics

[ ] https://www.wowhead.com/classic/item=228181/idol-of-exsanguination-cat
[ ] https://www.wowhead.com/classic/item=228182/idol-of-exsanguination-bear

Other

[ ] https://www.wowhead.com/classic/item=228296/perditions-blade

Implemented the following:

https://www.wowhead.com/classic/item=227683/sulfuras-hand-of-ragnaros
https://www.wowhead.com/classic/item=227915/dukes-domain
https://www.wowhead.com/classic/item=228078/accursed-chalice
https://www.wowhead.com/classic/item=228081/germinating-poisonseed
https://www.wowhead.com/classic/item=228083/gloaming-treeheart
https://www.wowhead.com/classic/item=228089/woodcarved-moonstalker
https://www.wowhead.com/classic/item=228122/the-molten-core
https://www.wowhead.com/classic/item-set=1780/shard-of-the-gods

Stats only. Still missing data on what the servants do

https://www.wowhead.com/classic/item=19169/nightfall
https://www.wowhead.com/classic/item=227843/reaving-nightfall
https://www.wowhead.com/classic/item=13209/seal-of-the-dawn
https://www.wowhead.com/classic/item=19812/rune-of-the-dawn
https://www.wowhead.com/classic/item=19287/darkmoon-card-heroism
https://www.wowhead.com/classic/item=19288/darkmoon-card-blue-dragon
https://www.wowhead.com/classic/item=19289/darkmoon-card-maelstrom
https://www.wowhead.com/classic/item=227972/burst-of-knowledge
https://www.wowhead.com/classic/item=228255/talisman-of-ephemeral-power
https://www.wowhead.com/classic/item=228678/draconic-infused-emblem

I do not believe the 4% raptor strike damage aura from either of these items is correctly being applied in the sims at the moment. I can't speak for the Multi-shot versions
https://www.wowhead.com/classic/item=227081/blood-guards-chain-grips
https://www.wowhead.com/classic/item=227087/knight-lieutenants-chain-grips


[IMPROVEMENT] Improved dashboard and metrics for different types of disk (e.g. tag: "ssd")

Is your improvement request related to a feature? Please describe (👍 if you like this request)
The longhorn dashboard shows an amount of storage available, but does not separate it by disk tags.  Like many people I have SSDs and rotating disks.  I assign the tags "spinny" and "ssd".  I want to understand how much of each I have available and the maximum size PVC of each I can provision.  Other people might use other tags, like indicating a disk is not on a fast network connection, or is nvme vs sata etc.
The CRDs are constructed in such a way as to make it difficult to acquire this information via JQ.
The Prometheus metrics don't expose tags at all.
Describe the solution you'd like
Ideally the ability to filter the dashboard by disk tag and a "max PVC size" as well (if I have 200Tib total but all the disks are 10Tib, there's an absolute max of 10Tib).  Also the data should be available via prometheus metrics.
Describe alternatives you've considered
The closest thing I can work out for this is to use a combination of node-exporter for the underlying disks and inferring the tagging.  The disk names do not have to be unique so even scripting a calculator from the CRDs is a pain.

Not stale, if issues regularly aren't going to be looked at in the stale period, perhaps the stale period should be increased?


Help delaying trade to next pot

Im using steam-tradeoffers to handle the offers in my jackpot website, im my database i have set the pot status(ready, closed, finished). I must make the bot only accept the "deposit" when the pot status is "ready", otherwise it should be delayed until it is ready.
Here's my little peace of code for this:
if (potState!='ready') {
offers.declineOffer({tradeOfferId: offer.tradeofferid});
console.log('Offer declined, pot is not ready...');
return;
}

So what I'm doing currently is declining the offers, because if i just "return" the function, the other functions related to the offer will either accept or decline it. How can I change that so the offer stays "on hold" and gets accepted as soon the next pot is ready?
Thank You very much!

Oh now i saw the first issue telling to not ask for help here, sorry!


Fixes serialport install on mac machines

The version of serialport sphero.js currently uses (1.7.1) does not install properly on macs due to conflicts with xcode tools. Using serialport 2.0.0 or above fixes this.

Thanks, @Flinnja


BIG IP LTM AS3 GET API Method

Environment

Application Services Version: AS3 v18
BIG-IP Version: 15.1.2

Summary
A clear and concise description of what the bug is.
Please also include information about the reproducibility and the severity/impact of the issue.
Hi,
I've installed AS3 onto 1 of our test F5 devices as we wanted to explore the API capabilities. I followed this KB https://clouddocs.f5.com/products/extensions/f5-appsvcs-extension/latest/userguide/quick-start.html and was able to successfully do POST calls creating new tenants/partition, VIPs, pools and pool members. The test F5 device that I am using has an existing tenant/partition already and my POST call involves creating new partition/tenant. No issues with POST.
However when I try to do a GET using https:///mgmt/shared/appsvcs/declare?show=full, the set of records returned only show the VIPs and VIP config for the new partition that I created. I do not get any of the existing VIPs that are in the other existing partition/tenant already.
Steps To Reproduce

I do a GET call using https:///mgmt/shared/appsvcs/declare?show=full
I only get the payload below:

{
    "Sample_01": {
        "class": "Tenant",
        "A1": {
            "class": "Application",
            "service": {
                "class": "Service_HTTP",
                "virtualAddresses": [
                    "<IP_ADDRESS>"
                ],
                "pool": "web_pool",
                "virtualPort": 80,
                "persistenceMethods": [
                    "cookie"
                ],
                "profileHTTP": "basic",
                "virtualType": "standard",
                "layer4": "tcp",
                "profileTCP": "normal",
                "serviceDownImmediateAction": "none",
                "shareAddresses": false,
                "enable": true,
                "maxConnections": 0,
                "snat": "auto",
                "addressStatus": true,
                "mirroring": "none",
                "lastHop": "default",
                "translateClientPort": false,
                "translateServerAddress": true,
                "translateServerPort": true,
                "nat64Enabled": false,
                "httpMrfRoutingEnabled": false,
                "rateLimit": 0
            },
            "web_pool": {
                "class": "Pool",
                "monitors": [
                    "http"
                ],
                "members": [
                    {
                        "servicePort": 80,
                        "serverAddresses": [
                            "<IP_ADDRESS>",
                            "<IP_ADDRESS>"
                        ],
                        "enable": true,
                        "connectionLimit": 0,
                        "rateLimit": -1,
                        "dynamicRatio": 1,
                        "ratio": 1,
                        "priorityGroup": 0,
                        "adminState": "enable",
                        "addressDiscovery": "static",
                        "shareNodes": false
                    }
                ],
                "allowNATEnabled": true,
                "allowSNATEnabled": true,
                "loadBalancingMode": "round-robin",
                "minimumMembersActive": 1,
                "reselectTries": 0,
                "serviceDownAction": "none",
                "slowRampTime": 10,
                "minimumMonitors": 1
            },
            "template": "generic",
            "enable": true
        },
        "addService": {
            "class": "Application",
            "template": "generic",
            "addService": {
                "class": "Service_HTTP",
                "virtualAddresses": [
                    "<IP_ADDRESS>"
                ],
                "pool": "addServicePool",
                "virtualPort": 80,
                "persistenceMethods": [
                    "cookie"
                ],
                "profileHTTP": "basic",
                "virtualType": "standard",
                "layer4": "tcp",
                "profileTCP": "normal",
                "serviceDownImmediateAction": "none",
                "shareAddresses": false,
                "enable": true,
                "maxConnections": 0,
                "snat": "auto",
                "addressStatus": true,
                "mirroring": "none",
                "lastHop": "default",
                "translateClientPort": false,
                "translateServerAddress": true,
                "translateServerPort": true,
                "nat64Enabled": false,
                "httpMrfRoutingEnabled": false,
                "rateLimit": 0
            },
            "addServicePool": {
                "class": "Pool",
                "members": [
                    {
                        "servicePort": 80,
                        "serverAddresses": [
                            "<IP_ADDRESS>",
                            "<IP_ADDRESS>"
                        ],
                        "enable": true,
                        "connectionLimit": 0,
                        "rateLimit": -1,
                        "dynamicRatio": 1,
                        "ratio": 1,
                        "priorityGroup": 0,
                        "adminState": "enable",
                        "addressDiscovery": "static",
                        "shareNodes": false
                    }
                ],
                "allowNATEnabled": true,
                "allowSNATEnabled": true,
                "loadBalancingMode": "round-robin",
                "minimumMembersActive": 1,
                "reselectTries": 0,
                "serviceDownAction": "none",
                "slowRampTime": 10
            },
            "enable": true
        },
        "enable": true,
        "defaultRouteDomain": 0,
        "optimisticLockKey": ""
    },
    "class": "ADC",
    "schemaVersion": "3.0.0",
    "id": "urn:uuid:33045210-3ab8-4636-9b2a-c98d22ab915d",
    "label": "Sample 1",
    "remark": "Simple HTTP Service with Round-Robin Load Balancing",
    "updateMode": "selective",
    "controls": {
        "archiveTimestamp": "2022-06-06T02:24:28.926Z",
        "class": "Controls",
        "logLevel": "error",
        "trace": false,
        "traceResponse": false,
        "dryRun": false
    }
}

This only contains the VIPs in 1 tenant/partition (Sample_01). I have another partition that is already existing (partition Common) and I don't get the VIPs in that existing partition.  That's the issue that I need your help on.
Expected Behavior
A clear and concise description of what you expected to happen.
I am expecting after doing a GET call https:///mgmt/shared/appsvcs/declare?show=full that I should receive the list of all VIPs in all partitions in that F5 device.
Actual Behavior
A clear and concise description of what actually happens.
Please include any applicable error output.
I am only getting the VIPs in the partition (Sample_01) and not any VIPs from the other partition (Common) . See attached files for additional information.

GET Payload.txt

@joycecgsangalang please can you update AS3 to a later version. Recommend AS3-37 or AS3-36-1 which is a LTS release "long term support"
Let us know if this issue remains. TY

@joycecgsangalang sorry touching many GitHub issues this morning.
After re-reading your Git issue i noticed your looking to retrieve another partition that already existing. If this partition/configuration was originally configured via the UI or TMSH you CANNOT retrieve via AS3. Only objects configured using AS3 can be retrieved via AS3. Hope this answers your question. Only getting the VIPs in the partition (Sample_01) and not any VIPs from the other partition (Common) is working correctly.

@joycecgsangalang Is the missing configuration on a GET request configuration that was created with something other than AS3?

Proprietary
Yes it was created using configuration utility.
Joyce C. Guerrero
Application Delivery Controllers Product Manager
MSD IT | Network Services | Cloud Networking & Application Delivery
From: Daniel Stokes @.>
Sent: Friday, July 8, 2022 6:09 AM
To: F5Networks/f5-appsvcs-extension @.>
Cc: Guerrero, Joyce @.>; Mention @.>
Subject: Re: [F5Networks/f5-appsvcs-extension] BIG IP LTM AS3 GET API Method (Issue #621)
EXTERNAL EMAIL - Use caution with any links or file attachments.
@joycecgsangalanghttps://github.com/joycecgsangalang Is the missing configuration on a GET request configuration that was created with something other than AS3?

Reply to this email directly, view it on GitHubhttps://github.com/F5Networks/f5-appsvcs-extension/issues/621#issuecomment-1178277276, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AZ2QNJ2GFSYH2F3PXCNLDOLVS5IOJANCNFSM52H4OTCQ.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>This e-mail message, together with any attachments, contains information of Merck & Co., Inc. (126 East Lincoln Ave., P.O. Box 2000, Rahway, NJ USA 07065) and/or its affiliates, that may be confidential, proprietary copyrighted and/or legally privileged.   (Direct contact information for affiliates is available at - Contact us - MSD https://www.msd.com/contact-us/.)  It is intended solely for the use of the individual or entity named on this message. If you are not the intended recipient, and have received this message in error, please notify us immediately by reply e-mail and then delete it from your system.

HI @joycecgsangalang, would it be possible to setup a zoom, so we can go through how AS3 works. Please email us at<EMAIL_ADDRESS>

thanks @sunitharonan @joycecgsangalang look forward to having a conversation!

Closing issue. AS3 is working as designed.

Proprietary
Hi Mark,
Only objects configured using AS3 can be retrieved via AS3 - I see, is there any F5 API that we can use so that we can retrieve existing F5 configuration data (i.e. VIP name, VIP basic config, Pool members) and allow it to be exposed to other applications? Is there anything in this F5 API stack F5 Cloud Docshttps://clouddocs.f5.com/ (snapshot below) that can address my needs? Thanks.
@.***
Joyce C. Guerrero
Application Delivery Controllers Product Manager
MSD IT | Network Services | Cloud Networking & Application Delivery
From: mark dittmer @.>
Sent: Friday, July 1, 2022 2:30 AM
To: F5Networks/f5-appsvcs-extension @.>
Cc: Guerrero, Joyce @.>; Mention @.>
Subject: Re: [F5Networks/f5-appsvcs-extension] BIG IP LTM AS3 GET API Method (Issue #621)
EXTERNAL EMAIL - Use caution with any links or file attachments.
@joycecgsangalanghttps://github.com/joycecgsangalang sorry touching many GitHub issues this morning.
After re-reading your Git issue i noticed your looking to retrieve another partition that already existing. If this partition/configuration was originally configured via the UI or TMSH you CANNOT retrieve via AS3. Only objects configured using AS3 can be retrieved via AS3. Hope this answers your question. Only getting the VIPs in the partition (Sample_01) and not any VIPs from the other partition (Common) is working correctly.

Reply to this email directly, view it on GitHubhttps://github.com/F5Networks/f5-appsvcs-extension/issues/621#issuecomment-1171543551, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AZ2QNJ22MML77P434WZHDILVRXRRTANCNFSM52H4OTCQ.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>This e-mail message, together with any attachments, contains information of Merck & Co., Inc. (126 East Lincoln Ave., P.O. Box 2000, Rahway, NJ USA 07065) and/or its affiliates, that may be confidential, proprietary copyrighted and/or legally privileged.   (Direct contact information for affiliates is available at - Contact us - MSD https://www.msd.com/contact-us/.)  It is intended solely for the use of the individual or entity named on this message. If you are not the intended recipient, and have received this message in error, please notify us immediately by reply e-mail and then delete it from your system.


Feature request: more verbose end-user documentation

Hello! Great plugin. I've noticed that the getting started and how to use documentation is a little on the sparse side. Would be super if it were fleshed out more, especially for less savvy folks. As things are now I imagine the brevity may be a little intimidating and confusing for some folks.
For example, would be helpful to mention that (afaict) docker must be running during plugin use, and that running the command (docker run -d -p 9000:9000 -e ASR_MODEL=base -e ASR_ENGINE=openai_whisper onerahmet/openai-whisper-asr-webservice:latest) once per session is required for plugin use (e.g. each time after a reboot and a docker start). At least, I think that may be required; it's what I found I had to do earlier today, at any rate.
This all may feel like obvious info to you and others, but I'm sure it would be a great addition just the same. Putting this kind of detail into an ordered list of steps in the repo's README and also somewhere in Obsidian would be the cat's pajamas for this documentation enthusiast. Would even be happy to help you draft it & decide where to put it!

Hey! love the idea, could you submit a PR with what you're thinking?


Updating GPU Drivers resets fancy zones

Microsoft PowerToys version
0.59.0
Running as admin

[X] Yes

Area(s) with issue?
FancyZones
Steps to reproduce
Uninstall your driver using DDU and re-install new drivers, fancy zone which is set will be reset
✔ Expected Behavior
maintain fancy zone settings
❌ Actual Behavior
zones were reset to default
Other Software
NVIDIA DRIVERS

/bugreport

Thank you for the report. The problem is that the monitor id was changed after you updated GPU drivers, so for FancyZones it looks like a different configuration.
/dup of https://github.com/microsoft/PowerToys/issues/16370


Bicep Community Call - April '24

We are hosting our April Bicep Community Call on Thursday, May 2nd at 9AM PST!
(We will have 2 calls this month! The first will be on the 2nd, and the second will be at the end of May. We will also switch off from 9AM to 2PM PST every other month to accommodate for different time zones)
Use this issue to address topics you would like to discuss, questions you have for our team, further demos you would like to see, and any high or low points you would like to share. This is an open space for our users to discuss any topics they would like to talk about with our team.
You can list topics of discussion in this thread OR you can ask questions during the Q&A portion of the call.
Please sign up here to get an invite to the call. See you there!

Would like to know the status of external providers (AAD), GA release, documentation.

Is there any plans to expand the functionality of custom functions in Bicep, such as having local variables, reading from parameters or variables outside the function, etc?

Are there any plans to expand the functionality of custom functions in Bicep, e.g. as having local variables, reading from parameters or variables outside the function, etc?


UI: Improved topic summary panel content

Describe your changes :

I worked on improving summary panel content for topics

Type of change :

[x] Bug fix
[x] Improvement

Frontend Preview (Screenshots) :

Checklist:

[x] I have read the CONTRIBUTING document.
[ ] I have commented on my code, particularly in hard-to-understand areas.
[ ] I have added tests that prove my fix is effective or that my feature works.
[x] All new and existing tests passed.

Reviewers

Frontend: @open-metadata/ui

@aniketkatkar97 , Can we add the schema type as well?
cc : @chirag-madlani


jpeg-xl test have been failing on macos

For some time, jpeg-xl our test have been failing on macos, as can
be seen in the CI logs.
The CI logs say that brew is installing version 0.10.2 of libjxl.
None of the other runners use v0.10.x at the moment, therefore is
it possible that SDL_image has an issue with libjxl-0.10.x ?

The ci failure mode(s) have also been changed since GitHub macos runners switched to arm64:
Before, there were errors about surface mismatches.
Now, IMG_Init(IMG_INIT_JXL) fails because it cannot find libjxl.0.10.dylib.
There is also an issue with libwebpdemux.2.dylib

Now, IMG_Init(IMG_INIT_JXL) fails because it cannot find libjxl.0.10.dylib. There is also an issue with libwebpdemux.2.dylib

Ouch. How is that happening? Something wrong with brew (e.g. not adding to dyld cache or something)?

Ouch. How is that happening? Something wrong with brew (e.g. not adding to dyld cache or something)?

I don't know how macOS dyld works but it seems like no homebrew library can be loaded at all.
All libraries provided by homebrew cannot be found: libavif, libjxl, and libwebp. (I removed installation of libjpeg, libpng, and libtiff)
The macOS job now uploads CMake logs that hint homebrew installs to /opt/homebrew (e.g. the CMake cache contains libjxl_LIBRARY:FILEPATH=/opt/homebrew/lib/libjxl.dylib).
But the IMG_Init error message is:
Initialization should succeed (Failed loading libjxl.0.10.dylib: dlopen(libjxl.0.10.dylib, 0x0006): tried: 'libjxl.0.10.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OSlibjxl.0.10.dylib' (no such file), '/Users/runner/work/SDL_image/SDL_image/build/libjxl.0.10.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/Users/runner/work/SDL_image/SDL_image/build/libjxl.0.10.dylib' (no such file), '/var/folders/3m/p59k4qdj0f17st0gn2cmj3640000gn/T/setupsdl/66c57facf1111a4ec08d3d1abdf3c87f3062ffbea8d9eb4c9c412e9b5e7f59b7/package/lib/libjxl.0.10.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/var/folders/3m/p59k4qdj0f17st0gn2cmj3640000gn/T/setupsdl/66c57facf1111a4ec08d3d1abdf3c87f3062ffbea8d9eb4c9c412e9b5e7f59b7/package/lib/libjxl.0.10.dylib' (no such file), '/usr/lib/libjxl.0.10.dylib' (no such file, not in dyld cache), 'libjxl.0.10.dylib' (no such file))

There is no /opt/homebrew/lib path in the error message.

Looks like macos >= 13 has the issue. Changing the runner to macos-12, we get the old surface mismatch

There is no /opt/homebrew/lib path in the error message.

I guess the path is on macos libs path, because cmake can found them, yes?
Is it possible that macos-13 (arm64?) versions somehow quarantine those libs
and dlopen fails because of it?

Looks like CMake hardcodes /opt/homebrew.
This is also the default homebrew installation path.
This homebrew discussion is related.
The shellenv suggestion might work for our purposes.

Yes, looks like we'll need to add homebrew lib directory to dyld path somehow in our workflows

When I add the homebrew library path to DYLD_LIBRARY_PATH, the test fails with a BUS error.
https://github.com/madebr/SDL_image/actions/runs/8927177439/job/24519945832#step:13:152
It fails during the BMP test, after successfully completing the avif test.
Or at least, that is what it appears like because the logs might be incomplete.
When doing a search for "bus error DYLD_LIBRARY_PATH`, it looks like these errors are not uncommon.
Adding /opt/homebrew/lib to SDL_image's rpath won't fix the issue: it must be added to SDL3 (dlopen happens there)

When I add the homebrew library path to DYLD_LIBRARY_PATH, the test fails with a BUS error. https://github.com/madebr/SDL_image/actions/runs/8927177439/job/24519945832#step:13:152
It fails during the BMP test, after successfully completing the avif test. Or at least, that is what it appears like because the logs might be incomplete. When doing a search for "bus error DYLD_LIBRARY_PATH`, it looks like these errors are not uncommon.

Misalinged stack or something? I wonder whether or not it happens in SDL2 too.

Looks like msys started installing libjxl 0.10.2 and our tests started failing there too: https://github.com/libsdl-org/SDL_image/actions/runs/9005679096/job/24741542312

Can we not raise this issue in libjxl bug tracker somehow?


⚠ Samsung has degraded performance

In d65a3f6, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2598 ms

Resolved: Samsung performance has improved in f323716.


Extract Presentation Slides Widget

Extracting the presentation slides widget currently implemented would make sense. This would also allow us to make it behave differently depending on the parameters. We would need to strike a balance to keep everything simple so the developer only focuses on building the slides.

[ ] Extract presentation slides widget to custom widget
[ ] Keep the default behaviour of the presentation slides widget
[ ] Add new behavior that transitions between slides by fading instead of scrolling to the side.

This will be moved to the main repo as an issue

Decided we will do this here not in the main repo

Closed with #33


Fix: i257 negative zeros

Pull Request type

Please check the type of change your PR introduces:

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no API changes)
[ ] Build-related changes
[ ] Documentation content changes
[ ] Other (please describe):

What is the current behavior?

Issue Number: N/A
What is the new behavior?

Does this introduce a breaking change?

[ ] Yes
[ ] No

Other information

I think that for clarity in error messages you shouldn't use the regular Add trait of u256 but rather this and use .expect("useful error message") on the result

done, i think you meant those functions

No i was referring to the functions i linked (u256_overflowing_add,u256_overflowing_sub etc)

those are clumsier to use, the checked ones allow using expect more directly. unless i completely misunderstood what you wanted to do?

checked_add calls overflowing_add so you get a small improvement. It shouldn't be hard to use just do
let (r, overflow) = u256_overflowing_add(lhs, rhs);
let r = r.expect("....");

the first result value is a u256, so there's no expect method on it. why reimplement a function that already exists (the checked one)?

@LucasLvy can you check please?

correct leave that as it is

Thanks boss


Selection matches not shown in scrollbar anymore

In every previous version I was able to just select some string and was able to see all matching strings positions in the scrollbar, just like with the search function - but now it seems this feature is missing.
Pictures are worth a thousand words:
Now:

How it was before (now only achieved while using the search ctrl+f):

What's wrong with this feature? Removed? Broken? Disabled?

Dikirim dari ponsel cerdas Samsung Galaxy saya.
-------- Pesan asli --------
Dari: Morgy93<EMAIL_ADDRESS>Tanggal:14/02/2016  00:20  (GMT+07:00)
Ke: Microsoft/vscode<EMAIL_ADDRESS>Cc:
Subjek: [vscode] Selection matches not shown in scrollbar anymore (#2998)
In every previous version I was able to just select some string and was able to see all matching strings positions in the scrollbar, just like with the search function - but now it seems this feature is missing. Pictures are worth a thousand words: Now: How it was before (now only achieved while using the search ctrl+f): What's wrong with this feature? Removed? Broken? Disabled? —Reply to this email directly or view it on GitHub.