dnf_package - CentOS 8.x, CentOS Stream 8.x and OEL 8.x - Chef 17.6.x -> 17.9.46 - Using Stale Cache

We're seeing a very strange dnf_package downgrade when action :upgrade used.
We're seeing it on all of our CentOS Stream 8.x (converted from CentOS 8.x) and Oracle Enterprise Linux 8.x.
We use dnf_automate to automatically update packages nightly. Packages that dnf_automate updates are being downgraded by chef via a recipe for the same package with action :upgrade
On an impacted system, on the cli dnf upgrade will show a list of updates. If applied by dnf upgrade the next chef client run, downgrades the specifically chef managed package.
Running cli command dnf clean all or dnf clean metadata etc, do not fix chef client
Deleting the contents of /var/cache/yum/ fixes chef client immediately, running chef-client immediately upgrades the previously downgraded package since it now sees the newer version in the repo metadata it is reading
On a fixed system, this happens again when upstream repos to include an updated version of a package (thus updating the repo data/metadata) we manage via chef.
When I look at the contents for /var/cache/yum it appears that dnf/yum does leave cruft upon repo metadata changes. I'm suspecting that chef is reading the stale yum/dnf cache when multiple revisions exist.
I'm going to start reviewing the chef client source code to inspect how chef does it. but I wanted to open this so other who have seen this issue can help or find help.

Example of multiple cache directories
/var/cache/yum/$basearch/$releasever # find * -maxdepth 0 -type d -ls
   128637      4 drwxr-xr-x   3  root     root         4096 Feb  9 00:41 epel-177e8c6c18a8078d
   128641      4 drwxr-xr-x   3  root     root         4096 Feb  5 05:23 epel-modular-5f82030b806654e5
      113      4 drwxr-xr-x   3  root     root         4096 Jan 27 19:23 ol8_addons-22627099a7e91dd5
   128658      4 drwxr-xr-x   3  root     root         4096 Jul 16  2021 ol8_addons-e013bc8362693c74
   128667      4 drwxr-xr-x   3  root     root         4096 Jul 23  2021 ol8_appstream-0b1209121ae5d69b
      122      4 drwxr-xr-x   3  root     root         4096 Feb  3 19:45 ol8_appstream-50575e0d2cd83745
   128706      4 drwxr-xr-x   3  root     root         4096 Jul 17  2021 ol8_baseos_latest-e4c6155830ad002c
   128678      4 drwxr-xr-x   3  root     root         4096 Jul 23  2021 ol8_latest-cbb06250ca5c3fa3
      128      4 drwxr-xr-x   3  root     root         4096 Feb  3 19:45 ol8_latest-d4d11e719ca733ba
   128649      4 drwxr-xr-x   3  root     root         4096 Jul 16  2021 ol8_UEK_latest-b1da638cdbc6845a
       98      4 drwxr-xr-x   3  root     root         4096 Feb  3 19:45 ol8_UEK_latest-dd9cc536bf495c65

I may have found something..  It appears that the dnf_package is not using the custom vars under /etc/dns/vars.  If I run the dnf command manually it works fine.
CentOS Linux centos:8 - AppStream                                                                           690 kB/s | 8.4 MB     00:12
CentOS Linux centos:8 - BaseOS                                                                              750 kB/s | 4.6 MB     00:06    ```

[2022-02-24T19:14:07+00:00] FATAL: RuntimeError: dnf_package[unzip] (vbrick_rev_analytics::linux line 9) had an error: RuntimeError: dnf-helper.py had stderr output:
Errors during downloading metadata for repository 'appstream':

Status code: 404 for http://linuxsoft.cern.ch/centos-vault/$contentdir/8/AppStream/x86_64/os/repodata/repomd.xml (IP: <IP_ADDRESS>)
Traceback (most recent call last):


Release 1.5.0

Description of changes:
Bumps the version to 1.5.0 in preparation for release.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Travis build failing due to a problem on their end: https://travis-ci.community/t/install-of-oraclejdk11-is-failing-11-0-3-12/3887

The OpenJDK 10 build is also failing intermittently due to another problem on their end: https://github.com/travis-ci/travis-ci/issues/6593


move comm-comm.datproject.org to comm-comm.dat.foundation

Now that the Dat project homepage is located at dat.foundation, it would be good to migrate the DNS config to comm-comm.dat.foundation to avoid confusion. Or perhaps comm-comm.dat.land would be better?
Thoughts?

cc. @joehand

[Part of a larger discussion to be had]
dat.foundation will likely just exist by itself, without any subdomains attached to it. For all the other dat-related websites, we'll try to consolidate a bit to one site to rule them all. As part of the end of the MOSS Grant, @whoisgina will be evaluating our existing sites and user onboarding process.
For funzies, here are some of our sites:
Websites:

docs.datproject.org

User docs to rule them all

dat.land

To consolidate

dat.foundation
datprotocol.com
comm-comm.datproject.org
events.datproject.org
datbase.org

To archive

blog.datproject.org
how dat works (datprotocol.com)
(broken) chat.datproject.org
https://dat.discourse.group/
https://datproject.github.io/design/

Github Organizations:

github.com/datproject
github.com/datprotocol
github.com/dat-foundation
github.com/dat-land

Oh wow, yeah that is quite a bit more complicated than I initially thought. Is there any documentation about how these various projects connect and are managed? I know CS&S is the steward for the Dat Project, but how else are these projects connected.

@joehand @whoisgina, I'd love to help with that process. Let me know if there's anything I can do!

@todrobbins this would be great! do you still have time to help?

I do. Which pieces can I help with? I can deal with DNS if that's helpful.

I think it's OK as-is.

But it might be helpful to put a link to this page from https://dat.foundation and https://datprotocol.com..!

@RangerMauve should we create an issue on the other repo?

@todrobbins Like, on the dat.foundation website? Yeah, that's a good idea.

😆 yes, that one! I'll create an issue/add the link.

Added: datproject/dat-foundation-website/issues/166


Ignore if non-constant string is passed to double on RSpec/VerifiedDoubleReference

In this case, I believe it is better not to make it a violation in this Cop, since it cannot be replaced by constant.

Fix https://github.com/rubocop/rubocop-rspec/issues/1679

Before submitting the PR make sure the following are checked:

[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[ ] Updated documentation.
[x] Added an entry to the CHANGELOG.md if the new code introduces user-observable changes.
[x] The build (bundle exec rake) passes (be sure to run this locally, since it may produce updated documentation that you will need to commit).

If you have created a new cop:

[ ] Added the new cop to config/default.yml.
[ ] The cop is configured as Enabled: pending in config/default.yml.
[ ] The cop is configured as Enabled: true in .rubocop.yml.
[ ] The cop documents examples of good and bad code.
[ ] The tests assert both that bad code is reported and that good code is not reported.
[ ] Set VersionAdded: "<<next>>" in default/config.yml.

If you have modified an existing cop's configuration options:

[ ] Set VersionChanged: "<<next>>" in config/default.yml.

Of course I don't think instance_double("foo bar") is good code. That is why I did not add the # good example for this in the document. This Cop is for style consistency, so if we want to detect such codes, I think it would be better to add a separate Cop for that purpose.
What do you think?

I think this behavior exist, by configuring the cop with { 'EnforcedStyle' => 'string' }. I assume that is why @pirj closed the PR?

memo) Just to be sure, I'll transcribe the reason for closing this PR as well. As mentioned in #1679#issuecomment-1664487516 discussion, "This is a duplicate of #1262 and had been rejected in the past."


Revert "Pin flatcar to 3510.2.8 (#1711)"

What this PR does / why we need it:
This reverts commit e6de2fe75fb141c6d8a937e0756f1376e0e792f9 since this issue is resolved in OSM now and we don't need to pin the image for AWS anymore.
Which issue(s) this PR fixes:

Fixes #
What type of PR is this?

/kind cleanup
Special notes for your reviewer:
Does this PR introduce a user-facing change? Then add your Release Note here:

NONE

Documentation:

NONE

/retest
should work now because OSM main has been updated with https://github.com/kubermatic/operating-system-manager/pull/314.


_lpdf, _lcdf, _lccdf, _norm suffixes, | separator for functions

Summary:
Probability function suffix cleanup with vertical bar separator.
Description:

[x] allow _lpdf or _lpmf, _lcdf, _lccdf suffixes for probability functions

[x] add to grammars with mangling
[x] grammar compile tests
[x] doc basic notation
[x] change existing doc for all affected functions

[x] rewrite existing _log suffix functions

[x] symbol table

[x] binomial_coefficient_log(M,N) -> lchoose(M, N)
[x] multiply_log(x,y) -> lmultiply(x, y)

[x] name mangling in parser
[x] deprecation of old forms with suggestion of new forms
[x] doc new functions
[x] add deprecated functions to deprecation appendix

[x] add vertical bar separator for lpdf, lpmf, lcdf, lccdf suffixed functions in grammars

[x] add to grammars
[x] general doc

[x] deprecate _log, _cdf_log, _ccdf_log suffixes

[x] grammar deprecation warning
[x] test grammars for warning message
[x] doc note

[x] generate appropriate cdf/ccdf function for truncated sampling statements
[ ] allow suffixes (or args) in function definition syntax to use | notation (any change required?)

[ ] add to grammars
[ ] doc

[ ] add _norm suffix for log densities to turn off propto in generated code

[ ] grammars
[ ] code generators
[ ] general doc
[ ] per-function doc

There are multiple places in the Stan Manual 2.10 where dist_lpdf(y | theta1, ..., thetaN) is written as dist_lpdf(y, theta1, ..., thetaN) - i.e. without the vertical bar. The "comma" version results in a parser error.

Thanks.  This issue is closed, so I'm moving this comment to https://github.com/stan-dev/stan/issues/1868#issuecomment-233819787.


fix shell property value

When using the new shell option from #192, the shell prop is not correctly being set on the session object. This will correctly set the prop.

Great catch 💃


Obsolete and remove usages of InplaceStringBuilder

Now that we have string.Create that is safer and does the same thing.

I don't think we should do this yet. It's not a good replacement. We need better formatting APIs before we deprecate. string.Create alone isn't a good replacement. This also works on .NET Standard 2.0. Specifying a replacement that only works on .NET Core isn't the right thing to do.
That said, I do want to throw this type away but we need a good replacement for it.

I buy .NET Standard 2.0 argument but not the ease of use one. InplaceStringBuilder usage is trivially convertible to string.Create because it forced a very use specific pattern.
We can obsolete the type only in netcoreapp target.


Adding a new scoring function

Hi,
I want to add a new scoring function to reinvent4, I have created comp_newname in /top/dir/somewhere/reinvent\_plugins/components, and added this path to PYTHONPATH as well.
But I receive the error:
File "../REINVENT4/env/lib/python3.10/site-packages/reinvent/scoring/config.py", line 53, in get_components     Component, ComponentParams = component_registry[component_type_lookup]
KeyError: 'newname'
And when I print the component_registry, I obviously cannot see newname among the listed items.
How can I resolve the issue?

My bad, I had to add /top/dir/somewhere to PYTHONPATH and not the whole address to the components.


Sharing State Between Components

Page: https://id.react.dev/learn/sharing-state-between-components
Assignee: @yaffalhakim1

hi mas @zainfathoni looks like i making a mistake in my PR here because i still see my prev commit from my prev PR (which is merged). Do i need to create a new one or just continue the PR?

It's up to you. If you know how to rebase your commits to the expected branch, you can keep this PR and "force push" your changes to it.
If you're not confident with it, you mau close this PR and raise a new one with the correct commits.

It's up to you. If you know how to rebase your commits to the expected branch, you can keep this PR and "force push" your changes to it.
If you're not confident with it, you mau close this PR and raise a new one with the correct commits.

I think I am fine with the first choice. Thank you, mas.


[BUG] How can I change the installation path?

How can I change the installation path?

hello @samo92
for now you cant,
but is a good feature to add in the future

Thank you !!!!!!!!

Hi !
I trying use the output_path but this property only works for msix output directory, correct?
The installation folder, in Windows 10, is C:\Program Files\WindowsApps
Do you have a method to change the installation folder ?
My config is:
msix_config:
  display_name: PDVx Desk
  publisher_display_name: XXX
  identity_name: XXX
  anguages: pt-br
  msix_version: <IP_ADDRESS>
  trim_logo: false
  logo_path: XXX
  certificate_path: XXX
  certificate_password: xxx
  output_path: C:\OUTPUT
  output_name: XXX
  build_windows: false
  app_installer:
    publish_folder_path: c:\OUTPUT
    hours_between_update_checks: 0
    automatic_background_task: true
    update_blocks_activation: true
    show_prompt: true
    force_update_from_any_version: false

Thx!


Limit user to 1 upload at a time unless they have Plus

Currently people can upload multiple videos at once. I don't really like this setup because people can spam uploads, it should be limited to 1 video at a time unless they're a paying user

I'll take this one on

payments don't work right now so please fix that first.

And let's also make it that they can only have 1 video converting at once, and then make sure we have a thing where we detect if a conversion fails and mark the upload as failed

@mayeaux My plan before I write any code:
Check if they are already uploading a file with an if statement in postFileUpload in /controllers/backend/uploading. I'll create a property isCurrentlyUploading (bool) in the User model. This boolean should be made true at the start of post file upload and made false if an upload fails and when an upload (AND conversion?) finishes.
If a conversion fails, I'm not entirely sure where I should be marking the upload as failed. I'm also curious as to why you'd like this functionality.
I'll start writing the code after you reply 😀

Well the main question is whether we want to limit a user to one upload INCLUDING during the conversion time (aka you have a file converting you can't upload another one atm). I suppose we can start with just limiting uploads to one at a time and see if that solves the issue of people overburdening the server. My only fear is that if a file blows up during conversion (say the server reboots) that the person will be stuck on isCurrentlyUploading til the end of time. We can look at that though otherwise I say I love your spec it's the same as what I'd do as well!

I'm having some trouble with this. I was thinking of pushing some code but I don't have access to the repository


Check pin assignments - is D6 reserved for the Trainer?

See also https://github.com/NUSTEM-UK/connect-blockly-local/issues/19

Yes, D6 is RX_PIN for softwareserial. Fix in https://github.com/NUSTEM-UK/connect-blockly-local/issues/19

Closed by commit to connect-blockly-local


Flip color scheme of tabs

I'm curious if any else feels like the color scheme of the tabs is a bit unintuitive. It seems logical for the selected tab to appear "attached" to the rest of the page, while the unselected ones are shadowed.
Current:

Proposed:

Implemented quite easily with https://github.com/karpathy/arxiv-sanity-preserver/commit/4a2b7db6a0ed16b0740de0aaf0170fbeca331358 , thank you! closing.


bug: logs are misleading and node appears to sample old headers

Celestia Node version
v0.13.0
OS
macOS
Install tools
docs
Others
No response
Steps to reproduce it
run a light node
Expected result
it doesn't sample further than 30 days back, per release notes: "This release introduces a light node sampling window of 30 days, specified in CIP-4. Light nodes will now only sample blocks within a 30 day window instead of sampling all blocks from genesis."
Actual result
logs are misleading because it looks like it is still sampling further than 30 days back?
2024-02-19T20:05:46.307+0100	INFO	das	das/worker.go:88	finished sampling headers	{"type": "catchup", "from": 815902, "to": 816001, "errors": 0, "finished (s)": 13.106756458}

Relevant log output
No response
Notes
No response

nice :)
2024-06-24T12:46:36.524-0400	INFO	das	das/worker.go:94	finished sampling headers	{"type": "catchup", "from": 16402, "to": 16501, "errors": 0, "# of headers skipped as outside of sampling window": 100, "finished (s)": 5.959832375}


Problem running under Medium trust

Problem:
I've stumbled onto a problem running dotless HttpHandler under Medium trust. Rendering .less files using the handler results in a System.Security.SecurityException: Request for the permission of type 'System.Security.Permissions.FileIOPermission, mscorlib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
Steps to reproduce:
In src/dotless.SampleWeb/web.config, under <system.web> element add <trust level="Medium"> and run the application. Loading any *.less files results in a Security Exception.
Proposed fix:
Line 38 in src/dotless.Core/Importers/Importer.cs seems to be a problem. System.Environment.CurrentDirectory apparently isn't allowed under Medium trust. I have tried to return empty string return "" instead of return System.Environment.CurrentDirectory and it helped, application then runs normally under Medium trust. I suppose I just gave  the rest of the code relative paths instead of absolute ones. I don't know any side affects of my fix, but it works for me, both locally, and on shared hosting under Medium trust.

This seems somewhat related to having a configurable base directory (although it's likely not the only non-full-trust-issue). Might try to work this into 1.5 as well.

Supporting Medium Trust is no longer much of a priority, given that the ASP.NET team basically considers all but Full Trust obsolete for even the current version of MVC, never mind the next one. However, 1d7ac01 does change Importer so that it no longer relies on Environment.CurrentDirectory, so it might work.


Add LimitToUnit() method to limit conversion until this unit.

Example :
       duration, _ := ParseString("354h22m3.24s")
       fmt.Println(duration) // 2 weeks 18 hours 22 minutes 3 seconds

       duration, _ = ParseString("354h22m3.24s")
       duration = duration.LimitToUnit("days")
       fmt.Println(duration) // 14 days 18 hours 22 minutes 3 seconds

Codecov Report

Merging #21 into master will increase coverage by 0.70%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master      #21      +/-   ##
==========================================
+ Coverage   97.36%   98.07%   +0.70%
==========================================
  Files           1        1
  Lines          76      104      +28
==========================================
+ Hits           74      102      +28
  Misses          1        1
  Partials        1        1

Impacted Files
Coverage Δ

durafmt.go
98.07% <100.00%> (+0.70%)
:arrow_up:

Continue to review full report at Codecov.

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

@syrm Thanks for the PR, LGTM 👍


⚠ Bofrost.be has degraded performance

In 033caa4, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1135 ms

Resolved: Bofrost.be performance has improved in 9ab8676.


cron job doesn't update wallpaper XFCE

i can see it running every 10 mins under htop, so the cron is working but the wallpaper itself do not update.
*/10 * * * * /usr/bin/himawaripy
I thought it has something to do with the display so i changed the cron into this, but still no luck.
*/10 * * * * DISPLAY=:0.0 /usr/bin/himawaripy
But if i run this himawaripy command in the terminal myself it updates successfully, any ideas?
EDIT: Guess it does not support XFCE yet.

It's solved by enabling random wallpapers under the cache folder, it wouldn't auto select new file name even if there's only 1 file exist.

Sorry, turns out cron does not accept */10 as to run every 10 minutes

Couldn't detect your desktop environment ('unknown'), but you have 'feh' installed so we will use it...

Fixed it in the new version. I would appreciate if you can give it a try and let me know!


Make a.add-code-comment click handler an event handler

Instead of directly attaching the add-code-comment on click handler to
the a.add-code-comment elements - make this an event handler on the
document instead.
Fix #17736
Signed-off-by: Andrew Thornton<EMAIL_ADDRESS>

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@013fb73). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main   #17737   +/-   ##
=======================================
  Coverage        ?   45.52%
=======================================
  Files           ?      807
  Lines           ?    89791
  Branches        ?        0
=======================================
  Hits            ?    40880
  Misses          ?    42373
  Partials        ?     6538

Continue to review full report at Codecov.

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


Team 8: Potential Infinite Loop in Error Handling

In multiple scenarios, there's a pattern of receiving an error, adjusting settings or data, and returning to a previous step. However, there's no mention of a termination condition if the error persists despite multiple adjustments. This could lead to an endless loop of adjustments without resolution.

Suggested Action: Introduce a termination or timeout condition after a certain number of failed attempts. Provide guidance on alternative actions or resources for the developer if they encounter persistent issues.

These use cases were changed and no longer contain this issue.


A union of identical types fails identicality

tl;dr
When identicality checking the received type R and expected type E, the check will fail if one (say, R) is a union, say R = R1 | R2, even if E is identical to all parts of the union, E === R1 and E === R2, and the parts of the union are also identical, R1 === R2.
That is, it seems like an additional check in identicality.ts could recurse into intersection types and return true if all parts of each union are identical.
Setup
This is the type I was working on:
/**
 * Remove the "wildcard" parts of an object, leaving only the concrete,
 * specified parts.  That is, it removes any keys which could be any
 * string, any number, or any symbol.
 */
export type NoRecord<T extends object> = object extends T ? Record<never, unknown> : {
	[K in keyof T as K extends string ? string extends K ? never : K : K extends symbol ? symbol extends K ? never : K : K extends number ? number extends K ? never : K : never]: T[K];
};

I then have some test fixture types which include the record behavior I want to filter out:
type AnyRecord = {
	readonly id: number;
	flag?: boolean;
} & Record<string | number | symbol, string>;

type StringRecord = {
	readonly id: number;
	flag?: boolean;
} & Record<string, string>;

type NumberRecord = {
	readonly id: number;
	flag?: boolean;
	[key: number]: string;
}

type SymbolRecord = {
	readonly id: number;
	flag?: boolean;
	[key: symbol]: string;
}

When run through NoRecord, all of these should reduce to:
type Specifics = {
	readonly id: number;
	flag?: boolean;
};

I also have a helper function which does nothing but hold type signatures:
const f = <T>(): T => undefined as T;

The parts which work fine:
expectType<Specifics>(f<NoRecord<AnyRecord>>());  // ✅
expectType<Specifics>(f<NoRecord<StringRecord>>());  // ✅
expectType<Specifics>(f<NoRecord<NumberRecord>>());  // ✅
expectType<Specifics>(f<NoRecord<SymbolRecord>>());  // ✅

But this breaks:
expectType<Specifics>(f<NoRecord<NumberRecord | StringRecord>>());  // ❌

If you relax the test to assignability, it will pass just fine:
expectAssignable<Specifics>(f<NoRecord<SymbolRecord | StringRecord>>());  // ✅
expectAssignable<NoRecord<SymbolRecord | StringRecord>>(f<Specifics>());  // ✅
expectAssignable<Specifics>(f<NoRecord<SymbolRecord | NumberRecord>>());  // ✅
expectAssignable<Specifics>(f<NoRecord<NumberRecord | StringRecord>>());  // ✅

For the failure of the strict check, the error you get is:
  ✖  47:0  Parameter type Specifics is not identical to argument type { readonly id: number; flag?: boolean | undefined; } | { readonly id: number; flag?: boolean | undefined; }.

- { readonly id: number; flag?: boolean | undefined; }
+ { readonly id: number; flag?: boolean | undefined; } | { readonly id: number; flag?: boolean | undefined; }

This is, at first, mystifying.  "Hey.  Why is that still a union if the two types are the same?  Why doesn't it collapse?"  I assume there's a perfectly good reason for this at the tsc level ... but I am not smart enough to understand it.
Fire up a debugger on the failing assertion, and you end up in identical.ts:53.  It sees the received type as a union of two subtypes.  And if I exhaustively compare them:
checker.isTypeIdenticalTo(expectedType, receivedType.types[0])  // E === R1? true
checker.isTypeIdenticalTo(expectedType, receivedType.types[1])  // E === R2? true
checker.isTypeIdenticalTo(receivedType.types[0], receivedType.types[1])  // R1 === R2? true

All the subtypes are considered identical, but the two top-level types are not.

Oh, and I guess I should say, you don't see the error until you actually run the tests.  That is, there are no squigglies at coding time.
And for completeness, I also ran it through expect-type, which also passes it without any squigglies.
expectTypeOf(f<NoRecord<NumberRecord | StringRecord>>()).toEqualTypeOf<Specifics>();  // ✅
expectTypeOf<Specifics>().toEqualTypeOf(f<NoRecord<NumberRecord | StringRecord>>());  // ✅

And after typing all this up it occurs to me that I could reduce the complexity of that type.  But it doesn't change the outcome above.
export type NoRecord<T extends object> = object extends T ? Record<never, unknown> : {
	[K in keyof T as string extends K ? never : symbol extends K ? never : number extends K ? never : K]: T[K];
};

For posterity, I decided to go back to my basic assumptions about how tsc works with records.  Turns out, everything I thought I knew was false.
None of this changes the original issue.  I still think an exhaustive union identicality checker would be nice (even if it got its own expectTransitiveIdenticality or something).
Anyway ... for some added color ...
I simplified the record types to make them as uniform as possible, except the key type:
type AnyRecord = {
	readonly id: string;
	[key: string | number | symbol]: string;
};

type StringRecord = {
	readonly id: string;
	[key: string]: string;
};

type NumberRecord = {
	readonly id: string;
	[key: number]: string;
}

type SymbolRecord = {
	readonly id: string;
	[key: symbol]: string;
}

type Specifics = {
	readonly id: string;
};

All the tests I showed in my original post still produce the same results, both successes and failures.
I created some variables which would align with those types, but were not explicitly typed, so I could check my assumptions about assignability.
// Note the lack of explicit typing here.
// We're not telling tsc to throw anything away.
let numberRecord = { id: "id", 2: "2" };  // inferred as { id: string; [x: number]: string }
let symbolRecord = { id: "id", [Symbol("symbol")]: "symbol" };  // inferred as { id: string; [x: symbol]: string }
let stringRecord = { id: "id", str: "string" };  // inferred as { id: string; [x: string]: string }

Are they each assignable to those types?  Yes.
expectAssignable<NumberRecord>(numberRecord);  // ✅
expectAssignable<SymbolRecord>(symbolRecord);  // ✅
expectAssignable<StringRecord>(stringRecord);  // ✅

I would not expect the reverse to be true.  And yet ...
expectNotAssignable<typeof numberRecord>(f<NumberRecord>()); // ✅
expectNotAssignable<typeof stringRecord>(f<StringRecord>()); // ✅
expectNotAssignable<typeof symbolRecord>(f<SymbolRecord>()); // ❌

That last one yields:
  ✖  59:0  Argument of type SymbolRecord is assignable to parameter of type { [x: symbol]: string; id: string; }.

- { [x: symbol]: string; id: string; }
+ { [key: symbol]: string; readonly id: string; }

I'm not sure why tsc thinks this should be okay.  I can't come up with a rationale here.  I could kindof-maybe see assignability NumberRecord and StringRecord as reasonable knowing that numeric keys will get coerced into string keys ... but symbols?  No clue.
But ... trudging on ... I thought I'd check to see if the types themselves were assignable.  My assumption was that they should not be, as they have different key types.  But I was wrong.
// Cross-assigning shouldn't work ... should it?
expectNotAssignable<NumberRecord>(f<SymbolRecord>());  // ❌
expectNotAssignable<NumberRecord>(f<StringRecord>());  // ❌
expectNotAssignable<StringRecord>(f<NumberRecord>());  // ❌
expectNotAssignable<StringRecord>(f<SymbolRecord>());  // ❌
expectNotAssignable<SymbolRecord>(f<StringRecord>());  // ❌
expectNotAssignable<SymbolRecord>(f<NumberRecord>());  // ❌

You get similar errors as the above:
  ✖  79:0  Argument of type { [x: symbol]: string; id: string; } is assignable to parameter of type NumberRecord.

- { [key: number]: string; readonly id: string; }
+ { [x: symbol]: string; id: string; }

To be sure this wasn't a tsd problem, I wrote the equivalent out in code to see if tsc complained about the assignments:
// Now we'll have tsc throw away the specifics and just use the types.
let sym: symbol = Symbol("sym");
let numberTyped: NumberRecord = numberRecord;
let stringTyped: StringRecord = stringRecord;
let symbolTyped: SymbolRecord = symbolRecord;
let anyTyped: AnyRecord = { id: "any", 2: "2", s: "s", [sym]: "sym" };

// tsc complains about none of this.  Which is ... 🤯😱
if (numberTyped[1] === stringTyped.foo) numberTyped = stringTyped;    // ✅🤯
if (numberTyped[2] === symbolTyped[sym]) numberTyped = symbolTyped;   // ✅🤯
if (numberTyped[2] === anyTyped.foo) numberTyped = anyTyped;          // ✅🤯
if (stringTyped.bar === numberTyped[3]) stringTyped = numberTyped;    // ✅🤯
if (stringTyped.baz === symbolTyped.id) stringTyped = symbolTyped;    // ✅🤯
if (stringTyped.foo === anyTyped[9]) stringTyped = anyTyped;          // ✅🤯
if (symbolTyped[sym] === numberTyped[4]) symbolTyped = numberTyped;   // ✅🤯
if (symbolTyped[sym] === stringTyped.quux) symbolTyped = stringTyped; // ✅🤯
if (symbolTyped[sym] === anyTyped[8]) symbolTyped = anyTyped;         // ✅🤯

So ... as near as I can tell, the key type of a Record basically does does not affect its assignability to any other type of record.
Unreal.
  Rethinking my life choices.

Okay, sorry for the spam.  Last one today.  Seems like the 🤯😱 above is related to https://github.com/microsoft/TypeScript/issues/29698 .  So, again, not tsd's fault, and not directly related to the original issue.  Just additional color for the setup of the original issue.


Custom HTML popups

Is your feature request related to a problem? Please describe.
I find it annoying, that Leaflet is a good alternative to Google Maps, however I'm kind-of getting the feeling that it's missing a "custom html popup feature"
Describe the solution you'd like
I want to be able to add my own custom popup-html.
Describe alternatives you've considered
Injecting straight into to the dom, to replace the popup

There's https://leafletjs.com/reference-1.4.0.html#popup-setcontent already. If that's not enough, I suggest having a look at https://leafletjs.com/plugins.html#search--popups , so you can see how other people make Leaflet plugins for more customized popups.

The idea of this was to be able to replace the entire default popup HTML, not just the content

Then I think you should look into extending DivOverlay (which is the base for both tooltips and popups) to suit your needs.
I don't think we want to offer a border-less DivOverlay at this point, as that would confuse users when it comes to positioning. Otherwise we're looking at https://github.com/Leaflet/Leaflet/issues/4259


[feature request]support domain name certs for yurt-tunnel-server and agent

What would you like to be added:
yurt-tunnel-server uses --cert-ips for customized endpoints like loadbalancer, but doesn't support domain name.
Why is this needed:
in cloud computing environment, loadbalancer ips may changed or lost , and the domain name should be better.
others
I have tested this case, --cert-ips does not support domain names.
/kind feature

@shao77622
Does --cert-dns-names work in your case?

@shao77622 Thank you for raising issue. I think we can consider to support this feature in raven.
@Congrool Do you have any comments about this issue?

@rambohe-ch @shao77622
If I don't miss the point, we want to add a dns name (provided by the cloud provider) into the certificate of tunnel-server so that the tunnel-agent can use this dns name to connect to the server. In my mind, we can do this through setting the --cert-dns-names option of tunne-server and the --tunnelserver-addr=${serverdns} option of tunnel-agent.

@rambohe-ch @shao77622 If I don't miss the point, we want to add a dns name (provided by the cloud provider) into the certificate of tunnel-server so that the tunnel-agent can use this dns name to connect to the server. In my mind, we can do this through setting the --cert-dns-names option of tunne-server and the --tunnelserver-addr=${serverdns} option of tunnel-agent.

@shao77622 would you like to have a try by following comments from @Congrool ?

@rambohe-ch @shao77622 If I don't miss the point, we want to add a dns name (provided by the cloud provider) into the certificate of tunnel-server so that the tunnel-agent can use this dns name to connect to the server. In my mind, we can do this through setting the --cert-dns-names option of tunne-server and the --tunnelserver-addr=${serverdns} option of tunnel-agent.

@shao77622 would you like to have a try by following comments from @Congrool ?

It worked!  thank you!


Next Prev Arrow Buttons

One more feature I am waiting for.
Is there any arrow functionality in current slider.
I want to change slides using next/prev arrows.

Hi @sagarbhosale91
Yes, that's in the list. I have that already implemented in some of local version.  I Will update repository during this weekend.

Hi @Wlada
Thanks for update.. its nice feature to have.. :-)

Hi, @sagarbhosale91
This feature is committed


fix(sequencer): clear processed tx count in begin_block

same as #659 but on top of sequencer tag 0.7.0

gonna close for now as i assume @joroshiba has already cherry picked necessary changes from main


Fixed click availability and fee update when changing origin

#86933mr3v
#86933qf9e

Task linked: CU-86933qf9e Android. XCM from swap screen. Fee is not recalculated after origin change

Task linked: CU-86933mr3v Android. Can select source chain in xcms


README Updates and pandas update

Installed carball on my machine (I'm an amateur with python) and documented the hard parts in the README. Pandas update required since last pip update.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@498ee6e). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #105   +/-   ##
=========================================
  Coverage          ?   85.49%
=========================================
  Files             ?       76
  Lines             ?     3144
  Branches          ?      460
=========================================
  Hits              ?     2688
  Misses            ?      392
  Partials          ?       64


[AIRFLOW-989] Do not mark dag run successful if unfinished tasks

Dag runs could be marked successful if all root tasks were successful,
even if some tasks did not run yet, ie. in case of clearing. Now
we consider unfinished_tasks, before marking successful.
Please accept this PR that addresses the following issues:

https://issues.apache.org/jira/browse/AIRFLOW-989

Testing Done:

Unit tests added

@r39132 @criccomini

LGTM

Build is successful: https://travis-ci.org/bolkedebruin/airflow/builds/211535243
(sqlite is a coveralls service error)

+1 tested this locally against the DAG I had included in the JIRA.

Codecov Report

Merging #2154 into master will decrease coverage by 0.03%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #2154      +/-   ##
==========================================
- Coverage    67.2%   67.16%   -0.04%
==========================================
  Files         142      142
  Lines       10797    10797
==========================================
- Hits         7256     7252       -4
- Misses       3541     3545       +4

Impacted Files
Coverage Δ

airflow/models.py
86.86% <100%> (ø)
:white_check_mark:

airflow/jobs.py
72.94% <0%> (-0.42%)
:x:

Continue to review full report at Codecov.

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


ImpulseNoise error with TypeError: 'ReplaceElementwise' object is not callable

For the same image,
images_aug = iaa.ImpulseNoise(p=0.1)(images=images) gives error:
TypeError: 'ReplaceElementwise' object is not callable
While this works:
noise = iaa.ImpulseNoise(p=0.1)
images_aug = noise.augment_images(images)

Many examples in the tutorial are in the first form. Is there a difference in usage between different function? thanks!

Which version are you using? In 0.2.9 the form ImpulseNoise(...)(images=...) should work, but you might still be on 0.2.8.
augment_images() does essentially the same as augment(images=...).

You are right. I was using 0.2.8. It is fixed after upgrading to 0.2.9. Thanks!


Hub intermittent not responding

here is the log:
[8/31/2020, 9:44:06 AM] [harmony hub] (harmony hub)INFO - Loading activities...
[8/31/2020, 9:44:09 AM] [harmony hub] (harmony hub)Error - Error retrieving info from hub : Error: connect EHOSTUNREACH <IP_ADDRESS>:8088-(50)
Its not responding from homekit from time to time

Hi, could you share your config ? Seems like a network issue, does your hub light changes to red sometime ? Prefer using static I'm from both your router and plugin config to limit such issues.

"name": "harmony hub",
"hubIP": "<IP_ADDRESS>",
"hubName": "harmony hub",
"TVAccessory": false,
"switchAccessories": true,
"publishGeneralMuteSwitch": false,
"publishSwitchActivitiesAsIndividualAccessories": true,
"otherPlatforms": [
{
"name": "harmony hub 2",
"hubIP": "<IP_ADDRESS>",
"hubName": "harmony hub 2",
"switchAccessories": true,
"publishSwitchActivitiesAsIndividualAccessories": true
}
],
"platform": "HarmonyHubWebSocket"

I've been having this issue all day today. Worked just fine yesterday though
        {             "name": "Harmony",             "hubIP": "<IP_ADDRESS>",             "hubName": "Harmony Hub",             "cleanCache": false,             "TVAccessory": false,             "switchAccessories": true,             "showTurnOffActivity": "true",             "publishSwitchActivitiesAsIndividualAccessories": true,             "devicesToPublishAsAccessoriesSwitch": [                 "Air|AC;PowerToggle;Mode",                 "Air|AC Cooler;TempCooler",                 "Air|AC Warmer;TempHotter",                 "Air|AC Energy Saver;PowerToggle",                 "Soundbar",                 "Soundbar|SB Vol Down;VolumeDown",                 "Soundbar|SB Vol Up;VolumeUp",                 "Soundbar|SB Sub Down;SubwooferDown",                 "Soundbar|SB Sub Up;SubwooferUp",                 "Soundplate",                 "Soundplate|SP Vol Up;VolumeUp",                 "Soundplate|SP Vol Down;VolumeDown",                 "Surround Sound|SS Apple TV;InputMediaBox",                 "Surround Sound|SS Xbox;InputBd/Dvd",                 "Surround Sound|SS PS4;InputSat/Catv",                 "Surround Sound|SS Switch;InputGame",                 "Surround Sound|SS Volume Up;VolumeUp",                 "Surround Sound|SS Volume Down;VolumeDown",                 "Surround Sound|SS Pure Direct;PureDirect",                 "Surround Sound|SS AFD;2Ch/Multi",                 "Monitor|Monitor;PowerToggle",                 "Monitor|MP Source;Source",                 "Monitor|MP Menu;Menu",                 "Monitor|MP Up;DirectionUp",                 "Monitor|MP Down;DirectionDown",                 "Monitor|MP Right;DirectionRight",                 "Monitor|MP Left;DirectionLeft",                 "Monitor|MP Select;Select"             ],             "showCommandsAtStartup": false,             "platform": "HarmonyHubWebSocket"         },
Light is consistently green

Hi, did something update at all ? Like homebridge (or hoobs ?) . Can you check network connectivity with a ping inside the docker / homebridge env ? Can you give me the exact log?

Closing , feel free to reopen if you have more info


Explore CKB Wallet SDK and integration effort

https://github.com/nervosnetwork/ckb-sdk-js
https://github.com/nervosnetwork/ckb-sdk-java
https://github.com/nervosnetwork/ckb-sdk-ruby
https://github.com/nervosnetwork/ckb-sdk-swift

@zhangzhongnan928 this issue is not actionable, please elaborate...

@zhangzhongnan928 this issue is not actionable, please elaborate...

It is meeting follow up for Boon. He will check out those SDK later.

@zhangzhongnan928 imToken has implemented CKB integration

@zhangzhongnan928 imToken has implemented CKB integration

Yes, and several other wallets.
@colourful-land is checking out their script(smart contract design.


Weird arithmetic with multiple + and -

Hello. Cool collection of WTFs
I made a blog post about something that belongs in this collection.
I'd be happy to write up a section for it.
Where should I put it? Any suggestion? Maybe right before or after the "Not knot" section that also deals with order precedence?
TL;DR
This is all valid python:
>>> 1 +-+-+ 1
2
>>> 1 ++++++++++++++++++++ 1
2
>>> 1 ------- 1
0
>>> 1 ------ 1
2

It's all good an dandy until you use it with // and then things get weird:
>>> 2 + 5 // 2
4
>>> 2 -- 5 // 2
5

>>> 2 +-- 5 // 2
4
>>> 2 -+- 5 // 2
5
>>> 2 --+ 5 // 2
5

It's all explained by the operation precedence but it's very counter intuitive!

It's all explained by the operation precedence

Hmmmm
>>> 1 + (-(+(-(+1))))     # 1 + 1
2
>>> 1 + (+(+(+(+(+1)))))  # 1 + 1
2
>>> 1 - (-(-1))           # 1 - 1
0
>>> 1 - (-1)              # 1 - (-1) == 1 + 1
2

>>> +5 // 2
2
>>> -5 // 2
-3

>>> 2 + (5 // 2)          # 2 + (+5 // 2)
4
>>> 2 - ((-5) // 2)       # 2 - (-5 // 2)
5
>>> 2 + ((-(-5)) // 2)    # 2 + (+5 // 2)
4
>>> 2 - ((+(-5)) // 2)    # 2 - (-5 // 2)
5
>>> 2 - ((-(+5)) // 2)    # 2 - (-5 // 2)
5

Thank you for the breakdown with parenthesis @shiracamus.
I'm not too sure what to make of the comment "Hmmmmm" though.
There is clear operator precedence.
Taking just this example:
>>> 2 - ((-(+5)) // 2)    # 2 - (-5 // 2)
5

The 2 signs - and + are applied to the 5 first, then // is performed, then the subtraction with 2 -. That matches the operator precedence table.

I'm not too sure what to make of the comment "Hmmmmm" though.

The meaning is ``Let's check them by using parentheses.''


feat: noValueAtRule css lint rule

Summary
Implements noValueAtRule lint rule for css modules
TODO:

[ ] Rule this rule only when used inside css_modules (i.e. when enabled in parser options)
[ ] Auto fixers - if needed.

Test Plan

Add Snapshot tests for @value rule

Closes https://github.com/biomejs/biome/issues/3001

Sorry, I forgot to mention that it seems now it's impossible to get a parser option inside in a rule.
I'd like to propose ignoring Rule this rule only when used inside css_modules (i.e. when enabled in parser options)

@denbezrukov I would like to pick up autofixing as part of seperate PR. It seems to be much more involved. Adding findings here for future reference:

Case 1 : Used for property values -> Simple fix
Case 2 : For breakpoints in media queries -> Can't use CSS variables for it currently (ref: https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_custom_properties).
Case 3: For named value imports (Example: https://github.com/css-modules/css-modules/blob/master/docs/values-variables.md): No direct substitute I was able to find for this use-case. Please let me know it it exist.

If you want to land the code action in another PR, I would suggest to not close the original issue or opening a new one.

@rishabh3112
A couple of things:

the categories are sorted alphabetically, probably this broke when merging the conflicts
always run just gen-lint
always run the tests with cargo t


Analyzer fails on validating file which contains part of

Problem
The analyzer is used on the specific file. If the file is part of some other dart file, the error is thrown.
// source file: service.dart

class Service {}

// source file: view.dart

import 'service.dart';

part 'view_model.dart';

class View {
  final _ViewModel _viewModel;

  View() : _viewModel = _ViewModel();
}

// source file: view_model.dart

part of 'view.dart';

class _SomeViewModel {
  late SomeService _service;
}

After executing dart analyze src/view_model.dart the error is thrown:
Analyzing some_view_model.dart...      0.6s

  error • view_model.dart:4:8 • Undefined class 'Service'. Try changing the name to the name of an existing class, or creating a class
          with the name 'Service'. • undefined_class

However, if the analyzer is used on the whole package - no issues.
Configuration
I used 3 configurations.
Doesn't work:
Flutter 3.0.5 • channel stable • https://github.com/flutter/flutter.git
Framework • revision f1875d570e (6 months ago) • 2022-07-13 11:24:16 -0700
Engine • revision e85ea0e79c
Tools • Dart 2.17.6 • DevTools 2.12.2

Flutter 3.1.0 • channel beta • https://github.com/flutter/flutter.git
Framework • revision bcea432bce (7 months ago) • 2022-05-26 09:05:34 -0700
Engine • revision 44e5b38ee8
Tools • Dart 2.18.0 (build 2.18.0-44.1.beta) • DevTools 2.12.2

Works fine
Flutter 3.3.10 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 135454af32 (3 weeks ago) • 2022-12-15 07:36:55 -0800
Engine • revision 3316dd8728
Tools • Dart 2.18.6 • DevTools 2.15.0

Is there a way to get rid of this error on Flutter 3.0.5 (Dart 2.17.6)?
Analyzing the whole package is a workaround but it's not a solution in my case.

No, I don't think there is a way to fix this in older versions.


[dv/top] update i2c_host / spi_host to support multiple instances

The i2c_host and spi_host top level tests right now only support 1 instance.
We need to upgrade the infrastructure here to be able to support any random instance.

[ ] add support for i2c_host test
[ ] add support for spi_host test.

@johngt

For I2C host component of this; Either @vrozic or @hcallahan-lowrisc could be assigned to work on this. @hcallahan-lowrisc has familiarity with SPI_Host now after having worked on this. Will coordinate with @engdoreis for assignment

thank you for taking this on!
On Wed, Nov 9, 2022 at 2:44 AM johngt @.***> wrote:

For I2C host component of this; Either @vrozic https://github.com/vrozic
or @hcallahan-lowrisc https://github.com/hcallahan-lowrisc could be
assigned to work on this. @hcallahan-lowrisc
https://github.com/hcallahan-lowrisc has familiarity with SPI_Host now
after having worked on this. Will coordinate with @engdoreis
https://github.com/engdoreis for assignment
—
Reply to this email directly, view it on GitHub
https://github.com/lowRISC/opentitan/issues/15483#issuecomment-1308558093,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAH2RST6OWETWT3K666HDC3WHN6BTANCNFSM6AAAAAARERAFSU
.
You are receiving this because you were assigned.Message ID:
@.***>

@tjaychen / @weicaiyang - email discussion started on this due to this being potentially a very large task. Devs are working on other SPI_Host items for now but we will await your further description on this issue or in the email.

Based on the discussion via email and also on the thread https://github.com/lowRISC/opentitan/issues/14114 it looks like the majority of this work, at least for the SPI_Host sub-task is to ensure that the different SPI_Host interfaces are tested.
From Sri:

I was reviewing chip level coverage, and indeed the SPI HOST1 interface appears to not be covered, which means the connection of SPI_HOST1 to pinmux is untested.
So this issue will look into the randomisation of SPI_Host interface

Tim has suggested that devs working on this look at UART to see how this is done there.
TimC:

Our top level DV environment already has parameters for defining the number of DV agents and their related interfaces.
So then the work is really to update the related vseq and C files to take advantage of that by selecting a random interface to work with in the test.  Please see here for an example.

For SPI_Host randomisation: Changes to the vseq, the corresponding C test, and possibly the chips_if to hook-up the appropriate pins.

@hcallahan-lowrisc will look into the SPI_Host part of this issue.

thank you!
should i spilt this into 2 issues?
On Fri, Nov 11, 2022 at 3:41 AM johngt @.***> wrote:

@hcallahan-lowrisc https://github.com/hcallahan-lowrisc will look into
the SPI_Host part of this issue.
—
Reply to this email directly, view it on GitHub
https://github.com/lowRISC/opentitan/issues/15483#issuecomment-1311592171,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAH2RSSTMVDHSLVTDU4E4HDWHYWHHANCNFSM6AAAAAARERAFSU
.
You are receiving this because you were mentioned.Message ID:
@.***>

@tjaychen Yes please, it's likely at this point that someone else will pick up the i2c_host part. Thanks!

I reopened #14114 since the test technically is not complete (as described in the testplan) and has this task pending. By reopening that issue, this pending work item will show up in the test development tracking views for M2.

Related PR https://github.com/lowRISC/opentitan/pull/16364


feat: super factorial written as product

[x] depends on: #6768
[x] depends on: #6840

Will produce an easily solvable merge conflict with #6827


merge from arlac77/npm-package-template

package.json

chore(package<EMAIL_ADDRESS>chore(scripts): cover@#overwrite c8 -x 'tests/**/*' --temp-directory build/tmp ava && c8 report -r lcov -o build/coverage --temp-directory build/tmp
chore(package): set $.ava.require='esm' as in template
chore(package): set $.ava.files='tests/*-test.mjs' as in template
chore(package): set $.ava.extensions='mjs' as in template

Coverage remained the same at 98.4% when pulling 32f8dfa89feeac3fcc630563edf3fde3b71d40fd on npm-template-sync/1 into ffd24db76aeb9099f28f0f5e406aba3813a52613 on master.

:tada: This PR is included in version 2.1.13 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Require MsgWirePayForData and MsgPayForData txs to sign over all relevant square sizes to be considered valid

Currently, someone can easily modify the code to not sign over any square sizes, or only sign over a single square size. Transaction with only a single singed square size will tend to get stuck in mempools, and txs with no signed over square sizes will get stuck in the mempool.
To prevent this, we could add a check to the ValidateBasic methods to ensure that all relevant shares are signed over. This will ensure that WirePayForData transactions do not get stuck in mempools.
more info in relevant square sizes can be found in #236

I agree that these transactions need to sign over at least one message square to be considered valid. However it seems possible for there to be only one valid square size that a user signs over when the message they send can only fit in the largest possible square k=128 (based on specs and this line). Therefore, it's not clear to me how we should handle the case where only one square size is signed over. I don't think we should throw an error from ValidateBasic() for this scenario because it's valid but unlikely.

There being only one valid configuration isn't contradictory to "we could add a check to the ValidateBasic methods to ensure that all relevant shares are signed over."

we could add a check to the ValidateBasic methods to ensure that all relevant shares are signed over.

Sorry I don't understand what check needs to be added. Is this not sufficient? https://github.com/celestiaorg/celestia-app/blob/1fe223b7558aa01f7f7797bcd5bfdbe2125e9dcb/x/payment/types/wirepayfordata.go#L105-L119

from #236

This does not account for the fact that commitments do not change if the message can fit on a single row. Meaning that if a message can fit on a single row of square size x, then a valid commitment for square size x is valid for all square sizes >= x.

so ideally we would have a function that determines all of the possible square sizes to sign over, not unlike https://github.com/celestiaorg/celestia-app/blob/ff2d92a98584b5f3f0fef0bdf595e21fdd808a97/x/payment/types/square_sizes.go#L24-L41
the more important part would be to modify PrepareProposal to be aware of this and select for a commitment even if the commitment doesn't match the square size perfectly

Thanks for clarifying @adlerjohn @evan-forbes ! I understand now and think https://github.com/celestiaorg/celestia-app/pull/666 should resolve this issue.


Overshoots the end of the iterator

An Overshoots the end of the iterator is triggered when double-clicking inside the closing bracket of code inspected from a text snippet in lepiter:
https://github.com/user-attachments/assets/27e9715d-ad28-4a93-b9a8-955340e76be6

https://github.com/user-attachments/assets/620bdbfc-d087-48a2-b4a2-1a0247cc7cbe


[Spec] TWAP spec latex is broken

Background
Twap Spec latex seems to be broken. Lets fix this!

Suggested Design
n/a
Acceptance Criteria

Working latex

Not sure if i should use  inside README.md file


heap implementation doesn't support typed list

I am working with numba 0.48, couldn't see anything related in the change logs though
from heapq import heappop
from numba.typed import List
my_heap=List()
heap_item=(0,1)
my_heap.append(heap_item)
heappop(my_heap)
Traceback (most recent call last):
  File "C:\Workdir\Programs\Anaconda2\envs\LTM\lib\site-packages\IPython\core\interactiveshell.py", line 3331, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
  File "<ipython-input-25-ed58419c0d3f>", line 1, in <module>
    heappop(my_heap)
TypeError: heap argument must be a list

seems to work fine inside of a njitted function with []
from heapq import heappop
   ...:from numba import njit
   ...:@njit
   ...:def foo():
   ...:    my_heap=[]
   ...:    heap_item=(0,1)
   ...:    my_heap.append(heap_item)
   ...:    heappop(my_heap)
   ...:
foo
Out[28]: CPUDispatcher(<function foo at 0x0000013904029AF8>)

I am just realizing I got the example wrong, will update this ..

@p-ortmann thanks for submitting this! I believe this is a duplicate of https://github.com/numba/numba/issues/4926 and I will close this issue now and mark as duplicate. Let me know if this is erroneous.


Low Accuracy on Indoor3DSeg Dataset

Hi! Could you include your trained model & accuracy on these two datasets?
I tried the default configuration on Indoor3DSemSeg using MSG. However, the accuracy is pretty low (~0.33) on test set. Could you let me know if this is not a full implementation or I just missed something?
Thanks!

Definitely seems like something is being missed.  I am getting a test-set accuracy of ~0.73 after the first epoch.

I used the master branch.  The 0.4.0 branch is my slow more effort to port the current implementation to the new way to implement custom cuda in pytorch.

Hi! Did you use the default configuration?
I didn't change the code and after training 200 epochs, the best loss is 0.5756 for sem_seg_checkpoint and 0.3424 for sem_seg_best
Are these numbers comparable to yours?

Yep, I used the default numbers.  Loss is not the same thing as accuracy, and those loss numbers seem great and comparable to what I am seeing.
This repo has fallen out of sync with my pytorch utils repo and it doesn't look like the accuracy number is getting displayed anywhere.  I will quickly update this repo so at least those numbers are being displayed on visdom.

I brought this repo inline with my pytorch utils repo.  I have been relying entirely on visdom for my model tracking as of late, so the trainer in my pytorch utils repo no longer prints anything to the console.  This will let you see the model's progress in visdom at least.

Traceback (most recent call last):
File "train_sem_seg.py", line 114, in
lr_scheduler = lr_sched.LambdaLR(optimizer, lr_lbmd)
File "/home/shilin/anaconda3/envs/PyTorch_Py3/lib/python3.6/site-packages/torch/optim/lr_scheduler.py", line 91, in init
super(LambdaLR, self).init(optimizer, last_epoch)
File "/home/shilin/anaconda3/envs/PyTorch_Py3/lib/python3.6/site-packages/torch/optim/lr_scheduler.py", line 22, in init
self.step(last_epoch + 1)
File "/home/shilin/anaconda3/envs/PyTorch_Py3/lib/python3.6/site-packages/torch/optim/lr_scheduler.py", line 55, in step
for param_group, lr in zip(self.optimizer.param_groups, self.get_lr()):
File "/home/shilin/anaconda3/envs/PyTorch_Py3/lib/python3.6/site-packages/torch/optim/lr_scheduler.py", line 95, in get_lr
for lmbda, base_lr in zip(self.lr_lambdas, self.base_lrs)]
File "/home/shilin/anaconda3/envs/PyTorch_Py3/lib/python3.6/site-packages/torch/optim/lr_scheduler.py", line 95, in
for lmbda, base_lr in zip(self.lr_lambdas, self.base_lrs)]
File "train_sem_seg.py", line 110, in
lr_lbmd = lambda e: max(args.lr_decay**(int(it * args.batch_size / args.decay_step)), lr_clip / args.lr)
NameError: name 'it' is not defined

Fixed.

You may want to change
start_epoch, best_loss = pt_utils.load_checkpoint
to
_, start_epoch, best_loss = pt_utils.load_checkpoint
since the first returned by load_checkpoint is 'it'
I also change the last line to print the test error:
test_err, _ = trainer.eval_epoch(test_loader)
But if I feed the trained model to trainer.eval_epoch() I still get around 0.33 accuracy. Maybe something is wrong in trainer.eval_epoch()? My best losses match yours.

Hi! One more question: if my own input point cloud contains only XYZ thus is BxNx3 instead of BxNx9, should I just set 'input_channels = 0' as:
model = Pointnet(num_classes=input_classes, input_channels=0, use_xyz=True)?

Yep


Fix: The enableFeedback property of InkWell cannot be set to a nullab…

I found that enableFeedback can be set to null, but in actual use, setting it to null has no effect and is overwritten by true. I think this is an issue.
class InkWell extends InkResponse {
  const InkWell({
    super.key,
    super.child,
    super.onTap,
    super.onDoubleTap,
    super.onLongPress,
    super.onTapDown,
    super.onTapUp,
    super.onTapCancel,
    super.onSecondaryTap,
    super.onSecondaryTapUp,
    super.onSecondaryTapDown,
    super.onSecondaryTapCancel,
    super.onHighlightChanged,
    super.onHover,
    super.mouseCursor,
    super.focusColor,
    super.hoverColor,
    super.highlightColor,
    super.overlayColor,
    super.splashColor,
    super.splashFactory,
    super.radius,
    super.borderRadius,
    super.customBorder,
    bool? enableFeedback = true,
    super.excludeFromSemantics,
    super.focusNode,
    super.canRequestFocus,
    super.onFocusChange,
    super.autofocus,
    super.statesController,
    super.hoverDuration,
  }) : super(
    containedInkWell: true,
    highlightShape: BoxShape.rectangle,
    enableFeedback: enableFeedback ?? true,
  );
}

Call Error
InkWell(
    enableFeedback: null,
)

@StanleyCocos
Thanks for the contribution! We will need tests in order to land this.

@nate-thegrate If you could help me resolve the robot comments above, it would be greatly appreciated. Thank you!

Sounds good! I should have an update for you within the next few days :)

I'm very happy to see this outcome. Thank you

test-exempt: code refactor with no semantic change

I believe that if someone explicitly calls InkWell(enableFeedback: null), it is an error.

Interestingly, at the time this file was migrated to null-safety and the bool? was introduced, the constructor had the ?? true handling of null already, but also had a comment saying:
  /// The [mouseCursor], [enableFeedback], and [excludeFromSemantics] arguments
  /// must not be null.

Interesting, I guess this must have slipped under the radar!
@StanleyCocos we'll be able to merge this pull request once it has 2 approvals.


Bug with Year view for startDay: 1 (Monday).

I've found this bug (or I'm doing something wrong...): http://stackoverflow.com/questions/30479185/bugs-in-jquery-fullcalendar-for-year-view-by-tanguy-pruvot?noredirect=1#comment49041025_30479185

I meet the same problem here.
Fix this bug pls

try this french year view. It seems correct with monday as first day:
http://epsy.linuxd.org/fullcalendar/demos/year-french.html

Tanguy Pruvot, I saw that you've done some new commits. Do this commits fixed this bug? If so, can you provide some examples of how I should use this version? I found new js file Year.js. How should I use it?

berc, thanks a lot! I've found a problem.

Try https://github.com/tpruvot/fullcalendar/issues/14#issuecomment-1013208095


Local pull request success status testing

Docs Build status updates of commit 3a7b77a:
:clock10: Pending: waiting for processors (6 builds ahead of you)
:warning: Docs Build is busy, currently there are 6 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit 3a7b77a:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

E2E_DocsBranch_Dynamic/index.md
:white_check_mark:Succeeded
View

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


Solving race condition between getting the cipher and decoding the file.

Remove executor and handler from companion object.
create new executor for each run of the BiometricPrompt.
run the callback from the prompt on the executor thread instead of the main thread.

@hpoul That's good, please approve :)

@hpoul ? It solved my problem, can you please accept this solution.

What is the problem you are trying to solve? Can you create a reproducible problem?
Imho this makes things worse. e.g. creating a new executor for every call and never shutting it down seems a bit weird.
ad 3) This is certainly not correct, see the documentation for MethodChannel: https://docs.flutter.dev/development/platform-integration/platform-channels#channels-and-platform-threading

The result of the platform side handlers [...] must be invoked on the platform thread

(Except when using the Task Queue API.. which is not used, and I see no reason why it would be beneficial to change that).

Hey, thanks for the fast response,
I was trying to solve the exception:
AuthException{code: AuthExceptionCode.unknown, message: Unexpected authentication error. null}
It was very hard to reproduce, but it happens when the ui thread is busy, and while we trying to decode the file the chipper is no longer valid.
I moved the Executer out of the Companion objects because fields in the companion object are static, so it’ll keep them for ever,
Perhaps the better solution is to complete the decoding of the file and only after that run it on the ui thread?
Thanks!
Itzik

I moved the Executer out of the Companion objects because fields in the companion object are static, so it’ll keep them for ever,

I don't think there is any problem with that.. the plugin instance itself will also always live "forever" (as long as the flutter instance is running). I could only make a difference if you use flutter only in a subset of your application. As long as the flutter engine is running, the plugin would exist anyway.. the only "cleaner" solution would be to keep it in the plugin instance and gracefully shutting it down when the plugin is destroyed..

Perhaps the better solution is to complete the decoding of the file and only after that run it on the ui thread?

honestly i thought this was the case 🤔 but it seems you are right, currently all file operations seem to be on the ui thread 🤦
I've tried to fix those issues in https://github.com/authpass/biometric_storage/pull/64 .. i've moved the handler and executor into the plugin instance and properly shutdown the executor when the plugin is detached from the flutter engine..
in addition read/write (and encrypt/decrypt) should now be correctly on the executor thread, instead of the main thread.
According to the log output it seems to work so far:
D/d.c.b.CryptographyManager: [pool-2-thread-1     ] encrypted 41 (69 output)
D/d.c.b.BiometricStorageFile: [pool-2-thread-1     ] Successfully written 69 bytes.

D/d.c.b.CryptographyManager: [pool-2-thread-1     ] decrypting 69 bytes (iv: 12, tag: 16)

I'm not sure if it would be better to move everything into the executor thread and only switch to the UI thread when necessary (ie. when showing the prompt and returning the result) because those file.exists() checks are also synchronous.. but not sure if it is worth switching threads just for checking whether the file exists..
anyway.. at least it should improve things..

Solved in #64 - thanks for bringing this to my attention.


Max Balance Rounding Issue

When attempting to deposit 100% of my DAI balance that has a large float value, the balance is rounded up to the nearest 8th decimal. In my case, I have a balance of 2.438169309543077043 DAI (as taken from Etherscan). When clicking my "balance" or "100%", a value of 2.43816931 (rounded up) is inserted into the earn box. When clicking "Earn", the value box is outlined in red indicating that it is more than my balance.
One potential fix would be to display the rounded value, but store the full balance in a hidden input and used it for the transaction. Right now, the only workaround seems to be to manually round down and deposit less (albeit very slightly less) than 100% of the balance.

https://github.com/iearn-finance/iearn-finance/pull/15

How can I help?

Closed by #15


yt-dlp starts downloading bestvideo+bestaudio instead of just bestaudio (and fails to merge at "Merger" stage)

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm reporting a bug unrelated to a specific site
[X] I've verified that I have updated yt-dlp to nightly or master (update instructions)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched known issues and the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue

Provide a description that is worded well enough to be understood
For some reason, it now tries to download the default "bestvideo+bestaudio" format instead of just "bestaudio", and fails to merge at the "Merger" stage. Additionally, it seems to be trying to execute commands which seems to be Python functions and variables in the program that might have slipped through a system command call.
I had to manually convert the .webm file into an mp3 via FFMPEG :/
Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[ ] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
[debug] Command-line config: ['-vU', 'https://www.youtube.com/watch?v=84-y4W2PbZ0']
[debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version<EMAIL_ADDRESS>from yt-dlp/yt-dlp [615a84447] (win_exe)
[debug] Python 3.8.10 (CPython AMD64 64bit) - Windows-10-10.0.19045-SP0 (OpenSSL 1.1.1k  25 Mar 2021)
[debug] exe versions: ffmpeg 6.0-full_build-www.gyan.dev (setts), ffprobe 6.0-full_build-www.gyan.dev
[debug] Optional libraries: Cryptodome-3.20.0, brotli-1.1.0, certifi-2024.02.02, mutagen-1.47.0, requests-2.31.0, sqlite3-3.35.5, urllib3-2.2.1, websockets-12.0
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests, websockets
[debug] Loaded 1803 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Latest version<EMAIL_ADDRESS>from yt-dlp/yt-dlp
yt-dlp is up to date<EMAIL_ADDRESS>from yt-dlp/yt-dlp)
[youtube] Extracting URL: https://www.youtube.com/watch?v=84-y4W2PbZ0
[youtube] 84-y4W2PbZ0: Downloading webpage
[youtube] 84-y4W2PbZ0: Downloading ios player API JSON
[youtube] 84-y4W2PbZ0: Downloading android player API JSON
[youtube] 84-y4W2PbZ0: Downloading m3u8 information
[debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec:vp9.2, channels, acodec, lang, proto
[debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec:vp9.2(10), channels, acodec, lang, proto, size, br, asr, vext, aext, hasaud, id
[debug] Default format spec: bestvideo*+bestaudio/best
[info] 84-y4W2PbZ0: Downloading 1 format(s): 248+251
[debug] Invoking http downloader on "https://rr3---sn-hoa7rn7z.googlevideo.com/videoplayback?expire=1710366691&ei=g8vxZbDVCrPErtoPtvi4-AY&ip=<IP_ADDRESS>&id=o-AGJQLC6ZGN0DtMICNvQ_Ag1sTGmfcJ8lcdQokvrK_jrH&itag=248&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T6&mm=31%2C29&mn=sn-hoa7rn7z%2Csn-hoa7kn7z&ms=au%2Crdu&mv=m&mvi=3&pl=22&gcr=ph&initcwndbps=1201250&vprv=1&svpuc=1&mime=video%2Fwebm&gir=yes&clen=2003023&dur=77.840&lmt=1587283224050180&mt=1710344719&fvip=2&keepalive=yes&fexp=24007246&c=IOS&txp=2331224&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cgcr%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRAIgMGG1MTTOwc7hvXd7TkgNIw64zBWk-kt35Ub6mlgLyEsCIAriaRoQFRkvTFDaAvrzj6JHNYPfxFvuOJuU-jaUJ5vT&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=APTiJQcwRQIgWvm7kMm4_A-ZCmImtmQ9kzhmzETvuaRDqd9BOxkqBeoCIQDkiFNV_PzLxdEFcTYA0ThrYfOuH7MVLc60_uabAAO-Sw%3D%3D"
[debug] File locking is not supported. Proceeding without locking
[download] Destination: Fata Morgana (Interlude) [84-y4W2PbZ0].f248.webm
[download] 100% of    1.91MiB in 00:00:00 at 5.43MiB/s
[debug] Invoking http downloader on "https://rr2---sn-hoa7kn7z.googlevideo.com/videoplayback?expire=1710366691&ei=g8vxZazPE_DCrtoPp9uc6AY&ip=<IP_ADDRESS>&id=o-ALf1DFFMoDHYwAX6vV1p-fvnTIKMIHvOMnFeT0hn4vgm&itag=251&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=T6&mm=31%2C26&mn=sn-hoa7kn7z%2Csn-q4flrnsd&ms=au%2Conr&mv=m&mvi=2&pl=22&gcr=ph&initcwndbps=1236250&vprv=1&svpuc=1&mime=audio%2Fwebm&gir=yes&clen=1518707&dur=77.881&lmt=1587283186846498&mt=1710344719&fvip=5&keepalive=yes&fexp=24007246&c=ANDROID&txp=2331224&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cgcr%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRQIgCjpflfij1rputhL-sbmtRRPcpRfEDAUxKHRvkI8YYpcCIQCfi6c-6tMFcv6bUi_Y1ewFirLhixoeeHZBxFsLLQ44oQ%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=APTiJQcwRgIhANroE-4DXhf6YGR69g9kmmT_lyjEi6GUIpey9RB50HEAAiEAsgJ-Wnke5uyvzyhx50WJ6gXAL-tLljNNYubZP_Jxup8%3D"
[download] Destination: Fata Morgana (Interlude) [84-y4W2PbZ0].f251.webm
[download] 100% of    1.45MiB in 00:00:00 at 5.14MiB/s
[Merger] Merging formats into "Fata Morgana (Interlude) [84-y4W2PbZ0].webm"
[debug] ffmpeg command line: ffmpeg -y -loglevel "repeat+info" -i "file:Fata Morgana (Interlude) [84-y4W2PbZ0].f248.webm" -i "file:Fata Morgana (Interlude) [84-y4W2PbZ0].f251.webm" -c copy -map "0:v:0" -map "1:a:0" -movflags "+faststart" "file:Fata Morgana (Interlude) [84-y4W2PbZ0].temp.webm"
Deleting original file Fata Morgana (Interlude) [84-y4W2PbZ0].f248.webm (pass -k to keep)
Deleting original file Fata Morgana (Interlude) [84-y4W2PbZ0].f251.webm (pass -k to keep)
'list' is not recognized as an internal or external command,
operable program or batch file.
'index' is not recognized as an internal or external command,
operable program or batch file.
'ab_channel' is not recognized as an internal or external command,
operable program or batch file.

gotta quote the URL


Exponentially growing validator rewards

I'm having issues with respect to the title. What runtime parameters should be changed to curb this?
Here's a link to the runtime and the chainspec:

https://github.com/hicommonwealth/edgeware-node/blob/develop/node/runtime/src/lib.rs
https://github.com/hicommonwealth/edgeware-node/blob/develop/node/service/src/chain_spec.rs

My observations since they may help, I was running a local chain with alice, bob, charlie, dave, eve, and ferdie as validators. We have a per block treasury reward being issued.

At first treasury earns roughly 4 tokens each block
After some point (60 blocks I believe) the staking rewards skyrocket and treasury begins earning 89 Tera token units
Validator balances also jump from 10 tokens to around 260,000, and after 120 blocks or so they grow to giga values.

Eventually, the node crashes in an attempt to multiple into an overflow since these values become so large. The nodes stall at block 179 since 180 would issue new rewards.

I take a look,
for information inflation model is written here https://github.com/paritytech/substrate/blob/9b08e7ff938a45dbec7fcdb854063202e2b0cb48/srml/staking/src/inflation.rs#L17-L54
for the spec https://research.web3.foundation/en/latest/polkadot/Token Economics/#inflation-model

@thiolliere does this have issues when one changes the number of decimals in the token units? We use 18 but most chains I see being deployed on your end are 15. Could this have adverse effects?

I may have found an issue (or I'm using something wrong) with respect to the OnRewardMinted hook of the staking module and the corresponding on_dilution of the Treasury module.
This call here: https://github.com/hicommonwealth/substrate/blob/develop/srml/staking/src/lib.rs#L1196
Combined with: https://github.com/hicommonwealth/edgeware-node/blob/develop/node/runtime/src/lib.rs#L260
Makes for an extremely large dilution issuance
I added an event in our copy of substrate and after the first era, am getting over 50 trillion new tokens minted to the Treasury
I added an event here: https://github.com/hicommonwealth/substrate/blob/develop/srml/treasury/src/lib.rs#L350
You can also replicate it by running with the following two validators on develop branch of edgeware-node

I can confirm, removing the Treasury from the OnRewardMinted fixes these problems. @thiolliere


Create community folder

Summary
@mukulikak to define
Motivation
Please give examples of your use case, e.g. when would you use this.
Proposal
How do you think this should be implemented?

Message from the maintainers:
If you wish to see this enhancement implemented please add a 👍 reaction to this issue! We often sort issues this way to know what to prioritize.

Thank you @mukulikak


Generic app icon SVG support

Perhaps if app icons were named blah.svg.png then Material could look for blah.svg?

Radio France and Virgin are missing Material icons

Radio france icon added. Generic plugin icon mapping added for 2.3.0, and i use by VirginRadio plugin,

Unfortunately this causes havoc with LMS image resiser and breaks images : it does things like this :
http://<IP_ADDRESS>:9000/plugins/VirginRadio/html/images/VirginRadioLogo.svg_50x50.png
placing the rename after the .svg instead of at the end breaking the link.
Is it worth switching to your other idea of using underscore?

Ah! OK, lets switch to an underscore. - so xxx_svg.png (just being 100% clear)


Add shuffleString function (#14)

Description
This pull request introduces the shuffleString function to the Stringy Core library, addressing issue #14.
Changes Made

Added the shuffleString function in lib/textTransformations.js.
The function shuffles the characters in a string, providing a versatile utility for text manipulation.

Testing

Tested the new function with various inputs to ensure correct behavior.

Related Issue
Closes #14

Added String type checking as well.


istio/tools: make fortio and nighthawk coexist in our perf benchmark

cc @oschaaf @mandarjog

also need to add nighthawk in out perf pipeline and dashboard

With all the above merges. Currently, both fortio and nighthawk jobs are running well in perf pipeline.
example:
https://prow.istio.io/?job=daily-nighthawk-performance-benchmark-release-1.6
Next step: small fixes on folder naming issue and tracking nighthawk results.


UI build fails with "Browser scripts cannot have imports or exports"

What does this PR change?

Adds module type to js import. Ref: https://github.com/parcel-bundler/parcel/discussions/6490

Does this PR relate to any other PRs?

No

How will this PR impact users?

It won't

Does this PR address any GitHub or Zendesk issues?

No

How was this PR tested?

Build is now successful

Does this PR require changes to documentation?

no

Have you labeled this PR and its corresponding Issue as "next release" if it should be part of the next Kubecost release? If not, why not?

Unsure if OSS UI is included in regular release cycle

@teevans is OSS UI included in the regular release cycle?  See @srpomeroy PR note.

@srpomeroy did you encounter with this install path or another? https://github.com/kubecost/opencost/blob/master/deploying-as-a-pod.md

@dwbrown2 its from the simple UI deployment here: https://github.com/kubecost/opencost/blob/develop/ui/README.md
the parcel step.

The force push is because I thought that, in addition to the type="module" update, the API query path needed to be prefixed with /model.
So I made that update and was going to approve, but then realized that the prefix is only required because I'm running this against a closed-source backend. The FP was removing the commit that I had added to make that adjustment.

Not sure I fully follow, more work needed here or should be all set?

We're all set! I was just explaining the force push.

Still not clear if this is part of any regular release cadence. Do I just merge and let @teevans figure it out?

You can go ahead and merge this. If it needs to go into the release, we'll cherry-pick the commit into the v1.94 branch. I think that would be the ideal, but is also unlikely to make a big impact.
We build images for the release, including an opencost image, but that image does not run the UI. The UI is for users grabbing the repo and running it locally. It would be ideal for the UI code at the 1.94.0 git tag not to be broken, but I strongly suspect users that want to run the UI are just pulling develop and running that.
Final call up to @teevans. I can create the cherrypick branch for this if there's to to get this into 1.94.0

Thanks @nealormsbee !


Upgrade to 1.1.3 not support image rules

{
"default": "",
"validation": {
"rule": "image|max:8000"
},
"resize": {
"width": "1500",
"height": "null"
}
}
before upgrade ,it is ok,    rule is image and limit 8M size. But upgrade , not support image, tips "The cover not is an image" !

where i want to add this

We have issue templates, please use them: https://github.com/the-control-group/voyager/tree/1.1/.github/ISSUE_TEMPLATE


[query] Intern values in query parser

It's currently difficult for us to add any kind of interning to the EDN parser: see https://github.com/kevinmehall/rust-peg/issues/84.
However, in #395 I'm about to make Variable and TypedValue wrappers around an Rc. We thus have an opportunity to intern query parts within the query parser itself, even if the EDN value stream itself contains duplicate strings
This has some immediate value: not only do we get cloneable ConjoiningClauses (and other consumers of Variable and TypedValue) — the point of #395 — but also as we drop the repeated [edn::Value] parser inputs we can prune some memory.
To do this involves maintaining state for the duration of our combine parse: probably a little struct around a few InternSet<PlainSymbol> and InternSet<String> instances.
This would be threaded into the top parser (Find::find), and then down into each parser it creates. I think the simplest way to do that — avoiding lifetime and mutability issues — is to wrap our interner in an Rc and pass it by cloning. (It's theoretically possible to use a ThreadLocal for this, but global state is a bit of a downer.)
We'd discard the interner when we're done with the parse. A future optimization is to keep it around….

Wanted to let you know that I've added support for context arguments to rust-peg in 0.5.2.

Thanks, @kevinmehall! Much appreciated.


Leafover of #894

Update the grammar and we can eliminate the ambiguities by using syntax.
Update the grammar so that we can re-export a module by public import
Open a module will import the modules that were exported.
Fix diamond inheritance
The symbols defined in This module will shadow the symbols imported from other modules, whatever the order is.
Fix legacy code.

😱

bors d=HoshinoTented

bors r+


HWACCEL + tensorflow without leaving GpuRam

I would like to decode a video using complex_filter and nvdec hardware acceleration.
To have it be as fast as possible I would like the decoded frame to be passed to tensorflow directly without leaving the gpu ram so that we don't spend time memcpy-ing the frame from gpu memory to cpu memory and back.
Is it possible using ffmpeg-python ?

In the "Experimental" section of TensorFlow, there's the barely documented/commented tfio.experimental.ffmpeg.decode_video() -> ffmpeg_ops.io_ffmpeg_decode_video() -> libtensorflow_io_ffmpeg_4.2.so -> ...
PyTorch sounds more promising: TorchAudio also talks here about video:

Using NVIDIA’s GPU decoder and encoder, it is also possible to pass around CUDA Tensor directly, that is decode video into CUDA tensor or encode video from CUDA tensor, without moving data from/to CPU.

The bottom of that page leads to tutorials on video decoding and encoding.
Keep us posted how that goes.


[EASI-4370] System workspace requests subpage

EASI-4370
https://www.figma.com/design/z8GeZPDfIh9oKfHK1cX7Fo/System-centric-EASi?node-id=1308-66828&t=PcjOFyNRtunTjjDg-0
Description

SystemWorkspaceRequests components
GetLinkedRequestsQuery
"Upcoming meeting date" column withheld until 4566

How to test this change

Preview local dev with mock data

+ import { systemLinkedRequests } from 'data/mock/systemLinkedRequest';
...
- const tableData: SystemLinkedRequest[] = useMemo( ...
+ const tableData: SystemLinkedRequest[] = systemLinkedRequests;

New jest test to render the subpage and table from mocked query data

PR Author Checklist

[ ] I have provided a detailed description of the changes in this PR.
[ ] I have provided clear instructions on how to test the changes in this PR.
[ ] I have updated tests or written new tests as appropriate in this PR.

PR Reviewer Guidelines

It's best to pull the branch locally and test it, rather than just looking at the code online!
When approving a PR, provide a reason why you're approving it

e.g. "Approving because I tested it locally and all functionality works as expected"
e.g. "Approving because the change is simple and matches the Figma design"

Don't be afraid to leave comments or ask questions, especially if you don't understand why something was done! (This is often a great time to suggest code comments or documentation updates)
Check that all code is adequately covered by tests - if it isn't feel free to suggest the addition of tests.

@ClayBenson94 Can I get your input/confirm on the meeting date columns?
Not sure where to draw the Upcoming Meeting Date from, took a wild guess for now with: https://github.com/CMS-Enterprise/easi-app/pull/2718/files#diff-e919f7928d766a722105ea68431d002dc4f5a10eb732cf6a8cf8b6b8b7ab90adR12

@ClayBenson94 Not a blocker but just wanted to highlight how the FE is handling OPEN vs CLOSED & linked TRB + ITGOV. Lmk if there's another approach for a more consolidated implementation, otherwise I'm indifferent with what I came up with.
https://github.com/CMS-Enterprise/easi-app/blob/643a9a7de14237b8a25483d33f0ecf46f940ee74/src/views/SystemWorkspace/SystemWorkspaceRequests.tsx#L53-L77

@ClayBenson94
Starting a new IT GOV or TRB request, and only doing that, will leave some empty cells in the table. Should we handle these kinds of cases on the frontend? Or should the backend have changes on what gets emitted for OPEN|CLOSED returns?

wanted to highlight how the FE is handling OPEN vs CLOSED & linked TRB + ITGOV

@adamodd That looks right to me -- I think the best way we can do this is just basing it off SystemIntakeState and TRBRequestState, respectively.

Starting a new IT GOV or TRB request, and only doing that, will leave some empty cells in the table. Should we handle these kinds of cases on the frontend? Or should the backend have changes on what gets emitted for OPEN|CLOSED returns?

@adamodd Looks like there's other tables in the FE that (I think?) handle this by showing New or Draft in some cases. I'm having trouble finding where this is exactly handled, but you can test it by going to /system/making-a-request and viewing how empty IT Gov request names get shown there -- that might be a good start!

Can you rewrite the GetLinkedRequests query using the new GraphQL codegen tooling?
Let's keep this rewrite out of this ticket. I've branched an attempt.

On top of what @aterstriep had an issue with, and has a NOREF in progress for, I'm running into a generated type mismatch that I'm unfamiliar with:
https://github.com/CMS-Enterprise/easi-app/commit/8a28cffb15b7980c54742c68428b1cb6c323fab8#diff-0982f84efc90c221ed78607c747dbe1e668df9cadc5e78123eb8bcbcbee08eb9R115
I haven't looked into it carefully yet. Best case is that I just need to point to other newer types that are already there. In any case, if it's complicated, I'd like to continue the patch in a NOREF.
@ClayBenson94 @patrickseguraoddball
Basically critical changes are in and this is ready for re-review.

Can you rewrite the GetLinkedRequests query using the new GraphQL codegen tooling?

Let's keep this rewrite out of this ticket. I've branched an attempt.
On top of what @aterstriep had an issue with, and has a NOREF in progress for, I'm running into a generated type mismatch that I'm unfamiliar with:
8a28cff#diff-0982f84efc90c221ed78607c747dbe1e668df9cadc5e78123eb8bcbcbee08eb9R115
I haven't looked into it carefully yet. Best case is that I just need to point to other newer types that are already there. In any case, if it's complicated, I'd like to continue the patch in a NOREF.
@ClayBenson94 @patrickseguraoddball
Basically critical changes are in and this is ready for re-review.

I'm good with that -- just follow this PR up with a NOREF to update the types to the new codegen tooling! 👍
At a high-level, I'd imagine we'd need to swap out the types/ import for the new gqlgen one (since types/ is the old types, IIRC), but let's take a look at that in isolation without these other changes in a NOREF!


Allow to add a custom event store to AggregateRepository

It can be really useful when the one_stream_per_aggregate config is set to true. Real event stream table is automatically create on save and for one of my use case I have a different format for aggregate_id (concatenation of 2 uuid separate by _) so the column length will become 73 instead of  36. I have my own stream strategy but only for one stream so when I configure my aggregate_repository I need to inject my custom event store

Coverage remained the same at 100.0% when pulling 5223e14aefe08c13d61a940adc58e57d151fdc1c on Orkin:allow-add-custom-event-store into 67fa365e0ef2dc9b22884126d3748679e0958968 on prooph:master.

@prolic Yes that's it, the default one like in documentation or example and a custom one. By default it will retrieve the EventStore::class from the container.

@sandrokeil see https://github.com/prooph/event-store/releases/tag/v7.3.6

LGTM. :+1: @Orkin Please run composer cs-fix.

@prolic it is ok for you like this ?

Thanks @Orkin

https://github.com/prooph/event-sourcing/releases/tag/v5.4.0


Help plugin - Sub tabs show up even under FAQ and Change Log

I believe those sub tabs (Connect, JMX, Logs, ...) should be only visible under User Guide.

@akieling Fixed?  It would be really helpful if you could add this issue number in the fix commit comment. Thanks.

@tadayosi Unfortunately, I've already pushed the commit and would need to force another push with the amended commit message. That could cause issues for other developers, right?
The commit that fixes this issue is:
https://github.com/hawtio/hawtio-core/commit/c48d26ce6987ba7f66f1fecb3446fbd3b30a198b

@akieling Yeah, that's ok to leave it as-is for this one. Thanks.


Check that the length of every Tuple in segmented_conversion_factors is 2

Currently, this is not checked for and can lead to unexpected behaviour.

Only if its the default value...


Fullscreen not working

This machine uses Debian stable (8.2) with Xfce 4.10 as the desktop environment, Nvidia proprietary graphics drivers (version 340.65 Edit: Also tested with 352.79; same result), with a single DVI monitor connected. Fullscreen is not working correctly (tested with all 3.x releases and current master; same result).
xrandr reports the following modes:
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 16384 x 16384
DVI-I-0 disconnected primary (normal left inverted right x axis y axis)
DVI-I-1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 531mm x 299mm
   1920x1080     60.00*+
   1680x1050     59.95
   1600x900      60.00
   1280x1024     75.02    60.02
   1280x800      59.81
   1280x720      60.00
   1024x768      75.03    60.00
   800x600       75.00    60.32
   640x480       75.00    59.94

My simple test program requests a fullscreen window with glfwCreateWindow(640, 480, "test", glfwGetPrimaryMonitor(), nullptr);. The monitor correctly changes mode to the requested resolution, but the result is a 640x480 panning view of a 1920x1080 screen. xrandr reports the following:
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 16384 x 16384
DVI-I-0 disconnected primary (normal left inverted right x axis y axis)
DVI-I-1 connected 640x480+952+140 (normal left inverted right x axis y axis) 530mm x 300mm panning 1920x1080+0+0
   1920x1080     60.00 +
   1680x1050     59.95
   1600x900      60.00
   1280x1024     75.02    60.02
   1280x800      59.81
   1280x720      60.00
   1024x768      75.03    60.00
   800x600       75.00    60.32
   640x480       75.00*   59.94

The requested window is initially visible, and fills the screen area, but moving the mouse cursor towards the edges causes the display to pan, showing the desktop and other open windows. This is not expected behaviour.
When the program exits normally (glfwTerminate is called), the display remains in the panning state, and does not revert.
This might possibly be a duplicate of #671 and #474, but I cannot be sure from the information given in those issues.

More information from a similar computer:
Debian stable (8.2) with IceWM (1.3.8), open-source Radeon graphics drivers, two DVI monitors connected. Fullscreen seems to be working fine, and the screen reverts to its original mode when the program exits.
xrandr output before and during fullscreen:
Screen 0: minimum 320 x 200, current 2560 x 1024, maximum 8192 x 8192
DisplayPort-0 connected 1280x1024+0+0 (normal left inverted right x axis y axis) 376mm x 301mm
   1280x1024     60.02*+  75.02
   1152x864      75.00
   1024x768      75.08    60.00
   800x600       75.00    60.32
   640x480       75.00    60.00
   720x400       70.08
DisplayPort-1 connected 1280x1024+1280+0 (normal left inverted right x axis y axis) 376mm x 301mm
   1280x1024     60.02*+  75.02
   1152x864      75.00
   1024x768      75.08    60.00
   800x600       75.00    60.32
   640x480       75.00    60.00
   720x400       70.08

Screen 0: minimum 320 x 200, current 2560 x 1024, maximum 8192 x 8192
DisplayPort-0 connected 640x480+0+0 (normal left inverted right x axis y axis) 376mm x 301mm
   1280x1024     60.02 +  75.02
   1152x864      75.00
   1024x768      75.08    60.00
   800x600       75.00    60.32
   640x480       75.00*   60.00
   720x400       70.08
DisplayPort-1 connected 1280x1024+1280+0 (normal left inverted right x axis y axis) 376mm x 301mm
   1280x1024     60.02*+  75.02
   1152x864      75.00
   1024x768      75.08    60.00
   800x600       75.00    60.32
   640x480       75.00    60.00
   720x400       70.08

My guess is that Xfce (xfwm) is causing the problem, so I will try a different DE and report back.

The problem no longer occurs on my primary PC, so I'm closing this issue.
Too many updates and changes have occurred in the last year for me to be certain what fixed it, but I choose to believe it was the fault of the Nvidia driver. I changed back to using the open-source Nouveau driver several months ago because of other issues I was having.
I will reopen if I find a way to reproduce in future.


goGroupLeftCtrl  command is not working

I am trying to execute the command goGroupLeftCtrl in codemirror and it is not working,
Other commands like goLineUp is working.
editor.execCommand('goGroupLeftCtrl');
The cursor should move to left of the word. Do I need any special addons? Thank you

The word "goGroupLeftCtrl" doesn't exist in this repository. I'm not sure what you are looking for, but the base library doesn't define it. Check Object.keys(CodeMirror.commands) for a list of defined commands.


Allow inserting association without primary keys

When there's already a value for an association, but the primary keys
are empty, treat it as a new value and allow a changeset with insert
Closes #1621

I'm opening this as a PR, since I'm not 100% sure of this changes and I would love a review.

:heart: :green_heart: :blue_heart: :yellow_heart: :purple_heart:

Great!


Battery voltage

Is it possible to measure the battery voltage?
Or have you considered using the adc with a voltage divider?

Hi @gordonendersby!
Currently the ADC is not in use for Badgy, so you can connect a voltage divider (e.g. 220K/100K) and connect it to the ADC pin. This may be available in the next version :). Thanks!

Ive worked this out now after reminding myself how to measure the internal vcc.
The internal ADC can measure the battery. No need for voltage dividers unless you want to measure an outside source or other analogue source.
Ideally before the wireless is turned on due to drain.
`/* Needed to point adc at internal vcc*/
ADC_MODE(ADC_VCC);
/* in startup */
float vccVolt = ((float)ESP.getVcc())/1024;
`
It would be great if you just broke out any spare pins to pads that a pin header can be connected too.

Closed as you can use internal ADC to VCC

The internal ADC measures the input voltage to the ESP, which is regulated by the LDO, not the actual battery's voltage.


update products when sales is disabled

@ericsaupe, @jeffreyfuchang

@kascote this also needs to be opened against deseretbook:2-3-stable


[Snyk] Upgrade @types/react-dom from 18.2.11 to 18.2.12

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade @types/react-dom from 18.2.11 to 18.2.12.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 1 version ahead of your current version.
The recommended version was released 22 days ago, on 2023-10-09.

Release notes

Package name: @types/react-dom

18.2.12 - 2023-10-09

18.2.11 - 2023-10-06

    from @types/react-dom GitHub release notes

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

Merged

This is an automated message from Fork, Commit, Merge [BOT].

Thank you for your contribution! Your pull request has been merged. The files have been reset for the next contributor.
What's next?
If you're looking for more ways to contribute, I invite you to check out my other projects. Just click here to find more. These projects contain real issues that you can help resolve. You can also check out the Influences section in the README to find more projects similar to this one.
Also please leave a star to this project if you feel it helped you, i would really appreciate it.
I look forward to seeing your contributions!


Display is wrong when there are multiple link cards

Thanks for pointing this out. It reminds me a similar issue I fixed a couple of days ago in https://github.com/pengx17/logseq-plugin-todo-master/issues/20#issuecomment-1115280718


use of checkers on Integration test

part of #16756
Signed-off-by: Xiaoxu Chen<EMAIL_ADDRESS>

Small typo but LGTM when addressed, thanks @cxxly

@abronan thanks for your reviewing carefully, has updated it

some irrelevant error

Can you squash to 1 commit?

@cpuguy83  I will suqash it and change my bad habbit., thanks.

@cpuguy83 I have squashed to 1 commit and updated it

LGTM 🐠


How to convert finetuned bge-large-zh-v1.5 to ONNX

I've finetuned a model based on bge-large-zh-v1.5, how can I convert it to onnx?

https://github.com/flyme2023/bge/blob/main/onnx/run.sh
WFM.


建议官方示例页面添加功能效果缩略图

比如这样的，查看会比较方便：

I agree that would be nice.  We could use puppeteer to create screenshots when building the examples.  Probably wouldn’t want to do that in dev mode though.  We could also auto-generate them only if they don’t exist (allowing them to be manually generated).

非常感谢！


Accessibility for plots

In addition to ARIA for accessibility, we need some way for users to "read" (listen?) plots.
Let's research what would work and be sustainable.
Some options so far:

https://accessiblegraphs.org/?lang=en
https://d3js.org/  with, say some of the techniques in https://fossheim.io/writing/posts/accessible-dataviz-d3-intro/

One of the first steps might be gaining more understanding of what we mean by accessibility for someone using our tool.  I.E., functional needs: https://www.w3.org/TR/wcag-3.0/#dfn-functional-need

I recommend the d3 option