Channel force closed repeated error - "Insufficient funds to meet target feerate of xxx"

Problem Description: I tried to open my first channel, and got a force channel closure. My suspicion is that I used those same words on my Mutiny app at the same time, and Mutiny didn't like it. I'm fine with that, lesson learned if that's the case, but the onchain funds seem to be stuck if I read those logs correctly; the fees somehow cannot be used to bump the transaction. Looking for any help or direction.
Device: StartOS node packaged service
Version: 1.7.4 https://github.com/MutinyWallet/mutiny-web/commits/b0986895a51e3ccdd944c7c83565041126121b99
UI Display:

Full Logs (attached): mutiny-logs.txt
Error (snippet):
c81c 2024-06-22 21:08:13.163 TRACE [lightning::ln::peer_handler:1279] Enqueueing message Ping { ponglen: 0, byteslen: 64 } to 03aefa43fbb4009b21a4129d05953974b7dbabbbfb511921410080860fca8ee1f0 c81c 2024-06-22 21:08:13.163 TRACE [lightning_background_processor:693] Rebroadcasting monitor's pending claims c81c 2024-06-22 21:08:13.163 INFO  [lightning::chain::onchaintx:487] Triggering rebroadcast/fee-bump for request with inputs [OutPoint { txid: 0x058ce168e8060f604417d7094b4d8d0050f574bb00b8cd4ebf6254063e85e8aa, vout: 0 }] c81c 2024-06-22 21:08:13.166 DEBUG [lightning::chain::package:941] Adding claiming input for outpoint 058ce168e8060f604417d7094b4d8d0050f574bb00b8cd4ebf6254063e85e8aa:0 c81c 2024-06-22 21:08:13.166 DEBUG [lightning::chain::package:942] Finalized transaction 9e0e57aa28f3b365deb2fef8de7d15fe8a06ab30dddc5b30bdd1684f8772184e ready to broadcast c81c 2024-06-22 21:08:13.166 TRACE [mutiny_core::fees:177] Got fee rate from saved cache! c81c 2024-06-22 21:08:13.166 INFO  [lightning::chain::onchaintx:506] Replaying onchain event to spend inputs [OutPoint { txid: 0x058ce168e8060f604417d7094b4d8d0050f574bb00b8cd4ebf6254063e85e8aa, vout: 0 }] c81c 2024-06-22 21:08:13.167 DEBUG [mutiny_core::event:591] EVENT: BumpTransaction: ChannelClose { claim_id: ClaimId([78, 24, 114, 135, 79, 104, 209, 189, 48, 91, 220, 221, 48, 171, 6, 138, 254, 21, 125, 222, 248, 254, 178, 222, 101, 179, 243, 40, 170, 87, 14, 158]), package_target_feerate_sat_per_1000_weight: 61250, commitment_tx: Transaction { version: 2, lock_time: Seconds(Time(542020501)), input: [TxIn { previous_output: OutPoint { txid: 0x058ce168e8060f604417d7094b4d8d0050f574bb00b8cd4ebf6254063e85e8aa, vout: 0 }, script_sig: Script(), sequence: Sequence(2152323743), witness: Witness { content: [0, 71, 48, 68, 2, 32, 24, 161, 75, 34, 207, 164, 29, 209, 229, 103, 82, 95, 31, 156, 47, 151, 73, 23, 229, 65, 238, 12, 163, 244, 137, 113, 8, 89, 14, 163, 212, 16, 2, 32, 6, 110, 241, 99, 253, 62, 184, 161, 175, 102, 14, 128, 206, 198, 158, 44, 184, 249, 101, 46, 45, 21, 69, 106, 68, 159, 179, 134, 211, 179, 195, 49, 1, 71, 48, 68, 2, 32, 37, 69, 245, 159, 68, 31, 12, 128, 73, 97, 18, 215, 110, 169, 243, 100, 192, 181, 122, 178, 208, 118, 20, 21, 106, 199, 180, 64, 122, 232, 202, 25, 2, 32, 3, 112, 206, 121, 222, 222, 94, 138, 17, 199, 109, 60, 7, 114, 46, 52, 122, 14, 118, 127, 109, 35, 114, 204, 212, 10, 234, 118, 55, 181, 11, 59, 1, 71, 82, 33, 2, 1, 133, 128, 112, 231, 136, 96, 151, 240, 28, 93, 12, 18, 211, 56, 65, 7, 194, 238, 193, 120, 186, 83, 95, 45, 89, 210, 79, 48, 228, 66, 53, 33, 2, 118, 10, 172, 110, 254, 159, 62, 251, 79, 13, 42, 13, 132, 220, 222, 42, 216, 87, 181, 223, 62, 228, 25, 246, 163, 137, 169, 115, 50, 147, 165, 81, 82, 174, 0, 0, 0, 0, 1, 0, 0, 0, 73, 0, 0, 0, 145, 0, 0, 0], witness_elements: 4, indices_start: 217 } }], output: [TxOut { value: 330, script_pubkey: Script(OP_0 OP_PUSHBYTES_32 c1f4a22960769849326646f89b9d9b8493e06b74749ec5aeaa2fab7aa28248b4) }, TxOut { value: 195552, script_pubkey: Script(OP_0 OP_PUSHBYTES_32 1fbcc6aaa7f41d4c342cce1669936aaac04baa0f70636284395c9a62d278f674) }] }, commitment_tx_fee_satoshis: 1454, anchor_descriptor: AnchorDescriptor { channel_derivation_parameters: ChannelDerivationParameters { value_satoshis: 197336, keys_id: [0, 0, 0, 0, 131, 55, 254, 192, 0, 0, 0, 0, 102, 113, 35, 82, 25, 6, 8, 30, 199, 153, 164, 51, 209, 233, 155, 140, 242, 46, 63, 55], transaction_parameters: ChannelTransactionParameters { holder_pubkeys: ChannelPublicKeys { funding_pubkey: PublicKey(3542e4304fd2592d5f53ba78c1eec2074138d3120c5d1cf0976088e770808501fe95da9e34100b4a71ded7d2186bc59c30e8416bfd2956088630f94a56b50e77), revocation_basepoint: RevocationBasepoint(PublicKey(faa1c4ab36c280c509cf60583cd451a5e79a6a3ad3bb4a262555e257db1ee850165eddb629f90b3d71f8fe6bdf820f43b28b9cdda8ef28993fff91b18c75097b)), payment_point: PublicKey(0804d5dd3ff3a620e67d894d426c450e86361adffde2f086bf65e39c814e42a8740ce476b6ff4ac0969841afa879f7274fcabb65149a0e459ea60b002a073acd), delayed_payment_basepoint: DelayedPaymentBasepoint(PublicKey(9dc95b07617d2a6158a40dcb58e45ed6c1fa45d30ba92eaad6add0a76268acc1cf71d0709eda189f5349e66afbe498f8d5fd3f9b057724bdf0fd620f4f9f4166)), htlc_basepoint: HtlcBasepoint(PublicKey(4cc279e9e048dc6612353553d8f24b2f755fb07ab24a5d2e2e691b7c0e74fab4b2480791ffa0b5c88fa9d3ff310654b2a68756573cee33552e03aac4f6970279)) }, holder_selected_contest_delay: 288, is_outbound_from_holder: true, counterparty_parameters: Some(CounterpartyChannelTransactionParameters { pubkeys: ChannelPublicKeys { funding_pubkey: PublicKey(51a5933273a989a3f619e43edfb557d82adedc840d2a0d4ffb3e9ffe6eac0a76204664a3894e84bb530bb9b4558c0565c9749adc3a7f77d6f4717decb51ed8dd), revocation_basepoint: RevocationBasepoint(PublicKey(696ca3838bc1ea94e982eb41b56d28f57e4c240d09d766b3d5ffa762ce83bf5b379df8dd9bb6da7e7c24d2e0610ab341dce48950aefccd106b7148e570127f08)), payment_point: PublicKey(0f6300da6174da1ebc29df3c99a00e0fb187b52be6423a112eac02276ecd8bc3b75b5fa9fed045775459f6b0dea597588502b8f55ccb8d6e6c12cc02110a4991), delayed_payment_basepoint: DelayedPaymentBasepoint(PublicKey(301e48b2dbdaacbf2018d20cf4354faba765ce2eb6aabdbb0d42c3c629564bcad35b6134cea415f370403d01168eb04b89533c1047e42940e126d2bf2666ea79)), htlc_basepoint: HtlcBasepoint(PublicKey(748a9f7ee32e213d0b4f5d5d240d808943bdf8c11e7b05f5348f33428157076585a8e7ba6cdcee7d0fb295293e0d5e589773e0c922c0f15708be84a78d2fa968)) }, selected_contest_delay: 144 }), funding_outpoint: Some(OutPoint { txid: 0x058ce168e8060f604417d7094b4d8d0050f574bb00b8cd4ebf6254063e85e8aa, index: 0 }), channel_type_features: [0, 16, 64, 0, 0, 64] } }, outpoint: OutPoint { txid: 0x9e0e57aa28f3b365deb2fef8de7d15fe8a06ab30dddc5b30bdd1684f8772184e, vout: 0 } }, pending_htlcs: [] } c81c 2024-06-22 21:08:13.167 INFO  [lightning::events::bump_transaction:789] Handling channel close bump (claim_id = 4e1872874f68d1bd305bdcdd30ab068afe157ddef8feb2de65b3f328aa570e9e, commitment_txid = 9e0e57aa28f3b365deb2fef8de7d15fe8a06ab30dddc5b30bdd1684f8772184e) c81c 2024-06-22 21:08:13.167 DEBUG [lightning::events::bump_transaction:603] Peforming coin selection for commitment package (commitment and anchor transaction) targeting 61250 sat/kW c81c 2024-06-22 21:08:13.167 DEBUG [lightning::events::bump_transaction:501] Attempting coin selection targeting 61250 sat/kW (force_conflicting_utxo_spend = false, tolerate_high_network_feerates = false) c81c 2024-06-22 21:08:13.167 DEBUG [lightning::events::bump_transaction:447] Insufficient funds to meet target feerate 61250 sat/kW c81c 2024-06-22 21:08:13.167 DEBUG [lightning::events::bump_transaction:501] Attempting coin selection targeting 61250 sat/kW (force_conflicting_utxo_spend = false, tolerate_high_network_feerates = true) c81c 2024-06-22 21:08:13.167 DEBUG [lightning::events::bump_transaction:447] Insufficient funds to meet target feerate 61250 sat/kW c81c 2024-06-22 21:08:13.167 DEBUG [lightning::events::bump_transaction:501] Attempting coin selection targeting 61250 sat/kW (force_conflicting_utxo_spend = true, tolerate_high_network_feerates = false) c81c 2024-06-22 21:08:13.167 DEBUG [lightning::events::bump_transaction:447] Insufficient funds to meet target feerate 61250 sat/kW c81c 2024-06-22 21:08:13.167 DEBUG [lightning::events::bump_transaction:501] Attempting coin selection targeting 61250 sat/kW (force_conflicting_utxo_spend = true, tolerate_high_network_feerates = true) c81c 2024-06-22 21:08:13.167 DEBUG [lightning::events::bump_transaction:447] Insufficient funds to meet target feerate 61250 sat/kW c81c 2024-06-22 21:08:13.168 ERROR [lightning::events::bump_transaction:795] Failed bumping commitment transaction fee for 9e0e57aa28f3b365deb2fef8de7d15fe8a06ab30dddc5b30bdd1684f8772184e

I noticed today a new Mutiny update:
Mutiny Wallet - 1.7.8
Released: Jun 24, 2024, 1:17:23 PM
Bug fixes to prevent force-closes and crashes
I'll run it and inspect if anything changes.


Add missing return codes for security manager

Add missing return codes for security manager to BLEReturnCode https://github.com/taks/esp32-nimble/blob/8f55ab516bc2854ac7304ff7875e8aa0066546f0/src/ble_return_code.rs#L39
https://mynewt.apache.org/latest/network/ble_hs/ble_hs_return_codes.html#return-codes-security-manager-us
As a secondary point might be useful to consider returning BLEReturnCode in some additional places. i.e.
https://github.com/taks/esp32-nimble/blob/8f55ab516bc2854ac7304ff7875e8aa0066546f0/src/server/ble_server.rs#L89
instead of c_int, which then begs the question should BLEReturnCode inner be a i32 or is u32 correct.
https://github.com/taks/esp32-nimble/blob/8f55ab516bc2854ac7304ff7875e8aa0066546f0/src/ble_return_code.rs#L2

Can you create a PR?

Yeah I should have some time this week. I'll try and get something put together.
-Sam

From: taks @.>
Sent: Monday, February 19, 2024 7:04:29 PM
To: taks/esp32-nimble @.>
Cc: sam @.>; Author @.>
Subject: Re: [taks/esp32-nimble] Add missing return codes for security manager (Issue #93)
Can you create a PR?
—
Reply to this email directly, view it on GitHubhttps://github.com/taks/esp32-nimble/issues/93#issuecomment-1953371888, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ACDGQ52OOV4KF665VUIGCMDYUQAC3AVCNFSM6AAAAABDP7BB7CVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNJTGM3TCOBYHA.
You are receiving this because you authored the thread.Message ID: @.***>

What is the reasoning behind the wrapped type for BLEReturnCode vs a more rusty Enum style error? Not a critique, just an ask.

At the time of implementation,
if I was not sure whether the value could be converted to a BLEReturnCode, I used the value as it is.
It is better to replace BLEReturnCode if it can be replaced.


Fix microprime staking

Currently microprimes are supposed to be staking at 15%...
In the future their rate will be calculated dynamically,
replace hard-coded rate checks with basic multiplication.
DANGER: this is forking code.

(20 minutes)

Is there a timeframe where you think it will be fixed?

@massagecoin being that this fix requires a fork of the coin I can't actually answer when it will be merged.

ACK


"MediaStreamTrack.getSources is deprecated" error in chrome 49.0.2623.87

reposting from @adamforbes (https://github.com/processing/p5.js/issues/1352):
When loading p5.sound.js, i receive the error "MediaStreamTrack.getSources is deprecated. See https://www.chromestatus.com/feature/4765305641369600 for more details."
Are there any plans to move this over to MediaDevices.enumerateDevices()?

same error here.

same here!

I wrote a lot of the original get sources functionality so I can look into this.  I'll assign myself!

Same here!

https://github.com/processing/p5.js-sound/pull/160


Compile Sigar to ARM (Raspberry pi)

Hi all,
Does anyone know what i need to change to compile Sigar to arm to execute in a Raspberry Pi?
Is it a big or low effort?
Thanks,
Jorge.

I did it once, painless
On Feb 11, 2017 10:14 AM, "jcbfonseca"<EMAIL_ADDRESS>wrote:

Hi all,
Does anyone know what i need to change to compile Sigar to arm to execute
in a Raspberry Pi?
Is it a big or low effort?
Thanks,
Jorge.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/hyperic/sigar/issues/101, or mute the thread
https://github.com/notifications/unsubscribe-auth/AB4kGUiP3XvlGpiEl3xKIFVn9dtFFT9aks5rbdBKgaJpZM4L-M1Q
.

Good spyhunter99.
Did you compile it directly in a rasp or use a arm toolchain in a linux machine?
Could you provide some tips which files i need to change?
Jorge.

Easiest way would be compilation using cmake on Raspberry. You would not need to change anything.

I compiled on the pi, I don't recall changing anything
On Feb 11, 2017 10:28 AM, "AlexYaruki"<EMAIL_ADDRESS>wrote:

Easiest way would be compilation using cmake on Raspberry. You would not
need to change anything.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/hyperic/sigar/issues/101#issuecomment-279152319, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AB4kGYDoB1w0WUmHnfA4Mzf7X0ibQU8Hks5rbdOhgaJpZM4L-M1Q
.

I compiled with:

autogen.sh
./configure
make

with no errors. But when i execute it, i always got java.lang.UnsatisfiedLinkError.
Is there a doc describe the steps to compile? Which steps i do need to add?
Thanks.

Is library added to java.library.path ?

Yes.
The same happened in Ubuntu.
1- I downloaded the binaries from github (execution is ok).
2- I compiled and replace the the amd64-linux.so  by generated libsigar.so (in ubuntu).
3- I got the UnsatisfiedLinkError error too.
Can be a wrong compilation?

Binaries from github ? You mean JAR file ?

Sorry - sourceforge (not github).

Do I need to pass some parameter in the "configure" step?

What is the complete exception message ?

Exception in thread "main" java.lang.UnsatisfiedLinkError: org.hyperic.sigar.Sigar.getNativeVersion()Ljava/lang/String;
at org.hyperic.sigar.Sigar.getNativeVersion(Native Method)
at org.hyperic.sigar.Sigar.(Sigar.java:101)
at org.hyperic.sigar.cmd.Shell.(Shell.java:50)
at org.hyperic.sigar.cmd.SigarCommandBase.(SigarCommandBase.java:75)
at nodestats.CpuInfo.(CpuInfo.java:40)
at nodestats.CpuInfo.main(CpuInfo.java:104)

As I suspected, core sources do not contain JNI code for Java. So you are trying to use core library ( C) with Java library that requires JNI exported functions. I think what you should do instead is to build directly from java bindings subdirectory with Apache Ant.

When i try to generated the jar file, i got this message:
[cc] Starting link
[cc] ../sigar_version_autoconf.o: In function sigar_version_get':        [cc] sigar_version_autoconf.c:(.text+0x0): multiple definition of sigar_version_get'
[cc] ../sigar_version.o:sigar_version.c:(.text+0x0): first defined here
[cc] ../sigar_getline.o: In function sigar_getline_histadd':        [cc] sigar_getline.c:(.text+0x1db8): warning: the use of tmpnam' is dangerous, better use `mkstemp'
[cc] collect2: error: ld returned 1 exit status

i saw in the build.xml file that sigar_version.c is copied from 'c core source'.
Any suggestion?

Could you insert complete log from building ?

build.txt

I will look in to this problem on Monday when I will setup my Raspberry

Which Raspberry Pi model and OS ?

I got this error when compiled in:

Ubuntu 16.04
and
Rasp 3 Model B - version 8.0 (Jessie)

Thanks for help.

Alex,
I compiled with success adding a exclude property in jni-build.xml:

This new JAR file works fine with .so from sourceforge.
But again: i got UnsatisfiedLinkError with .so generated by compilation process (Ubuntu or RaspberryPi).
Any idea?

Aex and All,
Issue solved.
Once the jni-build.xml was fixed, i still use the ./src/libsigar.so file. When i change the .so file to ./bindings/java/sigar-bin/lib/libsigar.so the execution works fine. (as told by you Alex).
Thanks for the support.
By the way: i suggest you to verify the problem related to jni-build.xml.
Thanks again.

You were using GUI version of Raspbian or headless (bash-only) ?


Minor change to try update workflow

Description
Extremely minor change for @catasaur to try out update workflow

No major changes - shouldn't break anything!


Write basic instructions

updated: https://github.com/devopshq/vspheretools/wiki/vSphereTools-Instruction-(ru)


Button to Reveal in Sidebar next to New File button

Hi!
My suggestion is to add a button next to the New File/New Folder buttons to "Reveal in Sidebar" for the currently open file. It could be very useful specially in large projects and when there are many files open.

This suggestion makes sense, however I would prefer to tackle this by making the title bar in the explorer contributable https://github.com/microsoft/vscode/issues/108271
Thus closing as duplicate


feat(EMS-2744-2787): No PDF - Policy - Broker details - Page setup

Introduction :pencil2:
This PR updates the broker form in the policy section of a no PDF application to become a simple yes/no question with other fields moved to a new "Broker details" form.
Resolution :heavy_check_mark:

Move all broker fields, IDs etc apart from USING_BROKER into a new BROKER_DETAILS object. USING_BROKER is now on the top level of POLICY.
Remove now unused broker fields (address line 1, town, postcode etc).
Update completeAndSubmitBrokerForm to simply submit yes or no.
Disable some E2E tests and summary list functionalities until data saving and/or EMS-2793 is complete (check/change answers via the "broker details" form).
Add new BROKER_ADDRESS_AS_MULTIPLE_FIELDS field to the application versions.
Create new "broker details" page/form, route, controller etc.
Update the "broker" page to:

Use shared "single input" validation.
Have horizontal radios with the "no" radio ordered first.
Redirect to "broker details" if a "yes" answer is submitted.

Remove now unused broker validation rules.
Update mocks/fixtures.
Simplify "get application" GQL query.

Miscellaneous :heavy_plus_sign:

Change Broker DETAILS partial/expansion text to not have a field ID as it is not a field.
Destructuring and documentation improvements.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

:exclamation: No coverage uploaded for pull request base (main-application-no-pdf@bf5be12). Click here to learn what that means.

Additional details and impacted files
@@                    Coverage Diff                     @@
##             main-application-no-pdf    #1869   +/-   ##
==========================================================
  Coverage                           ?   97.53%
==========================================================
  Files                              ?      637
  Lines                              ?     9971
  Branches                           ?     1090
==========================================================
  Hits                               ?     9725
  Misses                             ?      244
  Partials                           ?        2

Flag
Coverage Δ

api-test
92.46% <0.00%> (?)

unit-test
98.39% <0.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Resources are not being found throwing null pointer exception

Hello guys,
I've been using ButterKnife 8.0.1, but since i made gradle libraries and gradle update, butterKnife stopped working in all the < 22 API's. This problem also happens using butterKnife 7.
I'm trying to run it in debug mode, so i am not using ProGuard.
If i use the variable as a field, it doesn't find the resource, but if i use as local variable, using this approach, it works:
AutoCompleteTextView mEmail = ButterKnife.findById(this, R.id.edit_login_email);
I got the log from the debug mode, and i got:
D/ButterKnife: Looking up view binder for com.shipnow.youship.activities.authenticator.LoginActivity
D/ButterKnife: Not found. Trying superclass com.shipnow.youship.activities.BaseActivity
D/ButterKnife: Not found. Trying superclass android.support.v7.app.AppCompatActivity
D/ButterKnife: MISS: Reached framework class. Abandoning search.

Does anyone has the same problem?

The generated code is not in your APK. Is the compiler included in your build.gradle file?

@JakeWharton I'm sorry, but what you mean by "compiler included in your buid.gradle file"?
I have these four gradle dependencies, and they are out of date, and everything is working perfectly:
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile 'com.android.support:design:23.1.1'
    compile 'com.android.support:recyclerview-v7:23.2.1'
    compile 'com.android.support:support-v4:23.1.1'

If i update them, for the next version (23.3.X) butterKnife stops working, as i described before.

Where is your butterknife dependency then?

I'm sorry, i haven't posted all because i thought it wouldn't be necessary.
    compile 'com.jakewharton:butterknife:8.0.1'
    apt 'com.jakewharton:butterknife-compiler:8.0.1'

I just posted the ones which really created the problem.

Do you see the generated classes in build/generated/source/apt/?

Yes, all the generated classes are there.

Well they're not ending up in the APK somehow. Are you using ProGuard?
On Tue, May 3, 2016 at 10:50 AM Marco<EMAIL_ADDRESS>wrote:

Yes, all the generated classes are there.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/JakeWharton/butterknife/issues/533#issuecomment-216553049

@JakeWharton as i said on the original post, my proguard is not being used.

Then this is a packaging problem with your build system, not a problem with
Butter Knife so I don't know what to tell you.
On Tue, May 3, 2016 at 10:54 AM Marco<EMAIL_ADDRESS>wrote:

@JakeWharton https://github.com/JakeWharton as i said on the original
post, my proguard is not being used.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/JakeWharton/butterknife/issues/533#issuecomment-216554409

That's fine. I'll analyse my project and try to figure out what's wrong with it. Thank's @JakeWharton

Yep. I have the same problem with version 8.0.1.
build/generated/source/apt/ generated.

Closing since there's no action to take from the library side.


Update DenFur feed to 2024

This updates the DenFur feed to 2024 for this year’s DenFur, which takes place August 23 to 25.
Hashtags are: #denfur and #denfur2024

Maybe we ought to just remove the years so we don't have to update these every year 😓

@strideynet, we probably still want the year to update in the hashtag, right? But yeah we can remove it from the title.

Denfur is over but do we still want to merge this @strideynet?


Steam streaming client blackscreens and hangs or crashes

First of all - thanks for all the efforts in getting this automated!
I can deploy and connect to an NV VM fine. I can download and install Steam, and the Battle.Net client and can start World of Warcraft, and even interact with it a bit over RDP.
However, when I try to stream the screen just goes black, and the streaming client either returns after a few seconds or hangs. I can hear game music playing in the first instance. Steam mention this specifically: https://support.steampowered.com/kb_article.php?ref=3629-RIAV-1617#blackscreen.
I've updated the latest NVidia drivers but: the download page warns that a restart would be required. I assume if I want to do that then I'll need a managed disk? Attempting it anyway (without restarting the VM) doesn't improve things.
The same Steam resource suggests a couple of other options, including testing and adjusting MTU settings. I'll be attempting those soon but thought I'd raise this as an issue here in case it'd been seen and there was an obvious solution.
EDIT: I misunderstood the managed OS disk point. MTU settings are at what Steam recommend.

I installed Parsec instead, following: https://support.parsecgaming.com/hc/en-us/articles/115002702331-Setting-Up-Hosting-On-Windows and it (probably*) works out of the box. I'll not pursue the Steam route any further for now, thought I'd recap here.

I did enable remote COM activation and launch in my server settings on spotting some (possibly spurious) server event log errors.

Hmm I'll see if I can repro this problem. In the future I may add steaming software like Parsec as an alternative to steam in-home streaming in the script.

Looks like a dupe of #37 , with the difference that steam now shows a splashscreen instead of a blackscreen.
If it is, it could be fixed the same way : Use C:/disconnect.lnk before attempting to stream. Steam streaming may conflict with RDP.


fix(calico): Added kubernetesProvider and nonPrivileged configurations

This PR addresses #82 by adding specific configurations for Calico in EKS. The issue was related to panic and sysctl errors, especially:
2024-10-12 12:09:47.350 [PANIC][9460] felix/table.go 784: iptables-legacy-save command failed after retries ipVersion=0x4 table="raw"
2024-10-12 12:09:48.485 [ERROR][9510] felix/int_dataplane.go 2065: Failed to set IPv4 forwarding sysctl error=open /proc/sys/net/ipv4/ip_forward: read-only file system

Changes:

Added kubernetesProvider: Specifies the Kubernetes platform provider (EKS), allowing automatic provider-specific configurations.

Added nonPrivileged: Ensures Calico runs in non-privileged mode as a non-root user where possible.

Added nonPrivileged: Ensures Calico runs in non-privileged mode as a non-root user where possible.

but you set this to Disabled, so IT IS running as root, is this what you wanted?

Added nonPrivileged: Ensures Calico runs in non-privileged mode as a non-root user where possible.

but you set this to Disabled, so IT IS running as root, is this what you wanted?

Thank you for your comment. As per the issue discussed in #82  and the logs shared in the description of the PR, the workload requires root privileges to execute correctly. Therefore, it is necessary to explicitly run it as root in this case.


Queries with nested wheres don't work

First of all, this library is great so far. It's saved me a ton of work. Prisma is really lacking when it comes to unit testing, so I really appreciate the dedication.
This might be an expected issue since most nesting doesn't seem to be covered, but I don't see any mention of nested where clauses in the README, so I figured I'd bring it up.
prisma.caseStudy.findFirst({
    orderBy: { lastUpdated: "desc" },
    where: {
      location: {
        companyId: { id: companyId },
      },
    },
});

prisma.user.findMany({
    where: {
        companyId: { id: companyId },
    },
});

The above examples do not work when unit testing. I always get back the most recently updated CaseStudy not matter what Company Id is provided.
if it helps:
A Company can have many Locations
A Location can only have one Company
A CaseStudy can only have one Location
A Location can have many CaseStudies
I'm on prismock version 1.33.1.

Hello @NatalieFrecka , thanks a lot for bringing this up! Unfortunately I haven't been able to reproduce it on my side, is there any chance you can provide a minimal reproduction repo? Would love to have a look at this.


SceneObjectRef: Provide a way to have references to other scene objects without impacting parent

Can't figure out how to make this be clonable (without making clone a lot more complicated), and even then there is no guarantee it will work as the reference could be to a scene object in a different scene graph tree.
But not sure if this SceneObjectRef is any better than simple having a function in state that returns the instance alla
    getDashboard: () => dashboard,

Testing this here: https://github.com/grafana/grafana/pull/74126/files

after testing this I think it makes some sense


unexpected EOF when running docker build

docker version 1.9.1 when I run a docker build on a CentOS machine I keep seeing an unexpected EOF error. I tried the same build (same docker file and all contributing files) on an Ubuntu machine and there is no unexpected EOF error.

Hi!
Please read this important information about creating issues.
If you are reporting a new issue, make sure that we do not have any duplicates already open. You can ensure this by searching the issue list for this repository. If there is a duplicate, please close your issue and add a comment to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to include the BUG REPORT INFORMATION shown below. If you fail to provide this information within 7 days, we cannot debug your issue and will close it. We will, however, reopen it if you later provide the information.
This is an automated, informational response.
Thank you.
For more information about reporting issues, see https://github.com/docker/docker/blob/master/CONTRIBUTING.md#reporting-other-issues

BUG REPORT INFORMATION
Use the commands below to provide key information from your environment:
docker version:
docker info:
uname -a:
Provide additional environment details (AWS, VirtualBox, physical, etc.):
List the steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Provide additional info you think is important:
----------END REPORT ---------
#ENEEDMOREINFO

Both machines are Vagrant boxes running in Virtualbox.
CentOS 7 machine:
docker version:
Client:
Version:      1.9.1
API version:  1.21
Go version:   go1.4.2
Git commit:   a34a1d5
Built:        Fri Nov 20 13:25:01 UTC 2015
OS/Arch:      linux/amd64
Cannot connect to the Docker daemon. Is the docker daemon running on this host?
docker info:
Cannot connect to the Docker daemon. Is the docker daemon running on this host?
uname -a:
Linux docker-host 3.10.0-229.14.1.el7.x86_64 #1 SMP Tue Sep 15 15:05:51 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
Ubuntu 14.04 machine:
docker version:
Client version: 1.6.2
Client API version: 1.18
Go version (client): go1.2.1
Git commit (client): 7c8fca2
OS/Arch (client): linux/amd64
Server version: 1.6.2
Server API version: 1.18
Go version (server): go1.2.1
Git commit (server): 7c8fca2
OS/Arch (server): linux/amd64
docker info:
Containers: 0
Images: 26
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 26
Dirperm1 Supported: true
Execution Driver: native-0.2
Kernel Version: 3.19.0-25-generic
Operating System: Ubuntu 14.04.3 LTS
CPUs: 1
Total Memory: 489.2 MiB
Name: docker-host
ID: NTQF:LIUN:TGJR:3EEW:4LEH:H7QW:LWI3:4DJV:DUQT:KNPI:SOU4:XWW6
WARNING: No swap limit support
uname -a:
Linux docker-host 3.19.0-25-generic #26~14.04.1-Ubuntu SMP Fri Jul 24 21:16:20 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
Additional information:
I can run docker ps and other docker commands on the CentOS 7 Machine without issue however i do see daemon issues every once in a while, especially after the EOF error. I used the installation instructions on the docker website to install docker on both hosts.

I did some more testing it was an issue with the install that is resolved.

Thanks for reporting back @dgutierrez1287, and great that it's resolved for you!


fix rounding error failing build

ERROR: /Users/svaddi/SreeVaddi/source/github/sreev/incubator-heron/heron/common/src/java/BUILD:11:1: Building heron/common/src/java/libbasics-java.jar (13 source files) failed (Exit 1)
heron/common/src/java/org/apache/heron/common/basics/ByteAmount.java:28: error: [MathRoundIntLong] Math.round(Integer) results in truncation
  private static final long MAX_MB = Math.round(Long.MAX_VALUE / MB);
                                               ^
    (see https://errorprone.info/bugpattern/MathRoundIntLong)
  Did you mean 'private static final long MAX_MB = Ints.saturatedCast(Long.MAX_VALUE / MB);'?
heron/common/src/java/org/apache/heron/common/basics/ByteAmount.java:29: error: [MathRoundIntLong] Math.round(Integer) results in truncation
  private static final long MAX_GB = Math.round(Long.MAX_VALUE / GB);
                                               ^
    (see https://errorprone.info/bugpattern/MathRoundIntLong)
  Did you mean 'private static final long MAX_GB = Ints.saturatedCast(Long.MAX_VALUE / GB);'?
INFO: Elapsed time: 198.003s, Critical Path: 137.34s
INFO: 454 processes: 446 local, 8 worker.
FAILED: Build did NOT complete successfully

attached the patch:
issue-3046.patch.txt

LGTM


Can't retrieve form data with POST and @RequestParam("myParamName")

@RequestMapping(value = "/reverse", method = RequestMethod.POST, code = 200)
    public void doPostReverse(@RequestParam("reverseParam") String reverseParam, Callback<String> callback) {
        String retval = reverseParam!=null?new StringBuilder(reverseParam).reverse().toString():"reverseParam was NULL";

        System.out.println("In: " + reverseParam + ", Out: " + retval);

    ......

Method parameter 'String reverseParam' is never populated from a form data submission (constructed by Chrome-Postman client), any ideas what I'm doing wrong (qbit 1.6.0)???
The URL is being called, as the 'System.out...' call is executed ("In: null....").

I will check it out.

I was able to reproduce it.

package io.advantageous.qbit.vertx.bugs;

import io.advantageous.qbit.annotation.RequestMapping;
import io.advantageous.qbit.annotation.RequestMethod;
import io.advantageous.qbit.annotation.RequestParam;
import io.advantageous.qbit.http.client.HttpClient;
import io.advantageous.qbit.http.client.HttpClientBuilder;
import io.advantageous.qbit.http.request.HttpRequest;
import io.advantageous.qbit.http.request.HttpRequestBuilder;
import io.advantageous.qbit.http.request.HttpTextResponse;
import io.advantageous.qbit.reactive.Callback;
import io.advantageous.qbit.server.EndpointServerBuilder;
import io.advantageous.qbit.server.ServiceEndpointServer;
import io.advantageous.qbit.util.PortUtils;
import org.junit.Test;

import static org.junit.Assert.assertEquals;

public class Bug724 {

    @RequestMapping("/")
    public static class MyService {
        @RequestMapping(value = "/reverse", method = RequestMethod.POST, code = 200)
        public void doPostReverse(final Callback<String> callback, final @RequestParam("reverseParam") String reverseParam) {
            String retval = reverseParam != null ? new StringBuilder(reverseParam).reverse().toString() : "reverseParam was NULL";
            System.out.println("In: " + reverseParam + ", Out: " + retval);
            callback.resolve("was=" + reverseParam);
        }
    }

    @Test
    public void test() {
        final int port = PortUtils.findOpenPortStartAt(8080);

        final ServiceEndpointServer serviceEndpointServer =
                EndpointServerBuilder.endpointServerBuilder().setUri("/")
                        .addService(new MyService()).setPort(port).build();

        serviceEndpointServer.startServerAndWait();

        final HttpClient httpClient = HttpClientBuilder.httpClientBuilder().setPort(port).buildAndStart();

        final HttpRequest httpRequest = HttpRequestBuilder.httpRequestBuilder().setUri("/reverse")
                .addParam("foo", "bar").addParam("reverseParam", "Rick Loves Java")
                .setFormPostAndCreateFormBody().build();

        final HttpTextResponse httpTextResponse = httpClient.sendRequestAndWait(httpRequest);

        //assertEquals("was=Rick Loves Java", httpTextResponse.body());
    }

}

We ran into this again.

Fixed


Use content from Identity UI package for generating identity scaffolder code.

Currently scaffolding packages carry all the pages and related content, needed for generating the Identity UI
Instead scaffolding should try to pick up the pages (and related files) from the identity UI package itself.

cc @Eilon

This is part of a bigger effort to consolidate all the template contents for Project Creation, Item Creation & Scaffolding. Closing.


Add highlight to assertion

Is this something we want before I continue with the 574 failing cases?

@swift-ci please test

@swift-ci please test


seasocks: seasocks websocket library 1.4.2

Motivation for this change
Needed seasocks for a project, so i made a nix package for it!
Things done

Added pkgs/development/libraries/seasocks/default.nix

Added seasocks = callPacakge ../development/libraries/seasocks {};

Only tested in nix shell. But works as intended in development environment, correctly setting $NIX_LDFLAGS and $NIX_CFLAGS_COMPILE to include the needed library and header files.

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

Built on platform(s)

[ ] NixOS
[ ] macOS
[x] other Linux distributions (Manjaro)

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)

[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"

[x] Tested execution of all binary files (usually in ./result/bin/)

[x] Determined the impact on package closure size (by running nix path-info -S before and after)

[x] Assured whether relevant documentation is up to date

[x] Fits CONTRIBUTING.md.

Also your commit message should rather be:
seasocks: init at 1.4.2

Everything should be updated @c0bw3b :)

@GrahamcOfBorg build seasocks


update helm to 3.11.3

Ⅰ. Describe what this PR does
update helm to 3.11.3
Ⅱ. Does this pull request fix one issue?

fixes #XXXX
Ⅲ. List the added test cases (unit test/integration test) if any, please explain if no tests are needed.
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

/test fluid-e2e

/test fluid-e2e


Issues regarding gelbooru API changes

Hello, I would like to know if you could add more security to the package regarding API changes that could occur.
Let me explain, I am using this package in one of my application and that change was breaking my whole application when the search function was used. It caused a lot of downtime since I had to restard my application clusters manually.
Thanks.

On version 2.5.1 or 2.5.2? 2.5.1 had issues and I had it deprecated within ~10m after publishing, 2.5.2 should work fine (for gelbooru and non-gelbooru, on my own bot for the past few days).
I want to move to Github actions for package publishing & testing (which should prevent bad versions from being published), but I need to find time between classes and other projects I maintain to do that.

I was using version 2.5.0
I bumped to 2.5.2 as soon as I understood what was breaking my app and it stopped.


Add David's 15 months at Liferay article

thanks @davidhskim ! there are some conflicts in this PR, looks like its a result of including some old commits, can you open up a new request with only your article committed?


Fixed critical bug that appeared randomly during application startup.

"Dispatcher processing has been suspended, but messages are still being processed"

@MkazemAkhgary Sorry I had not seen the PR. Good job 👍


demojen

AB#3663

update file

Hi @vengateshl
Is this beginning of any issue? Please provide more info if you faced any issue.
Thanks


Enable clang-tidy readability-magic-numbers only in non-test code.

readability-magic-numbers is mostly harmful in tests and examples. It forces one to create constants for things that are test inputs.  But I (others might disagree) find this useful in production code, where 42 is not likely to be the right answer to everything.
I think we can enable this for all the code, and then append --checks=-readability-magic-numbers to the CXX_CLANG_TIDY CMake property only in tests and examples.

My vote would be to keep our clang-tidy checks the same for production and test code. I've not seen cases where checks are good in one place and bad in another, though maybe these cases do exist. And in this particular case, my vote is to keep readability-magic-numbers disabled everywhere, because I think it does more harm than good. (we disable internally at Google for this same reason).

But I (others might disagree) find this useful in production code, where 42 is not likely to be the right answer to everything.

The lack of the check doesn't prevent you from using a named constant in any code, production, test, or otherwise. This is a readability check. If using 42 is unclear in any code (production or otherwise), we should avoid it. And I think this clang-tidy check (maybe any tool) is terrible at determining what is readable or not.
For example, in https://github.com/googleapis/google-cloud-cpp/pull/3960 we were forced to make the following change:
// Unreadable magic number??? WTF?
auto test_gc_rule = bigtable::GcRule::MaxNumVersions(10);

replaced by
auto constexpr kTestMaxVersions = 10;
auto const test_gc_rule = bigtable::GcRule::MaxNumVersions(kTestMaxVersions);

I find the first absolutely as clear as the second. Actually, I claim the first is clearer than the second case because it's shorter with less "indirection". So I think the readability-magic-numbers made the code worse in this specific case.

I've not seen cases where checks are good in one place and bad in another,

The warning motivated this code:
https://github.com/googleapis/google-cloud-cpp/pull/3458/files#diff-6056bf601ed1a4114e01ba582bc636be
and this:
https://github.com/googleapis/google-cloud-cpp/pull/3458/files#diff-0c2de67f6f954ef893b2203e11f1baa3
and this:
https://github.com/googleapis/google-cloud-cpp/pull/3458/files#diff-7b538747f95e0f277446787ca2d79a94
and this:
https://github.com/googleapis/google-cloud-cpp/pull/3458/files#diff-82f976eb2ec503ebcf444956aa8882d2
and this:
https://github.com/googleapis/google-cloud-cpp/pull/3458/files#diff-631758060cdce655dd4e18022dacc5bd

The lack of the check doesn't prevent you from using a named constant in any code,

That is not a good argument. It applies to any readability check. It is equivalent (in my mind) to "the lack of clang-format would not prevent you from typing exactly the right number of spaces in the right place".
I think we are all pretty good at not typing literals unnecessarily. I want clang-tidy to tell me when I accidentally use a magic number in production code because it is (I think) likely that this is a mistake.  Not always, and not because I type a lot of these, just enough that it is useful.

For example, in #3960 we were forced to make the following change:
// Unreadable magic number??? WTF?
auto test_gc_rule = bigtable::GcRule::MaxNumVersions(10);

This is test code. It is refactored into a common library, but it is code for testing.  I think I already said the warning is not useful for production code, so maybe not the best example?

I've not seen cases where checks are good in one place and bad in another,

The warning motivated this code:
https://github.com/googleapis/google-cloud-cpp/pull/3458/files#diff-6056bf601ed1a4114e01ba582bc636be

I'd say this one definitely looked better before. readability-magic-numbers just forced us to add constants that were redundantly named with the clearly named functions that they were passed to.

and this:
https://github.com/googleapis/google-cloud-cpp/pull/3458/files#diff-0c2de67f6f954ef893b2203e11f1baa3

I agree that this use of kPrefixlen is an improvement.

and this:
https://github.com/googleapis/google-cloud-cpp/pull/3458/files#diff-7b538747f95e0f277446787ca2d79a94
and this:
https://github.com/googleapis/google-cloud-cpp/pull/3458/files#diff-82f976eb2ec503ebcf444956aa8882d2
and this:
https://github.com/googleapis/google-cloud-cpp/pull/3458/files#diff-631758060cdce655dd4e18022dacc5bd

The lack of the check doesn't prevent you from using a named constant in any code,

That is not a good argument. It applies to any readability check. It is equivalent (in my mind) to "the lack of clang-format would not prevent you from typing exactly the right number of spaces in the right place".
I think we are all pretty good at not typing literals unnecessarily. I want clang-tidy to tell me when I accidentally use a magic number in production code because it is (I think) likely that this is a mistake. Not always, and not because I type a lot of these, just enough that it is useful.

I find that more often than not the fix suggested by this particular check makes the code look worse. Not always, but I'd estimate that it's easily more than 50% bad suggestions. Which I think makes it a net negative. (we probably have actual data about this internally, which is why we disabled it.)

For example, in #3960 we were forced to make the following change:
// Unreadable magic number??? WTF?
auto test_gc_rule = bigtable::GcRule::MaxNumVersions(10);

This is test code. It is refactored into a common library, but it is code for testing. I think I already said the warning is not useful for production code, so maybe not the best example?

Whether that code lives in a test file or not doesn't change the fact that readability-magic-numbers made a bad suggestion. I'm not sure I understand why the test-code-or-not distinction matters. Do we have reason to believe that readability-magic-numbers does a worse job on test code? Or maybe it does the same quality job, but our standards for test code are different? It seems unnecessarily complicated to have different clang-tidy checks based on whether the code is test code or not, and for us to remember "X is OK if I'm in a _test.cc file, but outside a _test.cc file, X is unreadable".
I mostly wanted to express my opinion about this check: my preferences would be (1) Disable it everywhere, (2) Enable it everywhere, (3) Enable/disable based on whether a file is part of a test target. Hopefully I've expressed my opinion, and hopefully I've done so kindly :-) I don't feel so strongly that I'd want to argue or block a PR. If you think this check is a net improvement to our code I'd approve a PR.

In an attempt to gather a little data, I ran clang-tidy --checks='-*,readability-magic-numbers' on all .cc files in -spanner, excluding all the tests, samples, and benchmarks. readability-magic-numbers found 95 unique warnings. I reformatted them slightly to put them each on a single line to make filtering and sorting easier. I marked lines with a leading "G" when I thought the code looked Good before the change, and thus following the advice of readability-magic-numbers would be harmful. For example, all instances of std::chrono::milliseconds(42) are perfectly clear as is: Changing the 42 to a named constant adds no clarity. I tried to give readability-magic-numbers the benefit of the doubt by not marking most of the stuff in bytes.cc as Good, but it probably actually is good as written.
This is certainly not scientific, and it's subjective based on what I personally think is "readable", but I come up with 95 total suggestions and 61 bad suggestions, for a 64% false positive rate.
The data
G ./google/cloud/spanner/version.h:62:10: error: 100 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] return 100 * (100 * VersionMajor() + VersionMinor()) + VersionPatch();
G ./google/cloud/spanner/version.h:62:17: error: 100 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] return 100 * (100 * VersionMajor() + VersionMinor()) + VersionPatch();
G ./google/cloud/spanner/date.h:38:17: error: 1970 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] Date() : Date(1970, 1, 1) {}
G ./google/cloud/spanner/session_pool_options.h:151:35: error: 100 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] int max_sessions_per_channel_ = 100;
G ./google/cloud/spanner/session_pool_options.h:154:68: error: 55 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] std::chrono::seconds keep_alive_interval_ = std::chrono::minutes(55);
G google/cloud/spanner/instance_admin_connection.cc:32:35: error: 30 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] std::chrono::minutes(30))
G google/cloud/spanner/instance_admin_connection.cc:39:60: error: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] std::chrono::seconds(1), std::chrono::minutes(5), kBackoffScaling)
G google/cloud/spanner/instance_admin_connection.cc:46:58: error: 30 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] LimitedTimeRetryPolicy(std::chrono::minutes(30)),
G google/cloud/spanner/instance_admin_connection.cc:47:60: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] ExponentialBackoffPolicy(std::chrono::seconds(10),
G google/cloud/spanner/instance_admin_connection.cc:48:60: error: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] std::chrono::minutes(5), kBackoffScaling))
G google/cloud/spanner/internal/time_format.cc:55:23: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] *--ep = kDigits[v % 10];
G google/cloud/spanner/internal/time_format.cc:56:24: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] *--ep = kDigits[(v / 10) % 10];
G google/cloud/spanner/internal/time_format.cc:56:30: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] *--ep = kDigits[(v / 10) % 10];
G google/cloud/spanner/internal/time_format.cc:74:14: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] if (d >= 10) break;  // non-digit
G google/cloud/spanner/internal/time_format.cc:75:24: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] if (value < kMin / 10) return nullptr;
G google/cloud/spanner/internal/time_format.cc:76:14: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] value *= 10;
G google/cloud/spanner/internal/time_format.cc:92:29: error: 100 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] return y % 4 == 0 && (y % 100 != 0 || y % 400 == 0);
G google/cloud/spanner/internal/time_format.cc:92:45: error: 400 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] return y % 4 == 0 && (y % 100 != 0 || y % 400 == 0);
G google/cloud/spanner/internal/time_format.cc:101:26: error: 29 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] return tm.tm_mday <= 29;
G google/cloud/spanner/internal/time_format.cc:142:28: error: 1900LL is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] auto year = tm.tm_year + 1900LL;
G google/cloud/spanner/internal/time_format.cc:148:46: error: 100 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] ep = Format02d(ep, static_cast<int>(year % 100));
G google/cloud/spanner/internal/time_format.cc:149:11: error: 100 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] year /= 100;
G google/cloud/spanner/internal/time_format.cc:151:28: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] *--ep = kDigits[year % 10];
G google/cloud/spanner/internal/time_format.cc:152:13: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] year /= 10;
G google/cloud/spanner/internal/time_format.cc:154:48: error: 100 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] ep = Format02d(ep, static_cast<int>(year % 100));
G google/cloud/spanner/internal/time_format.cc:155:13: error: 100 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] year /= 100;
G google/cloud/spanner/internal/time_format.cc:158:28: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] *--ep = kDigits[year % 10];
G google/cloud/spanner/internal/time_format.cc:159:13: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] year /= 10;
google/cloud/spanner/internal/time_format.cc:189:30: error: 12 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] dp = ParseInt(dp + 1, 1, 12, &tmp.tm_mon);
google/cloud/spanner/internal/time_format.cc:191:32: error: 31 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] dp = ParseInt(dp + 1, 1, 31, &tmp.tm_mday);  // refine range next
google/cloud/spanner/internal/time_format.cc:193:34: error: 23 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] dp = ParseInt(dp + 1, 0, 23, &tmp.tm_hour);
google/cloud/spanner/internal/time_format.cc:195:36: error: 59 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] dp = ParseInt(dp + 1, 0, 59, &tmp.tm_min);
google/cloud/spanner/internal/time_format.cc:200:38: error: 60 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] dp = ParseInt(dp + 1, 0, 60, &tmp.tm_sec);
G google/cloud/spanner/internal/time_format.cc:202:53: error: 1900 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] tmp.tm_year = static_cast<int>(year - 1900);
G google/cloud/spanner/internal/session_pool.cc:87:47: error: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] ScheduleBackgroundWork(std::chrono::seconds(5));
G google/cloud/spanner/internal/session_pool.cc:122:47: error: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] ScheduleBackgroundWork(std::chrono::seconds(5));
G google/cloud/spanner/internal/connection_impl.cc:68:35: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] std::chrono::minutes(10))
G google/cloud/spanner/internal/connection_impl.cc:75:40: error: 100 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] std::chrono::milliseconds(100), std::chrono::minutes(1),
G google/cloud/spanner/internal/compiler_info.cc:90:10: error: 199711L is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] case 199711L:
G google/cloud/spanner/internal/compiler_info.cc:92:10: error: 201103L is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] case 201103L:
G google/cloud/spanner/internal/compiler_info.cc:94:10: error: 201402L is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] case 201402L:
G google/cloud/spanner/internal/compiler_info.cc:96:10: error: 201703L is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] case 201703L:
G google/cloud/spanner/date.cc:27:29: error: 100 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] return y % 4 == 0 && (y % 100 != 0 || y % 400 == 0);
G google/cloud/spanner/date.cc:27:45: error: 400 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] return y % 4 == 0 && (y % 100 != 0 || y % 400 == 0);
G google/cloud/spanner/date.cc:41:21: error: 12 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] year_ += month_ / 12;  // 12 months == 1 year
G google/cloud/spanner/date.cc:42:13: error: 12 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] month_ %= 12;
G google/cloud/spanner/date.cc:45:15: error: 12 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] month_ += 12;
google/cloud/spanner/date.cc:47:20: error: 146097 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] year_ += (day_ / 146097) * 400;  // 146097 days == 400 years
google/cloud/spanner/date.cc:47:30: error: 400 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] year_ += (day_ / 146097) * 400;  // 146097 days == 400 years
google/cloud/spanner/date.cc:48:11: error: 146097 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] day_ %= 146097;
google/cloud/spanner/date.cc:50:14: error: 400 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] year_ -= 400;
google/cloud/spanner/date.cc:51:13: error: 146097 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] day_ += 146097;
G google/cloud/spanner/date.cc:56:20: error: 12 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] if (++month_ > 12) {
G google/cloud/spanner/bytes.cc:54:22: error: 65 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] static_assert('A' == 65, "required by base64 decoder");
G google/cloud/spanner/bytes.cc:59:28: error: 255 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] static_assert(UCHAR_MAX == 255, "required by base64 decoder");
google/cloud/spanner/bytes.cc:91:36: error: 18 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] rep_.push_back(kIndexToChar[v >> 18]);
google/cloud/spanner/bytes.cc:92:36: error: 12 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] rep_.push_back(kIndexToChar[v >> 12 & 0x3f]);
google/cloud/spanner/bytes.cc:92:41: error: 0x3f is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] rep_.push_back(kIndexToChar[v >> 12 & 0x3f]);
google/cloud/spanner/bytes.cc:93:36: error: 6 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] rep_.push_back(kIndexToChar[v >> 6 & 0x3f]);
google/cloud/spanner/bytes.cc:93:40: error: 0x3f is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] rep_.push_back(kIndexToChar[v >> 6 & 0x3f]);
google/cloud/spanner/bytes.cc:94:35: error: 0x3f is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] rep_.push_back(kIndexToChar[v & 0x3f]);
google/cloud/spanner/bytes.cc:102:40: error: 18 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] rep_.push_back(kIndexToChar[v >> 18]);
google/cloud/spanner/bytes.cc:103:40: error: 12 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] rep_.push_back(kIndexToChar[v >> 12 & 0x3f]);
google/cloud/spanner/bytes.cc:103:45: error: 0x3f is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] rep_.push_back(kIndexToChar[v >> 12 & 0x3f]);
google/cloud/spanner/bytes.cc:104:40: error: 6 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] rep_.push_back(kIndexToChar[v >> 6 & 0x3f]);
google/cloud/spanner/bytes.cc:104:44: error: 0x3f is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] rep_.push_back(kIndexToChar[v >> 6 & 0x3f]);
google/cloud/spanner/bytes.cc:110:40: error: 18 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] rep_.push_back(kIndexToChar[v >> 18]);
google/cloud/spanner/bytes.cc:111:40: error: 12 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] rep_.push_back(kIndexToChar[v >> 12 & 0x3f]);
google/cloud/spanner/bytes.cc:111:45: error: 0x3f is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] rep_.push_back(kIndexToChar[v >> 12 & 0x3f]);
google/cloud/spanner/bytes.cc:137:28: error: 6 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] buf_[++len_] = i2 << 6 | i3;
google/cloud/spanner/bytes.cc:153:17: error: 64 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] if (--i0 >= 64 || --i1 >= 64) break;
google/cloud/spanner/bytes.cc:153:31: error: 64 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] if (--i0 >= 64 || --i1 >= 64) break;
google/cloud/spanner/bytes.cc:156:19: error: 0xf is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] if ((i1 & 0xf) != 0) break;
google/cloud/spanner/bytes.cc:159:21: error: 64 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] if (--i2 >= 64 || (i2 & 0x3) != 0) break;
google/cloud/spanner/bytes.cc:166:17: error: 64 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] if (--i2 >= 64 || --i3 >= 64) break;
google/cloud/spanner/bytes.cc:166:31: error: 64 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] if (--i2 >= 64 || --i3 >= 64) break;
G google/cloud/spanner/database_admin_connection.cc:102:54: error: 30 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] return LimitedTimeRetryPolicy(std::chrono::minutes(30)).clone();
G google/cloud/spanner/database_admin_connection.cc:108:56: error: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] std::chrono::minutes(5), kBackoffScaling)
G google/cloud/spanner/database_admin_connection.cc:115:58: error: 30 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] LimitedTimeRetryPolicy(std::chrono::minutes(30)),
G google/cloud/spanner/database_admin_connection.cc:116:60: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] ExponentialBackoffPolicy(std::chrono::seconds(10),
G google/cloud/spanner/database_admin_connection.cc:117:60: error: 5 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] std::chrono::minutes(5), kBackoffScaling))
G google/cloud/spanner/testing/cleanup_stale_instances.cc:45:71: error: 24 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] std::chrono::system_clock::now() - std::chrono::hours(24))
google/cloud/spanner/testing/cleanup_stale_instances.cc:46:28: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] .substr(0, 10);
google/cloud/spanner/testing/cleanup_stale_instances.cc:56:29: error: 20 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] if (instance_ids.size() > 20) {
G google/cloud/spanner/timestamp.cc:89:38: error: 1900 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] tm.tm_year = static_cast<int>(y - (1900 - (m <= 2 ? 1 : 0)));
G google/cloud/spanner/timestamp.cc:145:16: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] scale /= 10;
G google/cloud/spanner/timestamp.cc:146:12: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] v *= 10;
G google/cloud/spanner/timestamp.cc:181:20: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] *it *= 10;
G google/cloud/spanner/timestamp.cc:183:24: error: 100 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] if (*it >= 100) break;  // avoid overflow using overall bound
G google/cloud/spanner/timestamp.cc:186:56: error: 24 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] if (pos == ipos || it < min_it || fields[0] >= 24 || fields[1] >= 60) {
G google/cloud/spanner/timestamp.cc:186:75: error: 60 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] if (pos == ipos || it < min_it || fields[0] >= 24 || fields[1] >= 60) {
G google/cloud/spanner/timestamp.cc:244:16: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] scale /= 10;
G google/cloud/spanner/timestamp.cc:247:17: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] while (ss % 10 == 0) {
G google/cloud/spanner/timestamp.cc:248:13: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] ss /= 10;
google/cloud/spanner/value.cc:385:51: error: 10 is a magic number; consider replacing it with a named constant [readability-magic-numbers,-warnings-as-errors] std::int64_t x = {std::strtoll(s.c_str(), &end, 10)};

Ack. Let's call it 50%, I would prefer to have this warning, even with 50% false positives, but if other folks don't I am going to stop arguing.


[BoxGradient]

sdBox version of [RadialGradient]
This is an implemetation of the signed distance field "Box - Exact" desbribed  in the "2D distance functions" article on Inigo Quilez's website.

Do you think it would be possible to merge this with NGon?
I believe that should be a minor change and would make that op even more powerful.

Do you think it would be possible to merge this with NGon? I believe that should be a minor change and would make that op even more powerful.

True, adding the gradient parameter to Ngon will make it more powerful.
But the shape of NGon is driven by a Radius whereas SdBox size uses width and height.
Adding a stretch parameter to NGon allows to generate rectangles but the gradient gets stretched.
Then I'd like to keep [BoxGradient] but use sdRoundedBox instead of sdBox so it'll become [RoundedBoxGradient]
https://iquilezles.org/articles/distfunctions2d/

Thanks for the contribution


logo_url drift

Creating a status page with a custom logo results in state drift
resource "betteruptime_status_page" "example" {
  # other params
  logo_url                   = "https://mydomain.com/logo.png"

#terraform plan
  ~ resource "betteruptime_status_page" "example" {
        id                         = "123"
      ~ logo_url                   = "https://uptime-storage.s3.amazonaws.com/logos/123.png" -> "https://mydomain.com/logo.png"
    }

The only way to get around this is to create a lifecycle rule to ignore the logo_url, but the problem is we genuinely need to update the logo on the odd occasions.

Hi @sparkacus,
Thanks a lot for reporting this. I appreciate it.
I'll add the issue to our internal tracking and I will see to it that it gets solved.
I'll keep you posted here on GitHub.
Thank you again for raising this.


Fix slog warning

I propose this as an alternative to #418 to fix #417.
I'm not 100% sure about the overloads taking rvalue-ref and returning lvalue-ref, but it seems to work in my local env...

Seems like there's probably a more general solution with a forwarding function to support rvalue log statements... like the operator<< for std::basic_ostream added to resolve LWG issue 1203. However, when I tried an implementation inspired by libstdc++ I ended up with "recursive on all control paths" warnings, so I must have missed something.

Thanks, @garethsb; we are happy with your changes.


Portal doesn't save changes to test data

It reads it when switching to the function, and uses it to make the call, but does not save it back.

fixed by e996fab3082d14037e0e787bc524de9df76f181a

It looks pretty broken:

Go to function1
Type some test data and press Ctrl-S
Go to Function2
Click run

Result: the test data from function1 replaces the function2 test data!

Ok, works well now!


Maintaining Free Pages in Lists and Possible General Solution to Maintaining Free Pages in Storage Structures

Currently the page lists of chunks cannot shrink. That is suppose we have a non-empty UnstructuredPropertyLists and with some data and we remove all unstructured properties in it. Then although the headers are all 0 now, the pages that were in the page list of any non-empty chunk are not reclaimed. That is, if a chunk has used some number of list pages and then "shrinks", those pages remain "reserved" for the chunk and become useless. We need a mechanism to reclaim them and when we need more pages from .lists, when calling VersionedFileHandle::addNewPage(), we should reuse those empty pages.
This may require some logic outside of VersionedFileHandle and directly in Lists or a new storage structure called FreePages, which can be put into other StorageStructures. Or this may even be a core piece of any StorageStructure, i.e., be implemented at the StorageStructure level. It's unclear what is more appropriate.

Closing this issue as the description is stale now, though the free space management should be handled still.


Icons are very low resulation in 2k monitor. maybe vectorize them?

What feature or improvement do you think would benefit Files?
(and no these photos aren't related. these are stock. here only to show the diffence)

Requirements
would cut out the ugliness of the file manager.
Files Version
<IP_ADDRESS>
Windows Version
10.0.22631.3296
Comments
No response

Thanks for the report, can you see if this is an issue in the preview version. https://files.community/download

From the testing in preview version it seems to be less noticable but still there. It seems to occure when i'm opening a folder with large amount of big files for the first time/ when i switch a drive and open folders. sometimes the problem occurs, sometimes it doesn't seem to occurr. when this occurs if i go back and open again it doesn't occur.

Can you see what happens if you set a default layout in settings?

still noticable low rez icon popping.

@RakibRyan are sure you tested in the preview version? The preview version has the blue icon.

yes I'm sure. literally downloaded this https://github.com/files-community/Files/issues/14963#issuecomment-1998322401

Can you send a screenshot? Thanks!

If you look at the bottom you can see I do have the preview version open.

Thank you for checking, the only time those icons are supposed to be blurry is when switching from a smaller layout to a larger layout. In that case the icons need a moment to reload so the lower resolution icon might be briefly visible.

Can you do us a favor and see what happens if you try the following

Clear the Windows Thumbnail cache
Update the stable version of Files to v3.3
Set the default layout in Files to Grid and turn off the option to sync preferences across folders

You can really see this for a while, especially if the computer is busy with something else

If Windows doesn't have enough available resources then that can be another reason. What is your devices specifications?

@RakibRyan Can you provide the information requested in the last comment

I'm sorry I was on vacation.@yaira2 doing what you said didn't show the low rez icons. However the load times seem to be significantly longer.
I have a i5-11400, 32 GB ram and boot drive is samsung 980 pro. And the files were split between hp ex900 ssd and some sata ssd and hard drives.

Clearing the cache would make it take longer as it has to remake them.

I'm sorry I was on vacation. @yaira2 doing what you said didn't show the low rez icons. However the load times seem to be significantly longer.
I have a i5-11400, 32 GB ram and boot drive is samsung 980 pro. And the files were split between hp ex900 ssd and some sata ssd and hard drives.

Can you clarify if this resolved the resolution issue?

yes, that fixed it.

Thank you!


Add necessary assets: Favicon, Splash Icons, Logo, Font

For this to create, I need to configure Webpack.

Assets has already been configured in step 6 of the Webpack setup process.

Assets has already been configured in #6 of the Webpack setup process.


Add some basic styles to playground

Related Issues

[none]

Security Implications
[none]
System Availability
[none]

@bencmbrook not sure why but my comp is creating a node_modules folder and throwing those out

@bencmbrook these are the node/yarn versions we are currently pinned on as a team

Kk yeah, there's a few repo config things to do here separately (I'm on the same versions)

@bencmbrook do you know what may be up? i was looking at this on the airgap.js-types repo gave up after strugling

@bencmbrook i fixed it, i had a yarn.yml added somehow to my home directory

hey @bencmbrook im going to comment this out because its doing some weird things in dark mode

Interesting. That's worth some investigation because these CSS rules shouldn't be applying to elements the shadow DOM


EFlow VM and your network configuration

Just in case others run into this... AFter following the directions on installing EFLOW things were working great.  Then "randomly" (or so I thought) I couldn't SSH into the EFLOW vm.   After some investigation the VM wasn't getting an IP Address anymore.  It turns out that I had setup the EFLOW vm with my laptop plugged in to a network.. then when I went wireless, the VM wasn't getting an ip address anmore.  I went to Hypervisor and changed teh External adaptor (from the Switch Manager) to use my wireless and was back up and running again.
Not sure there is a better way to manage this but if anyone runs into this problem I thought I'd post this experience here in the hopes of saving someone from deciding they must reinstall EFLOW

@hooligan495,
Thank you for posting your findings and the workaround that you found.  Please be aware that while this workaround concept is very relevant, after 4/28 we will be publishing an update that will require reinstallation and change the way we manage the lifecycle of our VM. Once this change is deployed, the EFLOW VM will behave similarly to WSL2 and no longer be visible in Hyper-V Manager.  We will be able to use command line tools like HCSDiag and HNSDiag to inspect the image.  Your scenario is very valid and we will be looking into methods to avoid this situation.  You will find information about this update in the release note tags here on Github.  In addition, we will provide troubleshooting guidance in the Wiki as soon as possible.
Terry Warwick
Microsoft

Thanks Terry!
I figured the new update might eliminating this workaround.
Jay McGaffigan

Hi Terry and TEam,
Quick question .. Where will you announce that the update occurred?   On the main page to this repo?  some other MS portal?  Thanks
Jay

Hi @hooligan495,
All the documentation of our releases will be posted on our Releases section.  Also, we are working on how to indicate users that they are running an older version of EFLOW, probably through WAC.
Thanks

Hi @hooligan495,
As part of the EFLOW GA release, we changed the EFLOW VM host naming. The new naming is generated by the Windows host device name + "-EFLOW". You can check the name of the EFLOW VM following these steps:

Open an elevated PowerShell session
Start an SSH connection to the EFLOW VM using the command Connect-EflowVm
Run the command cat /proc/sys/kernel/hostname to check the hostname


Improve logging

We don't have much logging currently, making it difficult to troubleshoot issues with the plugin. We should at least report active rules sources, the number of each type of rule, etc.

Going to call this covered by #4.


Perform dns resolve via custom dns only for specified urls

SpoofDPI resolves all hosts via specified dns (<IP_ADDRESS> as default) even if you want to use it only for specified urls.
It is not convenient when you use work vpn (which rewrites dns for internal hosts).

I agree with you that we need something like this, would you just let me do this for later? because i think there need to be some refactoring to do this.

This has been implemented on release v0.10.6. Thank you for your suggestion.


GH321, vkAllocateMemory return code handling

Throwback Monday.  If a custom allocator is used and fails, validation will continue and use a null pointer, leading to invalid/unuseful validation errors. Added a check for a good return code.

I'm in the middle of changing this function for #125 in branch karl_gh125_max_mem_count.  I'm adding a PostCallValidateAllocateMemory() which runs the code you've moved inside the if.  So I'll have to change mine to only call the Post function if result is success.
+1
I'll deal with the conflict.

Pushed to Master.


Enable light dismiss overlay for popups 2

Second attempt to fix bug with light dismiss overlay inside of popups. See https://github.com/AvaloniaUI/Avalonia/pull/4898:

Fixed problem: a ComboBox inside of a Popup doesn't get dismissed if parent Popup got clicked on

Previous fix caused problems with Menu and ContextMenu, so it was reverted: https://github.com/AvaloniaUI/Avalonia/pull/4921.
The problem is with DefaultMenuInteractionHandler that listens for PointerLeave events on MenuItem, and when:

MenuItem clicked by user (or hovered).
Sub menu is opened.
It creates light dismiss layer.
Light dismiss layer steals pointer focus.
MenuItem from step 1 receives PointerLeave event.
DefaultMenuInteractionHandler closes sub menu.

With this PR MenuItem will not lose pointer focus because it's defined as submenu's OverlayInputPassThroughElement.
Fix is pretty clean, and seems to work without problems, but on other hand it feels like DefaultMenuInteractionHandler can have smarter checks instead.

This seems to have caused another problem: https://github.com/AvaloniaUI/Avalonia/issues/5475
Taking a look into potential fixes that don't involve disabling the light dismiss overlay layer for popups.


Vifm Problems while focus change

Hi and sorry for a improper error reporting. Not sure exactly how to start.
So I use vifm (https://vifm.info) as my primary file manager in Neovim.
When i use ":VsplitVifm", a split window is opened with vifm as file manager within.
Using vifm works without problems, but as soon as focus to another buffer and then back to the vifmsplit, vifm stops working (no directory browsing, no command line etc.)
When I use :q to quit the vifm buffer, its not possible to reopen another vifm buffer (buffer is already existing).
In order to resume normal working for any vifm buffers, the (old vifm) buffer needs to be close via ":bd!" (just ":bd" does not seem to work somehow ..)
I tried some exclude_*:
excluded_filetypes = {"toggleterm","terminal","term", "VsplitVifm"},
excluded_buftypes = {"help", "vifm", "nofile", "prompt", "popup", "terminal","term","VsplitVifm"}

but nothing seems to help.
Any help or tips are greatly appreciated!
Bye the way: NICE Plugin!

Closing as we will follow up on plugin compatibility issues here https://github.com/beauwilliams/focus.nvim/issues/82


Weapon Master Fighters can pick up the critical feats but they do nothing

The names of the feats are the same as their subclass feature but the descriptions are slightly different (crits on 18/19/20 vs reducing the critical threshold by 1). I assume the non-stacking nature is intended but the description makes it seem as if they might.

yep. they won't stack. by design.


Native: getLink() on SharedLibraryBinarySpec.TasksCollection and NativeExecutableBinarySpec.TasksCollection returns null

Expected Behavior
https://docs.gradle.org/current/javadoc/org/gradle/nativeplatform/SharedLibraryBinarySpec.TasksCollection.html
https://docs.gradle.org/current/javadoc/org/gradle/nativeplatform/NativeExecutableBinarySpec.TasksCollection.html
These suggest that I should be able to call getLink() and retrieve the link Task.
Current Behavior
When I call getLink() on instances of these objects, I get null in return.
Contrarily, if I iterate over the same tasks collection, I will find a task of type LinkExecutable_Decorated or LinkSharedLibrary_Decorated depending on which collection I'm using.
Context
I was trying to retrieve the link task for a NativeExecutableSpec using this method, and have to search the tasks collection instead.
Steps to Reproduce (for bugs)
Using the cpp-exe or cpp-lib samples, attempt to call tasks.getLink() inside binaries.all { (cpp-exe) or binaries.withType(SharedLibraryBinarySpec) { (cpp-lib)
Call any gradle task (tasks/build/assemble, etc.) to see that the output of getLink() is null.
See also that in the cpp-exe sample, iterating tasks.all shows a task of class LinkExecutable_Decorated with name linkMainExecutable, with similar behaviour in the cpp-lib sample.
The same also appears to be true of getInstall(), though I've only tested that lightly while reporting this bug.
Your Environment
Windows 10 1607 with MSVC 2013 & MSVC 2015, Gradle 3.1
Debian Jessie with gcc 4.9.2, Gradle 3.1

I'm hoping I'm doing something wrong, because I'm seeing the same result calling getBuild() on NativeExecutableBinarySpec.TasksCollection

Okay, I tried tasks.withType(org.gradle.nativeplatform.tasks.LinkExecutable) which returns an empty set, at which point I figure I'm falling foul of a concurrency issue, and right enough, tasks.withType(LinkExecutable).all gives me a match, but .each does not.
Is there any point in the configuration at which getLink/getInstall/getBuild will be valid?

Thanks @philmcardle for raising this issue. I did encounter a similar issue in the past, we ended up refactoring the code a bit and using a workaround. I suspect this is caused by the order in which the task is created regarding the software model rule. This may be a limitation to the current software model. The Tasks are created once the binary container is closed. But the current configuration is happening while the binary container is mutated. We are presented with a circular dependency. This will require more time to debug.
Keep in mind that NativeBinary can be mutated once the container is closed as those are Unmanaged type. However, this is very bad practice and will most likely result in failure for future versions of Gradle.

No additional work will be done on the software model plugins unless it's a blocker for current users. This is not a blocker so I'm closing this issue. Reopen on gradle/gradle-native.


Stdout is empty on Git log command

node 4.4.0
shelljs 0.7.0
windows 7, using git bash

Using shelljs to stdout Git log does not work (in grunt file currently).
var shell = require('shelljs');

console.log(shell.exec('node -v'));

Works, console stdout  : stdout: 'v4.4.0\r\n'
console.log(shell.exec('git log --no-merges --pretty=medium HEAD^...HEAD'));

Does not works, Works, console stdout  : stdout: ''
While this Git log works in Git bash :
$ git log --no-merges --pretty=medium HEAD^...HEAD
commit be9a8bca6783f9911f0601afa00203f9a161ffd9
Author: xxx <xxx.xxx@xxx>
Date:   Tue Apr 26 17:02:47 2016 +0200

    feat(streaming): XXX : XXX

    - change 1
    - change 1

@oric01 do other git commands (like git status) work? Also, what is the output on the terminal when you redirect stdout?
$ git log --no-merges --pretty=medium HEAD^...HEAD >file.txt

Just want to verify that the git log command really is going to stdout for you and not stderr.

@nfischer It's strange... now when i run shelljs, git command is unknown... while it's still running on git bash.
I'm a bit confused, it was at least running git command correctly until now.
FYI, I installed git bash the way it's not available in cmd.exe, but as far as I understand, it should'nt be a problem.
Previously the returned code was 0 with just stdout empty (on git log) and I also finally noticed that shelljs was running cmd.exe so I was waiting for #330 to be fixed, but my problem still remain.

It has to be part of your path to use it. Exec spawns a new cmd.exe. Please add the git binaries to your path first to take advantage of them via shelljs.

Is there a way that shelljs use bash instead of cmd.exe ?
Currently im using git bash to have a "unix like" shell so I can run the same scripts between local env (window) and dist env (linux) for grunt build scripts ie.

Yes, you need to use the {'shell': '/path/to-bash.exe'} argument to exec. That may work nicely for you. Find whatever the path is to your bash executable of course and past that in there, remembering to properly escape any backslashes and whatnot.

@oric01 Here's the exec docs, which point to the page for the child_process module. Any option in that module's exec should be supported here as well, including shell.

@oric01 I'm going to close this, since it looks like it was an issue with git being outside of your normal PATH, and that using {shell: 'path/to/git/bash.exe'} should fix it. Please reopen if this doesn't resolve the issue.

I tested with shell option but it's a pain to configure on windows...
I finally tested git status and it works...
Looks like it's related to the way git log is not flushed.
I continue to investigate...anyway thx for your support.


Append to a list in values.yaml?

Hello,
Is there a way to append to a YAML list/array via value overrides?
For example if I have this values.yaml
produce:
  - name: strawberry
  - name: cucumber
  - name: orange

And this values.overrides.yaml
produce:
  - name: kale
  - name: beets

I'd like Helm to append to the list and not override it. Currently running helm upgrade . -i -f values.yaml -f values.overrides.yaml results in this transformed configuration:
produce:
  - name: kale
  - name: beets

But I'd like it to produce (no pun intended)
produce:
  - name: strawberry
  - name: cucumber
  - name: orange
  - name: kale
  - name: beets

Output of helm version:
Client: &version.Version{SemVer:"v2.14.3", GitCommit:"0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.14.3", GitCommit:"0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState:"clean"}

Output of kubectl version:
Client Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.3", GitCommit:"2d3c76f9091b6bec110a5e63777c332469e0cba2", GitTreeState:"clean", BuildDate:"2019-08-19T11:13:54Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.3", GitCommit:"2d3c76f9091b6bec110a5e63777c332469e0cba2", GitTreeState:"clean", BuildDate:"2019-08-19T11:05:50Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}

Cloud Provider/Platform (AKS, GKE, Minikube etc.):
Minikube

Hi, @reloaded - as stated above, helm uses an append without override, because lists are designed to be used as immutable data types: https://helm.sh/docs/chart_template_guide/function_list/#append-mustappend
The suggestion of a map is one approach to try. Resolving this as answered.

Is this event documented anywhere?

I found a workaround.  You can convert your lists to and from YAML or JSON in order to combine them with concat.
Example:
{{ mustToJson (
    concat (
      fromYamlArray (toYaml .Values.pre_steps ))
      (fromYamlArray (toYaml .Values.steps))
  )
| indent 4 }}

In the above, pre_steps has global items I want to append to steps which can vary.


Support prepared statements

Going to close this issue, as it doesn't look like we need to worry about it at this level.


Admob Banner ad is cut off on flutter

As shown in the image admob banner ad is cut off or stretched.
If I use AdSize.banner widget does not take the entire width but shows the ad correctly. If I use full-banner the ad is stretched.
How do I get the banner to fit the full width of the screen and show the content correctly (without cut off or streached)?
class _AdBannerState extends State<AdBanner> {
  BannerAd? _inlineAdaptiveAd;
  bool _isLoaded = false;
  AdSize? _finalSize;

  @override
  void didChangeDependencies() {
    super.didChangeDependencies();
    _loadAd();
  }

  void _loadAd() async {
    await _inlineAdaptiveAd?.dispose();
    setState(() {
      _inlineAdaptiveAd = null;
      _isLoaded = false;
    });

    // Get an inline adaptive size for the current orientation.
    AdSize size = AdSize.fullBanner;

    _inlineAdaptiveAd = BannerAd(
      adUnitId: AdHelper.bannerAdUnitId,
      size: size,
      request: const AdRequest(),
      listener: BannerAdListener(
        onAdLoaded: (Ad ad) async {
          debugPrint('Inline adaptive banner loaded: ${ad.responseInfo}');

          // After the ad is loaded, get the platform ad size and use it to
          // update the height of the container. This is necessary because the
          // height can change after the ad is loaded.
          BannerAd bannerAd = (ad as BannerAd);
          _finalSize = await bannerAd.getPlatformAdSize();
          // if (size == null) {
          //   debugPrint(
          //       'Error: getPlatformAdSize() returned null for $bannerAd');
          //   return;
          // }

          setState(() {
            _inlineAdaptiveAd = bannerAd;
            _isLoaded = true;
          });
        },
        onAdFailedToLoad: (Ad ad, LoadAdError error) {
          debugPrint('Inline adaptive banner failedToLoad: $error');
          ad.dispose();
        },
      ),
    );
    await _inlineAdaptiveAd!.load();
  }

  @override
  Widget build(BuildContext context) {
    return (_inlineAdaptiveAd != null && _isLoaded && _finalSize != null)
        ? Expanded(
            child: SizedBox(
                width: _finalSize!.width.toDouble(),
                height: _finalSize!.height.toDouble(),
                child: AdWidget(
                  ad: _inlineAdaptiveAd!,
                )))
        : const SizedBox(
            width: 0,
            height: 0,
          );
  }

  @override
  void dispose() {
    _inlineAdaptiveAd?.dispose();

    super.dispose();
  }
}

Flutter 3.10.0 • channel stable • https://github.com/flutter/flutter.git Framework • revision 84a1e904f4 (3 weeks ago) • 2023-05-09 07:41:44 -0700 Engine • revision d44b5a94c9 Tools • Dart 3.0.0 • DevTools 2.23.1

Thanks for the report! This is a known issue being tracked at https://github.com/googleads/googleads-mobile-flutter/issues/261. And you may wanna take a look at https://github.com/googleads/googleads-mobile-flutter/issues/261#issuecomment-1293001373 for the workaround.
Closing this issue as a duplicate, so please follow up on it for further updates.


Question - Integration with Angular

Hi any recommendations on how to integrate mini.css with Angular?

No feedback or new comments, I am closing this then.


Wrong wing cell generation of the lower shell

The creation of the wing cells of the lower shell is wrong. In this CPACS-file there are several wing cells defined along the chord, but the trailing boundary of all TIGL generated cell shapes is the trailing edge:

Thanks for opening an issue! I can reproduce your problem. As expected, the problem is in the logic of converting the internal parametrization of the faces of the wing to contour coordinates:
The internal parameters in chordwise direction start at the lower part of the trailing edge and end at the upper part of the trailing edge. Contour coordinates always start at the leading edge and end at the trailing edge. Therefore, on the lower skin, the contour coordinate parametrization has a different sign than the internal parametrization. This and the fact, that the wing could potentially already be a patchwork of many faces, that do not coincide with the cell faces makes the internal trimming loggig a bit complicated and error prone.
That begin said, I think I found the conversion error and can generate the wing fine now:


404 for JavaScript files

I installed isso from source. (current master)
I made a file demo.html served on localhost:8000 using python HTTP Simple Server

My nginx config:
	server {
	    listen 8080;
	    server_name localhost;

	    location / {
	        proxy_pass http://localhost:1234;
	        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
	        proxy_set_header Host $host;
	        proxy_set_header X-Forwarded-Proto $scheme;
	    }
	}

isso.cfg
[general]
dbpath = /home/arjun/isso_demo/comments.db
host = localhost:8000
[server]
listen = http://localhost:1234/

Log when script source is localhost:8080
$ isso -c isso.cfg run
2017-12-18 17:26:24,660 INFO: connected to localhost:8000
<IP_ADDRESS> - - [2017-12-18 17:26:29] "GET /js/embed.dev.js HTTP/1.0" 404 625 0.000662
<IP_ADDRESS> - - [2017-12-18 17:28:20] "GET /js/embed.min.js HTTP/1.0" 404 625 0.000501
<IP_ADDRESS> - - [2017-12-18 17:29:36] "GET /js/embed.js HTTP/1.0" 404 625 0.000600

Log when script source is localhost:1234
$ isso -c isso.cfg run
2017-12-18 17:29:41,223 INFO: connected to localhost:8000
<IP_ADDRESS> - - [2017-12-18 17:29:44] "GET /js/embed.dev.js HTTP/1.1" 404 606 0.000538
<IP_ADDRESS> - - [2017-12-18 17:30:00] "GET /js/embed.min.js HTTP/1.1" 404 606 0.000522
<IP_ADDRESS> - - [2017-12-18 17:30:36] "GET /js/embed.js HTTP/1.1" 404 606 0.000381

Am I missing something?

@posativ any help?

I'm having the same issue. I did run make js. If I do it again it says Nothing to be done for 'js'.
Interestingly, I can access /admin and see the comments there.

But there's no static files. Aren't both accessed via the same URL? In my case, an https to my server, then nginx talking to http://<IP_ADDRESS>:8080/isso/...
In my nginx log I see this:
2020/04/11 15:15:32 [error] 12082#12082: *2211750 connect() failed (111: Connection refused)
while connecting to upstream, client: <IP_ADDRESS>, server: foo.org, request:
"GET /isso/js/embed.min.js HTTP/2.0", upstream: "http://<IP_ADDRESS>:8080/isso/js/embed.min.js",
host: "foo.org", referrer: "https://foo.org/bar.html"

Where should I poke? :)

I just pulled the latest changes today and I think the fix to the headers in nginx solved it.
https://github.com/posativ/isso/commit/080ee3637108d985a0bd97dc1db99cc4f3a16f2e
My comments are back :)

@nemani is this still current?

I haven't looked at it in quite some time, feel free to close it if you want to.


Added code of Depth First Search (DFS) Algorithm

1)Defination of Depth First Search (DFS) Algorithm
2) Time Complexity analysis
3) code

I want to contribute, Please Assign this to me @prafulla-k-roy


Mealie v1 compatibility

Hello,
Will you be making this compatible with Mealie v1?

Hello and thanks for expressing your interest! I actually have a branch that partially supports v1 but it still requires some work. So, yeah, I want to make it compatible, but can't promise any dates.

That's awesome! If you need any help testing it just let me know how I can help. :)

@Akirainblack PR #76 was merged, it supposedly added support for v1. But it lacks unit tests and I broke my Mealie installation a couple of times, so I am not really ready to call it a release.
If you are willing to test it and know how to back up/restore your Mealie installation (or have a separate one) then you can download the signed APK here. Please, BACK UP your installation before running this version of the app. Let me know if you have any issues/questions!

I've spun up a test environment for it. On initial testing it appears to work like a charm, thank you.
Will test more thoroughly as I get time.
Anything in particular you want me to check?

@Akirainblack I broke my Mealie installations with the "Add a recipe" feature (Mealient logo on top -> Add recipe). Would be great if someone double-checked that it doesn't break their installations.
It looks like I didn't provide IDs for the ingredients and instructions and that caused the server errors. So, if you'll be checking that then please make sure to add at least one ingredient and one instruction to the test recipe you create.

Added recipe. Made sure to add ingredient and instruction. Worked perfectly. Confirmed added in a webpage on seperate device. :)

Awesome, thank you! I will add some tests and call it a release. In the mean time you can use that version. Will close the issue when the version is released.

Support for v1 is added in release v0.3.0


CentOS 7 Package and Install

The latest CentOS 7 repo for puppet is https://yum.dockerproject.org/repo/main/centos/7, however this module is using extras. This also does not follow the latest method of installing which does not leverage /etc/sysconfig files. I'm working on an update, but I wanted to make sure there wasn't a specific reason you are not using this repo/configuration. Thanks!

Noticed PR #311. Closing :)