Blue Screen Errors (BSOD) on Fresh Windows Install after Using Tool

Summary:
Upon using the tool on a fresh Windows install, my system became unstable and unresponsive, leading to multiple occurrences of the Blue Screen of Death. The BSOD errors were predominantly "IRQL_NOT_LESS_OR_EQUAL". I had to reinstall the operating system twice.
Detailed Error Reports:
I experienced the following blue screen errors:

IRQL_NOT_LESS_OR_EQUAL

Stop Code: 0x0000000a
Parameters:<PHONE_NUMBER>000008,<PHONE_NUMBER>000002,<PHONE_NUMBER>000000, fffff80335219942
Caused by: ntoskrnl.exe (ntoskrnl.exe+3fbca0)

IRQL_NOT_LESS_OR_EQUAL

Stop Code: 0x0000000a
Parameters:<PHONE_NUMBER>000008,<PHONE_NUMBER>000002,<PHONE_NUMBER>000000, fffff8024c819942
Caused by: ntoskrnl.exe (ntoskrnl.exe+3fbca0)

IRQL_NOT_LESS_OR_EQUAL

Stop Code: 0x0000000a
Parameters:<PHONE_NUMBER>000008,<PHONE_NUMBER>000002,<PHONE_NUMBER>000000, fffff8043668bc9d
Caused by: intelppm.sys (intelppm.sys+11be)

Steps to Reproduce:

Install and open the tool.
Navigate to the "Tweaks" section.
Enable the "Set Services to Manual" option.
Run the "Tweaks".

Expected Behavior:
The system should continue to operate smoothly with the chosen tweaks applied.
Observed Behavior:
The system becomes unstable and unresponsive, leading to multiple blue screen errors.
Workaround:
Upon reinstalling the operating system for the third time, I avoided enabling the "Set Services to Manual" option within the tool, which led to stable system performance.
Windows 10 Pro N, 22H2, os build: 19045.2965

Did installed the latest updates ?

Did you install the latest updates of windows ?

Yes

There's a bug now that disables Windows Management Instrument (WMI) instead of making it manual - while your exact issue is quite different, I'd still try this out as even if you didn't get blue screen errors, you'd have to apply this for windows and quite a few programs to work correctly:
https://github.com/ChrisTitusTech/winutil/issues/735
Basically just do the same steps but set it to manual (instead of disabled) and start it.

Fixed in patch #764


Squash migrations in product module

I want do squash all migration in product module related to multichannel including

Product
ProductVariant
Collections

I will remove comments after code review and I change the name of migration file.


FormSection - FieldArray relative path incorrect?

<form>
    <FieldSection name="contacts">
        <Contacts />
    </FieldSection>
</form>

class Contacts extends Component{

  renderContacts = ({fields}) => {

<button onClick={() => fields.push({})}>Add Detail</button>
      { fields.map(field => <Field name={`${field}.detail`} component='input' type='text' /> }

  }

  render(){
    return

      <FieldArray id="contactDetailsInput" name="contactDetails" component  ={this.renderContacts} />

  }
}

The change event for the detail will emit a meta path that looks like contacts.contacts.contactDetails[0].detail
Is this intended behavior?

Yea, that's definitely an issue. I just verified it.
jsfiddle here:
https://jsfiddle.net/1j67zoge/2/
and here is a screenshot of the state after adding two fields, and modifying both

you can see the double contacts.contacts nesting in the redux inspector, and it looks like fields.push({}) is working correctly though.

I'm pretty sure the issue is the appending of the path somewhere. I wish I had time to roll a patch, but I'm swamped right now.

Experiencing this also.
Also noticed differing behaviour when there is a field name in the root of the form as the name of a nested field array.
eg.
<form>
    <FieldArray name="foo" ... />
   <FormSection name="bar">
      <FieldArray name="foo" ... />
      <FIeldArray name="baz" ... />
  </FormSection>
</form>

// values.foo // contains the expected value
// values.bar.foo // contains the expected value, because foo is registered in the root of the form?
// values.bar.baz // not the right value
// values.bar.bar.baz // contains the value of baz

Fix released as v6.5.0.

In version 6.8.0 its also broken, i have a <FormSection name="core" and inside my form action a <FieldArray name="products", in the store appears core.core.products. I have quicked fixed it by ${field.name.replace('core.', '') and it works like expected.

Hey @incoqnito, I created a fork of my original jsfiddle but using redux-form 6.8.0, and it seems to work fine.
https://jsfiddle.net/788uu5au/
Screenshot of it working:

can you put together a codesandbox with an example of the path being broken? You can fork any of the codesandbox examples in the README.md
Thanks!


Running anchor test on anchor example returns error

Steps to produce

solana-keygen new -o program_address.json
cd examples/sol-contract-anchor
anchor build
anchor deploy --program-keypair program_address.json --program-name sol-anchor-contract
npm i
anchor test

sol-anchor-contract
Check loan to value ratio.:
Error: AnchorError caused by account: pyth_loan_account. Error Code: PythError. Error Number: 6005. Error Message: Pyth has an internal error..

metoo


[padctrl] How do we deal with conflicting attributes

The possible attributes you can set for padctrl can have some dangerous or invalid conflicts, for example a pad should not be both pull-up and pull-down.
Currently the RTL will allow you to set both pull-up and pull-down.
The pad implementation within padring could ensure both don't get applied, but I don't see anything explicit in the documentation that states it needs to do this.
I can see a few possibilities for how to do with conflicting/invalid/dangerous combinations:

Utilise the WARL nature of the attribute bits. So if you set both pull-up and pull-down and then read back only one would be set. Here padctrl is responsible for enforcing safe attribute settings

The pad implementation makes its own decision about how to safely interpret conflicting attributes. Here if SW set both pull-up and pull-down only one would get enabled but SW wouldn't have any way to know which

No protection is provided in HW at all, onus is entirely on SW not to set dangerous combinations.

@gkelly @silvestrst @lenary @mcy @msfschaffner any thoughts?

I think I'd tend towards 2.
1 overloads the use of WARL slightly, it's meant to be a way to probe what you turn on and off, but with 1. when you read a '0' that may mean attribute not-supported or it may mean it's supported but it conflicts with something else
Setting conflicting bits isn't something you should do anyway so SW being unable to find out how a dodgy combination has been interpreted probably isn't a big issue. We could document how conflicting attributes should be interpreted (e.g. if you say both pull-up and pull-down it will be pull-down). The DIF could understand what is good and what is bad and disallow any dodgy combinations returning an appropriate error from the enable function.
With the DIF understanding you could also go with 3. but this seems like a bad idea.

GPIO already ran into this kind of problem and the result was an API along the lines of 3. You can see our thinking in #1409.
However that was for interrupts, and not for something that could damage hardware in the same ways.
So, I would expect an interface like 3, on top of having either 1 or 2. (I agree that just 3 is not enough).

I don't really think it's necessary to have hardware protection... Because I feel the whole point of DIFs is basically to ensure the hardware isn't misused.
Having said that, if we decide to code in the HW pull up and pull down to be mutually exclusive options, that's fine with me too.

I guess the danger could be to damage something whilst the DIF is not finalised, as before it properly tested - it potentially could be buggy. If actual damage can occur, then I think I agree with Greg and Sam that it would be nice to mitigate against it in hardware. This is different from the GPIO issue that Sam has mentioned, because no physical damage could occur there.

If we choose option 3, it might be technology dependent and thus a bit confusing
to have different functionality depending upon the platform. Thus I'd lean towards 2)

I think I would also lean towards 2).
if we agree that any pad implementation should never have both PD and PU enabled at the same time, we could take care of this directly in the padctrl RTL, such that no additional logic has to be placed into the padring (something we try to avoid in general).

I believe I'm strongly in favor of 2. An exploit that leads to code execution shouldn't ever lead to physical damage, IMO.

if we are to go ahead with option 2, can i suggest we go a bit further?
First, we really should make it very clear in cases of conflict, what the exact behavior should be (ie pull down is prioritized for example).
It might even go so far as to suggest that the pad function should tri-state, ie, drive nothing out, disable all internall pulls because that is the safest physical state to be in.  We don't want something, as @gkelly mentioned, to physically damage our device or another component. We also don't want something that can pretend to some kind of strap value that on a reset could cause some kind of state change remotely (so maybe even input disabling should be on the table).

Catching up to this, (2) seems best to me (I am used to calling this "enforcement" but you can probably more reasonably think of it as "input sanitization"), and Tim's clarifications are appropriate - how we "enforce" needs to be spelled out, and probably we need to fall back to most-safe (but figuring out what that is might be a little tricky).

FYI: I've double checked with the pad library that we just got. the PU/PD attribute enable signals are encoded such that no conflicts can occur. i.e., they have a pull enable (pe) and a pull select (ps) attribute. I am about to switch over to that convention in #2681.

Update: the pull-enable / pull-select encoding mentioned above makes sure that no "dangerous" combinations exist. Hence this should not be of concern anymore.
Simply unsupported attributes are currently handled via WARL behavior - but note that this is different from solution 1. above in that we do not overload the WARL behavior to filter "dangerous" combinations.
Any objections if we close this issue?

Closing this down for now - please feel free to reopen if you think more discussion is needed.


Debugger connects and immediately disconnects.

This is still a continuing problem, and I'm now no longer able to fix it by deleting the ".vscode" directory files. I have the VSCode debugger installed, as well as the VSCode editor extension and all the boxes checked. The debugger spits out a message in the console that it attached, and then about 3 seconds later it disconnects. Can't hit any breakpoints. :-(  I am running Mac OS 10.10.5, Unity 5.3.1.p4, VSCode 0.10.6 and latest version of VSCode and Debugger plugins.

Same here

I'm having the exact same problem with Unity 5.3.2f1 and OS X 10.11.3.
I've updated VSCode and the Debugger plugins and deleted .vscode, but no changes.

Hi!
At this moment it buggy when setting AllowAttachedDebuggingOfEditor to true
I think this is because Unity want restart after change this settings, but i don't dig deeper.
So easy solution is to open VSCode/Plugins/Editor/VSCode.cs find all EditorPrefs.SetBool("AllowAttachedDebuggingOfEditor" and comment it.
After that restart unity and enable Preferences / External Tools / Editor Attaching manually
After that Debug will work perfect.
ps: sorry for my english

I've been able to reproduce this locally today (finally) looking into why tho ;/

So ... here is the problem:
When Unity has "Editor Attaching" it needs to restart with that option on, however in the VSCode Plugin, I have a feature that reverses the settings that we make when its on, when exiting the editor.  So its kinda like an infinite problem ... so I'm going to push an update that doesnt revert that one setting :)

Thanks. Hope it’ll be done soon.

在 2016年4月3日，23:36，Matthew Davey<EMAIL_ADDRESS>写道：
So ... here is the problem:
When Unity has "Editor Attaching" it needs to restart with that option on, however in the VSCode Plugin, I have a feature that reverses the settings that we make when its on, when exiting the editor. So its kinda like an infinite problem ... so I'm going to push an update that doesnt revert that one setting :)
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub https://github.com/dotBunny/VSCode/issues/63#issuecomment-204998184

It was done within 5 minutes of that post :)


postgres_app_v65_sec_v20_ret_v8

app v65, sec v20, ret v8, & associated erd and drop schema scripts.
Before creating a pull request make sure that:

[ ] commit messages are meaningful and follow good commit message guidelines
[ ] README and other documentation has been updated / added (if needed)
[ ] tests have been updated / new tests has been added (if needed)

Please remove this line and everything above and fill the following sections:
JIRA link (if applicable)
Change description
Does this PR introduce a breaking change? (check one with "x")
[ ] Yes
[ ] No

Trusted 3rd Party
Audit_heritage is a store of legacy only audit records, so no inserts intended to arrive from modernised application , no sequence added
Object_hidden_reason is to support modernised application, so sequence has been added
The corresponding drop has been added to v23 of the drop schema
From: Richard Bull @.>
Sent: Monday, March 25, 2024 4:17 PM
To: hmcts/darts-api @.>
Cc: Barry Jones @.>; Author @.>
Subject: Re: [hmcts/darts-api] Add files via upload (PR #1250)
@richardbull commented on this pull request.

In src/main/resources/db/reference/modernised_darts_schema.sqlhttps://github.com/hmcts/darts-api/pull/1250#discussion_r1537860179:

-- List of Table Aliases
-- annotation                  ANN
-- annotation_document         ADO
-- audit                       AUD
-- audit_activity              AUA
+-- audit_heritage              AUH
Do we need to have a corresponding sequences for these 2 new tables: auh_seq and ohr_seq?
If so, then also drop statements in the other file

Reply to this email directly, view it on GitHubhttps://github.com/hmcts/darts-api/pull/1250#pullrequestreview-1958187168, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BBH5PHCYFYDU4T2MKNVCWI3Y2BEYPAVCNFSM6AAAAABFHHYV6GVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMYTSNJYGE4DOMJWHA.
You are receiving this because you authored the thread.Message ID<EMAIL_ADDRESS>This e-mail is private and is intended only for the addressee and any copy recipients. If you are not an intended recipient, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy. Activity and use of this communication is monitored to secure their effective operation and for other lawful business purposes. Communications using these systems will also be monitored and may be recorded to secure effective operation and for other lawful business purposes.
This e-mail is private and is intended only for the addressee and any copy recipients. If you are not an intended recipient, please advise the sender immediately by reply e-mail and delete this message and any attachments without retaining a copy. Activity and use of this communication is monitored to secure their effective operation and for other lawful business purposes. Communications using these systems will also be monitored and may be recorded to secure effective operation and for other lawful business purposes.


Support Kotlin 1.2.0 and set default Kotlin version to 1.1.50

Added Kotlin 1.2.0 support.

Use kotlin.reflect.full.starProjectedType instead of kotlin.reflect.defaultType

extensions in jvm.reflect package was removed in Kotlin 1.2.0

Set default Kotlin version to 1.1.50

kotlin.reflect.full package was added in Kotlin 1.1.0
[important] Applying this change makes it impossible to support Kotlin 1.0.x.

https://kotlinlang.org/docs/reference/whatsnew11.html#kotlinreflectfull
https://kotlinlang.org/docs/reference/whatsnew12.html#kotlin-standard-library-artifacts-and-split-packages

Thank you for submitting a pull request!
[x] Keep your commits clean: squash your commits if necessary.

We want to use Kotlin 1.2.0 as soon as possible. Please check this 🙇

[important] Applying this change makes it impossible to support Kotlin 1.0.x.

Well this is kind of a deal breaker. Does the current version of Mockito-Kotlin (1.5.0) not work for you with Kotlin 1.2.0?

Version 2.x will remove the dependency on kotlin-reflect. Please try out 2.0.0-alpha01 to see if it works for you: https://github.com/nhaarman/mockito-kotlin/releases/tag/2.0.0-alpha01

I'll try using the new version soon. thanks 😄

New version works fine. 👍


AttributeError: 'NoneType' object has no attribute 'find'

Hi, I am using Mac OS X 10 and python 2.7. I have created my api key in the required file. However, I always get this error:

from scopus.scopus_api import ScopusAbstract
ab = ScopusAbstract("2-s2.0-84930616647", refresh=True)
Traceback (most recent call last):
File "", line 1, in
File "/Library/Python/2.7/site-packages/scopus/scopus_api.py", line 244, in init
sl = coredata.find('dtd:link[@rel="scopus"]', ns).get('href')
AttributeError: 'NoneType' object has no attribute 'find'

Look forward to your reply. Thanks a lot.

Yes I saw it too.  They changed something in the strcture of the xml file.  I am working on it and a fix should be live withing the hour.

Fixed in 640f98ab8f9b58fa1b9308448c4d41d76216616e.
Version 0.3.1 is live on PyPI.


Spec updates for GenerationId and Bootstrap C# API

Update spec for the Bootstrap C# API and Dynamic Dependency GenerationId property. Spec update (changes in specs/dynamicdependencies)

specs/dynamicdependencies/DynamicDependencies.md
specs/dynamicdependencies/sample-b.1.md

Why Bootstrap C# API? The Bootstrapper provides a Flat-C API taking multiple optional parameters. The Bootstrap C# API is provided as a .NET assembly with the following features:
Function overloads to make optional parameters optional
Bootstrap APIs scoped to a standard namespace and class
Choice of error handling via throw exceptions or returned HRESULT
C# friendly syntax implementing the necessary P/Invoke definition to adds the Bootstrap Flat-C API..
NOTE: This is a revised form of MddBootstrap.cs in 0.8-preview1's samples incorporating improvements based on community feedback.
NOTE: This provides a natural C# form of the Bootstrap API, which has only been available as a Flat-C API. The Bootstrap API is not provided as a WinRT API due to the nature of the Bootstrap API's required use before accessing the Windows App SDK. Although possible for C# to use a WinRT API via RegFreeWinRT it requires additional developer effort (Fusion manifest isn't seamlessly integrated into the C# developer experience). This C# API complements the Flat-C format to provide a natural and frictionless C# developer experience, to a degree not as easily accomplished with a WinRT API at this time.
Why Generation Id? Generation Id is a unique value changed whenever a process' package graph is altered. This is used to quickly and efficiently detect if the package graph has changed since the last time one examined it. This is of import if package graph sensitive data is computed and cached e.g. when the package graph is used as a search order for resources that are cached or otherwise expensive to recompute. One can remember the generation id when retrieving the package graph to compute some data, then later, before using that data, get the current Generation Id to check if the package graph is the same and the data's safe to use, or the package graph has changed requiring query'ing the package graph, scrapping the previously computed (now stale) data and recomputing it.

/azp run

/azp run


[WIP] Try to fix ruby-head build

Just testing some stuff to see if I fix the ruby-head build

It looks like an issue in the travis environment: https://github.com/travis-ci/travis-ci/issues/5166

Ok, thanks for the research, then we will just wait for them to fix the packages.

:+1:


Docs for deadletter/expiry and message redelivery

Created from https://github.com/EnMasseProject/enmasse/pull/5133

@hmaclean73 My last change adds the message delivery defaults.


[Question]: The Discord link at the bottom doesn't work

Description
Your discord link doesn't work.  Says it's expired.
https://discord.gg/quBc2jrz
Alternatives
No response

Thank you for your reminder. I have updated the link, which will not expire. Please join the channel via this link.


Node-RED crashes when 2 Flex-Server nodes are created with the same port but different unit IDs

Problem

(X) bug report => please search github for a similar issue or PR and test Modbus problems with the modbus-serial package before submitting
(X) unexpected behavior => please visit the Wiki before

Current behavior
Creating two TCP flex server nodes with the same IP/port but different unit IDs makes Node-RED crash.
Expected behavior
Ideally the unit ID should be respected according to the standard and making TCP requests to the same port but different unit IDs should be allowed to respond differently with different registers. At a minimum, the error should be caught so that Node-RED doesn't crash.
Minimal reproduction of the problem with instructions

Add two Modbus Flex Server nodes. Level everything as default, except change the unit ID on one of them.
Deploy.
Observe crash information from commandline:

17 Jun 15:03:27 - [info] Starting flows
17 Jun 15:03:27 - [info] Started flows
17 Jun 15:03:27 - [info] Server now running at http://<IP_ADDRESS>:1880/
17 Jun 15:03:43 - [info] Stopping flows
17 Jun 15:03:43 - [info] Stopped flows
17 Jun 15:03:43 - [info] Starting flows
17 Jun 15:03:43 - [info] Started flows
17 Jun 15:03:43 - [red] Uncaught Exception:
17 Jun 15:03:43 - Error: listen EADDRINUSE: address already in use <IP_ADDRESS>:11502
at Server.setupListenHandle [as _listen2] (net.js:1290:14)
at listenInCluster (net.js:1338:12)
at doListen (net.js:1471:7)
at process._tickCallback (internal/process/next_tick.js:63:19)
C:\Users\thatc>
Your Environment
Please tell us about your environment:
All the latest on Windows 10 x64

( ) I am using just the Node-RED package and got modbus-serial package installed with it
( ) I have installed modbus-serial package global from source (using git clone)
( ) I have installed modbus-serial as a global package (using npm i -g)

Yes, modbus-serial is the name but it does all, TCP and Serial.
The node-modbus package is just for the Modbus Server node.

Device :

( ) macOS: v
( ) Linux: v
(x) Windows: v 10 x64
( ) Raspbian: v
( ) Other:

Name:
Version:

Description of the connecting Modbus system:
none

node-red-contrib-modbus version: ``

Node: (min. 6.x)
node --version = latest v10 LTS

Hi, two flex servers need two ports. That is TCP. If you need multiple UnitID's, then you need to implement this inside the flex server to handle them. It is not available out of the box.
see: Error: listen EADDRINUSE: address already in use <IP_ADDRESS>:11502 - Address and port in use

Why are you closing this so quickly ? Surely it would be easy enough to detect the port is already in use and either fail gracefully - or warn the user - rather than breaking completely ? When you say it should be handled inside the flex server - is this not your code ? Would it not be better to enhance the one node rather than force a fork ?

@dceejay I mean therefore node-red got a new start flag to handle such config problems and the node-red team decided (we discussed this in a slack conversation) node-red has to crash on such problems, shouldn't it anymore?

Yes - It should crash if it gets an async error it can't handle - BUT if a node can detect an error (like there being two instances of itself on same port) then it should do so. The overall node instance could have a global array of "portsInUse" and add to it each time a specific node is added/configured... and if there is a duplicate then raise an error before trying to connect twice.
EG see core udp node - around https://github.com/node-red/node-red/blob/ccc3809daa3b03e7171cb6f4ccf4d6e0f1188bef/packages/node_modules/%40node-red/nodes/core/io/32-udp.js#L83

@dceejay you said:

Expected behavior
Ideally the unit ID should be respected according to the standard and making TCP requests to the same port but different unit IDs should be allowed to respond differently with different registers. At a minimum, the error should be caught so that Node-RED doesn't crash.
The answer is yes and no. in pure Modbus TCP/IP the Unit ID should be ignored. The Unit ID should only be used by a Modbus RTU <-> Modbus TCP/IP converter (or gateway).
In @biancode case, the Flex-Server node is only made for pure Modbus TCP/IP. I understand it totally ignore the Unit ID.
I understand the rage about Node-RED crashing and also I think it is not clean.
Yes it should be better to return an error in the Node-RED debug windows since this is a configuration error and it can be easily fixed by disabling the flow / server instead of pushing the kill switch.

With the new node-red --safe parameter of Node-RED, it is also possible to start, correct it, and deploy with a working state of the configuration.

There is a try/catch as in MQTT, but in Node-RED it do not catch it inside the node if it is an exception like a network error.

in link with #125

FYI - I too have come across this problem whilst deploying two Modbus RTU slave devices. I was hesitant to open an issue until some further feedback and research, but here's mine detailed: https://discourse.nodered.org/t/multiple-modbus-rtu-slaves-causes-error/18783

A port can only be used once - the unitid is to handle inside the server as it is also in other modbus server implementations, please.


ppd-filter.c: Generate media-col if media-col-default exists

We would generate media-col attribute only if we had media-col-default attribute and PageSize or media options, which doesn't seem to be always the case for PageSize and media. These options usually are not default options and if the application doesn't send them, they are not sent to filters.
The current implementation breaks image printing for (at least) printers installed with Postscript driver - the printer outputs an empty sheet of paper. It happens because cfFilterImageToPDF() doesn't get page size by other means.

We must be careful here. If no "PageSize" or "media" option is supplied to a job, many filters (especially for PDF and PostScript) assume the input page size for each page of the job (which can change throughout the job), so we have to check whether adding a copy of media-col-default as media-col could defeat this, making these filter assuming that the user specified a page size. What we actually have to do is to try harder to find the default page size of the printer. If we have media-col-default we should actually use the default size described there, independent whether there is a media-col job attribute set or not.

Solved https://github.com/OpenPrinting/libcupsfilters/issues/26 in libcupsfilters. The bug also occurs when no PPD file is given (broken output instead of fallback to US Letter).
Solved via: https://github.com/OpenPrinting/libcupsfilters/commit/5238c6ef69acb
But thanks anyway for the bug report and the investigations.


Replace RuntimeIOException with UncheckedIOException?

Should we replace the AssertJ specific RuntimeIOException with UncheckedIOException which was added in Java 8?

I can work on this 👍

@joel-costigliola  what should we do with the missing constructors in UncheckedIOException?
e.g. RuntimeIOException(String message)
UncheckedIOException Constructors:
UncheckedIOException(IOException cause)
UncheckedIOException(String message, IOException cause)

can't we use UncheckedIOException(String message, IOException cause) ?
if not it means it wasn't an IOException in the first place, then a simple RuntimeException should do the job

Yes, you are right. Will fix wrong usage of RuntimeIOException with RuntimeException. Thanks!

@joel-costigliola ready for code review.


[cxx-interop] Provide similar support for std::u32string as std::string and std::u16string.

Provide similar support for std::u32string as std::string and std::u16string.

Resolves #68211

This is awesome, thanks a lot @CrazyFanFan for your PR!
Let's run the tests to see if everything is right. You won't be able to run the CI yourself just yet, so I've triggered it for you.

@egorzhdan Thank you. Additionally, I noticed that the smoke test failed and seems to be related to the test case I added, which matches the behavior I observed locally. However, I still haven't figured out why the test case couldn't find the new API.

Oh, this is interesting... I would expect at least some of the tests in this PR to pass.
This might be a compiler bug, I'll take a look and will let you know what I discover.

@egorzhdan thank you for your help.  I have tried several different compilation options but still couldn't figure out why the extension for std.u32string is not working. I attempted to add some extension to std.wstring and tested them with test cases, and they worked fine. I'm not sure if std.u32string is triggering any other rules.

I reproduced the same issue on my machine. Looks like you've uncovered a C++ interop bug :)
This might be complex to debug, I'll look into it next week.

Sorry for the delay!
Apparently a compiler bug occurrs here: std::u32string and std::wstring are imported as typealiases for the same type:
// CxxStdlib.iosfwd module interface
// ...
typealias wstring = std.__1.basic_string<Scalar, char_traits<Scalar>, allocator<Scalar>>
typealias u32string = std.__1.basic_string<Scalar, char_traits<Scalar>, allocator<Scalar>>

while they are actually two separate types. Let me see how we can approach this.

This patch should now be unblocked. Let's re-run the CI.

@swift-ci please smoke test

Hmm, this now passes on Linux, but fails on Windows:
FAIL: Swift(windows-x86_64) :: Interop/Cxx/stdlib/overlay/std-string-overlay.swift (3652 of 9880)
******************** TEST 'Swift(windows-x86_64) :: Interop/Cxx/stdlib/overlay/std-string-overlay.swift' FAILED ********************
Script:
--
: 'RUN: at line 1';   rm -rf "T:\1\tools\swift\test-windows-x86_64\Interop\Cxx\stdlib\overlay\Output\std-string-overlay.swift.tmp" && mkdir -p "T:\1\tools\swift\test-windows-x86_64\Interop\Cxx\stdlib\overlay\Output\std-string-overlay.swift.tmp" && 't:\\1\\bin\\swiftc.exe' -target x86_64-unknown-windows-msvc  -vfsoverlay T:/1/tools/swift\stdlib\windows-vfs-overlay.yaml -swift-version 4  -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 9999:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.0:macOS 10.14.4, iOS 12.2, watchOS 5.2, tvOS 12.2' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.1:macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.2:macOS 10.15.4, iOS 13.4, watchOS 6.2, tvOS 13.4' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.3:macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.4:macOS 11.3, iOS 14.5, watchOS 7.4, tvOS 14.5' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.5:macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.6:macOS 12.3, iOS 15.4, watchOS 8.5, tvOS 15.4' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.7:macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.8:macOS 13.3, iOS 16.4, watchOS 9.4, tvOS 16.4' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.9:macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0' -Xfrontend -define-availability -Xfrontend 'SwiftStdlib 5.10:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999'  -libc MD -module-cache-path T:\1\swift-test-results\x86_64-unknown-windows-msvc\clang-module-cache C:\Users\swift-ci\jenkins\workspace\swift-PR-windows\swift\test\Interop\Cxx\stdlib\overlay\std-string-overlay.swift -Xfrontend -enable-experimental-cxx-interop -o T:\1\tools\swift\test-windows-x86_64\Interop\Cxx\stdlib\overlay\Output\std-string-overlay.swift.tmp/a.out -module-name main  && echo T:\1\tools\swift\test-windows-x86_64\Interop\Cxx\stdlib\overlay\Output\std-string-overlay.swift.tmp/a.out &&  T:\1\tools\swift\test-windows-x86_64\Interop\Cxx\stdlib\overlay\Output\std-string-overlay.swift.tmp/a.out
--
Exit Code:<PHONE_NUMBER>

Thank you very much for your help and dedication over the past few weeks, @egorzhdan. I will keep following up on this issue.

@egorzhdan  I'm sorry, I don't have a Windows device. Is cross-platform compilation possible?

That's fine, many folks who contribute don't have a Windows machine.
Cross-compilation is possible, but in this case the test crashes at runtime, and you would still need a Windows machine to run the test, even if you cross-compile it.
Actually, yesterday's patch from Saleem (https://github.com/apple/swift/pull/68397) might have affected this. I'll restart the CI.

@swift-ci please smoke test

That's fine, many folks who contribute don't have a Windows machine. Cross-compilation is possible, but in this case the test crashes at runtime, and you would still need a Windows machine to run the test, even if you cross-compile it.
Actually, yesterday's patch from Saleem (#68397) might have affected this. I'll restart the CI.

Thank you. I noticed that the CI has failed again, but it doesn't seem to be related to the parts I modified.

@swift-ci please smoke test


Internet good for this

If I wnat send like 100k msg
what is the best internet option?
I thining rent a vps with 1 gibt for use this service.

Has anyone ever sent 100k messages using this library or any other library?
I thought whatsapp will ban your mobile number during the process!
And for your question @DeLuca92 even if you take 1 gbps connection whatsapp has some limit of sending messages per second. So, after some point of time your internet speed will not matter.
But still I would also like to know if anyone else have some answers...!

I made my library  in javam but I use your liberay with base :).
For 100k is a number I thought :).
How many message I can send by minute/second?

Hi @DeLuca92
Whatsapp will block your phone number, whatsapp doesn't allow to market from a personal account.
One should not use whatsapp for marketing purpose.
100K is a very big number....
Irrespective of the internet speed plan you use.

When I was trying I noticed after 1500 messages approx my number was blocked.
Currently unasure of the number here...

hmm,
I thinking this.
100K is exemple.
I remember 2018 I used api and wasn't block.
THe probleam is this.
Selemiun login ...
I would like dev a aplication by command line.
Send msg  and media via command line

@harshaldavda @DeLuca92 @heykush , crossing 1k | 1.5k | or some approx number near 1k, what are these rates based on, as in whatsapp blocks these accounts when they detect this much messages send from one account per minute or per day?


i got "Invalid page layout"

in the browser, it popup "Invalid page layout" after i set the page layout to "SingleWebPartAppPage". any hints? thanks

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: f42d2d41-61bb-e281-3dac-328292b7b192
Version Independent ID: 05b12512-7aa9-3ac7-e23e-0d5ae2209a59
Content: Using single part app pages in SharePoint Online
Content Source: docs/spfx/web-parts/single-part-app-pages.md
Product: sharepoint
GitHub Login: @spdevdocs
Microsoft Alias: spdevdocs

Yes, we've had to disable this.  It should be back up later on today.  Sorry for that.

OK, this should be good to go now.  Sorry about that.  Can you give it a try?

As of today, the Office CLI example didn't work, as I still received "Invalid Page Layout",  however, running the javascript example within dev tools worked just fine.


Error When Running Demo Code Examples

Hi,
I have tried the demo code for PuppeteerExtraSharp and keep getting the error below. Any suggestions:
ERROR:
System.IO.FileNotFoundException HResult=0x80070002 Message=Process revision is not downloaded. Run BrowserFetcher.DownloadAsync or download the process manually Source=PuppeteerSharp StackTrace: at PuppeteerSharp.Launcher.ResolveExecutablePath() in C:\projects\puppeteer-sharp\lib\PuppeteerSharp\Launcher.cs:line 212 at PuppeteerSharp.Launcher.GetOrFetchBrowserExecutable(LaunchOptions options) in C:\projects\puppeteer-sharp\lib\PuppeteerSharp\Launcher.cs:line 171 at PuppeteerSharp.Launcher.d__8.MoveNext() in C:\projects\puppeteer-sharp\lib\PuppeteerSharp\Launcher.cs:line 52 at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter1.GetResult() at PuppeteerExtraSharp.PuppeteerExtra.<LaunchAsync>d__2.MoveNext() at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter1.GetResult() at Learn_PuppeteerExtraSharp.Program.d__0.MoveNext() in C:\Users\Dave\Dropbox\Code Learn\Learn PuppeteerExtraSharp\Learn PuppeteerExtraSharp\Learn PuppeteerExtraSharp\Program.cs:line 25
This exception was originally thrown at this call stack: [External Code] Learn_PuppeteerExtraSharp.Program.Main(string[]) in Program.cs
CODE:
`using PuppeteerExtraSharp; using PuppeteerExtraSharp.Plugins.AnonymizeUa; using PuppeteerExtraSharp.Plugins.ExtraStealth; using PuppeteerSharp; using System; using System.Threading.Tasks;
namespace Learn_PuppeteerExtraSharp { class Program { static async Task Main(string[] args) { Console.WriteLine("Hello Pupeteer Extra Sharp");
// Initialization plugin builder
var extra = new PuppeteerExtra();
    // Use stealth plugin
    var puppeteerExtra = new PuppeteerExtra().Use(new AnonymizeUaPlugin()).Use(new StealthPlugin());

    // Launch the puppeteer browser with plugins
    //ERROR OCCURS ON THE LINE BELOW
    var browser = await puppeteerExtra.LaunchAsync(new LaunchOptions()
    {
        Headless = true
    });

    // Create a new page
    var page = await browser.NewPageAsync();

    await page.GoToAsync("http://google.com");

    // Wait 2 second
    await page.WaitForTimeoutAsync(2000);

    // Take the screenshot
    await page.ScreenshotAsync("extra.png");
}

}
}`

You need install also PuppeteerSharp - then it works fine,

Thx, I have tried that option and it still does not work.
Please find my Project attached. Perhaps it will help with the diagnosis.
Learn PuppeteerExtraSharp.zip

Hi, you should specify the executable path of your chrome browser. Here is the example:
var browser = await puppeteerExtra.LaunchAsync(new LaunchOptions()
{
    Headless = true,
    ExecutablePath = @"C:\chromium\chrome.exe" // <- specify you own path
});

Fantastic. Thx, it worked!


Corgi Meat Objective

About the PR
Adds a new objective for Traitors: getting corgi meat. One piece can be obtained by butchering HoPs pet. It also has healing effects because I thought it was funny.
Screenshots

Changelog

:cl:

add: Added a new Traitor objective: stealing corgi meat.

needs updating after #7305


docker images?

https://github.com/boneVidy/json2ts/blob/be37aa258d92095d762dda5e622eafe2fd21d0df/.github/workflows/blank.yml#L27
maybe it will be better to choose a smaller image?

@boneVidy and instead of ubuntu, please use always centOS as a secure linux! ;-)


[WIP] feat(cmd/apps.go): interactive "deis run" via websocket

This is really quick-and-dirty for my local testing. Eventually changes like this should go to controller-sdk-go, and this needs to add terminal handling and several other items.
See also deis/controller#1162.

Codecov Report

Merging #295 into master will decrease coverage by 0.72%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##           master     #295      +/-   ##
==========================================
- Coverage   72.58%   71.86%   -0.73%
==========================================
  Files          59       59
  Lines        4082     4158      +76
==========================================
+ Hits         2963     2988      +25
- Misses        792      842      +50
- Partials      327      328       +1

Impacted Files
Coverage Δ

cmd/apps.go
30.43% <0%> (-9.44%)
:arrow_down:

parser/config.go
85.93% <0%> (-2.4%)
:arrow_down:

parser/healthchecks.go
88.77% <0%> (+1.89%)
:arrow_up:

cmd/config.go
43.9% <0%> (+2.13%)
:arrow_up:

Continue to review full report at Codecov.

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


Question: DNS-01 Challenge results in multiple DNS requests?

What is your question?
When using the DNS-01 Challenge, is it normal that the DNS Server receives multiple (up to 4) requests for _acme-challenge?
What have you already tried?
I tried skimming through the RFC, couldn't really find any mention of it.
I also read the documentation from Let's Encrypt but couldn't find any mention of this either.
So I am wondering if this is normal ACME-Challenge behaviour, or If there is something strange going on.
Bonus: What do you use this package for, and does it help you?
For context, I am trying to develop a CoreDNS Plugin that can automate tls certificates when CoreDNS itself is the autoritative DNS Server for the Domain. Currently testing this out with my own domain. While it seems to work (most of the time), I sometimes only receiv 1 or 2 of these requests and then the Challenge fails - and I am currently trying to figure out why.
[INFO] plugin/tls: Obtaining TLS Certificate, may take a moment
[INFO] plugin/tls: Answering ACME DNS request:_acme-challenge.ns1.subdomain.mariuskimmina.com.
[INFO] plugin/tls: Answering ACME DNS request:_acme-challenge.ns1.subdomain.mariuskimmina.com.
[INFO] plugin/tls: Answering ACME DNS request:_acme-challenge.ns1.subdomain.mariuskimmina.com.

In cases where I only receiv 1 or 2 of these requests, the log looks like this:
[INFO] plugin/tls: Answering ACME DNS request:_acme-challenge.ns1.subdomain.mariuskimmina.com.
[INFO] plugin/tls: Answering ACME DNS request:_acme-challenge.ns1.subdomain.mariuskimmina.com.
[ERROR] plugin/tls: Failed to setup TLS automatically: [ns1.subdomain.mariuskimmina.com] Obtain: [ns1.subdomain.mariuskimmina.com] solving challenge: ns1.subdomain.mariuskimmina.com: [ns1.subdomain.mariuskimmina.com] authorization failed: HTTP 400 urn:ietf:params:acme:error:dns - During secondary validation: DNS problem: SERVFAIL looking up TXT for _acme-challenge.ns1.subdomain.mariuskimmina.com - the domain's nameservers may be malfunctioning (ca=https://acme-v02.api.letsencrypt.org/directory)

Yes, some CAs like Let's Encrypt use multi-perspective validation to mitigate BGP attacks, etc: https://letsencrypt.org/2020/02/19/multi-perspective-validation.html

That perfectly explains what's going on here, thanks a lot!
I'm still not sure why some of those requests don't reach me sometimes but still you really helped me out here

Good luck!


Switch to PackageLicenseExpression

fixes #223
Also deletes 3 files that should not be into source control.

Codecov Report
Base: 92.50% // Head: 92.50% // No change to project coverage :thumbsup:

Coverage data is based on head (e469cab) compared to base (34b0fb1).
Patch has no changes to coverable lines.

:exclamation: Current head e469cab differs from pull request most recent head eae458c. Consider uploading reports for the commit eae458c to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff           @@
##           master     #275   +/-   ##
=======================================
  Coverage   92.50%   92.50%
=======================================
  Files          17       17
  Lines        1160     1160
  Branches      209      209
=======================================
  Hits         1073     1073
  Misses         59       59
  Partials       28       28

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

Codecov Report
Base: 92.50% // Head: 92.50% // No change to project coverage :thumbsup:

Coverage data is based on head (eae458c) compared to base (34b0fb1).
 Consider uploading reports for the commit f324dfb to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff           @@
##           master     #275   +/-   ##
=======================================
  Coverage   92.50%   92.50%
=======================================
  Files          17       17
  Lines        1160     1160
  Branches      209      209
=======================================
  Hits         1073     1073
  Misses         59       59
  Partials       28       28

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

Codecov Report
Base: 92.50% // Head: 92.50% // No change to project coverage :thumbsup:

Coverage data is based on head (f324dfb) compared to base (34b0fb1).
Patch has no changes to coverable lines.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff           @@
##           master     #275   +/-   ##
=======================================
  Coverage   92.50%   92.50%
=======================================
  Files          17       17
  Lines        1160     1160
  Branches      209      209
=======================================
  Hits         1073     1073
  Misses         59       59
  Partials       28       28

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Uptime Robot polling API 43k times per day.

Home Assistant release with the issue:

0.96.5
Last working Home Assistant release (if known):
NA
Operating environment (Hass.io/Docker/Windows/etc.):

Hassio
Component/platform:

https://www.home-assistant.io/components/uptimerobot/
Description of problem:
Uptime Robot works just fine but there's an issue. It keeps polling the API too often.
A new option would be nice, something similar to polling interval. In 12 hours it generated aprox  20k requests.
I can see in Pi-Hole making a query every 30 seconds twice for every monitor. One A and one AAAA record for each monitor.
5 monitors x 2 (DNS queries) x 12 hours = 21600 queries
So 43200 queries in one day.
No other API is making that many queries, and if it's necessary to make a query for each monitor, then a polling interval does become essential to avoid hammering the network and the API.
Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):
binary_sensor:
  - platform: uptimerobot
    api_key: YOUR_API_KEY

Traceback (if applicable):

Additional information:

Have you tried setting the scan interval?
binary_sensor:
  - platform: uptimerobot
    api_key: YOUR_API_KEY
    scan_interval: 300

Have you tried setting the scan interval?
binary_sensor:
  - platform: uptimerobot
    api_key: YOUR_API_KEY
    scan_interval: 300

This works wonders. The scan_interval works. Is there any chance this could be added to the documentation for the components that support it? I entirely missed it until you mentioned it so I searched for it on the docs and found it:
https://www.home-assistant.io/docs/configuration/platform_options/
It wasn't entirely obvious like device_tracker which do tend to have it on the docs.
Thanks a lot for the information!

The API calls used here is setup how UR showed it should be set up.
Changing how the integration works are more of a feature request then an issue and should be opened in the section for it on the forum https://community.home-assistant.io/c/feature-requests :)
The scan_inteval that @cgtobi mentioned is a global configuration option that works with all platforms that poll data, and should therefore not be under the documentation for a specific integration but in the place where you found it.


gamepad_viewer example broken when a controller is connected

Bevy version
11d1ebeed
Relevant system information

Running Linux, happens on both wayland and X11 (trough xwayland).

What you did
With a controller connected run:
cargo run --example gamepad_viewer

When no controller is connected it starts correctly. When multiple controllers are detected it also crashes.
What went wrong
The app immediately exited
Additional information
The console output:
2024-10-10T18:35:28.259319Z  INFO bevy_winit::system: Creating new window "App" (0v1#4294967296)
2024-10-10T18:35:28.270366Z  INFO bevy_input::gamepad: Gamepad 5v1#4294967301 connected.
thread 'Compute Task Pool (15)' panicked at ./crates/bevy_text/src/text_access.rs:278:43:
called `Option::unwrap()` on a `None` value
stack backtrace:
   0: rust_begin_unwind
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:665:5
   1: core::panicking::panic_fmt
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:74:14
   2: core::panicking::panic
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:148:5
   3: core::option::unwrap_failed
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/option.rs:2020:5
   4: core::option::Option<T>::unwrap
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/option.rs:970:21
   5: bevy_text::text_access::TextWriter<R>::text
             at ./crates/bevy_text/src/text_access.rs:278:9
   6: gamepad_viewer::update_connected
             at ./examples/tools/gamepad_viewer.rs:468:6
   7: core::ops::function::FnMut::call_mut

Figuring out when this happened would be nice, but I'm strongly guessing #12770 is responsible.

Pretty sure this is just a mistake migrating the example for the text rework.


Unify the F# repo on a single version of the ValueTuple package.

When building master branch there are a ton of warnings about downgrades on Tuple references.  from 4.4.0 to 4.3.1.
Previously we were on 4.3.1, It is time to upgrade us to the latest version of Tuple as a dependency.

I get this error when using the latest master VSIX with 15.6.3, creating a new F# .NET Framework Console App:

@dsyme
Ahhh ... versioning, nothing about it is easy.
VS2017.6 has templates which expect ValueTuple 4.3.1, VS2017.7 has templates that expect 4.4.0 or some such.  master branch now tries to deploy the latest ones.  I will provide a fix so that master will again work fine with both VS builds.  Hopefully this evening.
Kevin

@KevinRansom Thank you!


[WIP] create multiple authors API endpoint from given csv file

Resolve conflicts and add a check that the commands are run only if the user who's running it is an admin

Resolve conflicts and add a check that the commands are run only if the user who's running it is an admin


EXECABORT Transaction discarded because of previous errors.

error: EXECABORT Transaction discarded because of previous errors. {"command":{"args":[],"name":"exec"},"previousErrors":[{"command":{"args":["emerald_api*user*op*find_unique*key*66947619"],"name":"JSON.GET"}}]}

Code:
 .$extends(
    PrismaExtensionRedis({
      config: {
        type: "JSON",
        ttl: 60,
        stale: 30,
        logger,
        cacheKey: {
          case: CacheCase.SNAKE_CASE,
          delimiter: "*",
          prefix: "emerald_api",
        },
        auto: {},
      },
      client: {
        host: "redis",
        port: parseInt(Bun.env.APP_REDIS_PORT!),
        password: Bun.env.REDIS_PASSWORD!,
      },
    })
  );

Hii @moshOntong-IT,
Could you please share the query that triggered this error? Thank you!

I'm getting the same error when I use autocaching on the findMany method. I've noticed my model returns undefined instead of null on a cache miss and have had to implement a retry method into my model to get around this at the moment:
export async function getAssessmentsForUser(
  userId: number,
  maxRetries = 3
): Promise<AssessmentWithScenario[]> {
  const customKey = prisma.getAutoKey({
    args: { where: { userId: userId } },
    model: "Assessment",
    operation: "findMany",
  });

  let retries = 0;
  while (retries < maxRetries) {
    try {
      let assessments: AssessmentWithScenario[] =
        await prisma.assessment.findMany({
          where: { userId: userId },
          orderBy: { id: "asc" },
          cache: { ttl: 5, key: customKey },
        });

      assessments = await Promise.all(
        assessments.map(async (assessment) => {
          assessment.scenario = await getScenarioByKey(
            assessment.scenarioKey || ""
          );
          return assessment;
        })
      );

      return assessments;
    } catch (error) {
      retries++;
    }
  }

  throw new Error("Failed to fetch assessments after multiple retries");
}

Does this solve the problem? I don't know how this plugin works well enough to debug it but I think there's a missing return statement at the end of getCache

    const cacheContext = {
      result,
      ttl: ttl * 1000 + timestamp,
      stale: (ttl + stale) * 1000 + timestamp,
    };

    const value = (transformer?.serialize || JSON.stringify)(cacheContext);

    setCache(type, key, value, ttl + stale, redis);

    // return the result
    return result;
  } catch (error) {

Hii @kalebheitzman,
It seems I overlooked that, and you’re absolutely right about the missing return statement. I’ll update the extension and push it shortly. While this should address the issue of needing to retry to get the cache during the initial attempt, I’m not certain if it will resolve the issue the OP mentioned, unless it’s the same scenario.

Hii @moshOntong-IT @kalebheitzman,
Please take a look at version 2.1.0 of the extension and let me know if it resolves the issue. Thank you for your support!

Hii @moshOntong-IT,
Could you please share the query that triggered this error? Thank you!

    logger.info("Checking phone number....");

    const user = await prismaClient.user.findUnique({
      where: {
        phoneNumber,
      },
    });

Hii @moshOntong-IT,
Could you please share the query that triggered this error? Thank you!

    logger.info("Checking phone number....");

    const user = await prismaClient.user.findUnique({
      where: {
        phoneNumber,
      },
    });

Here is the code. I am using here  findUnique

@yxx4c I tried to turn off the auto.
but there is query that cache is true

    const threads = await prismaConfig.thread.findMany({
      where: queries,
      include: {
        author: true,
      },
      cache: true,
    });

Then the error occured here

Hi @moshOntong-IT
Were you able to check the latest version v2.1.0?

@yxx4c

weird whe nI turned the type from JSON into string it is now working

I’m not certain if it will resolve the issue the OP mentioned, unless it’s the same scenario.

In my case, I had a query that was dependent upon another query in my loader. I was loading a user but the user was being returned undefined. When I tried to query on the user id in the next query down the line I was getting the same exact error as the OP. Essentially bad code on my part because I was relying on a null check and not both a null/undefined check.

I’m not certain if it will resolve the issue the OP mentioned, unless it’s the same scenario.

In my case, I had a query that was dependent upon another query in my loader. I was loading a user but the user was being returned undefined. When I tried to query on the user id in the next query down the line I was getting the same exact error as the OP. Essentially bad code on my part because I was relying on a null check and not both a null/undefined check.

did you use "JSON" instead of "STRING"?

I was using JSON

@moshOntong-IT
This issue appears to be another case of https://github.com/yxx4c/prisma-extension-redis/issues/7, likely due to the Redis instance missing the JSON module.
The functionality for utilizing the string type was reintroduced in https://github.com/yxx4c/prisma-extension-redis/commit/f9641c8004a7a0ea81864bb13ee82b5e2c8aac95.
@kalebheitzman
The problem you encountered was a legitimate bug in the code.

@yxx4c thanks and you're right. I forgot that I had to install the JSON module in Redis. I hadn't made the connection that I was actually experiencing two different problems.

@moshOntong-IT
This issue appears to be another case of #7, likely due to the Redis instance missing the JSON module.
The functionality for utilizing the string type was reintroduced in f9641c8.
@kalebheitzman
The problem you encountered was a legitimate bug in the code.

I am using docker how can maybe install JSON module?

@yxx4c a couple of questions I can't figure out from the documentation (likely I may not be reading it correctly...).

Do you have to use JSON instead of STRING in order to use uncaching? Or will uncaching work with both?
Does the autocache automatically provide uncaching on updates/upserts etc, or do I need to implement uncache myself for the relevant methods in my models?

@kalebheitzman

Uncache is compatible with both JSON and STRING type caches. The JSON type was added later in the extension's development, as its predictable keys allow for direct utilization from Redis.

Auto-Cache currently does not support Auto-Uncache functionality; this feature is not available at this time. However, version 2.0.0 represents progress toward making this possible in the future. In the meantime, I have implemented a workaround to Uncache Auto-Cached entries by using extendedPrisma.getAutoKey() with the same arguments that were used in the Auto-Cached queries (see example code for reference).

@moshOntong-IT @kalebheitzman,
Thank you both for your support and interest in the library! I hope the previous comments were helpful and that the fixes I pushed resolved your issues. I’ll go ahead and close this issue as completed.

Thanks @yxx4c!


How to add multiple serviers?

I have rewrite grpc_server function, It works, but not pretty.
@pytest.fixture(scope='module')
def grpc_add_to_server():
    from repo_pb2_grpc import add_RepoServiceServicer_to_server
    from file_pb2_grpc import add_FileServiceServicer_to_server
    return add_RepoServiceServicer_to_server, add_FileServiceServicer_to_server

@pytest.fixture(scope='module')
def grpc_servicer():
    from serviers.repo_servicer import RepoServicer
    from serviers.file_servicer import FileServicer
    return RepoServicer(), FileServicer()

@pytest.fixture(scope='module')
def grpc_server(_grpc_server, grpc_addr, grpc_add_to_server, grpc_servicer):
    for func, servicer in zip(grpc_add_to_server, grpc_servicer):
        func(servicer, _grpc_server)

    _grpc_server.add_insecure_port(grpc_addr)
    _grpc_server.start()
    yield _grpc_server
    _grpc_server.stop(grace=None)

Yep, looks ugly.
I'm going to look something about this case.

Interested to see how we can add multiple servicers as well.
With the above example, how should we handle this method?
def grpc_stub_cls(grpc_channel):
   ...

Did anyone figure out the answer?

Also interested in this feature, would be good to integrate a better way to do this.

what i'm doing right now, instead of defining the fixtures (using OPs example):
@pytest.fixture(scope='module')
def grpc_add_to_server():
    from repo_pb2_grpc import add_RepoServiceServicer_to_server
    from file_pb2_grpc import add_FileServiceServicer_to_server
    return add_RepoServiceServicer_to_server, add_FileServiceServicer_to_server

@pytest.fixture(scope='module')
def grpc_servicer():
    from serviers.repo_servicer import RepoServicer
    from serviers.file_servicer import FileServicer
    return RepoServicer(), FileServicer()

@pytest.fixture(scope='module')
def grpc_server(_grpc_server, grpc_addr, grpc_add_to_server, grpc_servicer):
    for func, servicer in zip(grpc_add_to_server, grpc_servicer):
        func(servicer, _grpc_server)

    _grpc_server.add_insecure_port(grpc_addr)
    _grpc_server.start()
    yield _grpc_server
    _grpc_server.stop(grace=None)

i just define:
from repo_pb2_grpc import add_RepoServiceServicer_to_server
from file_pb2_grpc import add_FileServiceServicer_to_server
from serviers.repo_servicer import RepoServicer
from serviers.file_servicer import FileServicer

@pytest.fixture(scope='module')
def grpc_server(_grpc_server, grpc_addr):
   add_RepoServiceServicer_to_server(RepoServicer(), _grpc_server)
   add_FileServiceServicer_to_server(FileServicer(), _grpc_server)

    _grpc_server.add_insecure_port(grpc_addr)
    _grpc_server.start()
    yield _grpc_server
    _grpc_server.stop(grace=None)

it's a quicker and cleaner solution...


feat(Bus351): Changed Route 351 from express service to regular bus

Summary of changes
Remove Bus Route 351 from the express route list as it is currently operating in local bus mode.

Asana Ticket: Incorrect Fare Estimate for Bus Route 351

General checks

[ ] Are the changes organized into self-contained commits with descriptive and well-formatted commit messages? This is a good practice that can facilitate easier reviews.
[ ] Testing. Do the changes include relevant passing updates to tests? This includes updating screenshots. Preferably tests are run locally to verify that there are no test failures created by these changes, before opening a PR.
[ ] Tech debt. Have you checked for tech debt you can address in the area you're working in? This can be a good time to address small issues, or create Asana tickets for larger issues.

New UI, or substantial UI changes

[ ] Cross-browser compatibility is less of an issue now that we're no longer supporting IE, but changes still need to work as expected in Safari, Chrome, and Firefox.
[ ] Are interactive elements accessible? This includes at minimum having relevant keyboard interactions and visible focus, but can also include verification with screen reader testing.
[ ] Other accessibility checks such as sufficient color constrast, or whether the layout holds up at 200% zoom level.

New endpoints, or non-trivial changes to current endpoints

[ ] Have we load-tested any new pages or internal API endpoints that will receive significant traffic? See load testing docs
[ ] If this change involves routes, does it work correctly with pertinent "unusual" routes such as the combined Green Line, Silver Line, Foxboro commuter rail, and single-direction bus routes like the 170?

hecked for tech debt you can address in the area you're working in? This can be a good time to address small issues, or create Asana tick

I agree that having this information hard coded in dotcom isn't ideal.  I agree and think that this fare information overall should be more driven from the API.  I have added a ticket for us to do some research into changing fare calculation to involve more of the API data for a future sprint.
In the meantime this route needs its fare updated.


手残，无闻拒了吧

同151201
The pull request will be closed without any reasons if it does not satisfy any of following requirements:

Please make sure you are targeting the develop branch.
Please read contributing guidelines:
https://github.com/gogits/gogs/wiki/Contributing-Code
Please describe what your pull request does and which issue you're targeting
... if it is not related to any particular issues, explain why we should not reject your pull request.

。。。


TreeView: Maximum call stack size exceeded error

Fixes #230361

is this only for many sibling nodes?

@RedCMD yes, I wouldn't expect to see the same problem with deep nesting as the issue is with argument expansion in splice.


[Checkbox] - Fitted .toggle is taller than .slider and standard ones

This is normal. I think it's okay for different styles of checkboxes to have different heights. The important thing is that their height accurately matches the size of their contents.


Hello World.

A console application in Net Core with HostBuilder
Loads configuration from json file (pretty much empty)
Implements basic logging.

Merged #8


Need the ability to set custom config in Accounts

To serve one of our business requirements, we need to configure accounts with shared custom attributes (which is not currently possible due to the rigid structure of org.prebid.server.settings.model.Account) and consume that custom configuration from multiple hook modules. In current implementation Account is neither derived from org.prebid.server.proto.openrtb.ext.FlexibleExtension nor has any ext attribute of ObjectNode/ExtAccount type.
So, to have extensibility like most of the other ORTB entities, we propose to have an ext attribute of ObjectNode type in Account model. If approved, we'll be happy to contribute the extension via a PR.
@bretg do you see any issue with this extension??

Configuration is rigid for a reason. Could you please provide more details about what you are trying to achieve? Thanks.

@Net-burst Thanks for your reply.
We would like our different custom modules to share some of the same params and this is currently not possible without duplicating the params in module.hooks.<moduleName>.
In our findings it would be very much beneficial to have a simple ext property of ObjectNode type in Account model, that can be used by PBS-Java hosting companies to define their own publisher specific custom configuration to be consumed by their custom hook modules or simply to add additional account details for ad ops convenience (for example account name that will be displayed in the PBS config UI). In my respective PR, I've added that ext property in Account module and verified that all tests are passing and nothing is broken (which is expected, as this property never existed to be used by the core 😊). As a result, from functionality perspective this addition of ext property does not harm, rather adding some flexibility.

Configuration is rigid for a reason.

Bid requests and imps are not rigid - both have ext fields. Account is also not rigid already as hooks config supports arbitrary params and in order to share the same params between different modules we could create a fake module with a sole purpose of being a home for shared params but that option is hacky. acccount.ext would be a much cleaner solution.
Thanks again for looking into this.

The use case definitely sounds valid. I assume you run an internal fork with your custom modules ( so do we ).
I would have added those module configs in a separate namespace in the internal fork Account model. While I agree that ext is used a lot in the OpenRTB models, this is done IMHO because it's a standard which requires some sort of flexibility. Modelling config as typed classes is IMHO always superior to "put in here what ever you want".
Having that said I really appreciate you contributing this back. However I would not use it , because altering the account config or even reading from other sources is not a big deal in our internal fork.

@muuki88 As I mentioned earlier, solving our requirements with hacks (running an internal fork is the biggest hack IMHO) is definitely possible, but nobody like hacks, when there is/could be a cleaner way of doing things. So, eventually I'm trying to contribute with my findings & suggestions. And this is the beauty of developing and using open source softwares. Ain't it?? 😊

True 😊
I see the module condig as part of the module. So adding it to the account config is IMHO not a hack 😁
ext is so vague and there are a lot of other possibilities to configure a module, which is why I get @Net-burst point. This must be maintained in the future as anybody could rely on an extension that can do anything.

Would this be solved with module-level config @mnishihan ? That's a feature that's on the list, just haven't gotten around to specing it yet.
I don't particularly like the idea of account ext config, but let me see if I actually understand it. The scenario is that you have two linked modules: moduleA1 and moduleA2.
Currently you have to configure them separately:
{
    "hooks": {
      "modules": {
        "moduleA1": {
          "attributes": {
             "sharedAuthKey": "12345",
              "privateAttr1": "a"
           }
         },
         "moduleA2": {
          "attributes": {
             "sharedAuthKey": "12345",  // repeated config
             "privateAttr2": "b"
           }
         }
      }
    }
}

You find duplicating this config ugly, so you'd like to have a shared config:
{
    "hooks": {
      "shared-module-config": [{
           "modules": ["moduleA1", "moduleA2"],
           "attributes": {
               "sharedAuthKey": "12345"
           }
       }],
      "modules": {
        "moduleA1": {
          "attributes": {
             "privateAttr1": "a"
           }
         },
         "moduleA2": {
          "attributes": {
             "privateAttr2": "b"
           }
         }
      }
    }
}

Is that the general idea? If so, why don't you just combine moduleA1 and moduleA2? It's expected that modules can operate at different hooks.
Here are soe requirements:

For security, it's required that modules not be able to see each other's config. This implies that a list of permissions is required.
Modules should not have to look somewhere else to get their config. i.e. PBS-core must deliver the config to the module.

So generically adding ORTB-like "ext" functionality is not a very good solution, IMO. If you'd like to build an appropriately-permissioned "shared-module-config" feature that merges the shared config so modules are none-the-wiser, I've no problem with that.

@bretg sorry for replying late. Thanks a lot for clarifying the reasons that are restricting the team to add an ext in Account model.

Sharing config across multiple modules is not the only requirement we have. We are storing all the accounts (imps, requests as well) in our config backend in a generic structure and have an authenticated UI to manage those via a JSON Schema validated JSON editor. And for that management UI, beside prebid module specific settings, we also need to store some custom account specific custom attributes (for example a human readable name etc.). So, to having an account.ext would simplify our case significantly, and extending our JSON Schema for the account.ext to support custom attribute definitions would be the only thing that we would need to ensure data validity.
Is the following structure already supported for defining shared hook module config? Or this is what you are suggesting to be implemented in my PR?

{
    "hooks": {
      "shared-module-config": [{
           "modules": ["moduleA1", "moduleA2"],
           "attributes": {
               "sharedAuthKey": "12345"
           }
       }],
      "modules": {
        "moduleA1": {
          "attributes": {
             "privateAttr1": "a"
           }
         },
         "moduleA2": {
          "attributes": {
             "privateAttr2": "b"
           }
         }
      }
    }
}

I'm not sure, whether the appropriately-permissioned "shared-module-config" feature can actually be useful, as like any other spring bean, hook modules can have ApplicationSettings instance injected to them and call any of the methods define there, including getAccountById. So, no matter how an implementation tries to restrict access to module specific attributes, there will always be an option to load entire account (which is probably already in cache) via a call of ApplicationSettings.getAccountById method and use that any way required.

Anyway, as we have primarily a philosophical difference on the requirement and implementation, we have decided to close this issue (along with respective PR) and use the alternate ways to meet our requirements. As we are writing and using only our own hook modules with custom logic, the access control to account attributes is not a concern to us, so the alternate ways will be enough for us, just not be our preferred option.
Thanks to all the participants for your time in this discussion. ❤ ❤


add pinata docs

What does this PR do and why?
Add some docs to let folks know if they need premium key access
Screenshots or screen recordings
If applicable, provide screenshots or screen recordings to demonstrate the changes.
Acceptance checklist

[ ] I have evaluated the Approval Guidelines for this PR.
[ ] I have tested this PR in all supported browsers.
[ ] I have tested this PR in dark mode and light mode (if applicable).

Current dependencies on/for this PR:

main

PR #1937   👈

This comment was auto-generated by Graphite.

Perfecttttt. thank you


#4907 - Duplicate Spring MVC endpoint fix

Why submit this pull request?

[X] Bug fix

[ ] New feature provided

[ ] Improve performance

Related issues
fixes #4907

Bug fix

Bug description.

The requestURL is updated after addPathMapping. This means it will use {POST}/url the first time the endpoint is hit and then fall back to /url every time it's hit afterward.

operationName = getAcceptedMethodTypes(method) + pathMappingCache.findPathMapping(method);
Might be a better solution. I'm not sure how much other code relies on findPathMapping.

@BFergerson Could you make your commit log more clear? It seems including more and more old commits. Create a new branch from upstream master, would be a good practice.

@wu-sheng, yeah I noticed that too. Need me to close this PR?


Add over_window

Signed-off-by: TennyZhuang<EMAIL_ADDRESS>

we need another exchange before the join

we need another exchange before the join

I think what's missing in this doc is clarify the aggregation functions we need to support. Per pg's doc, all aggregations functions are supported in window function. If we only provide the most naive implementation for now, e.g. O(n^2) time complexity for all aggregations functions, I think streaming and batch can share aggregation functions.

Databricks SQL's syntax: https://docs.databricks.com/sql/language-manual/sql-ref-window-functions.html
I think it's more concise.


fix: minting drop for the second time

PR Type

[x] Bugfix
[ ] Feature
[ ] Refactoring

Context

[x] Closes #8864

Did your issue had any of the "$" label on it?

[x] Fill up your DOT address: Payout

Community participation

[x] Are you at KodaDot Discord?

Screenshot 📸

[ ] My fix has changed something on UI;

thanks!
pay 20 usd

😍 Perfect, I’ve sent the payout
💵 $20 @ 7.49 USD/DOT ~ 2.67 $DOT
🧗 13QUj3pZyFNfYj4AM336hRdyLQbevj5H3sR4PKmLEXLdwZhh
🔗 0x7a36eb3dfc4fbe3755fbe830c5d1d9e304ffb23b4be507bb0a738d7d8d6c2823
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues


Block Reference Counter plugin displayed incorrectly in editing mode & live preview

Is the bug present when using the default Obsidian theme?
No
Is the bug present when snippets and plugins are disabled?
Yes
Minimal theme version
5.3.1
Describe the bug
The inline references are displayed at the max width of the pane,

which should have been as wide as the content.

Debug info
SYSTEM INFO:
Obsidian version: v0.15.8
Installer version: v0.15.6
Operating system: Windows 10 Home China 10.0.22000
Login status: logged in
Catalyst license: none
Insider build toggle: off
Live preview: on
Legacy editor: off
Base theme: adapt to system
Community theme: Minimal
Snippets enabled: 1
Safe mode: off
Plugins installed: 26
Plugins enabled: 26
1: Sliding Panes (Andy's Mode)
2: Calendar
3: Dataview
4: Excalidraw
5: Hotkeys++
6: Note Refactor
7: Pane Relief
8: Periodic Notes
9: Style Settings
10: Tag Wrangler
11: Text Format
12: Wikipedia
13: Workspaces Plus
14: Kanban
15: Sortable
16: Recent Files
17: Advanced Tables
18: Paste URL into selection
19: Auto Link Title
20: Better Word Count
21: Convert url to preview (iframe)
22: Hover Editor
23: Buttons
24: Natural Language Dates
25: Collapse All
26: Block Reference Counter
RECOMMENDATIONS:
Custom theme: for cosmetic issues, please first try updating your theme to latest. If still not fixed, please try to make the issue happen in the Sandbox Vault or disable community theme and snippets.
Community plugins: for bugs, please first try updating all your plugins to latest. If still not fixed, please try to make the issue happen in the Sandbox Vault or disable community plugins.

Hello, same issue for me, besides the max-width, there is also the fact that you can't click on the control buttons (it instead open the first result when you click them)
Thanks!

The Block Reference Counts plugin has been archived is no longer maintained


webkitgtk: 2.30.3 -> 2.30.5

Motivation for this change
https://webkitgtk.org/2020/12/15/webkitgtk2.30.4-released.html
https://webkitgtk.org/2021/02/11/webkitgtk2.30.5-released.html
https://webkitgtk.org/security/WSA-2021-0001.html

Processing maliciously crafted web content may lead to arbitrary code execution

Things done

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

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

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

We can probably drop https://github.com/NixOS/nixpkgs/commit/d2aeeb0d20054a1ba2b9924b11471604488655f7 now (ICU compat).


Fix table name in spatialite example command

The example query for creating a new point geometry seems to be using a table called 'museums' but at one point it instead uses 'events'. I believe it is intended to be museums (the example makes more sense if so).

Good catch, thanks!


Initial sequencing spec

This PR:

Updates the rollup node doc:

define seq window (Fixes #183)
define seq batches
update sync (same, but need full seq window of blocks after finding common point)
misc updates, no more single block output, no deposit-blocks, etc.

Updates the glossary with sequencing terms, and remove outdated "deposit block"

This PR does not spec the job of the sequencer to produce the data, this should probably go into a separate document, similar to how proposing.md is split out.
Metadata

Fixes #183
Fixes ENG-1978

LGTM. I think we can discuss the rest async and PR those changes into additional PRs.


After playing the music with the same audioCache in a loop, if you play a non-loop, it will be played in a loop.

In my research, I suspect that the cause is probably that I haven't set player.setReleaseMode(ReleaseMode.STOP); before processing player.play in this play method.
I've confirmed that when I do this, it plays in a non-loop without any problems.
https://github.com/luanpotter/audioplayers/blob/c20b07fc5d90f25d26a2c5b318d600f5f4986d7d/lib/audio_cache.dart#L104-L121
Here is the response I tried.
Future<AudioPlayer> play(String fileName,
      {double volume = 1.0,
      bool isNotification,
      PlayerMode mode = PlayerMode.MEDIA_PLAYER,
      bool stayAwake}) async {
    String url = await getAbsoluteUrl(fileName);
    AudioPlayer player = _player(mode);
    player.setReleaseMode(ReleaseMode.STOP);    // added.
    await player.play(
      url,
      volume: volume,
      respectSilence: isNotification ?? respectSilence,
      stayAwake: stayAwake,
    );
    return player;
  }

This is a bug of the case where fixedPlayer is set in AudioCache

yup that is a bug, though I consider if we should make it STOP or RELEASE (maybe a new optional param?)
for now I think STOP is fine. maybe an if its release => change to stop or something. would you like to submit a PR adding this fix? thank you so much for reporting!

Merged.
https://github.com/luanpotter/audioplayers/pull/632


Impure GNU specific sed usage

Issue description
For example pkgs/build-support/fetchgit/nix-prefetch-git contains the GNU extension of POSIX to use + as "one or more" of the preceding.
Since not everyone has a working memory of POSIX, allow me to demonstrate:
echo a | sed --posix 's|[a]\+||'
returns
a instead of empty result (removing --posix would return an empty result).
I don't mind using gnused, but I do mind such non portable usage patterns.
The goal of this message is to align on what implementation of sed we support when the source file does not explicitly mention gnused.
In particular, we should qualify all usages that are not compatible with POSIX to be bugs in any of the repositories under the NixOS organisation.

On which platform do we use a non-gnused in nixpkgs?

We depend on a lot bash-features in our stdenv infrastructure, that are non-posix.
It makes our code more robust, faster and maintainable I don't think we should drop that. I don't see how POSIX would provide us significant benefit in this area given that those tools are more portable then nix itself.

sed should be an alias for gnused. But that is something that we should probably specify more specifically. I think the only times you have to worry about non-GNU tools is:

In the unpack-bootstrap-tools.sh script
Bootstrapping when using the native stdenv


Add CoRE Resource Directory Support

Coverage decreased (-0.6%) to 33.251% when pulling a2f4ee57086897385b0ac114e3b914e72ca97a61 on core-rd into b8bdaa02b389d67f132444033b6430ed046fe23b on main.

I am going to merge this PR for now. However, there are a couple of UI fixes that have to be implemented in a follow-up PR.


z2m: Error: Error while opening socket

Description of the issue
addon wont start
it Was running, i added the first device and now it wont start
Addon version
1.40.2-1
Platform
Core 2024.10.1
Supervisor 2024.10.0
Operating System 13.1
Frontend 20241002.2
Logs of the issue (if applicable)
[16:39:59] INFO: Preparing to start...
[16:40:00] INFO: Socat not enabled
[16:40:00] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
[2024-10-09 16:40:02] info: 	z2m: Logging to console, file (filename: log.log)
[2024-10-09 16:40:02] info: 	z2m: Starting Zigbee2MQTT version 1.40.2 (commit #unknown)
[2024-10-09 16:40:02] info: 	z2m: Starting zigbee-herdsman (2.1.3)
[2024-10-09 16:40:02] info: 	zh:zstack:znp: Opening TCP socket with slzb-06.local:6638
[2024-10-09 16:40:02] info: 	zh:zstack:znp: Socket connected
[2024-10-09 16:40:02] info: 	zh:zstack:znp: Socket ready
[2024-10-09 16:40:02] info: 	zh:zstack:znp: Writing CC2530/CC2531 skip bootloader payload
[2024-10-09 16:40:02] info: 	zh:zstack:znp: Socket error
[2024-10-09 16:40:02] error: 	z2m: Error while starting zigbee-herdsman
[2024-10-09 16:40:02] error: 	z2m: Failed to start zigbee
[2024-10-09 16:40:02] error: 	z2m: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start.html for possible solutions
[2024-10-09 16:40:02] error: 	z2m: Exiting...
[2024-10-09 16:40:02] error: 	z2m: Error: Error while opening socket
at Socket. (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/znp/znp.ts:166:24)
at Socket.emit (node:events:529:35)
at emitErrorNT (node:internal/streams/destroy:151:8)
at emitErrorCloseNT (node:internal/streams/destroy:116:3)
at processTicksAndRejections (node:internal/process/task_queues:82:21)
/app/node_modules/winston/node_modules/readable-stream/lib/_stream_writable.js:264
var er = new ERR_STREAM_WRITE_AFTER_END();
^
Error: write after end
at writeAfterEnd (/app/node_modules/winston/node_modules/readable-stream/lib/_stream_writable.js:264:12)
at DerivedLogger.Writable.write (/app/node_modules/winston/node_modules/readable-stream/lib/_stream_writable.js:300:21)
at DerivedLogger.log (/app/node_modules/winston/lib/winston/logger.js:231:12)
at Logger.log (/app/lib/util/logger.ts:198:25)
at Logger.info (/app/lib/util/logger.ts:211:14)
at Znp.onPortClose (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/znp/znp.ts:96:16)
at Object.onceWrapper (node:events:632:26)
at Socket.emit (node:events:517:28)
at TCP. (node:net:350:12)

having the same issue,
technically, the error message seems like an issue with async in NodeJS
https://stackoverflow.com/questions/27769842/write-after-end-error-in-node-js-webserver
i have a similar issue running here, maybe i chose the wrong repo (zigbee2mqtt vs hassio-zigbee2mqtt):
https://github.com/Koenkk/zigbee2mqtt/issues/24154#issuecomment-2416654070

The real error is [2024-10-09 16:40:02] info: zh:zstack:znp: Socket error, meaning it cannot connect to the dongle, I've extended the error logging a bit, can you see what is logged now?
Changes will be available in the dev branch in a few hours from now.

i have tried with the de branch
[2024-10-23 08:59:55] info: 	z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Kantoorlamp1', payload '{"backlight_mode":"inverted","linkquality":167,"power_on_behavior":"previous","state":"ON"}'
[2024-10-23 09:04:02] error: 	zh:zstack:znp: Socket error Error: read ECONNRESET
[2024-10-23 09:04:02] info: 	zh:zstack:znp: Port closed
[2024-10-23 09:04:02] info: 	zh:zstack:znp: closing
[2024-10-23 09:04:02] error: 	z2m: Adapter disconnected, stopping
[2024-10-23 09:04:02] info: 	z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/bridge/state', payload '{"state":"offline"}'
[2024-10-23 09:04:02] info: 	z2m: Disconnecting from MQTT server
[2024-10-23 09:04:02] info: 	z2m: Stopping zigbee-herdsman...
[2024-10-23 09:04:02] info: 	z2m: Stopped zigbee-herdsman
[2024-10-23 09:04:02] info: 	z2m: Stopped Zigbee2MQTT

That indicates your network connection is not stable

Any test you recommend that would convince you the network is stable?
Im running quite a large setup and this is the only one with issues

It could also be an issue of the coordinator itself, in the past I read people having these issues when opening the web page of the coordinator.

i think i worked it out
after diving into it more, there was a warning in my unify switch portal:
Multiple devices are using the same IP address: 192.168.2.X. Please check each device's configuration to ensure none are communicating with a rogue DHCP server.
the coordinator had hardcoded ip/dhcp settings, and the same static lease from router, but with different MAC address. For some reason the coordinator had gotten a different mac address over time(?!), which i believe would be the cause for this issue (in combination with the settings).
now, after changing the coordinator to dhcp settings, the addon has been running well for over 1hr.


 :D really, i dont, what is it, but i thing, this is a few wrong.
thank you for you program very much! I like mods, and your program is cooler than any mod manager! big thanks ^____^

Re-install HotRockets, then you won't have that issue.

A simple update/refresh to get the latest metadata should do. Let us know if you're still having trouble.


Propoagate Opacity [#93734958]

Example
'use strict';

var DOMElement = require('famous/dom-renderables/DOMElement');
var FamousEngine = require('famous/core/FamousEngine');

FamousEngine.init();

var node = FamousEngine.createScene();

node = node.addChild();
node.setOpacity(0.7);

node = node.addChild();
node.setOpacity(0.7);

node = node.addChild();
node.setSizeMode('absolute', 'absolute').setAbsoluteSize(100, 100);
new DOMElement(node, { properties: { background: 'red' }, content: '0.7 opacity (two non-DOMElements as parents)' });
node.setOpacity(0.7)

node = node.addChild();
node.setOpacity(0.7);

node = node.addChild();
node.setSizeMode('absolute', 'absolute').setAbsoluteSize(100, 100).setPosition(100);
new DOMElement(node, { properties: { background: 'red' }, content: '0.7 opacity (child of first DOMElement with Node in between)' });
node.setOpacity(0.7);

Before: https://api-te.famo.us/codemanager/v1/containers/36326067-c17d-48a7-84fd-5e40a1876682/share
After: https://api-te.famo.us/codemanager/v1/containers/0a8b9cde-17b0-48d3-84d1-4125dc5ccd55/share
There is currently some redundant logic in OpacitySystem and TransformSystem. Thoughts on having a System class to inherit from?
Submitted for review.
@DnMllr
@redwoodfavorite Is opacity currently being handled correctly for Meshes?There haven't been big changes to onOpacityChange (just uses opacity.getWorldOpacity() now), but setting opacities on meshes also fails with current develop. Is this a known issue?

@alexanderGugel this would be a breaking change.  Can you rewrite your commits to reflect this?

+1

@michaelobriena yup.

9dd51209 broke this.

@michaelobriena

@michaelobriena / @DnMllr

Looks good.

@alexanderGugel I think this all looks good except for a new change we had to make to TransformSystem.  If you look at transform system and how it is used in Mesh, we no longer set a break point.  We just make a call to flag it as needing the world opacity.  I am assuming we would run into the same issues with opacity if we merged this as is.

@michaelobriena Yup. Might be the case. calculateWorldOpacity needs to be added. Will fix.

@michaelobriena Not sure how to test 8329174 though...

@alexanderGugel Thanks.  Will review this today.

@michaelobriena Did you have a chance to look over this?

Yes, I am merging soon.  Wanted to cut a patch first of the non breaking changes before merging.

landed as 39c0e72


Implemented coolest interface.

This PR implements coolest interface. One can use implemented function to update coolest template file.

Hi @sibirrer , I worked on your feedback. Now it is ready for review!


Support UNIX Socket? Is it possible?

Would it be possible to support connecting to UNIX socket listening at /var/run/postgresql?
With docker, it is very easy to share virtual volume rather than a network, and it adds a couple noticeable performance gains. I'm not a go guy so I am not sure how difficult it is.

So I end up going down the rabbit hole and did it with AI, included in my PR at https://github.com/neondatabase/wsproxy/pull/6.
Should have first asked Claude before opening an issue 😆


nixos/samba-wsdd: Add openFirewall option

Description of changes

Added an openfirewall option to the samba-wsdd module.
Can be seen as a follow-up to #141861.
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

I tried to run the samba-wsdd test, but it never succeds, with or without this patch.

@Izorkin , you are the maintainer of the samba-wsdd test and package. Do you have any Idea why the test doesn't work?

@GrahamcOfBorg test samba-wsdd

Created a bug report - https://github.com/christgau/wsdd/issues/162
Temp fix:
diff --git a/pkgs/servers/wsdd/default.nix b/pkgs/servers/wsdd/default.nix
index a0a8421a7c2..f8a6ac6821c 100644
--- a/pkgs/servers/wsdd/default.nix
+++ b/pkgs/servers/wsdd/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, makeWrapper, nixosTests, python3 }:
+{ lib, stdenv, fetchFromGitHub, makeWrapper, nixosTests, python39 }:

 stdenv.mkDerivation rec {
   pname = "wsdd";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {

   nativeBuildInputs = [ makeWrapper ];

-  buildInputs = [ python3 ];
+  buildInputs = [ python39 ];

   patches = [
     # Increase timeout to socket urlopen

Converted to draft until it can be tested properly.

@MinerSebas required this firewall rules:
  iptables -t filter -A INPUT -p igmp -m state --state NEW -m pkttype --pkt-type multicast -d <IP_ADDRESS> -j ACCEPT

Fixed test - https://github.com/NixOS/nixpkgs/pull/206843

Sorry for not following up, but as #243366 was merged I can close this PR.


How to exclude certain files to be searched?

As title. it causes seriously lagging when the the current working directory contains multiple projects where each has a node_modules/ folder.

ripgrep should not search in directories that are ignored by git.
If you want to track them with git, but ignore them from ripgrep, you can make a .rgignore
You can read the ripgrep documentation for more information
https://github.com/BurntSushi/ripgrep/blob/df83b8b44426b3f2179abe632eb183e8c8270524/doc/rg.1.txt.tpl#L113


Continiously updating the last comment

Right now, the bot is posting a new comment when the PEP8 status is changing.
It could be nice to have an even more silent mode, but always updating the initial comment.
It reduces the amount of noise in emails in large PR with a cleaner thread as well.
This is something that codecov is doing.

This sounds perfect to me. Thank you for the suggestion ! I'll get to the implementation as soon as possible.

A live example https://github.com/OrkoHunter/test-pep8speaks/pull/38


Error Docs Skype Web

Hi,
I found a little mistake on the documentation page "Developing Web SDK applications for Skype for Business Server".
The SignIn Manager is written with a lower i :
Skype.initialize({
  apiKey: 'a42fcebd-5b43-4b89-a065-74450fb91255' // SDK preview
}, api => {
  var app = new api.application;
  app.signinManager.signIn(...).then(() => {
    console.log("signed in as", app.personsAndGroupsManager.mePerson.displayName());
  }, err => {
    console.log("cannot sign in", err);
  });
}, err => {
  console.log("cannot download the SDK", err);
});

Regards,

Thanks for pointing that out. We will fix it.


How to get value from ListGroupItem?

Like this ...
handkeGetValue(event) {
   console.log(event.target.value)
}

...

<ListGroup>
        <ListGroupItem onClick={this.handleGetValue}>Cras justo odio</ListGroupItem>
</ListGroup>

When I console is empty content ... what's wrong of this way?
thanks .

Only inputs have value. If you want the text within the element, you'll need to use event.target.innerText

Thanks a lot.


Add counter to TextInput,  TextInput and TextArea outlines red when reaching limit and add utils, add MoneyInput

#Add

min, max, height and width utilities
margin and padding up to 50px in utilities
TextField: icon prop and character counter
MoneyInput and story
#Change
TextField and TextArea: make outline red on maxlength reached

Making some changes after getting feedback from Alex

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Added Typings

I used Record<string, Record<string, unknown>> for all the rules objects because I thought it would be much too tedious to make everything accurate, but I can go back and make those types stricter if need be.
Closes #23

closes #23

Oops, I didn't know that was an issue

:confetti_ball:


Check for hash_hkdf instead of hkdf

Maybe I'm missing something obvious here, but shouldn't we be checking for hash_hkdf in < 7.1.2 instead of hkdf? hkdf isn't defined in 7.1.2, meaning that this will always be loaded over the native implementation.
# PHP 7.1.2
$ php --version
PHP 7.1.2 (cli) (built: Feb 18 2017 16:03:58) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies

# Hash is enabled
$ php -m | grep hash
hash

# HKDF isn't a function, hash_hkdf is
$ php -a
Interactive shell

php > var_dump(function_exists('hkdf'));
bool(false)

There was a short period during which the proposed function name was hkdf(), and obviously I've missed this check while renaming it back.
Thanks!

I figured it was something like that. Cheers!


iam get_credential_report throwing random error

running the script might crash randomly
python python-aws-foundation.py 1
[...]
  File "/home/spoonboy/git/python-aws-foundation/aws_services/iam.py", line 19, in get_credential_report
    self.credential_report = self.iam_client.get_credential_report()
[...]
botocore.exceptions.ClientError: An error occurred (ReportInProgress) when calling the GetCredentialReport operation: Unknown

I will have to wait for the report to be generated before going further in the script.

generate_credential_report() returns a dict object with the State of the report generation.
I will have to do some waiting until i get State: "COMPLETE".